Go to file
Adam Tkac 1df6716281 xfree86: don't try to UnInit virtual devices in DIDR. (#20087)
DeleteInputDeviceRequest function doesn't handle "virtual" devices well.
TightVNC libvnc.so module to X (which makes bare Xorg VNC capable) uses such
kind of devices.

Bare Xvnc (it is something like Xvfb) simply uses AddInputDevice &
RegisterDevice functions. Xvnc uses DeleteInputDeviceRequest from Xi/stubs.c
so everything works fine (now I see that DeleteInputDeviceRequest in
Xi/stubs.c should call RemoveDevice function, shouldn't it? :) )

Situation is quite different when you use libvnc.so module. It uses same
schema as Xvnc, so it simply calls AddInputDevice & RegisterDevice. Thus
device is created correctly. When server is terminated it calls
DeleteInputDeviceRequest (now from hw/xfree86/common/xf86Xinput.c) for each
device. Here is the difference - Xvnc calls DeleteInputDeviceRequest from
Xi/stubs.c as I wrote above. Thus Xorg gets sigsegv because "VNC" devices
don't have real input driver.

X.Org Bug 20087 <http://bugs.freedesktop.org/show_bug.cgi?id=20087>

[This isn't really a fix (libVNC should behave correctly) but not crashing the
server sounds like an improvement.]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23 18:54:56 +10:00
composite Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
config config: if we can't connect to HAL, listen for a startup notification. 2009-02-10 15:01:44 +10:00
damageext Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
dbe Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
dix dix: don't apply button mappings to SDs, or the device's MD. (#20122) 2009-02-23 18:54:53 +10:00
doc XKB: Remove -kb and +kb from -help text and man page. 2009-02-04 17:21:19 -05:00
exa Revert "exa: the extent of the valid region is probably much larger than that of the pending damage." 2009-02-17 19:40:59 +01:00
fb fb: add fbDoCopy and fbCopyRegion compatibility wrappers. 2009-02-11 14:35:17 +01:00
glx glx: Inialize best_score before calculating visual scores 2009-02-17 08:27:32 -08:00
hw xfree86: don't try to UnInit virtual devices in DIDR. (#20087) 2009-02-23 18:54:56 +10:00
include mi: change custom handlers to internal events 2009-02-23 17:52:40 +10:00
mi mi: split EQ popping and event processing into two functions. 2009-02-23 17:52:40 +10:00
miext [shadow] Store the closure in the buffer 2009-01-28 17:33:25 -05:00
os Remove a bunch of useless casts. 2009-01-22 02:11:16 -05:00
randr RANDR: Fail softly on GetPanning if the screen can't do it. 2009-02-17 13:57:02 -05:00
record Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
render xserver: Avoid sending uninitialized padding data over the network 2009-02-16 13:28:38 +10:00
Xext mi: split EQ popping and event processing into two functions. 2009-02-23 17:52:40 +10:00
xfixes xserver: Avoid sending uninitialized padding data over the network 2009-02-16 13:28:38 +10:00
Xi Input: change processing API to InternalEvents. 2009-02-23 17:52:40 +10:00
xkb Input: change processing API to InternalEvents. 2009-02-23 17:52:40 +10:00
.gitignore .gitignore: ignore sdksyms.dep 2009-01-25 19:13:33 -02:00
acinclude.m4 dolt: allow older versions of bash to compile the xserver (#19031) 2008-12-12 04:54:34 -05:00
autogen.sh autogen.sh: Pass --force to autoreconf 2008-07-22 16:55:26 +03:00
configure.ac configure.ac: Support version strings like W.X.Y.Z-XXXXXX 2009-02-17 23:27:08 -08:00
COPYING Revert "Update COPYING for SHA1 code" 2008-09-23 09:21:37 -07:00
cpprules.in For MANDEFS, also replace __mandir__ for $(mandir) which includes 2006-12-08 15:51:44 -06:00
Makefile.am Require macros 1.2.0 or newer for XORG_CHANGELOG and XORG_CWARNFLAGS. 2008-12-07 18:52:23 -02:00
xorg-server.m4 Add xorg-server.m4 for driver dependency checking. 2005-11-01 15:01:51 +00:00
xorg-server.pc.in Enable compiling the X Server and modules with hidden symbols by default. 2008-11-28 02:01:57 -02:00