From eb043f23339bed181cd4a75cb2a1ac6a64de6c1c Mon Sep 17 00:00:00 2001 From: cristy Date: Sun, 6 Apr 2014 00:30:25 +0000 Subject: [PATCH] --- coders/webp.c | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/coders/webp.c b/coders/webp.c index 0c4804808..f9afc252f 100644 --- a/coders/webp.c +++ b/coders/webp.c @@ -287,6 +287,11 @@ static Image *ReadWEBPImage(const ImageInfo *image_info, ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed"); break; } + case VP8_STATUS_INVALID_PARAM: + { + ThrowReaderException(CorruptImageError,"invalid parameter"); + break; + } case VP8_STATUS_BITSTREAM_ERROR: { ThrowReaderException(CorruptImageError,"CorruptImage"); @@ -297,6 +302,16 @@ static Image *ReadWEBPImage(const ImageInfo *image_info, ThrowReaderException(CoderError,"DataEncodingSchemeIsNotSupported"); break; } + case VP8_STATUS_SUSPENDED: + { + ThrowReaderException(CorruptImageError,"decoder suspended"); + break; + } + case VP8_STATUS_USER_ABORT: + { + ThrowReaderException(CorruptImageError,"user abort"); + break; + } case VP8_STATUS_NOT_ENOUGH_DATA: { ThrowReaderException(CorruptImageError,"InsufficientImageDataInFile"); @@ -377,10 +392,10 @@ ModuleExport size_t RegisterWEBPImage(void) #if defined(MAGICKCORE_WEBP_DELEGATE) entry->decoder=(DecodeImageHandler *) ReadWEBPImage; entry->encoder=(EncodeImageHandler *) WriteWEBPImage; - (void) FormatLocaleString(version,MaxTextExtent,"libwebp %d.%d.%d", + (void) FormatLocaleString(version,MaxTextExtent,"libwebp %d.%d.%d (%04X)", (WebPGetDecoderVersion() >> 16) & 0xff, (WebPGetDecoderVersion() >> 8) & 0xff, - (WebPGetDecoderVersion() >> 0) & 0xff); + (WebPGetDecoderVersion() >> 0) & 0xff,WEBP_ENCODER_ABI_VERSION); #endif entry->description=ConstantString("WebP Image Format"); entry->mime_type=ConstantString("image/x-webp"); @@ -619,7 +634,7 @@ static MagickBooleanType WriteWEBPImage(const ImageInfo *image_info, break; } webp_status=WebPEncode(&configure,&picture); - if (webp_status == 0) + if (webp_status != VP8_ENC_OK) { const char *message; -- 2.50.1