From 689be0cb4b259840208c17f974066a942196793a Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 16 Dec 2008 14:19:38 +1000 Subject: [PATCH] dix: set the correct length in CreateClassesChangedEvent. Fallout from aeff14d5f208d02f211b8b2a1a98999624e8c2cf. Yes, we don't malloc anymore because we are inside a SIGIO and the memory is already there anyway. But we still need to set the event length correctly, otherwise mieqEnqueue/mieqProcessInputEvent don't know how much memory to copy. Signed-off-by: Peter Hutterer --- dix/getevents.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dix/getevents.c b/dix/getevents.c index 755b494c6..40d7b8445 100644 --- a/dix/getevents.c +++ b/dix/getevents.c @@ -119,6 +119,7 @@ CreateClassesChangedEvent(EventList* event, deviceClassesChangedEvent *dcce; int len = sizeof(xEvent); CARD32 ms = GetTimeInMillis(); + int namelen = 0; /* dummy */ dcce = (deviceClassesChangedEvent*)event->event; dcce->type = GenericEvent; @@ -126,6 +127,7 @@ CreateClassesChangedEvent(EventList* event, dcce->evtype = XI_DeviceClassesChangedNotify; dcce->time = ms; dcce->new_slave = slave->id; + SizeDeviceInfo(slave, &namelen, &len); dcce->length = (len - sizeof(xEvent))/4; }