Yup!

Reviewed-by: Jamey Sharp <ja...@minilop.net>

On Thu, Apr 21, 2011 at 03:04:46PM +1000, Peter Hutterer wrote:
> If the velocity is 0, skip the remainder.
> If we're not in range, skip the remainder.
> 
> No functional change.
> 
> Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
> ---
> This incorporates the control flow change that sneaked into 11/20 and
> Jamey's suggestion for the DebugAccelF move.
> 
>  dix/ptrveloc.c |   23 +++++++++++++----------
>  1 files changed, 13 insertions(+), 10 deletions(-)
> 
> diff --git a/dix/ptrveloc.c b/dix/ptrveloc.c
> index f4548b6..758e204 100644
> --- a/dix/ptrveloc.c
> +++ b/dix/ptrveloc.c
> @@ -628,26 +628,29 @@ QueryTrackers(DeviceVelocityPtr vel, int cur_t){
>  
>       tracker_velocity = CalcTracker(tracker, cur_t) * velocity_factor;
>  
> -     if ((initial_velocity == 0 || offset <= vel->initial_range) && 
> tracker_velocity != 0) {
> +     if (tracker_velocity == 0)
> +         continue;
> +
> +     if (initial_velocity == 0 || offset <= vel->initial_range) {
>           /* set initial velocity and result */
>           result = initial_velocity = tracker_velocity;
>           used_offset = offset;
> -     } else if (initial_velocity != 0 && tracker_velocity != 0) {
> +     } else if (initial_velocity != 0) {
>           velocity_diff = fabs(initial_velocity - tracker_velocity);
> -         if (velocity_diff <= vel->max_diff ||
> -             velocity_diff/(initial_velocity + tracker_velocity) < 
> vel->max_rel_diff) {
> -             /* we're in range with the initial velocity,
> -              * so this result is likely better
> -              * (it contains more information). */
> -             result = tracker_velocity;
> -             used_offset = offset;
> -         }else{
> +
> +         if (velocity_diff > vel->max_diff &&
> +             velocity_diff/(initial_velocity + tracker_velocity) >= 
> vel->max_rel_diff) {
>               /* we're not in range, quit - it won't get better. */
>               DebugAccelF("(dix prtacc) query: tracker too different:"
>                           " old %2.2f initial %2.2f diff: %2.2f\n",
>                           tracker_velocity, initial_velocity, velocity_diff);
>               break;
>           }
> +         /* we're in range with the initial velocity,
> +          * so this result is likely better
> +          * (it contains more information). */
> +         result = tracker_velocity;
> +         used_offset = offset;
>       }
>      }
>      if(offset == vel->num_tracker){
> -- 
> 1.7.4.4
> 

Attachment: signature.asc
Description: Digital signature

_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to