From: Michel Dänzer <michel.daen...@amd.com>

This avoids some trouble with the Gallium nine state tracker, which uses
the Present extension even when DRI3 is disabled.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89772
Signed-off-by: Michel Dänzer <michel.daen...@amd.com>
---
 src/radeon_kms.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/radeon_kms.c b/src/radeon_kms.c
index 29275cc..64593ab 100644
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
@@ -1400,7 +1400,7 @@ Bool RADEONScreenInit_KMS(SCREEN_INIT_ARGS_DECL)
     RADEONInfoPtr  info  = RADEONPTR(pScrn);
     int            subPixelOrder = SubPixelUnknown;
     MessageType from;
-    Bool have_present = FALSE, value;
+    Bool value;
     const char *s;
     void *front_ptr;
 
@@ -1511,9 +1511,6 @@ Bool RADEONScreenInit_KMS(SCREEN_INIT_ARGS_DECL)
     }
 #endif
 
-    if (radeon_sync_init(pScreen))
-       have_present = radeon_present_screen_init(pScreen);
-
     value = FALSE;
     if (xf86GetOptValBool(info->Options, OPTION_DRI3, &value))
        from = X_CONFIG;
@@ -1521,10 +1518,9 @@ Bool RADEONScreenInit_KMS(SCREEN_INIT_ARGS_DECL)
        from = X_DEFAULT;
 
     if (value) {
-       if (have_present)
-           value = radeon_dri3_screen_init(pScreen);
-       else
-           value = FALSE;
+       value = radeon_sync_init(pScreen) &&
+           radeon_present_screen_init(pScreen) &&
+           radeon_dri3_screen_init(pScreen);
 
        if (!value)
            from = X_WARNING;
-- 
2.1.4

_______________________________________________
xorg-driver-ati mailing list
xorg-driver-ati@lists.x.org
http://lists.x.org/mailman/listinfo/xorg-driver-ati

Reply via email to