diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/source.c | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ccf13dc..d936dfd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2008-02-08 Doug Evans <dje@google.com> + + * source.c (find_and_open_source): Always rewrite absolute filenames. + 2008-02-07 Doug Evans <dje@google.com> * breakpoint.c: #include "hashtab.h". diff --git a/gdb/source.c b/gdb/source.c index 6e2558b..4ed4ec0 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -999,10 +999,11 @@ find_and_open_source (struct objfile *objfile, strcat (path + len, source_path + len + cdir_len); /* After $cdir */ } } - else + + if (IS_ABSOLUTE_PATH (filename)) { - /* If dirname is NULL, chances are the path is embedded in - the filename. Try the source path substitution on it. */ + /* If filename is absolute path, try the source path + substitution on it. */ char *rewritten_filename = rewrite_source_path (filename); if (rewritten_filename != NULL) |