From b9446fe4018a80dbac75ae78f3caa120679eb5c8 Mon Sep 17 00:00:00 2001 From: cedric Date: Fri, 6 May 2011 09:01:18 +0000 Subject: [PATCH] evas: actually check if loading header was fine. git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@59232 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/modules/loaders/psd/evas_image_load_psd.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/modules/loaders/psd/evas_image_load_psd.c b/src/modules/loaders/psd/evas_image_load_psd.c index f17e89d..f15f938 100644 --- a/src/modules/loaders/psd/evas_image_load_psd.c +++ b/src/modules/loaders/psd/evas_image_load_psd.c @@ -141,6 +141,7 @@ evas_image_load_file_head_psd(Image_Entry *ie, const char *FileName, { FILE *f; PSD_Header header; + Eina_Bool correct; *error = EVAS_LOAD_ERROR_NONE; @@ -150,10 +151,10 @@ evas_image_load_file_head_psd(Image_Entry *ie, const char *FileName, *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; return EINA_FALSE; } - psd_get_header(&header, f); + correct = psd_get_header(&header, f); fclose(f); - if (!is_psd(&header)) + if (!correct || !is_psd(&header)) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; return EINA_FALSE; @@ -846,9 +847,9 @@ evas_image_load_file_data_psd(Image_Entry *ie, return bpsd; } - psd_get_header(&header, f); - if (!is_psd(&header)) + if (!psd_get_header(&header, f) || !is_psd(&header)) { + fclose(f); *error = EVAS_LOAD_ERROR_GENERIC; return EINA_FALSE; } -- 2.7.4