]> granicus.if.org Git - imagemagick/blobdiff - coders/mpc.c
(no commit message)
[imagemagick] / coders / mpc.c
index 576a2473c672d99c1f2841ba3640df7287539643..4b0acce95716a07ea3ef992f507d87035c518221 100644 (file)
@@ -17,7 +17,7 @@
 %                                 March 2000                                  %
 %                                                                             %
 %                                                                             %
-%  Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization      %
+%  Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization      %
 %  dedicated to making software imaging solutions freely available.           %
 %                                                                             %
 %  You may not use this file except in compliance with the License.  You may  %
@@ -871,7 +871,7 @@ static Image *ReadMPCImage(const ImageInfo *image_info,ExceptionInfo *exception)
               }
               case 32:
               {
-                size_t
+                unsigned int
                   pixel;
 
                 for (i=0; i < (ssize_t) image->colors; i++)
@@ -1046,7 +1046,8 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
     i;
 
   size_t
-    depth;
+    depth,
+    one;
 
   /*
     Open persistent cache.
@@ -1064,6 +1065,7 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
   AppendImageFormat("cache",cache_filename);
   scene=0;
   offset=0;
+  one=1;
   do
   {
     /*
@@ -1071,20 +1073,20 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
     */
     depth=GetImageQuantumDepth(image,MagickTrue);
     if ((image->storage_class == PseudoClass) &&
-        (image->colors > (1UL << depth)))
+        (image->colors > (one << depth)))
       image->storage_class=DirectClass;
     (void) WriteBlobString(image,"id=MagickCache\n");
     (void) FormatMagickString(buffer,MaxTextExtent,"quantum-depth=%d\n",
       MAGICKCORE_QUANTUM_DEPTH);
     (void) WriteBlobString(image,buffer);
     (void) FormatMagickString(buffer,MaxTextExtent,
-      "class=%s  colors=%lu  matte=%s\n",MagickOptionToMnemonic(
-      MagickClassOptions,image->storage_class),image->colors,
+      "class=%s  colors=%.20g  matte=%s\n",MagickOptionToMnemonic(
+      MagickClassOptions,image->storage_class),(double) image->colors,
       MagickOptionToMnemonic(MagickBooleanOptions,(ssize_t) image->matte));
     (void) WriteBlobString(image,buffer);
     (void) FormatMagickString(buffer,MaxTextExtent,
-      "columns=%lu  rows=%lu  depth=%lu\n",image->columns,image->rows,
-      image->depth);
+      "columns=%.20g  rows=%.20g depth=%.20g\n",(double) image->columns,
+      (double) image->rows,(double) image->depth);
     (void) WriteBlobString(image,buffer);
     if (image->type != UndefinedType)
       {
@@ -1107,8 +1109,8 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
     if (image->compression != UndefinedCompression)
       {
         (void) FormatMagickString(buffer,MaxTextExtent,
-          "compression=%s  quality=%lu\n",MagickOptionToMnemonic(
-          MagickCompressOptions,image->compression),image->quality);
+          "compression=%s  quality=%.20g\n",MagickOptionToMnemonic(
+          MagickCompressOptions,image->compression),(double) image->quality);
         (void) WriteBlobString(image,buffer);
       }
     if (image->units != UndefinedResolution)
@@ -1125,21 +1127,22 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
       }
     if ((image->page.width != 0) || (image->page.height != 0))
       {
-        (void) FormatMagickString(buffer,MaxTextExtent,"page=%lux%lu%+ld%+ld\n",
-          image->page.width,image->page.height,image->page.x,image->page.y);
+        (void) FormatMagickString(buffer,MaxTextExtent,
+          "page=%.20gx%.20g%+.20g%+.20g\n",(double) image->page.width,(double)
+          image->page.height,(double) image->page.x,(double) image->page.y);
         (void) WriteBlobString(image,buffer);
       }
     else
       if ((image->page.x != 0) || (image->page.y != 0))
         {
           (void) FormatMagickString(buffer,MaxTextExtent,"page=%+ld%+ld\n",
-            image->page.x,image->page.y);
+            (long) image->page.x,(long) image->page.y);
           (void) WriteBlobString(image,buffer);
         }
     if ((image->page.x != 0) || (image->page.y != 0))
       {
         (void) FormatMagickString(buffer,MaxTextExtent,"tile-offset=%+ld%+ld\n",
-          image->tile_offset.x,image->tile_offset.y);
+          (long) image->tile_offset.x,(long) image->tile_offset.y);
         (void) WriteBlobString(image,buffer);
       }
     if ((GetNextImageInList(image) != (Image *) NULL) ||
@@ -1147,39 +1150,40 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
       {
         if (image->scene == 0)
           (void) FormatMagickString(buffer,MaxTextExtent,
-            "iterations=%lu  delay=%lu  ticks-per-second=%lu\n",
-            image->iterations,image->delay,image->ticks_per_second);
+            "iterations=%.20g  delay=%.20g  ticks-per-second=%.20g\n",(double)
+            image->iterations,(double) image->delay,(double)
+            image->ticks_per_second);
         else
           (void) FormatMagickString(buffer,MaxTextExtent,
-            "scene=%lu  iterations=%lu  delay=%lu  ticks-per-second=%lu\n",
-            image->scene,image->iterations,image->delay,
-            image->ticks_per_second);
+            "scene=%.20g  iterations=%.20g  delay=%.20g  ticks-per-second=%.20g\n",
+            (double) image->scene,(double) image->iterations,(double)
+            image->delay,(double) image->ticks_per_second);
         (void) WriteBlobString(image,buffer);
       }
     else
       {
         if (image->scene != 0)
           {
-            (void) FormatMagickString(buffer,MaxTextExtent,"scene=%lu\n",
-              image->scene);
+            (void) FormatMagickString(buffer,MaxTextExtent,"scene=%.20g\n",
+              (double) image->scene);
             (void) WriteBlobString(image,buffer);
           }
         if (image->iterations != 0)
           {
-            (void) FormatMagickString(buffer,MaxTextExtent,"iterations=%lu\n",
-              image->iterations);
+            (void) FormatMagickString(buffer,MaxTextExtent,"iterations=%.20g\n",
+              (double) image->iterations);
             (void) WriteBlobString(image,buffer);
           }
         if (image->delay != 0)
           {
-            (void) FormatMagickString(buffer,MaxTextExtent,"delay=%lu\n",
-              image->delay);
+            (void) FormatMagickString(buffer,MaxTextExtent,"delay=%.20g\n",
+              (double) image->delay);
             (void) WriteBlobString(image,buffer);
           }
         if (image->ticks_per_second != UndefinedTicksPerSecond)
           {
             (void) FormatMagickString(buffer,MaxTextExtent,
-              "ticks-per-second=%lu\n",image->ticks_per_second);
+              "ticks-per-second=%.20g\n",(double) image->ticks_per_second);
             (void) WriteBlobString(image,buffer);
           }
       }
@@ -1250,8 +1254,9 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
           profile=GetImageProfile(image,name);
           if (profile != (StringInfo *) NULL)
             {
-              (void) FormatMagickString(buffer,MaxTextExtent,"profile:%s=%lu\n",
-                name,(size_t) GetStringInfoLength(profile));
+              (void) FormatMagickString(buffer,MaxTextExtent,
+                "profile:%s=%.20g\n",name,(double)
+                GetStringInfoLength(profile));
               (void) WriteBlobString(image,buffer);
             }
           name=GetNextImageProfile(image);
@@ -1345,7 +1350,7 @@ static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
               ThrowWriterException(CorruptImageError,"ImageDepthNotSupported");
             case 32:
             {
-              size_t
+              unsigned int
                 pixel;
 
               pixel=ScaleQuantumToLong(image->colormap[i].red);