aboutsummaryrefslogtreecommitdiff
path: root/gdb/psymtab.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/psymtab.c')
-rw-r--r--gdb/psymtab.c21
1 files changed, 2 insertions, 19 deletions
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 7c3017d..4c5b100 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -953,26 +953,9 @@ psymtab_to_fullname (struct partial_symtab *ps)
to handle cases like the file being moved. */
if (ps->fullname == NULL)
{
- gdb::unique_xmalloc_ptr<char> fullname;
- scoped_fd fd = find_and_open_source (ps->filename, ps->dirname,
- &fullname);
+ gdb::unique_xmalloc_ptr<char> fullname
+ = find_source_or_rewrite (ps->filename, ps->dirname);
ps->fullname = fullname.release ();
-
- if (fd.get () < 0)
- {
- /* rewrite_source_path would be applied by find_and_open_source, we
- should report the pathname where GDB tried to find the file. */
-
- if (ps->dirname == NULL || IS_ABSOLUTE_PATH (ps->filename))
- fullname.reset (xstrdup (ps->filename));
- else
- fullname.reset (concat (ps->dirname, SLASH_STRING,
- ps->filename, (char *) NULL));
-
- ps->fullname = rewrite_source_path (fullname.get ()).release ();
- if (ps->fullname == NULL)
- ps->fullname = fullname.release ();
- }
}
return ps->fullname;