This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] fix PR gdb/19914


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 --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)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]