XRRRootToScreen might return -1 if it fails to find screen for the root
window. Following code uses screen number unconditionaly to index the screen
array.

Signed-off-by: Pauli Nieminen <[email protected]>
---
 src/Xrandr.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/Xrandr.c b/src/Xrandr.c
index 8ab1eae..3738d61 100644
--- a/src/Xrandr.c
+++ b/src/Xrandr.c
@@ -420,6 +420,9 @@ int XRRUpdateConfiguration(XEvent *event)
        scevent = (XRRScreenChangeNotifyEvent *) event;
        snum = XRRRootToScreen(dpy, 
                               ((XRRScreenChangeNotifyEvent *) event)->root);
+       if (snum < 0)
+           return 0;
+
        if (scevent->rotation & (RR_Rotate_90 | RR_Rotate_270)) {
                dpy->screens[snum].width   = scevent->height;
                dpy->screens[snum].height  = scevent->width;
-- 
1.6.3.3

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to