Blob Blame History Raw
--- khtml/imload/decoders/pngloader.cpp
+++ khtml/imload/decoders/pngloader.cpp
@@ -109,6 +109,8 @@ private:
             
             if (colorType == PNG_COLOR_TYPE_RGB)
                 colorType =  PNG_COLOR_TYPE_RGB_ALPHA; //Paranoia..
+            else if (colorType == PNG_COLOR_TYPE_GRAY)
+                colorType = PNG_COLOR_TYPE_GRAY_ALPHA;
         }    
             
         ImageFormat imFrm;    
@@ -192,6 +194,7 @@ private:
     {
         if (interlaced)
         {
+            Q_ASSERT(pngReadStruct->row_info.pixel_depth <= depth * 8);
             requestScanline(rowNum, scanlineBuf);
             png_progressive_combine_row(pngReadStruct, scanlineBuf, data);
             notifyScanline(pass + 1, scanlineBuf);