diff --git a/src/sna/sna_dri.c b/src/sna/sna_dri.c index 4dc96473..69c1b425 100644 --- a/src/sna/sna_dri.c +++ b/src/sna/sna_dri.c @@ -1091,15 +1091,15 @@ can_exchange(struct sna * sna, WindowPtr win = (WindowPtr)draw; PixmapPtr pixmap; - if (draw->type == DRAWABLE_PIXMAP) - return true; - if (front->format != back->format) { DBG(("%s: no, format mismatch, front = %d, back = %d\n", __FUNCTION__, front->format, back->format)); return false; } + if (draw->type == DRAWABLE_PIXMAP) + return true; + pixmap = get_window_pixmap(win); if (pixmap == sna->front) { DBG(("%s: no, window is attached to the front buffer\n",