Sophie

Sophie

distrib > Mageia > 5 > x86_64 > by-pkgid > 857b723175ea1d5f45c5b31f25037f76 > files > 55

imagemagick-6.8.9.9-4.2.mga5.src.rpm

From 7f1a5e6214c935448f3f6e18f9a10aa44063708d Mon Sep 17 00:00:00 2001
From: cristy <cristy@aa41f4f7-0bf4-0310-aa73-e5a19afd5a74>
Date: Sun, 25 Jan 2015 17:29:48 +0000
Subject: Fix a DOS in PDB file handling

Avoid an infinite loop by checking EOF.

http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=26932

origin: http://trac.imagemagick.org/changeset/17855
git-svn-id: https://subversion.imagemagick.org/subversion/ImageMagick/branches/ImageMagick-6@17855 aa41f4f7-0bf4-0310-aa73-e5a19afd5a74
---
 coders/pdb.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/coders/pdb.c b/coders/pdb.c
index 7dce823..70d6033 100644
--- a/coders/pdb.c
+++ b/coders/pdb.c
@@ -365,7 +365,15 @@ static Image *ReadPDBImage(const ImageInfo *image_info,ExceptionInfo *exception)
         ThrowReaderException(CorruptImageError,"CorruptImage");
     }
   num_pad_bytes = (size_t) (img_offset - TellBlob( image ));
-  while (num_pad_bytes--) ReadBlobByte( image );
+  while (num_pad_bytes-- != 0)
+  {
+    int
+      c;
+
+    c=ReadBlobByte(image);
+    if (c == EOF)
+      break;
+  }
   /*
     Read image header.
   */
-- 
cgit v0.11.2