diff options
Diffstat (limited to 'xorg-server/dix')
-rw-r--r-- | xorg-server/dix/devices.c | 4 | ||||
-rw-r--r-- | xorg-server/dix/events.c | 9 |
2 files changed, 6 insertions, 7 deletions
diff --git a/xorg-server/dix/devices.c b/xorg-server/dix/devices.c index 3634eece0..6329d2810 100644 --- a/xorg-server/dix/devices.c +++ b/xorg-server/dix/devices.c @@ -686,7 +686,6 @@ FreeDeviceClass(int type, pointer *class) { ValuatorClassPtr *v = (ValuatorClassPtr*)class; - /* Counterpart to 'biggest hack ever' in init. */ if ((*v)->motion) xfree((*v)->motion); xfree((*v)); @@ -908,6 +907,9 @@ CloseDownDevices(void) DeleteInputDeviceRequest(dev); } + CloseDevice(inputInfo.pointer); + CloseDevice(inputInfo.keyboard); + inputInfo.devices = NULL; inputInfo.off_devices = NULL; inputInfo.keyboard = NULL; diff --git a/xorg-server/dix/events.c b/xorg-server/dix/events.c index 015c2b19f..7e0867c82 100644 --- a/xorg-server/dix/events.c +++ b/xorg-server/dix/events.c @@ -5080,12 +5080,9 @@ InitEvents(void) void CloseDownEvents(void) { - int len; - EventListPtr list; - - len = GetEventList(&list); - while(len--) - xfree(list[len].event); + FreeEventList(InputEventList, InputEventListLen); + InputEventListLen = 0; + InputEventList = NULL; } /** |