xserver: Branch 'master'

Ian Romanick idr at kemper.freedesktop.org
Fri May 1 09:47:16 PDT 2009


 hw/xfree86/dri2/dri2.c |   19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

New commits:
commit 0d9d3f3e361f769822caedccf4c2a58cc9930ecc
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Mon Apr 27 15:11:10 2009 -0700

    DRI2: Force allocation of real-front buffer for non-windows as well
    
    For redirected rendering we end up with pixmaps (which the app thinks are
    windows) that are double buffered.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Tested-by: Pierre Willenbrock <pierre at pirsoft.de>

diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
index 9ded048..1d49d7c 100644
--- a/hw/xfree86/dri2/dri2.c
+++ b/hw/xfree86/dri2/dri2.c
@@ -206,18 +206,21 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
 	 * attachments.  The counting logic in the loop accounts for the case
 	 * where the client requests both the fake and real front-buffer.
 	 */
-	if (pDraw->type == DRAWABLE_WINDOW) {
-	    if (attachment == DRI2BufferBackLeft) {
-		need_real_front++;
-		front_format = format;
-	    }
+	if (attachment == DRI2BufferBackLeft) {
+	    need_real_front++;
+	    front_format = format;
+	}
 
-	    if (attachment == DRI2BufferFrontLeft) {
-		need_real_front--;
+	if (attachment == DRI2BufferFrontLeft) {
+	    need_real_front--;
+	    front_format = format;
+
+	    if (pDraw->type == DRAWABLE_WINDOW) {
 		need_fake_front++;
-		front_format = format;
 	    }
+	}
 
+	if (pDraw->type == DRAWABLE_WINDOW) {
 	    if (attachment == DRI2BufferFakeFrontLeft) {
 		need_fake_front--;
 		have_fake_front = 1;


More information about the xorg-commit mailing list