diff options
-rw-r--r-- | binutils/ChangeLog | 5 | ||||
-rw-r--r-- | binutils/dwarf.c | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 1d6b967..594fbff 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,5 +1,10 @@ 2021-02-10 Tom de Vries <tdevries@suse.de> + PR binutils/27391 + * dwarf.c (load_dwo_file): Handle case that name is absolute path. + +2021-02-10 Tom de Vries <tdevries@suse.de> + PR binutils/27371 * dwarf.c (display_debug_ranges): Filter range lists according to section. diff --git a/binutils/dwarf.c b/binutils/dwarf.c index 84d63f6..3cbd197 100644 --- a/binutils/dwarf.c +++ b/binutils/dwarf.c @@ -11092,8 +11092,11 @@ load_dwo_file (const char * main_filename, const char * name, const char * dir, char * separate_filename; void * separate_handle; - /* FIXME: Skip adding / if dwo_dir ends in /. */ - separate_filename = concat (dir, "/", name, NULL); + if (IS_ABSOLUTE_PATH (name)) + separate_filename = strdup (name); + else + /* FIXME: Skip adding / if dwo_dir ends in /. */ + separate_filename = concat (dir, "/", name, NULL); if (separate_filename == NULL) { warn (_("Out of memory allocating dwo filename\n")); |