diff --git a/coders/viff.c b/coders/viff.c
index 7b01de1..a55f5d9 100644
--- a/coders/viff.c
+++ b/coders/viff.c
@@ -974,11 +974,9 @@
     /*
       Initialize VIFF image structure.
     */
-    if (IsImageGray(image,exception) != MagickFalse)
-      (void) SetImageStorageClass(image,DirectClass,exception);
-    else
-      if (IssRGBColorspace(image->colorspace) == MagickFalse)
-        (void) TransformImageColorspace(image,sRGBColorspace,exception);
+    if ((IssRGBColorspace(image->colorspace) == MagickFalse) &&
+        (IsImageGray(image,exception) == MagickFalse))
+      (void) TransformImageColorspace(image,sRGBColorspace,exception);
     viff_info.identifier=(char) 0xab;
     viff_info.file_type=1;
     viff_info.release=1;