jackdanielz pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=81c2a5d217871d76fdfc3eed5fcd2e9434ec4fa1

commit 81c2a5d217871d76fdfc3eed5fcd2e9434ec4fa1
Author: Daniel Zaoui <[email protected]>
Date:   Fri Mar 14 12:59:58 2014 +0200

    Eolian/Generator: return values set to 0.
    
    Before eo_do invocation, generated legacy functions returning a value
    initialize it to 0.
    This change is needed in the case that eo_do fails to find some
    function, which leads to an unitialized value and behavior.
---
 src/bin/eolian/legacy_generator.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/src/bin/eolian/legacy_generator.c 
b/src/bin/eolian/legacy_generator.c
index 301886e..41b3d65 100644
--- a/src/bin/eolian/legacy_generator.c
+++ b/src/bin/eolian/legacy_generator.c
@@ -298,9 +298,8 @@ _eapi_func_generate(const char *classname, Eolian_Function 
funcid, Eolian_Functi
      {
         if (eina_strbuf_length_get(eoparam)) eina_strbuf_append(eoparam, ", ");
         Eina_Bool had_star = !!strchr(rettype, '*');
-        sprintf (tmpstr, "   %s%s%s%s%s;\n",
-              ret_const?"const ":"", rettype, had_star?"":" ", retname,
-              had_star?" = NULL":"");
+        sprintf (tmpstr, "   %s%s%s%s = 0;\n",
+              ret_const?"const ":"", rettype, had_star?"":" ", retname);
         eina_strbuf_append_printf(eoparam, "&%s", retname);
      }
 
@@ -311,10 +310,6 @@ _eapi_func_generate(const char *classname, Eolian_Function 
funcid, Eolian_Functi
    eina_strbuf_replace_all(fbody, "@#ret_val", (rettype) ? retname : "");
    eina_strbuf_replace_all(fbody, "@#is_const", (ftype == GET || 
eolian_function_object_is_const(funcid)) ? "const " : "");
 
-   tmpstr[0] = '\0';
-   if (rettype) sprintf (tmpstr, "(%s)(0)", rettype);
-   eina_strbuf_replace_all(fbody, "@#check_ret", tmpstr);
-
    eina_strbuf_append(buf, eina_strbuf_string_get(fbody));
 
 end:

-- 


Reply via email to