]> granicus.if.org Git - imagemagick/commitdiff
Added NULL checks.
authordirk <dirk@git.imagemagick.org>
Sun, 18 May 2014 06:47:17 +0000 (06:47 +0000)
committerdirk <dirk@git.imagemagick.org>
Sun, 18 May 2014 06:47:17 +0000 (06:47 +0000)
coders/dds.c

index 18e547cc28ebe106c25526db38d9a4248bf7a118..dd6034e82f89c02d9515d7cbe6bcc7e4feecc845 100644 (file)
@@ -1704,8 +1704,9 @@ static Image *ReadDDSImage(const ImageInfo *image_info,ExceptionInfo *exception)
     alpha_trait;
   
   size_t
-    n, num_images;
-  
+    n,
+    num_images;
+
   /*
     Open image file.
   */
@@ -1822,10 +1823,7 @@ static Image *ReadDDSImage(const ImageInfo *image_info,ExceptionInfo *exception)
         /* Start a new image */
         AcquireNextImage(image_info,image,exception);
         if (GetNextImageInList(image) == (Image *) NULL)
-          {
-            image = DestroyImageList(image);
-            return((Image *) NULL);
-          }
+          return(DestroyImageList(image));
         image=SyncNextImageInList(image);
       }
     
@@ -2770,6 +2768,8 @@ static void WriteFourCC(Image *image, const size_t compression,
         rows = image->rows - y;
 
       p=GetVirtualPixels(image,x,y,columns,rows,exception);
+      if (p == (const Quantum *) NULL)
+        break;
 
       for (i=0; i<16; i++)
       {
@@ -3007,6 +3007,8 @@ static void WriteUncompressed(Image *image, ExceptionInfo *exception)
   for (y=0; y < (ssize_t) image->rows; y++)
   {
     p=GetVirtualPixels(image,0,y,image->columns,1,exception);
+    if (p == (const Quantum *) NULL)
+      break;
 
     for (x=0; x < (ssize_t) image->columns; x++)
     {