diff options
author | Pauli Nieminen <ext-pauli.nieminen@nokia.com> | 2011-01-03 12:25:28 -0500 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2011-01-03 12:28:19 -0500 |
commit | 92fa96451af37a7a0f2592de07643fdaed7a9efd (patch) | |
tree | 129531eccdab8638160ee09e747aa541d6eff1fc | |
parent | fa9747b9d4443eef9b1687b8b1208801f5c585da (diff) |
Initialize event type
If we receive unsupported event closing connection triggers valgrind
error.
==12017== Conditional jump or move depends on uninitialised value(s)
==12017== at 0x487D454: _XFreeDisplayStructure (OpenDis.c:607)
==12017== by 0x486857B: XCloseDisplay (ClDisplay.c:72)
*snip*
==12017== Uninitialised value was created by a heap allocation
==12017== at 0x4834C48: malloc (vg_replace_malloc.c:236)
==12017== by 0x4894147: _XEnq (XlibInt.c:877)
==12017== by 0x4891BF3: handle_response (xcb_io.c:335)
==12017== by 0x4892263: _XReply (xcb_io.c:626)
*snip*
Problem is that XFreeDisplaySturture is checking for qelt->event.type ==
GenericEvent while _XUnknownWireEvent doesn't store the type.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
-rw-r--r-- | src/XlibInt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/XlibInt.c b/src/XlibInt.c index 11a85bab..d55c26af 100644 --- a/src/XlibInt.c +++ b/src/XlibInt.c @@ -883,6 +883,8 @@ void _XEnq( type = event->u.u.type & 0177; extension = ((xGenericEvent*)event)->extension; + + qelt->event.type = type; /* If an extension has registerd a generic_event_vec handler, then * it can handle event cookies. Otherwise, proceed with the normal * event handlers. |