Commit ac3f08d7c for imagemagick.org

commit ac3f08d7cef143819a456203cf399c6eda190e46
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Wed Mar 4 17:54:23 2026 -0500

    https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-5q69-ghxh-wxxx

diff --git a/MagickCore/visual-effects.c b/MagickCore/visual-effects.c
index 3a49fd8f5..d124ce7b8 100644
--- a/MagickCore/visual-effects.c
+++ b/MagickCore/visual-effects.c
@@ -3554,10 +3554,17 @@ MagickExport Image *WaveletDenoiseImage(const Image *image,
   assert(exception->signature == MagickCoreSignature);
   if (IsEventLogging() != MagickFalse)
     (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
+  number_pixels=(MagickSizeType) image->columns*image->rows;
+  while ((number_levels > 0) &&
+         (((size_t) 1 << (number_levels-1)) >= MagickMin(image->columns,image->rows)))
+    number_levels--;
 #if defined(MAGICKCORE_OPENCL_SUPPORT)
-  noise_image=AccelerateWaveletDenoiseImage(image,threshold,exception);
-  if (noise_image != (Image *) NULL)
-    return(noise_image);
+  if (number_levels >= 5)
+    {
+       noise_image=AccelerateWaveletDenoiseImage(image,threshold,exception);
+       if (noise_image != (Image *) NULL)
+         return(noise_image);
+    }
 #endif
   noise_image=CloneImage(image,0,0,MagickTrue,exception);
   if (noise_image == (Image *) NULL)
@@ -3583,10 +3590,6 @@ MagickExport Image *WaveletDenoiseImage(const Image *image,
     }
   pixels=(float *) GetVirtualMemoryBlob(pixels_info);
   status=MagickTrue;
-  number_pixels=(MagickSizeType) image->columns*image->rows;
-  while ((number_levels > 0) &&
-         (((size_t) 1 << (number_levels-1)) >= MagickMin(image->columns,image->rows)))
-    number_levels--;
   image_view=AcquireAuthenticCacheView(image,exception);
   noise_view=AcquireAuthenticCacheView(noise_image,exception);
   for (channel=0; channel < (ssize_t) GetPixelChannels(image); channel++)
@@ -3595,8 +3598,8 @@ MagickExport Image *WaveletDenoiseImage(const Image *image,
       i;

     size_t
-      high_pass = 0,
-      low_pass = 0;
+      high_pass,
+      low_pass;

     ssize_t
       level,