summaryrefslogtreecommitdiff
path: root/src/sna/sna_trapezoids.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-06-19 10:20:54 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2012-06-19 10:24:24 +0100
commit4acf727941a37651f672db3774281a437940c540 (patch)
tree5d90f4234721617bb915831de39ec0a6b4cbcec6 /src/sna/sna_trapezoids.c
parentb0b2d3c9663c29e9844aef1608416ae40c194b55 (diff)
sna: Initialize the color value for fallback unaligned boxes
Reported-by:Zdenek Kabelac <zkabelac@redhat.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=5047 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/sna_trapezoids.c')
-rw-r--r--src/sna/sna_trapezoids.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/sna/sna_trapezoids.c b/src/sna/sna_trapezoids.c
index cb9fd7c0..92be480a 100644
--- a/src/sna/sna_trapezoids.c
+++ b/src/sna/sna_trapezoids.c
@@ -51,6 +51,7 @@
#endif
#define NO_ACCEL 0
+#define FORCE_FALLBACK 0
#define NO_ALIGNED_BOXES 0
#define NO_UNALIGNED_BOXES 0
#define NO_SCAN_CONVERTER 0
@@ -3109,7 +3110,8 @@ static inline uint32_t mul_4x8_8(uint32_t color, uint8_t alpha)
{
uint32_t v;
- v = multa(color, alpha, 24);
+ v = 0;
+ v |= multa(color, alpha, 24);
v |= multa(color, alpha, 16);
v |= multa(color, alpha, 8);
v |= multa(color, alpha, 0);
@@ -3308,6 +3310,7 @@ pixman:
pi.source = pixman_image_create_bits(PIXMAN_a8r8g8b8, 1, 1, NULL, 0);
pixman_image_set_repeat(pi.source, PIXMAN_REPEAT_NORMAL);
pi.bits = pixman_image_get_data(pi.source);
+ pi.color = color;
pi.op = op;
count = REGION_NUM_RECTS(&clip);
@@ -5327,7 +5330,7 @@ sna_composite_trapezoids(CARD8 op,
goto fallback;
}
- force_fallback = false;
+ force_fallback = FORCE_FALLBACK;
if ((too_small(priv) || DAMAGE_IS_ALL(priv->cpu_damage)) &&
!picture_is_gpu(src)) {
DBG(("%s: force fallbacks -- dst is too small, %dx%d\n",