repo: rxvt-unicode-sixel
action: commit
revision: 
path_from: 
revision_from: d9ead5ac606b0fc46ff2082cbbce04d33cf3e251:
path_to: 
revision_to: 
git.thebackupbox.net
rxvt-unicode-sixel
git clone git://git.thebackupbox.net/rxvt-unicode-sixel
commit d9ead5ac606b0fc46ff2082cbbce04d33cf3e251
Author: Emanuele Giaquinta 
Date:   Sun Aug 21 14:38:39 2011 +0000

    Do not needlessly copy the transparent pixmap from/to the server when
    blurring via xrender is not available.

diff --git a/src/background.C b/src/background.C
index 08047f1df6a81a0d25b5e053d34be04c909d0653..
index ..64a4b9213cfc897e955ddf0005277eff91ab9284 100644
--- a/src/background.C
+++ b/src/background.C
@@ -1343,8 +1343,7 @@ rxvt_term::bg_render ()
       tr_flags = make_transparency_pixmap ();
       if (tr_flags == 0)
         return false;
-      else if (!(tr_flags & BG_EFFECTS_FLAGS))
-        bg_flags |= BG_IS_VALID;
+      bg_flags |= BG_IS_VALID;
     }
 # endif

@@ -1360,7 +1359,7 @@ rxvt_term::bg_render ()
 # if defined(ENABLE_TRANSPARENCY) && !defined(HAVE_AFTERIMAGE)
   XImage *result = NULL;

-  if (tr_flags && !(bg_flags & BG_IS_VALID))
+  if (tr_flags & BG_NEEDS_TINT)
     {
       result = XGetImage (dpy, bg_pixmap, 0, 0, bg_pmap_width, bg_pmap_height, AllPlanes, ZPixmap);
     }
@@ -1368,7 +1367,8 @@ rxvt_term::bg_render ()
   if (result)
     {
       /* our own client-side tinting */
-      if (tr_flags & BG_NEEDS_TINT)
+      //if (tr_flags & BG_NEEDS_TINT)
+      if (1)
         {
           rgba c (rgba::MAX_CC,rgba::MAX_CC,rgba::MAX_CC);
           if (bg_flags & BG_TINT_SET)
@@ -1383,7 +1383,6 @@ rxvt_term::bg_render ()
           XPutImage (dpy, bg_pixmap, gc, result, 0, 0, 0, 0, result->width, result->height);

           XFreeGC (dpy, gc);
-          bg_flags |= BG_IS_VALID;
         }

       XDestroyImage (result);

-----END OF PAGE-----