netstar pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=569722a4ededb2ebe21545950262ade0c09b0471

commit 569722a4ededb2ebe21545950262ade0c09b0471
Author: Alastair Poole <nets...@gmail.com>
Date:   Thu Jan 3 18:51:08 2019 +0000

    gadgets: pager (fix crash on mouse up).
    
    Summary:
    Animator was crashing due to invalid memory access.
    
    This resolves this problem.
    
    Test Plan:
    * Add new gadget pager to desktop/bryce.
    * Move window within pager boundaries.
    * Finish window drag within pager.
    * CRASH of animator thread (or worse).
    * Apply patch.
    * Use new peger without fear of disaster.
    
    Reviewers: raster, zmike, cedric, stephenmhouston, devilhorns
    
    Reviewed By: zmike
    
    Tags: #enlightenment-git
    
    Differential Revision: https://phab.enlightenment.org/D7536
---
 src/modules/pager/gadget/pager.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/modules/pager/gadget/pager.c b/src/modules/pager/gadget/pager.c
index 229df32d9..a5df14ff5 100644
--- a/src/modules/pager/gadget/pager.c
+++ b/src/modules/pager/gadget/pager.c
@@ -2423,6 +2423,10 @@ _pager_desk_cb_mouse_up(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_U
    Pager_Desk *pd;
    Pager *p;
 
+   pd = data;
+
+   if (!pd) return;
+
    if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD)
      {
         pd->drag.start = 0;
@@ -2431,9 +2435,6 @@ _pager_desk_cb_mouse_up(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_U
      }
    if (_pager_check_modifiers(ev->modifiers)) return;
 
-   pd = data;
-
-   if (!pd) return;
    p = pd->pager;
 
    /* FIXME: pd->pager->dragging is 0 when finishing a drag from desk to desk 
*/

-- 


Reply via email to