]> granicus.if.org Git - imagemagick/commitdiff
Eliminate heap-buffer-overflow in PushLongPixel()
authorCristy <urban-warrior@imagemagick.org>
Sat, 27 Jan 2018 02:06:17 +0000 (21:06 -0500)
committerCristy <urban-warrior@imagemagick.org>
Sat, 27 Jan 2018 02:06:17 +0000 (21:06 -0500)
Credit OSS Fuzz

MagickCore/quantum-import.c

index c3d76321121e472465e1b3f2bf39317dd8f066e2..ca7d06a3f237d83c77fffc18f2f8ecf811537196 100644 (file)
@@ -2130,9 +2130,9 @@ static void ImportGrayQuantum(const Image *image,QuantumInfo *quantum_info,
                 p+=quantum_info->pad;
                 q+=GetPixelChannels(image);
               }
-              p=PushLongPixel(quantum_info->endian,p,&pixel);
               if (x++ < (ssize_t) (number_pixels-1))
                 {
+                  p=PushLongPixel(quantum_info->endian,p,&pixel);
                   SetPixelGray(image,ScaleAnyToQuantum((pixel >> 22) & 0x3ff,
                     range),q);
                   q+=GetPixelChannels(image);