...
diff --git a/coders/raw.c b/coders/raw.c
index b91282b..43cafa8 100644
--- a/coders/raw.c
+++ b/coders/raw.c
@@ -178,6 +178,7 @@
scene=0;
count=0;
length=0;
+ status=MagickTrue;
do
{
/*
@@ -208,6 +209,7 @@
if (count != (ssize_t) length)
{
+ status=MagickFalse;
ThrowFileException(exception,CorruptImageError,"UnexpectedEndOfFile",
image->filename);
break;
@@ -278,6 +280,8 @@
quantum_info=DestroyQuantumInfo(quantum_info);
canvas_image=DestroyImage(canvas_image);
(void) CloseBlob(image);
+ if (status == MagickFalse)
+ return(DestroyImageList(image));
return(GetFirstImageInList(image));
}