eo: Fix potential inifinite loop
I saw a little oopsie in patch fc48161910
. This
amends it to avoid a potential infinite loop.
This commit is contained in:
parent
1e6246df24
commit
552831386a
|
@ -1341,18 +1341,18 @@ efl_class_new(const Efl_Class_Description *desc, const Efl_Class *parent_id, ...
|
||||||
while (extn_id)
|
while (extn_id)
|
||||||
{
|
{
|
||||||
extn = _eo_class_pointer_get((Efl_Class *)extn_id, __FUNCTION__, __FILE__, __LINE__);
|
extn = _eo_class_pointer_get((Efl_Class *)extn_id, __FUNCTION__, __FILE__, __LINE__);
|
||||||
if (!extn) /* did not validate */
|
if (EINA_LIKELY(extn != NULL))
|
||||||
continue;
|
|
||||||
switch (extn->desc->type)
|
|
||||||
{
|
{
|
||||||
case EFL_CLASS_TYPE_REGULAR_NO_INSTANT:
|
switch (extn->desc->type)
|
||||||
case EFL_CLASS_TYPE_REGULAR:
|
{
|
||||||
case EFL_CLASS_TYPE_INTERFACE:
|
case EFL_CLASS_TYPE_REGULAR_NO_INSTANT:
|
||||||
case EFL_CLASS_TYPE_MIXIN:
|
case EFL_CLASS_TYPE_REGULAR:
|
||||||
extn_list = eina_list_append(extn_list, extn);
|
case EFL_CLASS_TYPE_INTERFACE:
|
||||||
break;
|
case EFL_CLASS_TYPE_MIXIN:
|
||||||
|
extn_list = eina_list_append(extn_list, extn);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extn_id = va_arg(p_list, Eo_Id *);
|
extn_id = va_arg(p_list, Eo_Id *);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue