[EGIT] [core/efl] master 01/01: ecore: fix a potential memory leak.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3a4baabaaa6b5b3e3e8f30b1e54e6968e364086f commit 3a4baabaaa6b5b3e3e8f30b1e54e6968e364086f Author: Hermet ParkDate: Mon Apr 9 11:46:13 2018 +0900 ecore: fix a potential memory leak. if the func argument is null, allocated memory won't be freed properly. return it as soon as possible. @fix --- src/lib/ecore/ecore_timer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/ecore/ecore_timer.c b/src/lib/ecore/ecore_timer.c index b1b9a99052..ed75b05a5f 100644 --- a/src/lib/ecore/ecore_timer.c +++ b/src/lib/ecore/ecore_timer.c @@ -197,13 +197,13 @@ ecore_timer_loop_add(double in, Ecore_Task_Cb func, const void *data) Eo *timer; EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL); - legacy = calloc(1, sizeof (Ecore_Timer_Legacy)); - if (!legacy) return NULL; if (!func) { ERR("Callback function must be set up for the class."); return NULL; } + legacy = calloc(1, sizeof (Ecore_Timer_Legacy)); + if (!legacy) return NULL; legacy->func = func; legacy->data = data; timer = efl_add(MY_CLASS, efl_main_loop_get(), --
[EGIT] [core/efl] master 01/01: edje: fix potential memory leak.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ecc8b479bdbb52dc91b3a163f4d126682f29615b commit ecc8b479bdbb52dc91b3a163f4d126682f29615b Author: Hermet ParkDate: Mon Apr 9 11:29:41 2018 +0900 edje: fix potential memory leak. next_token() requires free() for it's returned value and a string attribute. Here token usage didn't take care of the memory freeing. @fix --- src/bin/edje/edje_cc_script.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/src/bin/edje/edje_cc_script.c b/src/bin/edje/edje_cc_script.c index 657bf4fb96..94f7236189 100644 --- a/src/bin/edje/edje_cc_script.c +++ b/src/bin/edje/edje_cc_script.c @@ -224,6 +224,13 @@ code_parse_internal(Code *code) } } + if (token) + { +if (token->str) + free(token->str); +free(token); + } + eina_array_free(name_stack); } --
[EGIT] [core/efl] master 01/01: edje: fix potential memory leak.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d5c913c60b4f7234010800bed8fe4ddd15edbb80 commit d5c913c60b4f7234010800bed8fe4ddd15edbb80 Author: Hermet ParkDate: Mon Apr 9 11:14:07 2018 +0900 edje: fix potential memory leak. next_token() requires free() for it's returned value and a string attribute Here logic didn't take care of the memory usage. @fix --- src/bin/edje/edje_cc_script.c | 20 +++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/bin/edje/edje_cc_script.c b/src/bin/edje/edje_cc_script.c index e17355c78b..657bf4fb96 100644 --- a/src/bin/edje/edje_cc_script.c +++ b/src/bin/edje/edje_cc_script.c @@ -64,7 +64,7 @@ static void code_parse_internal(Code *code) { Code_Symbol *sym = NULL, *func = NULL; - Token *token, *tmp; + Token *token, *tmp = NULL; char *begin = code->shared; char *end = begin + strlen(begin); char *body; @@ -92,9 +92,18 @@ code_parse_internal(Code *code) token = tmp; break; } + + if (tmp->str) free(tmp->str); + free(tmp); } } +if (tmp) + { + if (tmp->str) free(tmp->str); + free(tmp); + } + switch (token->type) { case TOKEN_TYPE_COLON: @@ -176,6 +185,9 @@ code_parse_internal(Code *code) } if (!depth) break; + + if (tmp->str) free(tmp->str); + free(tmp); } if ((begin - 1) > body) { @@ -204,6 +216,12 @@ code_parse_internal(Code *code) if (token->str) free(token->str); free(token); + +if (tmp) + { + if (tmp->str) free(tmp->str); + free(tmp); + } } eina_array_free(name_stack); --
[EGIT] [core/efl] master 01/02: efl-js: Fix dependency generation in JavaScript binding compilation
felipealmeida pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c2b067453a06eeb0e6d88133dc34db93b617d9c8 commit c2b067453a06eeb0e6d88133dc34db93b617d9c8 Author: Felipe Magno de AlmeidaDate: Tue Jan 2 12:00:31 2018 -0200 efl-js: Fix dependency generation in JavaScript binding compilation Use C++ as dependency in automake so concurrent builds will not fail to compile --- src/Makefile_Eolian_Js.am | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Makefile_Eolian_Js.am b/src/Makefile_Eolian_Js.am index b0e64de6da..834ea8fd01 100644 --- a/src/Makefile_Eolian_Js.am +++ b/src/Makefile_Eolian_Js.am @@ -21,6 +21,9 @@ bin_eolian_js_eolian_js_CPPFLAGS = -I$(top_builddir)/src/lib/efl \ bin_eolian_js_eolian_js_LDADD = @USE_EO_LIBS@ @USE_EOLIAN_LIBS@ bin_eolian_js_eolian_js_DEPENDENCIES = @USE_EO_INTERNAL_LIBS@ @USE_EOLIAN_INTERNAL_LIBS@ +# generate C++ bindings before compiling C++ files for JS binding +bin/eolian_js/bin_eolian_js_eolian_js-main.$(OBJEXT): $(efl_eolian_cxx_hh) $(efl_eolian_cxx_impl_hh) + include Makefile_Eolian_Js_Helper.am ### Unit tests --