]> granicus.if.org Git - imagemagick/commitdiff
...
authorCristy <mikayla-grace@urban-warrior.org>
Sat, 9 Feb 2019 16:36:46 +0000 (11:36 -0500)
committerCristy <mikayla-grace@urban-warrior.org>
Sat, 9 Feb 2019 16:36:46 +0000 (11:36 -0500)
MagickCore/constitute.c

index e737d5753b45844c2b26542a754a76e53d686be9..9456536fc5751773d97a23632453f1d9247f433c 100644 (file)
@@ -627,29 +627,17 @@ MagickExport Image *ReadImage(const ImageInfo *image_info,
       "notify the developers",image->magick,exception->severity);
   if (IsBlobTemporary(image) != MagickFalse)
     (void) RelinquishUniqueFileResource(read_info->filename);
-  if (IsSceneGeometry(read_info->scenes,MagickFalse) != MagickFalse)
+  if ((IsSceneGeometry(read_info->scenes,MagickFalse) != MagickFalse) &&
+      (GetImageListLength(image) != 1))
     {
-      int 
-        first_scene,
-        last_scene,
-        n;
-
       Image
         *clones;
 
-      n=sscanf(read_info->scenes,"%d-%d",&first_scene,&last_scene);
-      if (n == 2)
+      clones=CloneImages(image,read_info->scenes,exception);
+      if (clones != (Image *) NULL)
         {
-          clones=CloneImages(image,read_info->scenes,exception);
-          if (clones == (Image *) NULL)
-            (void) ThrowMagickException(exception,GetMagickModule(),OptionError,
-              "SubimageSpecificationReturnsNoImages","`%s'",
-              read_info->filename);
-          else
-            {
-              image=DestroyImageList(image);
-              image=GetFirstImageInList(clones);
-            }
+          image=DestroyImageList(image);
+          image=GetFirstImageInList(clones);
         }
     }
   for (next=image; next != (Image *) NULL; next=GetNextImageInList(next))