Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        iclass.c x.c 


Log Message:
Fix reuse of freed pixmaps when using pseudo-transparency.

===================================================================
RCS file: /cvs/e/e16/e/src/iclass.c,v
retrieving revision 1.123
retrieving revision 1.124
diff -u -3 -r1.123 -r1.124
--- iclass.c    10 Sep 2007 20:26:53 -0000      1.123
+++ iclass.c    21 Oct 2007 13:13:03 -0000      1.124
@@ -1217,7 +1217,10 @@
 
             /* Set window pixmap */
             if (pmap == pmm.pmap)
-               ESetWindowBackgroundPixmap(win, pmap);
+              {
+                 ESetWindowBackgroundPixmap(win, pmap);
+                 EFreeWindowBackgroundPixmap(win);
+              }
 
             if (pmm.w == w && pmm.h == h)
                EShapeCombineMask(win, ShapeBounding, 0, 0, pmm.mask, ShapeSet);
===================================================================
RCS file: /cvs/e/e16/e/src/x.c,v
retrieving revision 1.164
retrieving revision 1.165
diff -u -3 -r1.164 -r1.165
--- x.c 10 Sep 2007 20:13:59 -0000      1.164
+++ x.c 21 Oct 2007 13:13:03 -0000      1.165
@@ -1033,11 +1033,13 @@
 void
 EFreeWindowBackgroundPixmap(Win win)
 {
-   if (!win || !win->bgpmap || !win->bg_owned)
+   if (!win || !win->bgpmap)
       return;
 
-   EFreePixmap(win->bgpmap);
+   if (win->bg_owned)
+      EFreePixmap(win->bgpmap);
    win->bgpmap = 0;
+   win->bg_owned = 0;
 }
 
 void



-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to