summaryrefslogtreecommitdiffstats
path: root/lldb/source/Host/common
diff options
context:
space:
mode:
authorTamas Berghammer <tberghammer@google.com>2015-07-30 12:38:18 +0000
committerTamas Berghammer <tberghammer@google.com>2015-07-30 12:38:18 +0000
commitd00438e8f0d6c98e56b01c26147cb3d79df46ccb (patch)
tree831fc9a74c6261a4d7f8fb6626d6ec8316a3ba45 /lldb/source/Host/common
parent77fb0a3dcf19df35533840e096a26fb7e5e18f9b (diff)
downloadbcm5719-llvm-d00438e8f0d6c98e56b01c26147cb3d79df46ccb.tar.gz
bcm5719-llvm-d00438e8f0d6c98e56b01c26147cb3d79df46ccb.zip
Fix issues with separate symbolfile handling
Differential revision: http://reviews.llvm.org/D11595 llvm-svn: 243637
Diffstat (limited to 'lldb/source/Host/common')
-rw-r--r--lldb/source/Host/common/Symbols.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/lldb/source/Host/common/Symbols.cpp b/lldb/source/Host/common/Symbols.cpp
index f24423da6f9..76e28449f96 100644
--- a/lldb/source/Host/common/Symbols.cpp
+++ b/lldb/source/Host/common/Symbols.cpp
@@ -175,7 +175,7 @@ LocateExecutableSymbolFileDsym (const ModuleSpec &module_spec)
"LocateExecutableSymbolFileDsym (file = %s, arch = %s, uuid = %p)",
exec_fspec ? exec_fspec->GetFilename().AsCString ("<NULL>") : "<NULL>",
arch ? arch->GetArchitectureName() : "<NULL>",
- (void*)uuid);
+ (const void*)uuid);
FileSpec symbol_fspec;
// First try and find the dSYM in the same directory as the executable or in
@@ -198,7 +198,7 @@ Symbols::LocateExecutableObjectFile (const ModuleSpec &module_spec)
"LocateExecutableObjectFile (file = %s, arch = %s, uuid = %p)",
exec_fspec ? exec_fspec->GetFilename().AsCString ("<NULL>") : "<NULL>",
arch ? arch->GetArchitectureName() : "<NULL>",
- (void*)uuid);
+ (const void*)uuid);
FileSpec objfile_fspec;
ModuleSpecList module_specs;
@@ -219,7 +219,11 @@ Symbols::LocateExecutableObjectFile (const ModuleSpec &module_spec)
FileSpec
Symbols::LocateExecutableSymbolFile (const ModuleSpec &module_spec)
{
- const char *symbol_filename = module_spec.GetSymbolFileSpec().GetFilename().AsCString();
+ FileSpec symbol_file_spec = module_spec.GetSymbolFileSpec();
+ if (symbol_file_spec.IsAbsolute() && symbol_file_spec.Exists())
+ return symbol_file_spec;
+
+ const char *symbol_filename = symbol_file_spec.GetFilename().AsCString();
if (symbol_filename && symbol_filename[0])
{
FileSpecList debug_file_search_paths (Target::GetDefaultDebugFileSearchPaths());
OpenPOWER on IntegriCloud