]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Wed, 24 Aug 2011 17:31:30 +0000 (17:31 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Wed, 24 Aug 2011 17:31:30 +0000 (17:31 +0000)
MagickCore/magick-type.h
MagickCore/pixel.c

index 20e73689a161732a647fe27e32fdd22c91e1047a..797a410fd5f148a9dc63dd8932f135dfc6d2f94e 100644 (file)
@@ -148,7 +148,7 @@ typedef enum
   AlphaChannel = 0x0008,
   OpacityChannel = 0x0008,
   BlackChannel = 0x0010,
-  IndexChannel = 0x0010,
+  IndexChannel = 0x0020,
   CompositeChannels = 0x002F,
   AllChannels = ~0L,
   /*
@@ -158,7 +158,7 @@ typedef enum
   RGBChannels = 0x0080,      /* set alpha from grayscale mask in RGB */
   GrayChannels = 0x0080,
   SyncChannels = 0x0100,     /* channels should be modified equally */
-  DefaultChannels = ((AllChannels | SyncChannels) &~ (AlphaChannel || IndexChannel))
+  DefaultChannels = ((AllChannels | SyncChannels) &~ AlphaChannel)
 } ChannelType;
 
 typedef enum
index b5c2262569a32d66f36f35265e80695561682aa9..4f1a5f2e6e31686382fc05b2ecd7810db8d03988 100644 (file)
@@ -3607,7 +3607,6 @@ MagickExport void InitializePixelChannelMap(Image *image)
   image->number_channels+=image->number_meta_channels;
   for ( ; i < (ssize_t) image->number_channels; i++)
     SetPixelChannelMapTraits(image,(PixelChannel) i,CopyPixelTrait);
-  SetPixelChannelMap(image,image->channel_mask);
 }
 \f
 /*
@@ -4914,17 +4913,18 @@ MagickExport MagickBooleanType IsFuzzyEquivalencePixelPacket(const Image *image,
 */
 MagickExport void SetPixelChannelMap(Image *image,const ChannelType mask)
 {
-#define GetChannelBit(alpha,i)  (((size_t) (alpha) >> (size_t) (i)) & 0x01)
+#define GetChannelBit(mask,bit)  (((size_t) (mask) >> (size_t) (bit)) & 0x01)
 
   register ssize_t
     i;
 
   image->sync=mask == DefaultChannels ? MagickTrue : MagickFalse;
   for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
-    SetPixelChannelMapTraits(image,(PixelChannel) i,GetChannelBit(mask,i) ?
+    SetPixelChannelMapTraits(image,(PixelChannel) i,GetChannelBit(mask,i) != 0 ?
       UpdatePixelTrait : CopyPixelTrait);
   for ( ; i < MaxPixelChannels; i++)
     SetPixelChannelMapTraits(image,(PixelChannel) i,UndefinedPixelTrait);
+  SetPixelChannelMapTraits(image,IndexPixelChannel,CopyPixelTrait);
 }
 \f
 /*