aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
diff options
context:
space:
mode:
authorSaleem Abdulrasool <abdulras@thebrowser.company>2023-04-17 07:52:38 -0700
committerSaleem Abdulrasool <abdulras@thebrowser.company>2023-04-17 07:53:54 -0700
commitd87cd45e4d855b57aed76dbd72c270ed152542ff (patch)
tree8fd99dc62bbbc7aedc9d0b98af4e8ff4609a17e6 /lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
parent7960993e4638c6243c4b37f05bb61b080fe13d43 (diff)
downloadllvm-d87cd45e4d855b57aed76dbd72c270ed152542ff.zip
llvm-d87cd45e4d855b57aed76dbd72c270ed152542ff.tar.gz
llvm-d87cd45e4d855b57aed76dbd72c270ed152542ff.tar.bz2
PECOFF: consume errors properly
We would not ensure that the error is consumed in the case that logging is disabled. Ensure that we properly drop the error on the floor or we would re-trigger the checked failure. Differential Revision: https://reviews.llvm.org/D147669 Reviewed By: sgraenitz
Diffstat (limited to 'lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp')
-rw-r--r--lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp34
1 files changed, 22 insertions, 12 deletions
diff --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
index 95c37d4..1d11caf 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
@@ -863,10 +863,14 @@ ObjectFilePECOFF::AppendFromExportTable(SectionList *sect_list,
for (const auto &entry : m_binary->export_directories()) {
llvm::StringRef sym_name;
if (auto err = entry.getSymbolName(sym_name)) {
- LLDB_LOG(log,
- "ObjectFilePECOFF::AppendFromExportTable - failed to get export "
- "table entry name: {0}",
- llvm::fmt_consume(std::move(err)));
+ if (log)
+ log->Format(
+ __FILE__, __func__,
+ "ObjectFilePECOFF::AppendFromExportTable - failed to get export "
+ "table entry name: {0}",
+ llvm::fmt_consume(std::move(err)));
+ else
+ llvm::consumeError(std::move(err));
continue;
}
Symbol symbol;
@@ -884,10 +888,13 @@ ObjectFilePECOFF::AppendFromExportTable(SectionList *sect_list,
// it in symtab and make a note using the symbol name.
llvm::StringRef forwarder_name;
if (auto err = entry.getForwardTo(forwarder_name)) {
- LLDB_LOG(log,
- "ObjectFilePECOFF::AppendFromExportTable - failed to get "
- "forwarder name of forwarder export '{0}': {1}",
- sym_name, llvm::fmt_consume(std::move(err)));
+ if (log)
+ log->Format(__FILE__, __func__,
+ "ObjectFilePECOFF::AppendFromExportTable - failed to get "
+ "forwarder name of forwarder export '{0}': {1}",
+ sym_name, llvm::fmt_consume(std::move(err)));
+ else
+ llvm::consumeError(std::move(err));
continue;
}
llvm::SmallString<256> new_name = {symbol.GetDisplayName().GetStringRef(),
@@ -899,10 +906,13 @@ ObjectFilePECOFF::AppendFromExportTable(SectionList *sect_list,
uint32_t function_rva;
if (auto err = entry.getExportRVA(function_rva)) {
- LLDB_LOG(log,
- "ObjectFilePECOFF::AppendFromExportTable - failed to get "
- "address of export entry '{0}': {1}",
- sym_name, llvm::fmt_consume(std::move(err)));
+ if (log)
+ log->Format(__FILE__, __func__,
+ "ObjectFilePECOFF::AppendFromExportTable - failed to get "
+ "address of export entry '{0}': {1}",
+ sym_name, llvm::fmt_consume(std::move(err)));
+ else
+ llvm::consumeError(std::move(err));
continue;
}
// Skip the symbol if it doesn't look valid.