components/binutils/patches/ihex.c.patch
author Stefan Teleman <stefan.teleman@oracle.com>
Thu, 19 Nov 2015 14:12:20 -0800
changeset 5110 92c73cda9414
permissions -rw-r--r--
22199341 libbfd's file caching scheme bombs in 32-bit
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5110
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     1
# Patch is from RedHat binutils-2.25.1 src rpm.
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     2
# No need to send to binutils, they know about it.
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     3
--- bfd/ihex.c	2014-11-04 01:54:41.000000000 -0800
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     4
+++ bfd/ihex.c	2015-11-14 22:31:59.559502520 -0800
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     5
@@ -219,7 +219,7 @@
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     6
       char buf[10];
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     7
 
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     8
       if (! ISPRINT (c))
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     9
-	sprintf (buf, "\\%03o", (unsigned int) c);
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    10
+	sprintf (buf, "\\%03o", (unsigned int) (c & 0xff));
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    11
       else
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    12
 	{
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    13
 	  buf[0] = c;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
@@ -276,7 +276,7 @@
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
       else
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    16
 	{
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
 	  file_ptr pos;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
-	  char hdr[8];
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
+	  unsigned char hdr[8];
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
 	  unsigned int i;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
 	  unsigned int len;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
 	  bfd_vma addr;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
@@ -553,7 +553,7 @@
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
   error = FALSE;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    25
   while ((c = ihex_get_byte (abfd, &error)) != EOF)
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    26
     {
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
-      char hdr[8];
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
+      unsigned char hdr[8];
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
       unsigned int len;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
       unsigned int type;
92c73cda9414 22199341 libbfd's file caching scheme bombs in 32-bit
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    31
       unsigned int i;