xf86-video-intel: src/sna/sna_display.c

Chris Wilson ickle at kemper.freedesktop.org
Thu Aug 7 23:27:35 PDT 2014


 src/sna/sna_display.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

New commits:
commit 6f69188cb2959abfb2fcd3f81cd4146aa3876bb5
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Fri Aug 8 07:25:03 2014 +0100

    sna: Clear old cursors when resizing
    
    When changing the stride on a cursor, we have to clear the whole area
    and not just the rectangle outside of our overwritten area.
    
    Reported-by: Jan Alexander Steffens <jan.steffens at gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82273
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index 116f74b..87defbe 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -4319,7 +4319,10 @@ static struct sna_cursor *__sna_get_cursor(struct sna *sna, xf86CrtcPtr crtc)
 	image = cursor->image;
 	if (image == NULL)
 		image = sna->cursor.scratch;
-	if (width < cursor->last_width || height < cursor->last_height || rotation != cursor->rotation)
+	if (size > cursor->size ||
+	    width < cursor->last_width ||
+	    height < cursor->last_height ||
+	    rotation != cursor->rotation)
 		memset(image, 0, 4*size*size);
 	if (rotation == RR_Rotate_0) {
 		if (argb == NULL) {


More information about the xorg-commit mailing list