From ba96d1220f2332623305db37c351ec8b32f086c7 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Fri, 6 May 2011 09:01:18 +0000 Subject: [PATCH] evas: actually check if loading header was fine. SVN revision: 59232 --- .../evas/src/modules/loaders/psd/evas_image_load_psd.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/legacy/evas/src/modules/loaders/psd/evas_image_load_psd.c b/legacy/evas/src/modules/loaders/psd/evas_image_load_psd.c index f17e89ddb4..f15f9385d9 100644 --- a/legacy/evas/src/modules/loaders/psd/evas_image_load_psd.c +++ b/legacy/evas/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; }