Fix readelf so it doesn't complain about corrupt attribute.

When a DW_FORM_flag_present attribute comes at the very end of a
debug section, readelf complains about a corrupt attribute
because it's checking to make sure there's at least one byte of
data remaining. This patch suppresses the check when the form
is DW_FORM_flag_present.

2014-02-11  Cary Coutant  <ccoutant@google.com>

	* binutils/dwarf.c (read_and_display_attr_value): Don't warn
	for zero-length attribute value.
This commit is contained in:
Cary Coutant 2014-02-11 11:33:49 -08:00
parent dd0c4e70fe
commit 503a609192
2 changed files with 6 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2014-02-11 Cary Coutant <ccoutant@google.com>
* binutils/dwarf.c (read_and_display_attr_value): Don't warn
for zero-length attribute value.
2014-02-10 Alan Modra <amodra@gmail.com>
* po/binutils.pot: Regenerate.

View file

@ -1468,7 +1468,7 @@ read_and_display_attr_value (unsigned long attribute,
unsigned char * orig_data = data;
unsigned int bytes_read;
if (data == end)
if (data == end && form != DW_FORM_flag_present)
{
warn (_("corrupt attribute\n"));
return data;