evdev: fix integer division problem by casting one of two integers as double
authorSung-Jin Park <sj76.park@samsung.com>
Mon, 13 Nov 2017 06:39:40 +0000 (15:39 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Tue, 4 Feb 2025 09:32:08 +0000 (18:32 +0900)
Change-Id: Ice7caf41c4834b625825335c37e14266c31f5cc4
Signed-off-by: Sung-Jin Park <sj76.park@samsung.com>
src/evdev.h

index 5228a8d082f1a1e9b776e9f17867fd299500eb3b..3aeae5be430b2f020cd2f4fad02f7d5258b1b831 100644 (file)
@@ -912,8 +912,8 @@ evdev_device_unit_delta_to_mm(const struct evdev_device* device,
        absx = device->abs.absinfo_x;
        absy = device->abs.absinfo_y;
 
-       mm.x = 1.0 * units->x/absx->resolution;
-       mm.y = 1.0 * units->y/absy->resolution;
+       mm.x = 1.0 * units->x/(double)absx->resolution;
+       mm.y = 1.0 * units->y/(double)absy->resolution;
 
        return mm;
 }
@@ -940,8 +940,8 @@ evdev_device_units_to_mm(const struct evdev_device* device,
        absx = device->abs.absinfo_x;
        absy = device->abs.absinfo_y;
 
-       mm.x = (units->x - absx->minimum)/absx->resolution;
-       mm.y = (units->y - absy->minimum)/absy->resolution;
+       mm.x = (units->x - absx->minimum)/(double)absx->resolution;
+       mm.y = (units->y - absy->minimum)/(double)absy->resolution;
 
        return mm;
 }