summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorDeron Johnson <deron.johnson@sun.com>2005-01-20 23:47:26 +0000
committerDeron Johnson <deron.johnson@sun.com>2005-01-20 23:47:26 +0000
commit57c954d3aa00c4882c7fecfd53e772f9641c0b38 (patch)
tree0ddc1a6ca4f67efbd382f211fe71a2f77138b8e1 /hw
parentcc390e4ed5e0d1bc8f7c3eaf9de67be4e9792b7c (diff)
Integrate changes for release-0-6-1lg3d-rel-0-7-0lg3d
Diffstat (limited to 'hw')
-rw-r--r--hw/xfree86/common/xf86Xinput.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
index 25b61d08b..ddf7e1ea6 100644
--- a/hw/xfree86/common/xf86Xinput.c
+++ b/hw/xfree86/common/xf86Xinput.c
@@ -112,8 +112,7 @@
#include "xf86_OSproc.h" /* sigio stuff */
#ifdef LG3D
-# include "../../../dix/ds.h"
-# include "../../../Xext/lgeint.h"
+#include "../../../Xext/lgeint.h"
#endif /* LG3D */
/******************************************************************************
@@ -699,7 +698,9 @@ xf86eqEnqueue (xEvent *e)
#ifdef XINPUT
int count;
+#ifndef LG3D
xf86AssertBlockedSIGIO ("xf86eqEnqueue");
+#endif /* !LG3D */
switch (e->u.u.type) {
case KeyPress:
case KeyRelease:
@@ -735,9 +736,18 @@ xf86eqEnqueue (xEvent *e)
#endif
#ifdef LG3D
- /* If Display Server is not yet alive, do nothing to the event */
- if (lgeDisplayServerIsAlive) {
- dsProcessEvent(e);
+ if (lgeDisplayServerIsAlive &&
+ !lgeDisplayServerClient->clientGone &&
+ !lgeEventComesFromDS) {
+
+ /*
+ ErrorF("Send event XS->DS, type = %d xy = %d, %d\n",
+ e->u.u.type, e->u.keyButtonPointer.rootX,
+ e->u.keyButtonPointer.rootY);
+ */
+
+ WriteToClient(lgeDisplayServerClient, sizeof(xEvent), (char *)e);
+ return;
}
#endif /* LG3D */