aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2016-03-22 22:50:18 +1030
committerAlan Modra <amodra@gmail.com>2016-03-22 22:50:18 +1030
commita97fbc7e3ca781b8d95ed8591c6ee65f2d8a798a (patch)
treed774d28a8311173320a89fe640a9f390774bdefd
parent49636823b07446b61ef8cdc17898bef3c8202325 (diff)
downloadgdb-a97fbc7e3ca781b8d95ed8591c6ee65f2d8a798a.zip
gdb-a97fbc7e3ca781b8d95ed8591c6ee65f2d8a798a.tar.gz
gdb-a97fbc7e3ca781b8d95ed8591c6ee65f2d8a798a.tar.bz2
Attribute with DW_FORM_flag_present
PR 19850 * dwarf2.c (read_attribute_value): Skip info_ptr check for DW_FORM_flag_present.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/dwarf2.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 8397f8c..b57cfa5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2016-03-22 Alan Modra <amodra@gmail.com>
+
+ PR 19850
+ * dwarf2.c (read_attribute_value): Skip info_ptr check for
+ DW_FORM_flag_present.
+
2016-03-22 Nick Clifton <nickc@redhat.com>
* cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index 4d6f8fc..addfbf5 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -1003,7 +1003,7 @@ read_attribute_value (struct attribute * attr,
struct dwarf_block *blk;
bfd_size_type amt;
- if (info_ptr >= info_ptr_end)
+ if (info_ptr >= info_ptr_end && form != DW_FORM_flag_present)
{
(*_bfd_error_handler) (_("Dwarf Error: Info pointer extends beyond end of attributes"));
bfd_set_error (bfd_error_bad_value);