Comment 11 for bug 215396

Revision history for this message
John S. Gruber (jsjgruber) wrote : Re: xserver-xgl patch for root cause--wrong randr protocol version reported

Three line patch to Xgl so that it reports the version of the randr protocol it implements, rather than the protocol that the build system defines. xserver-xgl only implements RRQueryVersion, RRSetScreenConfig, RRSelectInput, and RRGetScreenInfo, the transaction types defined for version 1.1. Version 1.2 added many more transaction types. Both my research and my testing indicate that this discrepancy between reported version and implemented version is the underlying cause of this crash.

The protocol is described in http://gitweb.freedesktop.org/?p=xorg/proto/randrproto.git;f=randrproto.txt;a=blob . The protocol is implemented in randr.c in the randr directory of the source package. http://sophie.zarb.org/srpm/current,x86_64/x11-server-xgl mentions a Mandrake patch of xgl-fix-report-randr-version.patch but I couldn't find it or its license online.

This is my first Ubuntu c patch so please look it over carefully before release (ie. when you have the time). Of course I have tested it on my own system.

If successful gnome-display-properties will return a screen indicating an insufficient version of randr for it to set properties. xrandr -v will return version 1.1. xrandr alone will return the available screen resolutions rather than an error message. This should therefore also address bug164125.