Bug 98828

Summary: LIBINPUT_CALIBRATION_MATRIX works only for certain locales
Product: Wayland Reporter: Tomasz Olszak <olszak.tomasz>
Component: libinputAssignee: Wayland bug list <wayland-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: peter.hutterer
Version: 1.2.x   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Tomasz Olszak 2016-11-23 11:06:02 UTC
If you have locale that prints real numbers with commas e.g. 1,25 or 1,50 regular udev rule with LIBINPUT_CALIBRATION_MATRIX won't work. The problem is sscanf in udev_seat expects string with number to correcponding LC_NUMERIC locale. It would be nice if we could use 1.25 in settings and not be dependent on locale.
Comment 1 Tomasz Olszak 2016-11-23 11:06:42 UTC
You can check it with locale:
LC_NUMERIC=pl_PL.UTF-8
Comment 3 Peter Hutterer 2016-11-29 01:23:07 UTC
commit 98793f6b435abf8c17b84102de1d7c59ba8e3f54
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Fri Nov 25 16:27:17 2016 +1000

    evdev: use safe_atod to convert the matrix values

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.