File GraphicsMagick-CVE-2016-10068.patch of Package GraphicsMagick.7782

From 56d6e20de489113617cbbddaf41e92600a34db22 Mon Sep 17 00:00:00 2001
From: Cristy <urban-warrior@imagemagick.org>
Date: Wed, 2 Nov 2016 17:07:05 -0400
Subject: [PATCH] Prevent fault in MSL interpreter

---
 ChangeLog    | 2 ++
 coders/msl.c | 2 ++
 2 files changed, 4 insertions(+)

Index: GraphicsMagick-1.3.25/coders/msl.c
===================================================================
--- GraphicsMagick-1.3.25.orig/coders/msl.c	2016-09-05 21:20:23.000000000 +0200
+++ GraphicsMagick-1.3.25/coders/msl.c	2017-01-25 17:01:13.498901943 +0100
@@ -2536,6 +2536,9 @@ MSLStartElement(void *context,const xmlC
                           Image
                             *next_image;
 
+                           if (value == (char *) NULL)
+                             break;
+
                           (void) strlcpy(msl_info->image_info[n]->filename,
                                          value,
                                          sizeof(msl_info->image_info[n]->filename));
@@ -2654,18 +2657,19 @@ MSLStartElement(void *context,const xmlC
           }
         else if (LocaleCompare((char *) name,"resize") == 0)
           {
-            /* init the values */
-            width=msl_info->image[n]->columns;
-            height=msl_info->image[n]->rows;
-            x=0;
-            y=0;
-
             if (msl_info->image[n] == (Image *) NULL)
               {
                 ThrowException(msl_info->exception,OptionError,
                                NoImagesDefined,(char *) name);
                 break;
               }
+
+            /* init the values */
+            width=msl_info->image[n]->columns;
+            height=msl_info->image[n]->rows;
+            x=0;
+            y=0;
+
             if (attributes == (const xmlChar **) NULL)
               break;
             for (i=0; (attributes[i] != (const xmlChar *) NULL); i++)
openSUSE Build Service is sponsored by