[PATCH 3/4] dix: fix memory leak in TouchEventHistoryReplay

Peter Hutterer peter.hutterer at who-t.net
Mon Jun 25 17:00:49 PDT 2012


Don't leak if ti->history is NULL.

Found by coverity.

Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
 dix/touch.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/dix/touch.c b/dix/touch.c
index 8799502..fcf7dd5 100644
--- a/dix/touch.c
+++ b/dix/touch.c
@@ -462,14 +462,17 @@ TouchEventHistoryPush(TouchPointInfoPtr ti, const DeviceEvent *ev)
 void
 TouchEventHistoryReplay(TouchPointInfoPtr ti, DeviceIntPtr dev, XID resource)
 {
-    InternalEvent *tel = InitEventList(GetMaximumEventsNum());
-    ValuatorMask *mask = valuator_mask_new(0);
+    InternalEvent *tel;
+    ValuatorMask *mask;
     int i, nev;
     int flags;
 
     if (!ti->history)
         return;
 
+    tel = InitEventList(GetMaximumEventsNum());
+    mask = valuator_mask_new(0);
+
     valuator_mask_set_double(mask, 0, ti->history[0].valuators.data[0]);
     valuator_mask_set_double(mask, 1, ti->history[0].valuators.data[1]);
 
-- 
1.7.10.2



More information about the xorg-devel mailing list