xf86-video-intel: src/sna/sna_accel.c
Chris Wilson
ickle at kemper.freedesktop.org
Mon Oct 31 04:57:23 PDT 2011
src/sna/sna_accel.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
New commits:
commit 9a2e59bfba6748325918f895b3e58351c7eb4baa
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Mon Oct 31 11:56:53 2011 +0000
sna: Fix reversal of zero/wide for PolyRectangle
Reported-by: Clemens Eisserer <linuxhippy at gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42414
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 4cbd194..9ce142d 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -4247,7 +4247,7 @@ sna_poly_rectangle_blt(DrawablePtr drawable,
struct kgem_bo *bo,
struct sna_damage **damage,
GCPtr gc, int n, xRectangle *r,
- const BoxRec *extents, bool clipped)
+ const BoxRec *extents, unsigned clipped)
{
struct sna *sna = to_sna_from_drawable(drawable);
PixmapPtr pixmap = get_drawable_pixmap(drawable);
@@ -4255,24 +4255,20 @@ sna_poly_rectangle_blt(DrawablePtr drawable,
BoxRec boxes[512], *b = boxes, *const last_box = boxes+ARRAY_SIZE(boxes);
int16_t dx, dy;
static void * const jump[] = {
- &&zero,
- &&zero_clipped,
&&wide,
+ &&zero,
&&wide_clipped,
+ &&zero_clipped,
};
- unsigned v;
DBG(("%s: alu=%d, width=%d, fg=%08lx, damge=%p, clipped?=%d\n",
__FUNCTION__, gc->alu, gc->lineWidth, gc->fgPixel, damage, clipped));
-
if (!sna_fill_init_blt(&fill, sna, pixmap, bo, gc->alu, gc->fgPixel))
return FALSE;
get_drawable_deltas(drawable, pixmap, &dx, &dy);
- v = !!clipped;
- v |= (gc->lineWidth <= 1) << 1;
- goto *jump[v];
+ goto *jump[(gc->lineWidth <= 1) | clipped];
zero:
dx += drawable->x;
More information about the xorg-commit
mailing list