I modified libxrandr to return the actual error code returned from XRRSetCrtcConfig():
--- libxrandr-1.5.1.orig/src/XrrCrtc.c +++ libxrandr-1.5.1/src/XrrCrtc.c @@ -155,9 +155,10 @@ XRRSetCrtcConfig (Display *dpy, req->mode = mode; req->rotation = rotation; Data32 (dpy, outputs, noutputs << 2); + int ret_code = _XReply (dpy, (xReply *) &rep, 0, xFalse); + if (ret_code != 0) + rep.status = ret_code;
- if (!_XReply (dpy, (xReply *) &rep, 0, xFalse)) - rep.status = RRSetConfigFailed; UnlockDisplay (dpy); SyncHandle (); return rep.status;
And it shows:
xfce4-settings(displays): Configuring CRTC 79. xfce4-settings(displays): Applying changes to CRTC 79. xfce4-settings(displays): Applying CRTC 79 Transform: x=0.000000 y=0.000000, filter=bilinear.
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.650: XRRSetCrtcConfig()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.655: XRRSetCrtcConfig()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.657: XRRSetCrtcConfig()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.658: XRRSetCrtcConfig()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.660: XRRSetCrtcConfig()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.661: Failed to configure CRTC 79 XRRSetCrtcConfig()=1. xfce4-settings(displays): Configuring CRTC 80.
(xfsettingsd:7726): xfsettingsd-CRITICAL **: 12:44:13.662: Failed to apply display settings xfce4-settings(displays): RRScreenChangeNotify event received.
I modified libxrandr to return the actual error code returned from XRRSetCrtcConfig():
--- libxrandr- 1.5.1.orig/ src/XrrCrtc. c 1.5.1/src/ XrrCrtc. c
+++ libxrandr-
@@ -155,9 +155,10 @@ XRRSetCrtcConfig (Display *dpy,
req->mode = mode;
req->rotation = rotation;
Data32 (dpy, outputs, noutputs << 2);
+ int ret_code = _XReply (dpy, (xReply *) &rep, 0, xFalse);
+ if (ret_code != 0)
+ rep.status = ret_code;
- if (!_XReply (dpy, (xReply *) &rep, 0, xFalse))
- rep.status = RRSetConfigFailed;
UnlockDisplay (dpy);
SyncHandle ();
return rep.status;
And it shows:
xfce4-settings( displays) : Configuring CRTC 79. displays) : Applying changes to CRTC 79. displays) : Applying CRTC 79 Transform: x=0.000000 y=0.000000, filter=bilinear.
xfce4-settings(
xfce4-settings(
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.650: XRRSetCrtcConfi g()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.655: XRRSetCrtcConfi g()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.657: XRRSetCrtcConfi g()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.658: XRRSetCrtcConfi g()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.660: XRRSetCrtcConfi g()=1, sleeping
(xfsettingsd:7726): xfsettingsd-WARNING **: 12:44:13.661: Failed to configure CRTC 79 XRRSetCrtcConfi g()=1. displays) : Configuring CRTC 80.
xfce4-settings(
(xfsettingsd:7726): xfsettingsd- CRITICAL **: 12:44:13.662: Failed to apply display settings displays) : RRScreenChangeN otify event received.
xfce4-settings(