]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Wed, 4 Jul 2012 23:36:00 +0000 (23:36 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Wed, 4 Jul 2012 23:36:00 +0000 (23:36 +0000)
MagickCore/channel.c

index 04546841d8c253c2a545985232cf4d67b67ca79a..bd808a156e6e270736f77155bf8879bc683598b4 100644 (file)
@@ -651,7 +651,6 @@ MagickExport Image *SeparateImage(const Image *image,
       return((Image *) NULL);
     }
   separate_image->matte=MagickFalse;
-  (void) SetImageColorspace(separate_image,GRAYColorspace,exception);
   /*
     Separate image.
   */
@@ -731,8 +730,10 @@ MagickExport Image *SeparateImage(const Image *image,
   }
   separate_view=DestroyCacheView(separate_view);
   image_view=DestroyCacheView(image_view);
-  (void) SetImageColorspace(separate_image,image->colorspace,exception);
-  (void) TransformImageColorspace(separate_image,GRAYColorspace,exception);
+  if (IssRGBColorspace(image->colorspace) == MagickFalse)
+    (void) SetImageColorspace(separate_image,GRAYColorspace,exception);
+  else
+    (void) TransformImageColorspace(separate_image,GRAYColorspace,exception);
   return(separate_image);
 }
 \f