summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
index 42ae53560fa..59d9d64fc04 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
@@ -186,6 +186,8 @@ ParseSupportFilesFromPrologue(const lldb::ModuleSP &module,
FileSpecList support_files;
support_files.Append(first_file);
+ llvm::Optional<FileSpec::Style> compile_dir_style =
+ FileSpec::GuessPathStyle(compile_dir);
const size_t number_of_files = prologue.FileNames.size();
for (size_t idx = 1; idx <= number_of_files; ++idx) {
std::string original_file;
@@ -198,9 +200,13 @@ ParseSupportFilesFromPrologue(const lldb::ModuleSP &module,
continue;
}
- auto maybe_path_style = FileSpec::GuessPathStyle(original_file);
- FileSpec::Style style =
- maybe_path_style ? *maybe_path_style : FileSpec::Style::native;
+ FileSpec::Style style = FileSpec::Style::native;
+ if (compile_dir_style) {
+ style = *compile_dir_style;
+ } else if (llvm::Optional<FileSpec::Style> file_style =
+ FileSpec::GuessPathStyle(original_file)) {
+ style = *file_style;
+ }
std::string remapped_file;
if (!prologue.getFileNameByIndex(
OpenPOWER on IntegriCloud