re PR other/56076 (Several 64-bit libgo tests FAIL in read_line_header)
authorJakub Jelinek <jakub@redhat.com>
Fri, 25 Jan 2013 22:36:11 +0000 (23:36 +0100)
committerIan Lance Taylor <ian@gcc.gnu.org>
Fri, 25 Jan 2013 22:36:11 +0000 (22:36 +0000)
PR other/56076
* dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
attribute was not seen.

From-SVN: r195478

libbacktrace/ChangeLog
libbacktrace/dwarf.c

index 25a56d9..b8755cf 100644 (file)
@@ -1,3 +1,9 @@
+2013-01-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR other/56076
+       * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
+       attribute was not seen.
+
 2013-01-16  Ian Lance Taylor  <iant@google.com>
 
        * dwarf.c (struct unit): Add filename and abs_filename fields.
index ce12bdc..3cdbb42 100644 (file)
@@ -1655,7 +1655,8 @@ read_line_header (struct backtrace_state *state, struct unit *u,
                    strnlen ((const char *) hdr_buf.buf, hdr_buf.left) + 1))
        return 0;
       dir_index = read_uleb128 (&hdr_buf);
-      if (IS_ABSOLUTE_PATH (filename))
+      if (IS_ABSOLUTE_PATH (filename)
+         || (dir_index == 0 && u->comp_dir == NULL))
        hdr->filenames[i] = filename;
       else
        {