From d995705fb01842652a79076cbecee4392f653bfe Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Fri, 14 Sep 2012 19:32:06 +0100 Subject: [PATCH] sna: Only discard CPU damage if we completely overwrite its extents If we are performing a clipped copy, then we must be careful not to completely discard the CPU damage as it may not be entirely replaced. Reported-by: Roman Jarosz Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54937 Signed-off-by: Chris Wilson --- src/sna/sna_accel.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index 7db7368b..6832a7c1 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -4410,7 +4410,8 @@ sna_copy_boxes(DrawablePtr src, DrawablePtr dst, GCPtr gc, sna_damage_destroy(&dst_priv->cpu_damage); list_del(&dst_priv->list); } - hint |= IGNORE_CPU; + if (region->data == NULL) + hint |= IGNORE_CPU; } bo = sna_drawable_use_bo(&dst_pixmap->drawable, hint,