Page MenuHomePhabricator

efl_ui_dnd: fixup leaking inits and code duplication
ClosedPublic

Authored by bu5hm4n on Sep 25 2018, 6:18 AM.

Details

Summary

In fff4d1ba97f77bbd52d9a48ce4f19b5ed55e40e4 one selection_manager_get
method was patched to behave like this, however, it completly broke the
fact of *only-one-manager* since the same code was duplicated in a other
files (efl_selection.c). This now unifies this code, and adds back the
assertion for only one manager per window.

Additionally a shutdown function is added, the app never destroyes, but
the selection manager decided to init some subsystems itself
(ecore_x for example). This lead to to a leak of init counts in ecore_x,
which lead to elementary test suite issues. This is now *finaly* fixed.
Depends on D7104

Diff Detail

Repository
rEFL core/efl
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
bu5hm4n created this revision.Sep 25 2018, 6:18 AM
bu5hm4n requested review of this revision.Sep 25 2018, 6:18 AM
netstar accepted this revision.Oct 1 2018, 2:16 AM

To me this looks fine. Have built and looked over the code. Probably needs other eyes before a commit though.

This revision is now accepted and ready to land.Oct 1 2018, 2:16 AM
raster accepted this revision.Oct 1 2018, 2:41 AM
raster added a subscriber: raster.

only thing that could be fixed is _efl_ui_dnd_shutdown() be removed with using:L

efl_key_ref_set(appobj, "key", obj);
efl_unref(obj);

where "__selection_manager" is set up and fix up the init stuff to ensure there is no extra init there (and extra shutdown too). let the normal lifecycle of the look then clean this up on its own

Closed by commit rEFL66aa76ad8961: efl_ui_dnd: fixup leaking inits and code duplication (authored by Marcel Hollerbach <mail@marcel-hollerbach.de>). · Explain WhyOct 2 2018, 7:16 AM
This revision was automatically updated to reflect the committed changes.