summaryrefslogtreecommitdiff
path: root/platform/efi/efi_resolver/src/GuidRenderer.cpp
diff options
context:
space:
mode:
authorZichuan Li <34680029+river-li@users.noreply.github.com>2024-08-15 18:23:43 -0400
committerBrandon Miller <brandon@vector35.com>2025-05-08 07:23:08 -0400
commitf07f66ba03dfeed222f419e1bae274e95cbcd2d4 (patch)
treeac93834d248b5b2af242a9288785106bcecc354f /platform/efi/efi_resolver/src/GuidRenderer.cpp
parent7f08117cfeb48a8f48d08e14cb498ee028efcef2 (diff)
misc: formated code and fixed several small issues
1. Fix code related to SMI handlers 2. also parse handlers registered by SxDispatch and parse them together 3. Set Progress Text properly
Diffstat (limited to 'platform/efi/efi_resolver/src/GuidRenderer.cpp')
-rw-r--r--platform/efi/efi_resolver/src/GuidRenderer.cpp63
1 files changed, 29 insertions, 34 deletions
diff --git a/platform/efi/efi_resolver/src/GuidRenderer.cpp b/platform/efi/efi_resolver/src/GuidRenderer.cpp
index ef148094..deac0265 100644
--- a/platform/efi/efi_resolver/src/GuidRenderer.cpp
+++ b/platform/efi/efi_resolver/src/GuidRenderer.cpp
@@ -2,55 +2,50 @@
bool isType(const vector<pair<Type*, size_t>>& context, const string& name)
{
- if (context.empty())
- return false;
+ if (context.empty())
+ return false;
- auto [deepestType, size] = context.back();
- if (!deepestType->IsNamedTypeRefer())
- return false;
+ auto [deepestType, size] = context.back();
+ if (!deepestType->IsNamedTypeRefer())
+ return false;
- return deepestType->GetTypeName().GetString() == name;
+ return deepestType->GetTypeName().GetString() == name;
}
-bool EfiGuidRenderer::IsValidForData(BinaryView* bv, uint64_t address, Type* type,
- vector<pair<Type*, size_t>>& context)
+bool EfiGuidRenderer::IsValidForData(BinaryView* bv, uint64_t address, Type* type, vector<pair<Type*, size_t>>& context)
{
- return isType(context, "EFI_GUID");
+ return isType(context, "EFI_GUID");
}
static string formatGuid(uint32_t data1, uint16_t data2, uint16_t data3, uint64_t data4)
{
- std::ostringstream oss;
- oss << std::hex << std::uppercase << std::setfill('0')
- << std::setw(8) << data1 << "-"
- << std::setw(4) << data2 << "-"
- << std::setw(4) << data3 << "-"
- << std::setw(16) << data4;
- return oss.str();
+ std::ostringstream oss;
+ oss << std::hex << std::uppercase << std::setfill('0') << std::setw(8) << data1 << "-" << std::setw(4) << data2
+ << "-" << std::setw(4) << data3 << "-" << std::setw(16) << data4;
+ return oss.str();
}
-vector<DisassemblyTextLine> EfiGuidRenderer::GetLinesForData(
- BinaryView* bv, uint64_t address, Type*, const vector<InstructionTextToken>& prefix,
- size_t, vector<pair<Type*, size_t>>& context)
+vector<DisassemblyTextLine> EfiGuidRenderer::GetLinesForData(BinaryView* bv, uint64_t address, Type*,
+ const vector<InstructionTextToken>& prefix, size_t, vector<pair<Type*, size_t>>& context)
{
- BinaryReader reader(bv);
- reader.Seek(address);
- auto data1 = reader.Read32();
- auto data2 = reader.Read16();
- auto data3 = reader.Read16();
- auto data4 = reader.ReadBE64();
- string guidStr = formatGuid(data1, data2, data3, data4);
+ BinaryReader reader(bv);
+ reader.Seek(address);
+ auto data1 = reader.Read32();
+ auto data2 = reader.Read16();
+ auto data3 = reader.Read16();
+ auto data4 = reader.ReadBE64();
+ string guidStr = formatGuid(data1, data2, data3, data4);
- DisassemblyTextLine line;
- line.addr = address;
- line.tokens = prefix;
- line.tokens.emplace_back(TextToken, "[EFI_GUID(\"");
- line.tokens.emplace_back(StringToken, guidStr);
- line.tokens.emplace_back(TextToken, "\")]");
- return { line };
+ DisassemblyTextLine line;
+ line.addr = address;
+ line.tokens = prefix;
+ line.tokens.emplace_back(TextToken, "[EFI_GUID(\"");
+ line.tokens.emplace_back(StringToken, guidStr);
+ line.tokens.emplace_back(TextToken, "\")]");
+ return {line};
}
void EfiGuidRenderer::Register()
{
- DataRendererContainer::RegisterTypeSpecificDataRenderer(new EfiGuidRenderer());
+ DataRendererContainer::RegisterTypeSpecificDataRenderer(new EfiGuidRenderer());
}