diff --git a/coders/bmp.c b/coders/bmp.c
index b0bc283..bd5bc3a 100644
--- a/coders/bmp.c
+++ b/coders/bmp.c
@@ -1517,7 +1517,7 @@
     bmp_info.offset_bits=bmp_info.file_size;
     bmp_info.compression=BI_RGB;
     if ((image->storage_class == PseudoClass) && (image->colors > 256))
-      (void) SetImageStorageClass(image,DirectClass);
+      (void) SetImageStorageClass(image,DirectClass,&image->exception);
     if (image->storage_class != DirectClass)
       {
         /*
@@ -1536,10 +1536,10 @@
           bmp_info.bits_per_pixel=8;
         bmp_info.number_colors=1U << bmp_info.bits_per_pixel;
         if (image->matte != MagickFalse)
-          (void) SetImageStorageClass(image,DirectClass);
+          (void) SetImageStorageClass(image,DirectClass,&image->exception);
         else
           if ((size_t) bmp_info.number_colors < image->colors)
-            (void) SetImageStorageClass(image,DirectClass);
+            (void) SetImageStorageClass(image,DirectClass,&image->exception);
           else
             {
               bmp_info.file_size+=3*(1UL << bmp_info.bits_per_pixel);
diff --git a/coders/histogram.c b/coders/histogram.c
index 6ce7d7b..619d80e 100644
--- a/coders/histogram.c
+++ b/coders/histogram.c
@@ -243,7 +243,7 @@
     &image->exception);
   if (histogram_image == (Image *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
-  (void) SetImageStorageClass(histogram_image,DirectClass);
+  (void) SetImageStorageClass(histogram_image,DirectClass,&image->exception);
   /*
     Allocate histogram count arrays.
   */
diff --git a/coders/icon.c b/coders/icon.c
index 3a7e7aa..6a18c0f 100644
--- a/coders/icon.c
+++ b/coders/icon.c
@@ -900,7 +900,7 @@
         icon_info.offset_bits=icon_info.file_size;
         icon_info.compression=BI_RGB;
         if ((next->storage_class != DirectClass) && (next->colors > 256))
-          (void) SetImageStorageClass(next,DirectClass);
+          (void) SetImageStorageClass(next,DirectClass,&next->exception);
         if (next->storage_class == DirectClass)
           {
             /*
@@ -929,7 +929,7 @@
             icon_info.number_colors=one << icon_info.bits_per_pixel;
             if (icon_info.number_colors < next->colors)
               {
-                (void) SetImageStorageClass(next,DirectClass);
+                (void) SetImageStorageClass(next,DirectClass,&next->exception);
                 icon_info.number_colors=0;
                 icon_info.bits_per_pixel=(unsigned short) 24;
                 icon_info.compression=(size_t) BI_RGB;
diff --git a/coders/miff.c b/coders/miff.c
index 3239a07..4e41975 100644
--- a/coders/miff.c
+++ b/coders/miff.c
@@ -1882,7 +1882,7 @@
       }
     if ((image->storage_class == PseudoClass) &&
         (image->colors > (size_t) (GetQuantumRange(image->depth)+1)))
-      (void) SetImageStorageClass(image,DirectClass);
+      (void) SetImageStorageClass(image,DirectClass,&image->exception);
     if (IsImageGray(image,&image->exception) != MagickFalse)
       {
         image->storage_class=DirectClass;
diff --git a/coders/palm.c b/coders/palm.c
index cc85499..91cc209 100644
--- a/coders/palm.c
+++ b/coders/palm.c
@@ -748,7 +748,7 @@
         (void) SortColormapByIntensity(image);
       }
     if ((image->storage_class == PseudoClass) && (image->colors > 256))
-      (void) SetImageStorageClass(image,DirectClass);
+      (void) SetImageStorageClass(image,DirectClass,&image->exception);
     if (image->storage_class == PseudoClass)
       flags|=PALM_HAS_COLORMAP_FLAG;
     else
diff --git a/coders/tiff.c b/coders/tiff.c
index ea73e3b..5723cdd 100644
--- a/coders/tiff.c
+++ b/coders/tiff.c
@@ -1450,7 +1450,7 @@
             TIFFClose(tiff);
             ThrowReaderException(CoderError,"ImageIsNotTiled");
           }
-        (void) SetImageStorageClass(image,DirectClass);
+        (void) SetImageStorageClass(image,DirectClass,&image->exception);
         number_pixels=columns*rows;
         tile_pixels=(uint32 *) AcquireQuantumMemory(number_pixels,
           sizeof(*tile_pixels));
@@ -2658,7 +2658,7 @@
       }
       case JPEGCompression:
       {
-        (void) SetImageStorageClass(image,DirectClass);
+        (void) SetImageStorageClass(image,DirectClass,&image->exception);
         (void) SetImageDepth(image,8);
         break;
       }
@@ -2683,7 +2683,7 @@
             {
               photometric=PHOTOMETRIC_YCBCR;
               (void) TIFFSetField(tiff,TIFFTAG_YCBCRSUBSAMPLING,1,1);
-              (void) SetImageStorageClass(image,DirectClass);
+              (void) SetImageStorageClass(image,DirectClass,&image->exception);
               (void) SetImageDepth(image,8);
             }
           else
diff --git a/coders/viff.c b/coders/viff.c
index a4fae9d..2cb07e1 100644
--- a/coders/viff.c
+++ b/coders/viff.c
@@ -973,7 +973,7 @@
     if (IsRGBColorspace(image->colorspace) == MagickFalse)
       (void) TransformImageColorspace(image,RGBColorspace);
     if (IsImageGray(image,&image->exception) != MagickFalse)
-      (void) SetImageStorageClass(image,DirectClass);
+      (void) SetImageStorageClass(image,DirectClass,&image->exception);
     viff_info.identifier=(char) 0xab;
     viff_info.file_type=1;
     viff_info.release=1;