diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index 1edd3a3c..dab396e6 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -1143,12 +1143,15 @@ sna_put_image(DrawablePtr drawable, GCPtr gc, int depth, RegionUninit(®ion); } -static Bool +static bool move_to_gpu(PixmapPtr pixmap, struct sna_pixmap *priv, const BoxRec *box) { int w = box->x2 - box->x1; int h = box->y2 - box->y1; + if (priv->gpu_bo) + return TRUE; + return ++priv->source_count * w*h >= 2 * pixmap->drawable.width * pixmap->drawable.height; }