diff mbox

fix PR gdb/19914

Message ID CAMsPy2uDbNF3WtdT9Z--vgDcQ+gyGOd+v6Kj6E3BRrjykpe+vw@mail.gmail.com
State New
Headers show

Commit Message

Yunlian Jiang April 5, 2016, 7:57 p.m. UTC
Hi.

This tries to fix PR gdb/19914. When the object file is not
a binary but a .debug file, the function to try to find the .dwp
file in the debug directory does not work. This one tries to solve
this problem.

2016-04-05  Yunlian Jiang <yunlian@google.com>
               * gdb/dwarf2read.c: Try to find .dwp for .debug
diff mbox

Patch

diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index dcd49e3..551376a 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -10854,6 +10854,18 @@  open_and_init_dwp_file (void)
       dbfd = open_dwp_file (dwp_name);
     }

+  if (dbfd == NULL && strlen(dwp_name) > 10)
+    {
+      /* Try to find .dwp for the debug file.  */
+      if (!strcmp(dwp_name + strlen(dwp_name) - 10, ".debug.dwp"))
+        {
+           dwp_name[strlen(dwp_name) - 10] = '\0';
+           dwp_name = xstrprintf ("%s.dwp", dwp_name);
+           make_cleanup (xfree, dwp_name);
+           dbfd = open_dwp_file (dwp_name);
+        }
+    }
+
   if (dbfd == NULL)
     {
       if (dwarf_read_debug)