xserver: Branch 'master'

Keith Packard keithp at kemper.freedesktop.org
Wed Jun 27 00:16:14 UTC 2018


 Xext/dpms.c |   16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

New commits:
commit f5aace7a27d6d61068dcae46c9756b669ab51d50
Author: John Lumby <johnlumby at hotmail.com>
Date:   Tue Jun 26 17:14:34 2018 -0700

    Change the DPMS initialization to be conditional on not set from config
    
    Any DPMS timeout values set in ServerFlags section of the xorg.conf
    are being overwritten by DPMS extension initialization.  Therefore
    change the DPMS initialization of timeout values to be conditional on
    not set from config.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106963
    Signed-off-by: John Lumby <johnlumby at hotmail.com>
    Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
    Signed-off-by: Keith Packard <keithp at keithp.com>

diff --git a/Xext/dpms.c b/Xext/dpms.c
index efa715428..e43a37974 100644
--- a/Xext/dpms.c
+++ b/Xext/dpms.c
@@ -45,9 +45,9 @@ Equipment Corporation.
 
 CARD16 DPMSPowerLevel = 0;
 Bool DPMSDisabledSwitch = FALSE;
-CARD32 DPMSStandbyTime;
-CARD32 DPMSSuspendTime;
-CARD32 DPMSOffTime;
+CARD32 DPMSStandbyTime = -1;
+CARD32 DPMSSuspendTime = -1;
+CARD32 DPMSOffTime = -1;
 Bool DPMSEnabled;
 
 Bool
@@ -432,7 +432,15 @@ DPMSCloseDownExtension(ExtensionEntry *e)
 void
 DPMSExtensionInit(void)
 {
-    DPMSStandbyTime = DPMSSuspendTime = DPMSOffTime = ScreenSaverTime;
+#define CONDITIONALLY_SET_DPMS_TIMEOUT(_timeout_value_)         \
+    if (_timeout_value_ == -1) { /* not yet set from config */  \
+        _timeout_value_ = ScreenSaverTime;                      \
+    }
+
+    CONDITIONALLY_SET_DPMS_TIMEOUT(DPMSStandbyTime)
+    CONDITIONALLY_SET_DPMS_TIMEOUT(DPMSSuspendTime)
+    CONDITIONALLY_SET_DPMS_TIMEOUT(DPMSOffTime)
+
     DPMSPowerLevel = DPMSModeOn;
     DPMSEnabled = DPMSSupported();
 


More information about the xorg-commit mailing list