From 76c854433fce9c15ae1cbc872e78a916135c694f Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Mon, 21 Sep 2015 16:50:17 +0900 Subject: [PATCH] efl - edje_cc - fix double close of embryo script fd's to tmp files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @fix thanks to 김낙경 for pointing this out. indeed fclose() closes the fd adopted by fdopen(). it doesn't dup it. so we double-closed. it seems this never caused an issue until now. this should fix it. --- src/bin/edje/edje_cc_out.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c index f40687d86a..c0264e69b8 100644 --- a/src/bin/edje/edje_cc_out.c +++ b/src/bin/edje/edje_cc_out.c @@ -1701,7 +1701,6 @@ data_thread_script(void *data, Ecore_Thread *thread EINA_UNUSED) return; } } - fclose(f); if (no_save) WRN("You are removing the source from this Edje file. This may break some use cases.\nBe aware of your choice and the poor kitten you are harming with it!"); @@ -1725,13 +1724,16 @@ data_thread_script(void *data, Ecore_Thread *thread EINA_UNUSED) strlen(cp->original) + 1, compress_mode); } } + fclose(f); unlink(sc->tmpn); unlink(sc->tmpo); eina_tmpstr_del(sc->tmpn); eina_tmpstr_del(sc->tmpo); - close(sc->tmpn_fd); - close(sc->tmpo_fd); +// closed by fclose(f) in create_script_file() +// close(sc->tmpn_fd); +// closed by fclose(f) above +// close(sc->tmpo_fd); } static void