From 2d92d8ec562cb1e6b9dca28074adca670734233c Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Tue, 22 Jan 2013 09:24:04 +0000 Subject: [PATCH] sna: Extend rectangular PolyLines to cover corner pixels on ccw paths Reported-by: Joe Peterson Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55484 Signed-off-by: Chris Wilson --- src/sna/sna_accel.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index ba9a3cbc..e388d805 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -7006,6 +7006,8 @@ sna_poly_line_blt(DrawablePtr drawable, b->y1 = p.y; b->y2 = last.y; } + b->y2 += last.x == p.x; + b->x2 += last.y == p.y; DBG(("%s: blt (%d, %d), (%d, %d)\n", __FUNCTION__, b->x1, b->y1, b->x2, b->y2)); @@ -7063,6 +7065,8 @@ sna_poly_line_blt(DrawablePtr drawable, b->y1 = p.y; b->y2 = last.y; } + b->y2 += last.x == p.x; + b->x2 += last.y == p.y; DBG(("%s: blt (%d, %d), (%d, %d)\n", __FUNCTION__, b->x1, b->y1, b->x2, b->y2)); @@ -7119,6 +7123,8 @@ sna_poly_line_blt(DrawablePtr drawable, box.y1 = p.y; box.y2 = last.y; } + b->y2 += last.x == p.x; + b->x2 += last.y == p.y; DBG(("%s: blt (%d, %d), (%d, %d)\n", __FUNCTION__, box.x1, box.y1, box.x2, box.y2));