[PATCH] dix: memset DeviceVelocityPtr to zero.

Peter Hutterer peter.hutterer at who-t.net
Wed Nov 19 20:00:14 PST 2008


Signed-off-by: Peter Hutterer <peter.hutterer at redhat.com>
---
I ran into this when testing the ptraccel property code - turns out
deviceSpecificProfile is garbage most of the time. Which is bad if you
switch profiles run-time. So let's memset the whole thing before initialising
it properly.

 dix/ptrveloc.c |   11 ++---------
 1 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/dix/ptrveloc.c b/dix/ptrveloc.c
index c8f8851..93a17df 100644
--- a/dix/ptrveloc.c
+++ b/dix/ptrveloc.c
@@ -99,22 +99,15 @@ SimpleSmoothProfile(DeviceVelocityPtr pVel, float velocity,
 void
 InitVelocityData(DeviceVelocityPtr s)
 {
-    s->lrm_time = 0;
-    s->velocity  = 0;
-    s->last_velocity = 0;
+    memset(s, 0, sizeof(DeviceVelocityRec));
+
     s->corr_mul = 10.0;      /* dots per 10 milisecond should be usable */
     s->const_acceleration = 1.0;   /* no acceleration/deceleration  */
     s->reset_time = 300;
-    s->last_reset = FALSE;
-    s->last_dx = 0;
-    s->last_dy = 0;
     s->use_softening = 1;
     s->min_acceleration = 1.0; /* don't decelerate */
     s->coupling = 0.25;
     s->average_accel = TRUE;
-    s->profile_private = NULL;
-    memset(&s->statistics, 0, sizeof(s->statistics));
-    memset(&s->filters, 0, sizeof(s->filters));
     SetAccelerationProfile(s, AccelProfileClassic);
     InitFilterChain(s, (float)1.0/20.0, 1, 1, 40);
 }
-- 
1.6.0.3



More information about the xorg mailing list