]> granicus.if.org Git - imagemagick/commitdiff
Removed redundant calls to png_set_cHRM and png_set_sRGB from coders/png.c
authorglennrp <glennrp@git.imagemagick.org>
Wed, 16 Jan 2013 02:44:03 +0000 (02:44 +0000)
committerglennrp <glennrp@git.imagemagick.org>
Wed, 16 Jan 2013 02:44:03 +0000 (02:44 +0000)
coders/png.c

index 6e58c63fdd318c7e0407d25b3b28e39636c73d52..def0f86bd9d53180a5b4a112ea55514f963ba4ec 100644 (file)
@@ -2502,18 +2502,23 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
         &image->chromaticity.blue_primary.x,
         &image->chromaticity.blue_primary.y);
 
+      ping_found_cHRM=MagickTrue;
     }
 
   if (image->rendering_intent != UndefinedIntent)
     {
-      png_set_sRGB(ping,ping_info,
-         Magick_RenderingIntent_to_PNG_RenderingIntent
-         (image->rendering_intent));
-      png_set_gAMA(ping,ping_info,1.000f/2.200f);
-      png_set_cHRM(ping,ping_info,
-                  0.3127f, 0.3290f, 0.6400f, 0.3300f,
-                  0.3000f, 0.6000f, 0.1500f, 0.0600f);
+      if (ping_found_sRGB != MagickTrue)
+      {
+         png_set_sRGB(ping,ping_info,
+            Magick_RenderingIntent_to_PNG_RenderingIntent
+            (image->rendering_intent));
+         png_set_gAMA(ping,ping_info,1.000f/2.200f);
+         file_gamma=1.000f/2.200f;
+         ping_found_sRGB=MagickTrue;
+         ping_found_cHRM=MagickTrue;
+      }
     }
+
 #if defined(PNG_oFFs_SUPPORTED)
   if (png_get_valid(ping,ping_info,PNG_INFO_oFFs))
     {
@@ -2804,8 +2809,7 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
     {
       if ((!png_get_valid(ping,ping_info,PNG_INFO_gAMA) ||
           image->gamma == 1.0) &&
-          !png_get_valid(ping,ping_info,PNG_INFO_cHRM) &&
-          !png_get_valid(ping,ping_info,PNG_INFO_sRGB))
+          ping_found_cHRM != MagickTrue && ping_found_sRGB != MagickTrue)
         {
           /* Set image->gamma to 1.0, image->rendering_intent to Undefined,
            * image->colorspace to GRAY, and reset image->chromaticity.