eolain impl generator - fix possible null access

fix CID 1231994
This commit is contained in:
Carsten Haitzler 2014-08-20 09:03:38 +09:00
parent e79f88f8e9
commit c77accc0b9
1 changed files with 9 additions and 4 deletions

View File

@ -180,16 +180,21 @@ _prototype_generate(const Eolian_Function *foo, Eolian_Function_Type ftype, Eina
}
fname = eolian_function_name_get(foo);
flen = strlen(fname);
if ((fname) && (flen >= strlen("destructor")))
if (fname)
{
if (impl_desc && !strcmp(fname + flen - strlen("destructor"), "destructor"))
flen = strlen(fname);
if (flen >= strlen("destructor"))
{
eina_strbuf_append_printf(super_invok,
if (impl_desc &&
(!strcmp(fname + flen - strlen("destructor"), "destructor")))
{
eina_strbuf_append_printf
(super_invok,
" eo_do_super(obj, %s_%s, %s_%s(%s));\n",
class_env.upper_eo_prefix, class_env.upper_classtype,
impl_env.lower_eo_prefix, eolian_function_name_get(foo),
eina_strbuf_string_get(short_params));
}
}
}