Commit 6ace96334 for imagemagick.org

commit 6ace96334ea7d0a42d1c900614008ef8616956e8
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Sat Sep 5 22:37:20 2026 -0400

    append random hex code to backup filename

diff --git a/MagickWand/mogrify.c b/MagickWand/mogrify.c
index 7b1fa2e0f..d9ce51dad 100644
--- a/MagickWand/mogrify.c
+++ b/MagickWand/mogrify.c
@@ -3904,18 +3904,35 @@ WandExport MagickBooleanType MogrifyImageCommand(ImageInfo *image_info,
         if ((LocaleCompare(image->filename,"-") != 0) &&
             (IsPathWritable(image->filename) != MagickFalse))
           {
+            RandomInfo
+              *random_info;
+
             /*
               Generate a temporary filename to write the new image to.
             */
+            random_info=AcquireRandomInfo();
             (void) CopyMagickString(backup_filename,image->filename,
               MagickPathExtent);
-            for (j=0; j < 6; j++)
+            for (j=0; j < 100; j++)
             {
-              (void) ConcatenateMagickString(backup_filename,"~",
-                MagickPathExtent);
+              StringInfo
+                *key_info;
+
+              unsigned char
+                *key_bytes;
+
+              key_info=GetRandomKey(random_info,4);
+              if (key_info == (StringInfo *) NULL)
+                break;
+              key_bytes=GetStringInfoDatum(key_info);
+              (void) FormatLocaleString(backup_filename,MagickPathExtent,
+                "%s~%02x%02x%02x%02x",image->filename,key_bytes[0],key_bytes[1],
+                key_bytes[2],key_bytes[3]);
+              key_info=DestroyStringInfo(key_info);
               if (IsPathAccessible(backup_filename) == MagickFalse)
                 break;
             }
+            random_info=DestroyRandomInfo(random_info);
             if (IsPathAccessible(backup_filename) != MagickFalse)
               *backup_filename='\0';
           }