From 5abbbe1d13e03496af5564b997f3c3a2e79b4d73 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 5 Feb 2020 10:53:44 +0100 Subject: [PATCH] Revert basenames_may_differ patch Commit a0c1ffedc regressed certain cases coming from Eclipse. See PR breakpoints/24915. gdb/ChangeLog 2020-02-07 Tom Tromey PR breakpoints/24915: * source.c (find_and_open_source): Do not check basenames_may_differ. gdb/testsuite/ChangeLog 2020-02-07 Tom Tromey PR breakpoints/24915: * gdb.base/annotate-symlink.exp: Use setup_xfail. Change-Id: Iadbf42f35eb40c95ad32b2108ae25d8f199998bd --- gdb/ChangeLog | 5 +++++ gdb/source.c | 19 +++++++------------ gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.base/annotate-symlink.exp | 3 +++ 4 files changed, 20 insertions(+), 12 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 901841e816b..26fffd769cc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2020-02-07 Tom Tromey + + PR breakpoints/24915: + * source.c (find_and_open_source): Do not check basenames_may_differ. + 2020-02-07 Tom Tromey * README: Update gdbserver documentation. diff --git a/gdb/source.c b/gdb/source.c index 327e9c1229e..4f889e4b95a 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -1051,10 +1051,7 @@ find_and_open_source (const char *filename, result = gdb_open_cloexec (fullname->get (), OPEN_MODE, 0); if (result >= 0) { - if (basenames_may_differ) - *fullname = gdb_realpath (fullname->get ()); - else - *fullname = gdb_abspath (fullname->get ()); + *fullname = gdb_realpath (fullname->get ()); return scoped_fd (result); } @@ -1098,12 +1095,9 @@ find_and_open_source (const char *filename, if (rewritten_filename != NULL) filename = rewritten_filename.get (); - openp_flags flags = OPF_SEARCH_IN_PATH; - if (basenames_may_differ) - flags |= OPF_RETURN_REALPATH; - /* Try to locate file using filename. */ - result = openp (path, flags, filename, OPEN_MODE, fullname); + result = openp (path, OPF_SEARCH_IN_PATH | OPF_RETURN_REALPATH, filename, + OPEN_MODE, fullname); if (result < 0 && dirname != NULL) { /* Remove characters from the start of PATH that we don't need when @@ -1124,15 +1118,16 @@ find_and_open_source (const char *filename, cdir_filename.append (SLASH_STRING); cdir_filename.append (filename_start); - result = openp (path, flags, cdir_filename.c_str (), OPEN_MODE, - fullname); + result = openp (path, OPF_SEARCH_IN_PATH | OPF_RETURN_REALPATH, + cdir_filename.c_str (), OPEN_MODE, fullname); } if (result < 0) { /* Didn't work. Try using just the basename. */ p = lbasename (filename); if (p != filename) - result = openp (path, flags, p, OPEN_MODE, fullname); + result = openp (path, OPF_SEARCH_IN_PATH | OPF_RETURN_REALPATH, p, + OPEN_MODE, fullname); } return scoped_fd (result); diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 685994a19a7..f6bd172ca99 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2020-02-07 Tom Tromey + + PR breakpoints/24915: + * gdb.base/annotate-symlink.exp: Use setup_xfail. + 2020-02-06 Shahab Vahedi * gdb.tui/tui-missing-src.exp: Add the "missing source diff --git a/gdb/testsuite/gdb.base/annotate-symlink.exp b/gdb/testsuite/gdb.base/annotate-symlink.exp index d22593ca364..830949daa42 100644 --- a/gdb/testsuite/gdb.base/annotate-symlink.exp +++ b/gdb/testsuite/gdb.base/annotate-symlink.exp @@ -47,5 +47,8 @@ gdb_breakpoint func message gdb_test_no_output "set annotate 1" +# The patch to cause this output was reverted. +# See PR breakpoints/24915. +setup_xfail *-*-* 24915 gdb_test "continue" \ "Breakpoint .* func .*realname-expand-link.c:$decimal\r\n\032\032.*realname-expand-link.c:.*" -- 2.30.2