]> granicus.if.org Git - imagemagick/commitdiff
Do not use virtual pixels if image dimensions evenly divisible by tile dimensions
authorCristy <urban-warrior@imagemagick.org>
Sat, 5 Jan 2019 20:28:59 +0000 (15:28 -0500)
committerCristy <urban-warrior@imagemagick.org>
Sat, 5 Jan 2019 20:28:59 +0000 (15:28 -0500)
MagickCore/enhance.c

index ba91ffeabf09367940278147917fd20bb07ffaee..773b516b0c4c6122954f727c5cd4cbb2c415a013 100644 (file)
@@ -659,8 +659,12 @@ MagickExport MagickBooleanType CLAHEImage(Image *image,const size_t width,
   tile_info.height=height;
   if (tile_info.height == 0)
     tile_info.height=image->rows >> 3;
-  tile_info.x=(ssize_t) tile_info.width-(image->columns % tile_info.width);
-  tile_info.y=(ssize_t) tile_info.height-(image->rows % tile_info.height);
+  tile_info.x=0;
+  if ((image->columns % tile_info.width) != 0)
+    tile_info.x=(ssize_t) tile_info.width-(image->columns % tile_info.width);
+  tile_info.y=0;
+  if ((image->rows % tile_info.height) != 0)
+    tile_info.y=(ssize_t) tile_info.height-(image->rows % tile_info.height);
   clahe_info.width=image->columns+tile_info.x;
   clahe_info.height=image->rows+tile_info.y;
   clahe_info.x=(ssize_t) clahe_info.width/tile_info.width;