Skip to content

Commit 04a5674

Browse files
author
Dirk Lemstra
committed
Slightly different fix for #714
1 parent bdbbb13 commit 04a5674

File tree

1 file changed

+10
-22
lines changed

1 file changed

+10
-22
lines changed

Diff for: coders/psd.c

+10-22
Original file line numberDiff line numberDiff line change
@@ -1323,10 +1323,10 @@ static MagickBooleanType ReadPSDChannel(Image *image,
13231323
if ((layer_info->channel_info[channel].type != -2) ||
13241324
(layer_info->mask.flags > 2) || ((layer_info->mask.flags & 0x02) &&
13251325
(IsStringTrue(option) == MagickFalse)))
1326-
{
1327-
SeekBlob(image,layer_info->channel_info[channel].size-2,SEEK_CUR);
1328-
return(MagickTrue);
1329-
}
1326+
{
1327+
SeekBlob(image,layer_info->channel_info[channel].size-2,SEEK_CUR);
1328+
return(MagickTrue);
1329+
}
13301330
mask=CloneImage(image,layer_info->mask.page.width,
13311331
layer_info->mask.page.height,MagickFalse,exception);
13321332
if (mask != (Image *) NULL)
@@ -1701,24 +1701,12 @@ static MagickBooleanType ReadPSDLayersInternal(Image *image,
17011701
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
17021702
" layer blending ranges: length=%.20g",(double)
17031703
((MagickOffsetType) length));
1704-
/*
1705-
We read it, but don't use it...
1706-
*/
1707-
for (j=0; j < (ssize_t) length; j+=8)
1708-
{
1709-
size_t blend_source=ReadBlobLong(image);
1710-
size_t blend_dest=ReadBlobLong(image);
1711-
if (EOFBlob(image) != MagickFalse)
1712-
{
1713-
layer_info=DestroyLayerInfo(layer_info,number_layers);
1714-
ThrowBinaryException(CorruptImageError,
1715-
"InsufficientImageDataInFile",image->filename);
1716-
}
1717-
if (image->debug != MagickFalse)
1718-
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
1719-
" source(%x), dest(%x)",(unsigned int)
1720-
blend_source,(unsigned int) blend_dest);
1721-
}
1704+
if (DiscardBlobBytes(image,length) == MagickFalse)
1705+
{
1706+
layer_info=DestroyLayerInfo(layer_info,number_layers);
1707+
ThrowBinaryException(CorruptImageError,
1708+
"UnexpectedEndOfFile",image->filename);
1709+
}
17221710
}
17231711
/*
17241712
Layer name.

0 commit comments

Comments
 (0)