discomfitor pushed a commit to branch enlightenment-0.21.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=602e93651f51ecfab993bbc54433c1a549a19cbb

commit 602e93651f51ecfab993bbc54433c1a549a19cbb
Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Aug 25 14:47:04 2017 -0400

    destroy dropped gadgets after drop operation completes
    
    the gadget object is used during the drop callback, so destroying it
    before the callback breaks the drop operation
---
 src/bin/e_gadget.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c
index 6b3d1db55..8923a6942 100644
--- a/src/bin/e_gadget.c
+++ b/src/bin/e_gadget.c
@@ -1931,12 +1931,12 @@ _editor_pointer_button(Gadget_Item *active, int t 
EINA_UNUSED, Ecore_Event_Mouse
                evas_object_smart_calculate(zzgs->layout);
              evas_object_geometry_get(zgc->display, &x, &y, NULL, NULL);
              evas_object_move(z->display, x, y);
-             _gadget_free(zgc);
              z->site->gadget_list = eina_inlist_remove(z->site->gadget_list, 
EINA_INLIST_GET(z));
              z->site->gadgets = eina_list_remove(z->site->gadgets, z);
              zgs->gadgets = eina_list_append(zgs->gadgets, z);
              z->site = zgs;
              evas_object_smart_callback_call(zzgs->layout, 
"gadget_site_dropped", pointer_site);
+             _gadget_free(zgc);
           }
           
      }

-- 


Reply via email to