[clutter] gdk: master-clock: disable vsync throttling



commit 6183eb363282e5143bfd52aa36b5e6a318c4c992
Author: Lionel Landwerlin <llandwerlin gmail com>
Date:   Mon Sep 7 12:27:26 2015 +0100

    gdk: master-clock: disable vsync throttling
    
    When running with a master clock based on the GdkFrameClock, we get
    synchronized with the compositor, so no need for throttling rendering.
    
    In particular when dealing with foreign windows, we run into deadlocks
    in Mesa because of the way the Mesa wayland backend is implemented [1].
    
    [1] : http://cgit.freedesktop.org/mesa/mesa/tree/src/egl/drivers/dri2/platform_wayland.c#n330
    
    https://bugzilla.gnome.org/show_bug.cgi?id=754671

 clutter/gdk/clutter-master-clock-gdk.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
---
diff --git a/clutter/gdk/clutter-master-clock-gdk.c b/clutter/gdk/clutter-master-clock-gdk.c
index a3ed8ec..228d31f 100644
--- a/clutter/gdk/clutter-master-clock-gdk.c
+++ b/clutter/gdk/clutter-master-clock-gdk.c
@@ -476,6 +476,9 @@ clutter_master_clock_gdk_init (ClutterMasterClockGdk *self)
   for (l = stages; l; l = l->next)
     clutter_master_clock_gdk_stage_added (manager, l->data, self);
 
+  /* Deactivate sync to vblank since we have clock to drive us from
+     the compositor. */
+  _clutter_set_sync_to_vblank (FALSE);
 
   if (G_UNLIKELY (clutter_paint_debug_flags & CLUTTER_DEBUG_CONTINUOUS_REDRAW))
     g_warning ("Continuous redraw is not supported with the GDK backend.");


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]