* dwarf2-frame.c (decode_frame_entry_1): Skip unknown augmentations
authorDaniel Jacobowitz <drow@false.org>
Tue, 28 Nov 2006 17:28:29 +0000 (17:28 +0000)
committerDaniel Jacobowitz <drow@false.org>
Tue, 28 Nov 2006 17:28:29 +0000 (17:28 +0000)
without skipping the CIE.

gdb/ChangeLog
gdb/dwarf2-frame.c

index c1c602694da05a1e3f71d6aba54313fc248f9d7f..fbf13260f7d07cda077ccbdc96c576e67b5561c7 100644 (file)
@@ -1,3 +1,8 @@
+2006-11-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * dwarf2-frame.c (decode_frame_entry_1): Skip unknown augmentations
+       without skipping the CIE.
+
 2006-11-28  Vladimir Prus  <vladimir@codesourcery.com>
 
        Fetch varobj values from memory in a single place,
index edd9a7536ae3b48d728221974f85ef49f250b430..861e19d74905a018c43b0a72069170de685b6799 100644 (file)
@@ -1674,15 +1674,12 @@ decode_frame_entry_1 (struct comp_unit *unit, gdb_byte *start, int eh_frame_p)
              augmentation++;
            }
 
-         /* Otherwise we have an unknown augmentation.
-            Bail out unless we saw a 'z' prefix.  */
+         /* Otherwise we have an unknown augmentation.  Assume that either
+            there is no augmentation data, or we saw a 'z' prefix.  */
          else
            {
-             if (cie->initial_instructions == NULL)
-               return end;
-
-             /* Skip unknown augmentations.  */
-             buf = cie->initial_instructions;
+             if (cie->initial_instructions)
+               buf = cie->initial_instructions;
              break;
            }
        }