[PATCH xserver] randr: Adjust master's last set time with slaves

Nikhil Mahale nmahale at nvidia.com
Fri May 27 02:01:35 UTC 2016


In prime configurations master's last set time may not be latest
and greatest, adjust it with slaves last set time, pick up greatest
one. Otherwise xserver may end with events which has
lastSetTime < lastConfigTime even if that's not
the case and confuse xrandr client.

Signed-off-by: Nikhil Mahale <nmahale at nvidia.com>
---
 randr/randr.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/randr/randr.c b/randr/randr.c
index 3aabb19..549f26c 100644
--- a/randr/randr.c
+++ b/randr/randr.c
@@ -584,6 +584,15 @@ RRTellChanged(ScreenPtr pScreen)
         mastersp = pScrPriv;
     }
 
+    xorg_list_for_each_entry(iter, &master->output_slave_list, output_head) {
+        pSlaveScrPriv = rrGetScrPriv(iter);
+
+        if (CompareTimeStamps(mastersp->lastSetTime,
+                              pSlaveScrPriv->lastSetTime) == EARLIER) {
+            mastersp->lastSetTime = pSlaveScrPriv->lastSetTime;
+        }
+    }
+
     if (mastersp->changed) {
         UpdateCurrentTimeIf();
         if (mastersp->configChanged) {
-- 
2.8.2



More information about the xorg-devel mailing list