summaryrefslogtreecommitdiff
path: root/view/elf
diff options
context:
space:
mode:
authorBrian Potchik <brian@vector35.com>2025-01-20 16:34:57 -0500
committerBrian Potchik <brian@vector35.com>2025-01-20 16:34:57 -0500
commitcbd4d7f12d54ddc4b6d3d90a8d7b49591f468a94 (patch)
tree7f3c44e5c16688ed032a9d963bbc116f9acf5c64 /view/elf
parent13e8a11adf4910c8871eb80a84f080652f76e72b (diff)
Allow overriding common loader settings when automatic load file parsing fails.
Diffstat (limited to 'view/elf')
-rw-r--r--view/elf/elfview.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/view/elf/elfview.cpp b/view/elf/elfview.cpp
index bf447a9a..29fc03d9 100644
--- a/view/elf/elfview.cpp
+++ b/view/elf/elfview.cpp
@@ -739,6 +739,9 @@ bool ElfView::Init()
m_logger->LogError("ELF architecture %d is not supported", m_commonHeader.arch);
break;
}
+
+ if (!m_parseOnly)
+ m_logger->LogWarn("Unable to determine architecture. Please open the file with options and select a valid architecture.");
return false;
}
@@ -2944,8 +2947,8 @@ Ref<Settings> ElfViewType::GetLoadSettingsForData(BinaryView* data)
Ref<BinaryView> viewRef = Parse(data);
if (!viewRef || !viewRef->Init())
{
- m_logger->LogError("View type '%s' could not be created", GetName().c_str());
- return nullptr;
+ m_logger->LogWarn("Failed to initialize view of type '%s'. Generating default load settings.", GetName().c_str());
+ viewRef = data;
}
Ref<Settings> settings = GetDefaultLoadSettingsForData(viewRef);