]> granicus.if.org Git - imagemagick/commitdiff
MagickCore/pixel-accessor.h: resolve null pointer dereference
authorIlya Shipitsin <chipitsine@gmail.com>
Fri, 14 Sep 2018 09:47:27 +0000 (14:47 +0500)
committerDirk Lemstra <dirk@git.imagemagick.org>
Fri, 14 Sep 2018 12:57:37 +0000 (14:57 +0200)
found by coverity

MagickCore/pixel-accessor.h

index 27ecc0af2e15e618e418765490d1e9d116d2d8df..d35a3676fd02cdc302b94849491007ff7baeab6f 100644 (file)
@@ -399,27 +399,27 @@ static inline void GetPixelInfoPixel(const Image *magick_restrict image,
       pixel_info->fuzz=image->fuzz;
       pixel_info->depth=image->depth;
       pixel_info->alpha_trait=image->alpha_trait;
-    }
-  if (pixel != (Quantum *) NULL)
-    {
-      pixel_info->red=(MagickRealType)
-        pixel[image->channel_map[RedPixelChannel].offset];
-      pixel_info->green=(MagickRealType)
-        pixel[image->channel_map[GreenPixelChannel].offset];
-      pixel_info->blue=(MagickRealType)
-        pixel[image->channel_map[BluePixelChannel].offset];
-      if (image->channel_map[BlackPixelChannel].traits != UndefinedPixelTrait)
-        pixel_info->black=(MagickRealType)
-          pixel[image->channel_map[BlackPixelChannel].offset];
-      if (image->channel_map[AlphaPixelChannel].traits != UndefinedPixelTrait)
+      if (pixel != (Quantum *) NULL)
         {
-          pixel_info->alpha=(MagickRealType)
-            pixel[image->channel_map[AlphaPixelChannel].offset];
-          pixel_info->alpha_trait=BlendPixelTrait;
-        }
-      if (image->channel_map[IndexPixelChannel].traits != UndefinedPixelTrait)
-        pixel_info->index=(MagickRealType)
-      pixel[image->channel_map[IndexPixelChannel].offset];
+          pixel_info->red=(MagickRealType)
+            pixel[image->channel_map[RedPixelChannel].offset];
+          pixel_info->green=(MagickRealType)
+            pixel[image->channel_map[GreenPixelChannel].offset];
+          pixel_info->blue=(MagickRealType)
+            pixel[image->channel_map[BluePixelChannel].offset];
+          if (image->channel_map[BlackPixelChannel].traits != UndefinedPixelTrait)
+            pixel_info->black=(MagickRealType)
+              pixel[image->channel_map[BlackPixelChannel].offset];
+          if (image->channel_map[AlphaPixelChannel].traits != UndefinedPixelTrait)
+            {
+              pixel_info->alpha=(MagickRealType)
+                pixel[image->channel_map[AlphaPixelChannel].offset];
+              pixel_info->alpha_trait=BlendPixelTrait;
+            }
+          if (image->channel_map[IndexPixelChannel].traits != UndefinedPixelTrait)
+            pixel_info->index=(MagickRealType)
+          pixel[image->channel_map[IndexPixelChannel].offset];
+      }
     }
 }