--- a/open-src/xserver/xorg/sun-src/IA/interactive.c Thu Mar 11 15:52:00 2010 -0800
+++ b/open-src/xserver/xorg/sun-src/IA/interactive.c Thu Mar 11 17:09:14 2010 -0800
@@ -225,6 +225,7 @@
ClientPtr pClient = pci->client;
ClientProcessPtr CurrentPids;
IAClientPrivatePtr priv;
+ LocalClientCredRec *lcc;
switch (pClient->clientState) {
case ClientStateGone:
@@ -258,6 +259,14 @@
case ClientStateInitial:
IAInitClientPrivate(pClient);
+ if (GetLocalClientCreds(pClient, &lcc) != -1) {
+ if (lcc->fieldsSet & LCC_PID_SET) {
+ ConnectionPidRec clientPid = lcc->pid;
+ SetClientPrivate(pClient, &clientPid, 1);
+ ChangeInteractive(pClient);
+ }
+ FreeLocalClientCreds(lcc);
+ }
break;
default: