efl_ui_focus_manager_calc: Fix resource leaks

Summary:
Coverity reports that we leak old_chain & chain variables here if we return.
Add an eina_array_free for both to clean this up.

Fixes Coverity CID1396984,CID1396965

@fix

Depends on D8353

Reviewers: raster, cedric, zmike, bu5hm4n, stefan_schmidt

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8355
This commit is contained in:
Christopher Michael 2019-03-15 12:57:18 -04:00
parent 9a700c92a7
commit 5e7bc44d34
1 changed files with 2 additions and 1 deletions

View File

@ -1489,7 +1489,7 @@ _efl_ui_focus_manager_calc_efl_ui_focus_manager_manager_focus_set(Eo *obj, Efl_U
{
//the correct one is focused
if (node->redirect_manager == pd->redirect)
return;
goto end;
}
//make sure this manager is in the chain of redirects
@ -1571,6 +1571,7 @@ _efl_ui_focus_manager_calc_efl_ui_focus_manager_manager_focus_set(Eo *obj, Efl_U
while (eina_array_count(old_chain) > 1)
efl_event_callback_call(eina_array_pop(old_chain), EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED, (void*)EINA_FALSE);
end:
eina_array_free(old_chain);
eina_array_free(chain);
}