From: cristy Date: Thu, 25 Apr 2013 19:41:22 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~3808 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8faec1e6ace05fc40d1261eb6441ae2f5bb84d59;p=imagemagick --- diff --git a/MagickCore/blob.c b/MagickCore/blob.c index 70577427f..8e973ba45 100644 --- a/MagickCore/blob.c +++ b/MagickCore/blob.c @@ -2783,7 +2783,21 @@ MagickExport ssize_t ReadBlob(Image *image,const size_t length, break; case StandardStream: { - count=read(fileno(image->blob->file_info.file),q,length); + register ssize_t + i; + + for (i=0; i < (ssize_t) length; i+=count) + { + count=read(fileno(image->blob->file_info.file),q+i,(size_t) + MagickMin(length-i,(MagickSizeType) SSIZE_MAX)); + if (count <= 0) + { + count=0; + if (errno != EINTR) + break; + } + } + count=i; break; } case FileStream: