File GraphicsMagick-CVE-2014-9837.patch of Package GraphicsMagick.7727

Index: GraphicsMagick-1.2.5/coders/pnm.c
===================================================================
--- GraphicsMagick-1.2.5.orig/coders/pnm.c	2016-06-15 12:17:57.978424641 +0200
+++ GraphicsMagick-1.2.5/coders/pnm.c	2016-06-15 12:20:21.400731310 +0200
@@ -129,7 +129,7 @@ static unsigned int PNMInteger(Image *im
   int
     c;
 
-  unsigned long
+  unsigned int
     value;
 
   /*
@@ -189,14 +189,18 @@ static unsigned int PNMInteger(Image *im
       }
   } while (!isdigit(c));
   if (base == 2)
-    return(c-'0');
+    return((unsigned int) (c-(int)'0'));
   /*
     Evaluate number.
   */
   value=0;
   do
   {
+    if (value > (unsigned int) (INT_MAX/10))
+      break;
     value*=10;
+    if (value > (INT_MAX-c))
+      break;
     value+=c-'0';
     c=ReadBlobByte(image);
     if (c == EOF)
openSUSE Build Service is sponsored by