diff --git a/wand/mogrify.c b/wand/mogrify.c
index 3d2e604..fa00c0c 100644
--- a/wand/mogrify.c
+++ b/wand/mogrify.c
@@ -7705,6 +7705,7 @@
       (*images)->filename);
   if ((argc <= 0) || (*argv == (char *) NULL))
     return(MagickTrue);
+  PageIndexImageList(*images);
   mogrify_info=CloneImageInfo(image_info);
   quantize_info=AcquireQuantizeInfo(mogrify_info);
   channel=mogrify_info->channel;
@@ -7956,24 +7957,29 @@
           }
         if (LocaleCompare("duplicate",option+1) == 0)
           {
-            size_t
-              number_duplicates;
+            Image *
+              duplicate_images;
 
-            char
-              *p;
+            if (*option == '+')
+              duplicate_images = DuplicateImages(*images,1,"-1",
+                     exception);
+            else {
+                size_t
+                  number_duplicates;
 
-            if (*option == '+') {
-              AppendImageToList(images,DuplicateImages(*images,1,"-1",
-                     exception));
-              break;
-            }
-            number_duplicates=(size_t) StringToLong(argv[i+1]);
-            if ( (p=strchr(argv[i+1],',')) != (char *)NULL )
-              AppendImageToList(images,DuplicateImages(*images,
-                     number_duplicates,p,exception));
-            else
-              AppendImageToList(images,DuplicateImages(*images,
-                     number_duplicates,"-1",exception));
+                char
+                  *p;
+
+                number_duplicates=(size_t) StringToLong(argv[i+1]);
+                if ( (p=strchr(argv[i+1],',')) != (char *)NULL )
+                  duplicate_images = DuplicateImages(*images,
+                        number_duplicates,p,exception);
+                else
+                  duplicate_images = DuplicateImages(*images,
+                        number_duplicates,"-1",exception);
+              }
+            AppendImageToList(images, duplicate_images);
+            (void) SyncImagesSettings(mogrify_info,*images);
             break;
           }
         break;