From 86e07547f1394d2c0fd7d4d47d8d29ed27d8b3da Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 12 Sep 2012 12:13:08 +0000 Subject: [PATCH] add null checks to WebPDecodeBGRA() returns in webp loader SPANK SPANK, IGOR! SVN revision: 76521 --- legacy/evas/src/bin/loaders/webp/evas_image_load_webp.c | 6 ++++++ legacy/evas/src/modules/loaders/webp/evas_image_load_webp.c | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/legacy/evas/src/bin/loaders/webp/evas_image_load_webp.c b/legacy/evas/src/bin/loaders/webp/evas_image_load_webp.c index 6adf0ea9a3..125c581548 100644 --- a/legacy/evas/src/bin/loaders/webp/evas_image_load_webp.c +++ b/legacy/evas/src/bin/loaders/webp/evas_image_load_webp.c @@ -98,6 +98,12 @@ evas_image_load_file_data_webp(Evas_Img_Load_Params *ilp, const char *file, cons fclose(f); decoded = WebPDecodeBGRA(data, file_size, &width, &height); + if (!decoded) + { + *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; + free(data); + goto close_file; + } memcpy(ilp->buffer, decoded, width * height * 4); evas_cserve2_image_premul(ilp); diff --git a/legacy/evas/src/modules/loaders/webp/evas_image_load_webp.c b/legacy/evas/src/modules/loaders/webp/evas_image_load_webp.c index 5b2391001c..c0506032c2 100644 --- a/legacy/evas/src/modules/loaders/webp/evas_image_load_webp.c +++ b/legacy/evas/src/modules/loaders/webp/evas_image_load_webp.c @@ -116,6 +116,11 @@ evas_image_load_file_data_webp(Image_Entry *ie, const char *file, const char *ke } decoded = WebPDecodeBGRA(data, file_size, &width, &height); + if (!decoded) + { + *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; + goto free_data; + } memcpy(surface, decoded, width * height * 4); evas_common_image_premul(ie);