From: Duna Oh Date: Tue, 8 Feb 2022 06:39:18 +0000 (+0900) Subject: tablet: Fix divide by zero error. 'count' could be zero X-Git-Tag: accepted/tizen/unified/20240105.013022~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cd5c1eb3f79d529a703e8a87813149c4be09ec4d;p=platform%2Fupstream%2Flibinput.git tablet: Fix divide by zero error. 'count' could be zero --- diff --git a/src/evdev-tablet.c b/src/evdev-tablet.c index c290845c..b723d98c 100644 --- a/src/evdev-tablet.c +++ b/src/evdev-tablet.c @@ -686,6 +686,9 @@ tablet_smoothen_axes(const struct tablet_dispatch *tablet, size_t count = tablet_history_size(tablet); struct tablet_axes smooth = { 0 }; + if (count <= 0) + return; + for (i = 0; i < count; i++) { const struct tablet_axes *a = tablet_history_get(tablet, i); @@ -696,11 +699,11 @@ tablet_smoothen_axes(const struct tablet_dispatch *tablet, smooth.tilt.y += a->tilt.y; } - axes->point.x = smooth.point.x/count; - axes->point.y = smooth.point.y/count; + axes->point.x = smooth.point.x/(double)count; + axes->point.y = smooth.point.y/(double)count; - axes->tilt.x = smooth.tilt.x/count; - axes->tilt.y = smooth.tilt.y/count; + axes->tilt.x = smooth.tilt.x/(double)count; + axes->tilt.y = smooth.tilt.y/(double)count; } static bool