From 942c1b8de16a9abde2edf9193a731984766e4913 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 14 Sep 2011 18:37:48 +0200 Subject: [PATCH] glx/dri2: Don't call X server for SwapBuffers when there's no back buffer. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As already done in dri2CopySubBuffer(). Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=36371 https://bugs.freedesktop.org/show_bug.cgi?id=40533 Might fix: https://bugs.freedesktop.org/show_bug.cgi?id=32589 Signed-off-by: Michel Dänzer (cherry picked from commit d8c443ddde5e9734d60b63b3ec3b5a5ba756d022) --- src/glx/dri2_glx.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c index f093f0f31ad..2ee3cec482a 100644 --- a/src/glx/dri2_glx.c +++ b/src/glx/dri2_glx.c @@ -539,6 +539,10 @@ dri2SwapBuffers(__GLXDRIdrawable *pdraw, int64_t target_msc, int64_t divisor, (struct dri2_display *)dpyPriv->dri2Display; CARD64 ret = 0; + /* Check we have the right attachments */ + if (!priv->have_back) + return ret; + /* Old servers can't handle swapbuffers */ if (!pdp->swapAvailable) { dri2CopySubBuffer(pdraw, 0, 0, priv->width, priv->height);