Cast to unsigned long in range checks

* peXXigen.c (pe_print_idata): Cast to unsigned long in range
	checks.
This commit is contained in:
H.J. Lu 2014-11-07 13:39:15 -08:00
parent cf61b7473a
commit 0115826241
2 changed files with 7 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2014-11-07 H.J. Lu <hongjiu.lu@intel.com>
* peXXigen.c (pe_print_idata): Cast to unsigned long in range
checks.
2014-11-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/17482

View File

@ -1467,7 +1467,7 @@ pe_print_idata (bfd * abfd, void * vfile)
member_high, member,
WithoutHighBit (member_high), member);
/* PR binutils/17512: Handle corrupt PE data. */
else if (member - adj + 2 >= datasize)
else if (member - adj + 2 >= (unsigned long) datasize)
fprintf (file, _("\t<corrupt: 0x%04lx>"), member);
else
{
@ -1502,7 +1502,7 @@ pe_print_idata (bfd * abfd, void * vfile)
fprintf (file, "\t%04lx\t %4lu <none>",
member, WithoutHighBit (member));
/* PR binutils/17512: Handle corrupt PE data. */
else if (member - adj + 2 >= datasize)
else if (member - adj + 2 >= (unsigned long) datasize)
fprintf (file, _("\t<corrupt: 0x%04lx>"), member);
else
{