Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        E.h ecompmgr.c ecompmgr.h eobj.c events.c iconify.c menus.c 
        misc.c 


Log Message:
Fix segvs and memleak.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.426
retrieving revision 1.427
diff -u -3 -r1.426 -r1.427
--- E.h 12 May 2005 19:02:12 -0000      1.426
+++ E.h 14 May 2005 09:19:49 -0000      1.427
@@ -1547,6 +1547,7 @@
 int                 EobjRaise(EObj * eo);
 int                 EobjLower(EObj * eo);
 void                EobjChangeShape(EObj * eo);
+void                EobjsRepaint(void);
 
 #if USE_COMPOSITE
 Pixmap              EobjGetPixmap(const EObj * eo);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- ecompmgr.c  8 May 2005 09:52:26 -0000       1.28
+++ ecompmgr.c  14 May 2005 09:19:50 -0000      1.29
@@ -1635,7 +1635,7 @@
      }
 }
 
-static void
+void
 ECompMgrRepaint(void)
 {
    Display            *dpy = disp;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- ecompmgr.h  8 May 2005 09:52:26 -0000       1.13
+++ ecompmgr.h  14 May 2005 09:19:51 -0000      1.14
@@ -34,6 +34,7 @@
 int                 EVisualIsARGB(Visual * vis);
 
 void                ECompMgrParseArgs(const char *args);
+void                ECompMgrRepaint(void);
 
 void                ECompMgrWinNew(EObj * eo);
 void                ECompMgrWinDel(EObj * eo, Bool gone, Bool do_fade);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/eobj.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- eobj.c      8 May 2005 09:52:26 -0000       1.28
+++ eobj.c      14 May 2005 09:19:51 -0000      1.29
@@ -495,3 +495,12 @@
 
    Efree(xy);
 }
+
+void
+EobjsRepaint(void)
+{
+#if USE_COMPOSITE
+   ECompMgrRepaint();
+   ESync();
+#endif
+}
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/events.c,v
retrieving revision 1.86
retrieving revision 1.87
diff -u -3 -r1.86 -r1.87
--- events.c    7 May 2005 11:19:57 -0000       1.86
+++ events.c    14 May 2005 09:19:51 -0000      1.87
@@ -560,6 +560,7 @@
    return qsz;
 }
 
+#if 0                          /* FIXME - Remove? */
 void
 CheckEvent(void)
 {
@@ -602,6 +603,7 @@
 
    ModulesSignal(ESIGNAL_IDLE, NULL);
 }
+#endif
 
 /*
  * This is the primary event loop.  Everything that is going to happen in the
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/iconify.c,v
retrieving revision 1.145
retrieving revision 1.146
diff -u -3 -r1.145 -r1.146
--- iconify.c   12 May 2005 19:02:14 -0000      1.145
+++ iconify.c   14 May 2005 09:19:52 -0000      1.146
@@ -717,7 +717,7 @@
    ib = SelectIconboxForEwin(ewin);
    if (ib && ib->animate && !ewin->st.showingdesk)
      {
-       CheckEvent();
+       EobjsRepaint();
        IB_Animate(0, ewin, ib->ewin);
      }
 }
@@ -3133,13 +3133,18 @@
 IconboxObjSwinDel(Iconbox * ib, Window win)
 {
    int                 i;
+   SWin               *swin;
 
    i = IconboxObjSwinFind(ib, win);
    if (i < 0)
       return;
 
-   if (IconboxObjectDel(ib, ib->objs[i].u.swin) == 0)
+   swin = ib->objs[i].u.swin;
+
+   if (IconboxObjectDel(ib, swin) == 0)
       IconboxRedraw(ib);
+
+   Efree(swin);
 }
 
 static void
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/menus.c,v
retrieving revision 1.191
retrieving revision 1.192
diff -u -3 -r1.191 -r1.192
--- menus.c     12 May 2005 22:38:01 -0000      1.191
+++ menus.c     14 May 2005 09:19:52 -0000      1.192
@@ -1301,7 +1301,7 @@
        if (!mi->params)
           break;
        MenusHide();
-       CheckEvent();
+       EobjsRepaint();
        SetContextEwin(Mode_menus.context_ewin);
        EFunc(mi->params);
        SetContextEwin(NULL);
@@ -1376,7 +1376,7 @@
        if ((mi->params) /* && (!Mode_menus.just_shown) */ )
          {
             MenusHide();
-            CheckEvent();
+            EobjsRepaint();
             SetContextEwin(Mode_menus.context_ewin);
             EFunc(mi->params);
             SetContextEwin(NULL);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/misc.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -3 -r1.65 -r1.66
--- misc.c      7 May 2005 11:19:59 -0000       1.65
+++ misc.c      14 May 2005 09:19:54 -0000      1.66
@@ -173,8 +173,7 @@
    etl_k = etl_k1 + tm * etl_fac;
    y = ETimeCurve(etl_k1, etl_k2, etl_k, 2, 1.0);
 
-   ESync();
-   CheckEvent();
+   EobjsRepaint();
 
    return y;
 }




-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to