Otherwise we may end up in a sitation where we show stale contents for a
(sometimes signification) fraction of a second before it is refreshed
with the correct contents.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73842
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
DBG(("%s: attaching to single shadow pixmap\n", __FUNCTION__));
if (sna->mode.shadow == NULL) {
+ BoxRec box;
+
bo = kgem_create_2d(&sna->kgem,
sna->scrn->virtualX,
sna->scrn->virtualY,
if (bo == NULL)
return NULL;
+ box.x1 = box.y1 = 0;
+ box.x2 = sna->scrn->virtualX;
+ box.y2 = sna->scrn->virtualY;
+
+ if (!sna->render.copy_boxes(sna, GXcopy,
+ sna->front, sna_pixmap(sna->front)->gpu_bo, 0, 0,
+ sna->front, bo, 0, 0,
+ &box, 1, COPY_LAST)) {
+ kgem_bo_destroy(&sna->kgem, bo);
+ return NULL;
+ }
+
if (!get_fb(sna, bo,
sna->scrn->virtualX,
sna->scrn->virtualY)) {