Commit 069154610 for imagemagick.org
commit 0691546106f4c7e8857da9f21a0e4a8f41915388
Author: Dirk Lemstra <dirk@lemstra.org>
Date: Mon Sep 14 22:53:51 2026 +0200
Added extra security check (GHSA-gwj6-pm7x-3r63)
diff --git a/coders/ase.c b/coders/ase.c
index 8514c0e4a..553c18d43 100644
--- a/coders/ase.c
+++ b/coders/ase.c
@@ -415,8 +415,8 @@ static MagickBooleanType ReadASELayerChunk(const Image *image,
*new_layers;
new_capacity=(layers->capacity == 0) ? 16 : (layers->capacity*2);
- new_layers=(AsepriteLayer *) ResizeQuantumMemory(layers->layers,
- new_capacity,sizeof(*new_layers));
+ new_layers=(AsepriteLayer *) AcquireQuantumMemory(new_capacity,
+ sizeof(*new_layers));
if (new_layers == (AsepriteLayer *) NULL)
{
(void) ThrowMagickException(exception,GetMagickModule(),
@@ -424,6 +424,13 @@ static MagickBooleanType ReadASELayerChunk(const Image *image,
image->filename);
return(MagickFalse);
}
+ if (layers->layers != (AsepriteLayer *) NULL)
+ {
+ (void) memcpy(new_layers,layers->layers,
+ layers->count*sizeof(*new_layers));
+ layers->layers=(AsepriteLayer *) RelinquishMagickMemory(
+ layers->layers);
+ }
layers->layers=new_layers;
layers->capacity=new_capacity;
}