Mesa (18.3): dri3: Return the current swap interval from glXGetSwapIntervalMESA().

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 5 10:53:29 UTC 2019


Module: Mesa
Branch: 18.3
Commit: 2b50357c0f485aed4aa5d2f2bad1a678f836c5d8
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2b50357c0f485aed4aa5d2f2bad1a678f836c5d8

Author: Eric Anholt <eric at anholt.net>
Date:   Fri Mar 29 10:16:05 2019 -0700

dri3: Return the current swap interval from glXGetSwapIntervalMESA().

We were caching only the value set with glXSwapIntervalSGI(), missing out
on the default setting of the swap interval by the loader.  This fixes
glxgears's warning about being vblank synchronized by default.

Fixes: 9777c4234b0e ("loader: drop the [gs]et_swap_interval callbacks")
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
(cherry picked from commit edc7deec42bc5f97d0eae9f910d79c6bc31e05ce)

---

 src/glx/dri3_glx.c  | 3 +--
 src/glx/dri3_priv.h | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/glx/dri3_glx.c b/src/glx/dri3_glx.c
index ce60b95c71e..d9417d3f060 100644
--- a/src/glx/dri3_glx.c
+++ b/src/glx/dri3_glx.c
@@ -642,7 +642,6 @@ dri3_set_swap_interval(__GLXDRIdrawable *pdraw, int interval)
       break;
    }
 
-   priv->swap_interval = interval;
    loader_dri3_set_swap_interval(&priv->loader_drawable, interval);
 
    return 0;
@@ -659,7 +658,7 @@ dri3_get_swap_interval(__GLXDRIdrawable *pdraw)
 
    struct dri3_drawable *priv =  (struct dri3_drawable *) pdraw;
 
-  return priv->swap_interval;
+  return priv->loader_drawable.swap_interval;
 }
 
 static void
diff --git a/src/glx/dri3_priv.h b/src/glx/dri3_priv.h
index 1d3c03f9997..32a8d3f7e7d 100644
--- a/src/glx/dri3_priv.h
+++ b/src/glx/dri3_priv.h
@@ -117,7 +117,6 @@ struct dri3_context
 struct dri3_drawable {
    __GLXDRIdrawable base;
    struct loader_dri3_drawable loader_drawable;
-   int swap_interval;
 
    /* LIBGL_SHOW_FPS support */
    uint64_t previous_ust;




More information about the mesa-commit mailing list