From 127cee116d3e3e451a3859d1938968892ca5a798 Mon Sep 17 00:00:00 2001 From: JengHyun Kang Date: Tue, 12 Jul 2016 11:14:03 +0900 Subject: [PATCH] svace: Modify a strerror function to strerror_r to gurantee threads safety. Change-Id: Iacd31adb29bb284f93aa04597d5c6ca364e0616b --- src/evdev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c index 11fdb737..3872673e 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1763,12 +1763,14 @@ struct evdev_device * evdev_device_create(struct libinput_seat *seat, struct udev_device *udev_device) { +#define STRERR_BUFSIZE 256 struct libinput *libinput = seat->libinput; struct evdev_device *device = NULL; int rc; int fd; int unhandled_device = 0; const char *devnode = udev_device_get_devnode(udev_device); + char buf[STRERR_BUFSIZE] = {0, }; /* Use non-blocking mode so that we can loop on read on * evdev_device_data() until all events on the fd are @@ -1777,7 +1779,7 @@ evdev_device_create(struct libinput_seat *seat, if (fd < 0) { log_info(libinput, "opening input device '%s' failed (%s).\n", - devnode, strerror(-fd)); + devnode, strerror_r(-fd, buf, STRERR_BUFSIZE)); return NULL; } -- 2.34.1