aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristy <mikayla-grace@urban-warrior.org>2021-01-03 11:18:46 -0500
committerCristy <mikayla-grace@urban-warrior.org>2021-01-03 11:18:46 -0500
commit636ebf7ba9a8d24a0fdc736cd65bf5e73f9a966c (patch)
tree952606529079c4d2acc2d83b613ff76771974de1
parent87284751ae4dadda2f8ed9e47f8f7bb0cb510561 (diff)
downloadImageMagick-636ebf7ba9a8d24a0fdc736cd65bf5e73f9a966c.tar.gz
...
-rw-r--r--MagickCore/cache.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/MagickCore/cache.c b/MagickCore/cache.c
index c3d424695..e0abf399c 100644
--- a/MagickCore/cache.c
+++ b/MagickCore/cache.c
@@ -5016,11 +5016,11 @@ static inline void PrefetchPixelCacheNexusPixels(const NexusInfo *nexus_info,
}
static inline MagickBooleanType ValidatePixelOffset(const ssize_t x,
- const ssize_t a)
+ const size_t a)
{
- if ((x >= 0) && (a > ((ssize_t) LONG_MAX-x)))
+ if ((x >= 0) && (x >= ((ssize_t) LONG_MAX-(ssize_t) a)))
return(MagickFalse);
- if (a < ((ssize_t) LONG_MIN+x))
+ if (x <= ((ssize_t) LONG_MIN+(ssize_t) a))
return(MagickFalse);
return(MagickTrue);
}
@@ -5052,8 +5052,8 @@ static Quantum *SetPixelCacheNexusPixels(
}
if (((MagickSizeType) width > cache_info->width_limit) ||
((MagickSizeType) height > cache_info->height_limit) ||
- (ValidatePixelOffset(x,(ssize_t) width) == MagickFalse) ||
- (ValidatePixelOffset(y,(ssize_t) height) == MagickFalse))
+ (ValidatePixelOffset(x,width) == MagickFalse) ||
+ (ValidatePixelOffset(y,height) == MagickFalse))
{
(void) ThrowMagickException(exception,GetMagickModule(),ImageError,
"WidthOrHeightExceedsLimit","`%s'",cache_info->filename);