Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        moveresize.c 


Log Message:
Fix potential segv during translucent move (noted by Pietro Cerutti, bug 392).

===================================================================
RCS file: /cvs/e/e16/e/src/moveresize.c,v
retrieving revision 1.87
retrieving revision 1.88
diff -u -3 -r1.87 -r1.88
--- moveresize.c        23 Feb 2008 12:09:38 -0000      1.87
+++ moveresize.c        1 Mar 2008 15:36:15 -0000       1.88
@@ -503,19 +503,25 @@
        for (i = 0; i < num; i++)
          {
             ewin1 = gwins[i];
-            DrawEwinShape(ewin1, Mode_mr.mode, EoGetX(ewin1),
-                          EoGetY(ewin1), ewin1->client.w, ewin1->client.h, 0,
-                          i);
+            DrawEwinShape(ewin1, Mode_mr.mode, EoGetX(ewin1), EoGetY(ewin1),
+                          ewin1->client.w, ewin1->client.h, 0, i);
+            if (Conf.movres.mode_move == 0)
+               Mode_mr.mode = 0;
          }
        Mode.mode = MODE_MOVE;
        dx = Mode.events.mx - Mode_mr.start_x;
        dy = Mode.events.my - Mode_mr.start_y;
      }
-   else
+   else if (Mode.mode == MODE_MOVE)
      {
        dx = Mode.events.mx - Mode.events.px;
        dy = Mode.events.my - Mode.events.py;
      }
+   else
+     {
+       /* It should not be possible to get here. */
+       goto done;
+     }
 
    jumpx = 0;
    jumpy = 0;
@@ -688,6 +694,8 @@
             Efree(all_gwins);
          }
      }
+
+ done:
    Efree(gwins);
 }
 



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to