xserver: Branch 'master'

Adam Jackson ajax at kemper.freedesktop.org
Fri Jul 15 16:59:57 UTC 2016


 glamor/glamor_text.c |   13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

New commits:
commit e8e36755abb17872d669b88d33ca9adc511029a0
Author: Michel Dänzer <michel.daenzer at amd.com>
Date:   Fri Jul 1 12:34:20 2016 +0900

    glamor: Translate solid text background region after clipping
    
    Fixes incorrect clipping for redirected windows which don't happen to be
    located at the top left corner of the screen.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96742
    Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>

diff --git a/glamor/glamor_text.c b/glamor/glamor_text.c
index c305305..cf165ca 100644
--- a/glamor/glamor_text.c
+++ b/glamor/glamor_text.c
@@ -446,16 +446,17 @@ glamor_image_text(DrawablePtr drawable, GCPtr gc,
         glamor_get_drawable_deltas(drawable, pixmap, &off_x, &off_y);
 
         if (width >= 0) {
-            box.x1 = off_x + drawable->x + x;
-            box.x2 = off_x + drawable->x + x + width;
+            box.x1 = drawable->x + x;
+            box.x2 = drawable->x + x + width;
         } else {
-            box.x1 = off_x + drawable->x + x + width;
-            box.x2 = off_x + drawable->x + x;
+            box.x1 = drawable->x + x + width;
+            box.x2 = drawable->x + x;
         }
-        box.y1 = off_y + drawable->y + y - gc->font->info.fontAscent;
-        box.y2 = off_y + drawable->y + y + gc->font->info.fontDescent;
+        box.y1 = drawable->y + y - gc->font->info.fontAscent;
+        box.y2 = drawable->y + y + gc->font->info.fontDescent;
         RegionInit(&region, &box, 1);
         RegionIntersect(&region, &region, gc->pCompositeClip);
+        RegionTranslate(&region, off_x, off_y);
         glamor_solid_boxes(pixmap, RegionRects(&region), RegionNumRects(&region), gc->bgPixel);
         RegionUninit(&region);
     }


More information about the xorg-commit mailing list