This commit is contained in:
Camilla Löwy 2017-06-15 19:56:25 +02:00
parent 6da26c8d6c
commit 99762ad7f0

View File

@ -287,15 +287,12 @@ GLFWbool _glfwInitJoysticksLinux(void)
if (regexec(&_glfw.linjs.regex, entry->d_name, 1, &match, 0) != 0)
continue;
const size_t length = strlen(dirname) + strlen(entry->d_name) + 1;
char* path = calloc(length + 1, 1);
char path[PATH_MAX];
snprintf(path, length + 1, "%s/%s", dirname, entry->d_name);
snprintf(path, sizeof(path), "%s/%s", dirname, entry->d_name);
if (openJoystickDevice(path))
count++;
free(path);
}
closedir(dir);
@ -349,9 +346,12 @@ void _glfwDetectJoystickConnectionLinux(void)
regmatch_t match;
const struct inotify_event* e = (struct inotify_event*) (buffer + offset);
if (regexec(&_glfw.linjs.regex, e->name, 1, &match, 0) == 0)
{
char path[20];
offset += sizeof(struct inotify_event) + e->len;
if (regexec(&_glfw.linjs.regex, e->name, 1, &match, 0) != 0)
continue;
char path[PATH_MAX];
snprintf(path, sizeof(path), "/dev/input/%s", e->name);
if (e->mask & (IN_CREATE | IN_ATTRIB))
@ -370,9 +370,6 @@ void _glfwDetectJoystickConnectionLinux(void)
}
}
}
offset += sizeof(struct inotify_event) + e->len;
}
}