]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Fri, 5 Mar 2010 02:15:05 +0000 (02:15 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Fri, 5 Mar 2010 02:15:05 +0000 (02:15 +0000)
magick/blob.c
magick/transform.c

index d78ef8a6d35aefecac70beb2ec09816593f5a72c..59688433c49307a7f9ec2f720710d68b7e36dbfd 100644 (file)
@@ -2040,6 +2040,10 @@ MagickExport unsigned char *MapBlob(int file,const MapMode mode,
       flags|=MAP_SHARED;
       map=(unsigned char *) mmap((char *) NULL,length,protection,flags,file,
         (off_t) offset);
+#if defined(MAGICKCORE_HAVE_POSIX_MADVISE)
+      (void) posix_madvise(map,length,POSIX_MADV_SEQUENTIAL |
+        POSIX_MADV_WILLNEED);
+#endif
       break;
     }
     case IOMode:
index 3d16bdb52122aa8c0b898536f7ec84b120851629..819ddbb5283584c991e4c8205445ddcad452f742 100644 (file)
@@ -1840,7 +1840,14 @@ MagickExport MagickBooleanType TransformImage(Image **image,
                    break;
                  (void) SetImageProgressMonitor(next,progress_monitor,
                    next->client_data);
-                 AppendImageToList(&crop_image,next);
+                 if (crop_image == (Image *) NULL)
+                   crop_image=next;
+                 else
+                   {
+                     next->previous=crop_image;
+                     crop_image->next=next;
+                     crop_image=crop_image->next;
+                   }
                }
                if (next == (Image *) NULL)
                  break;