diff options
Diffstat (limited to 'xorg-server')
-rw-r--r-- | xorg-server/Xi/xiqueryversion.c | 31 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/man/xorg.conf.man | 4 | ||||
-rw-r--r-- | xorg-server/test/xi2/protocol-xiqueryversion.c | 60 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/symbols/is | 2 |
4 files changed, 49 insertions, 48 deletions
diff --git a/xorg-server/Xi/xiqueryversion.c b/xorg-server/Xi/xiqueryversion.c index 6c7b9c058..c705f788f 100644 --- a/xorg-server/Xi/xiqueryversion.c +++ b/xorg-server/Xi/xiqueryversion.c @@ -70,12 +70,21 @@ ProcXIQueryVersion(ClientPtr client) pXIClient = dixLookupPrivate(&client->devPrivates, XIClientPrivateKey); + if (version_compare(XIVersion.major_version, XIVersion.minor_version, + stuff->major_version, stuff->minor_version) > 0) { + major = stuff->major_version; + minor = stuff->minor_version; + } else { + major = XIVersion.major_version; + minor = XIVersion.minor_version; + } + if (pXIClient->major_version) { /* Check to see if the client has only ever asked * for version 2.2 or higher */ - if (version_compare(stuff->major_version, stuff->minor_version, 2, 2) >= 0 && + if (version_compare(major, minor, 2, 2) >= 0 && version_compare(pXIClient->major_version, pXIClient->minor_version, 2, 2) >= 0) { @@ -84,16 +93,14 @@ ProcXIQueryVersion(ClientPtr client) * version to the client but leave the server internal * version set to the highest requested value */ - major = stuff->major_version; - minor = stuff->minor_version; - if (version_compare(stuff->major_version, stuff->minor_version, + if (version_compare(major, minor, pXIClient->major_version, pXIClient->minor_version) > 0) { - pXIClient->major_version = stuff->major_version; - pXIClient->minor_version = stuff->minor_version; + pXIClient->major_version = major; + pXIClient->minor_version = minor; } } else { - if (version_compare(stuff->major_version, stuff->minor_version, + if (version_compare(major, minor, pXIClient->major_version, pXIClient->minor_version) < 0) { client->errorValue = stuff->major_version; @@ -103,16 +110,6 @@ ProcXIQueryVersion(ClientPtr client) minor = pXIClient->minor_version; } } else { - if (version_compare(XIVersion.major_version, XIVersion.minor_version, - stuff->major_version, stuff->minor_version) > 0) { - major = stuff->major_version; - minor = stuff->minor_version; - } - else { - major = XIVersion.major_version; - minor = XIVersion.minor_version; - } - pXIClient->major_version = major; pXIClient->minor_version = minor; } diff --git a/xorg-server/hw/xfree86/man/xorg.conf.man b/xorg-server/hw/xfree86/man/xorg.conf.man index fa5b5fe92..85f9f2ee1 100644 --- a/xorg-server/hw/xfree86/man/xorg.conf.man +++ b/xorg-server/hw/xfree86/man/xorg.conf.man @@ -668,6 +668,10 @@ DevicePresenceNotify event sent), but not enabled, thus leaving policy up to the client. Enabled by default. .TP 7 +.BI "Option \*qAutoAddGPU\*q \*q" boolean \*q +If this option is disabled, then no GPU devices will be added from the udev +backend. Enabled by default. (May need to be disabled to setup Xinerama). +.TP 7 .BI "Option \*qLog\*q \*q" string \*q This option controls whether the log is flushed and/or synced to disk after each message. diff --git a/xorg-server/test/xi2/protocol-xiqueryversion.c b/xorg-server/test/xi2/protocol-xiqueryversion.c index aff023754..ed75c89db 100644 --- a/xorg-server/test/xi2/protocol-xiqueryversion.c +++ b/xorg-server/test/xi2/protocol-xiqueryversion.c @@ -44,8 +44,8 @@ #include "extinit.h" /* for XInputExtensionInit */ #include "scrnintstr.h" #include "xiqueryversion.h" - #include "protocol-common.h" +#include "exglobals.h" extern XExtensionVersion XIVersion; @@ -54,8 +54,8 @@ struct test_data { int minor_client; int major_server; int minor_server; - int major_cached; - int minor_cached; + int major_expected; + int minor_expected; }; static void @@ -93,13 +93,8 @@ reply_XIQueryVersion_multiple(ClientPtr client, int len, char *data, void *closu reply_check_defaults(rep, len, XIQueryVersion); assert(rep->length == 0); - if (versions->major_cached == -1) { - versions->major_cached = rep->major_version; - versions->minor_cached = rep->minor_version; - } - - assert(versions->major_cached == rep->major_version); - assert(versions->minor_cached == rep->minor_version); + assert(versions->major_expected == rep->major_version); + assert(versions->minor_expected == rep->minor_version); } /** @@ -199,6 +194,7 @@ test_XIQueryVersion_multiple(void) { xXIQueryVersionReq request; ClientRec client; + XIClientPtr pXIClient; struct test_data versions; int rc; @@ -213,28 +209,26 @@ test_XIQueryVersion_multiple(void) userdata = (void *) &versions; /* run 1 */ - versions.major_cached = -1; - versions.minor_cached = -1; - /* client is lower than server, noncached */ - request.major_version = 2; - request.minor_version = 1; + /* client is lower than server, nonexpected */ + versions.major_expected = request.major_version = 2; + versions.minor_expected = request.minor_version = 1; rc = ProcXIQueryVersion(&client); assert(rc == Success); - /* client is higher than server, cached */ + /* client is higher than server, no change */ request.major_version = 2; request.minor_version = 3; rc = ProcXIQueryVersion(&client); assert(rc == Success); - /* client is equal, cached */ + /* client tries to set higher version, stays same */ request.major_version = 2; request.minor_version = 2; rc = ProcXIQueryVersion(&client); assert(rc == Success); - /* client is low than cached */ + /* client tries to set lower version, no change */ request.major_version = 2; request.minor_version = 0; rc = ProcXIQueryVersion(&client); @@ -243,20 +237,24 @@ test_XIQueryVersion_multiple(void) /* run 2 */ client = init_client(request.length, &request); XIVersion.major_version = 2; - XIVersion.minor_version = 2; - versions.major_cached = -1; - versions.minor_cached = -1; + XIVersion.minor_version = 3; - request.major_version = 2; - request.minor_version = 2; + versions.major_expected = request.major_version = 2; + versions.minor_expected = request.minor_version = 2; rc = ProcXIQueryVersion(&client); assert(rc == Success); + /* client bumps version from 2.2 to 2.3 */ request.major_version = 2; - request.minor_version = 3; + versions.minor_expected = request.minor_version = 3; rc = ProcXIQueryVersion(&client); assert(rc == Success); + /* real version is changed, too! */ + pXIClient = dixLookupPrivate(&client.devPrivates, XIClientPrivateKey); + assert(pXIClient->minor_version == 3); + + /* client tries to set lower version, no change */ request.major_version = 2; request.minor_version = 1; rc = ProcXIQueryVersion(&client); @@ -265,20 +263,22 @@ test_XIQueryVersion_multiple(void) /* run 3 */ client = init_client(request.length, &request); XIVersion.major_version = 2; - XIVersion.minor_version = 2; - versions.major_cached = -1; - versions.minor_cached = -1; + XIVersion.minor_version = 3; - request.major_version = 2; - request.minor_version = 3; + versions.major_expected = request.major_version = 2; + versions.minor_expected = request.minor_version = 3; rc = ProcXIQueryVersion(&client); assert(rc == Success); request.major_version = 2; - request.minor_version = 2; + versions.minor_expected = request.minor_version = 2; rc = ProcXIQueryVersion(&client); assert(rc == Success); + /* but real client version must not be lowered */ + pXIClient = dixLookupPrivate(&client.devPrivates, XIClientPrivateKey); + assert(pXIClient->minor_version == 3); + request.major_version = 2; request.minor_version = 1; rc = ProcXIQueryVersion(&client); diff --git a/xorg-server/xkeyboard-config/symbols/is b/xorg-server/xkeyboard-config/symbols/is index e5f5d82a5..17f78e027 100644 --- a/xorg-server/xkeyboard-config/symbols/is +++ b/xorg-server/xkeyboard-config/symbols/is @@ -33,7 +33,7 @@ xkb_symbols "basic" { // <AB00> = <LSGT>, is in file "pc": pc105 key <AB10> { [ thorn, THORN, dead_belowdot, dead_abovedot ] }; - key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; + key <SPCE> { [ space, space, space, space ] }; include "level3(ralt_switch)" }; |