raster pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=9c80c2b070cd4d9af92a596c47acaee0ef181f06
commit 9c80c2b070cd4d9af92a596c47acaee0ef181f06 Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com> Date: Sat Jul 9 12:01:51 2016 +0900 elput - simplify and fix handling of string overflow with xdg runtimedir this addresses an issue pointed to by CID 1357168 --- src/lib/elput/elput_evdev.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/lib/elput/elput_evdev.c b/src/lib/elput/elput_evdev.c index 5393a07..089bad5 100644 --- a/src/lib/elput/elput_evdev.c +++ b/src/lib/elput/elput_evdev.c @@ -60,24 +60,15 @@ _keyboard_modifiers_update(Elput_Keyboard *kbd, Elput_Seat *seat) static int _keyboard_fd_get(off_t size) { - int fd = 0, blen = 0, len = 0; + int fd = 0; const char *path; char tmp[PATH_MAX]; long flags; - blen = sizeof(tmp) - 1; - if (!(path = getenv("XDG_RUNTIME_DIR"))) return -1; - len = strlen(path); - if (len < blen) - { - strcpy(tmp, path); - strcat(tmp, "/elput-keymap-XXXXXX"); - } - else - return -1; + snprintf(tmp, sizeof(tmp), "%s/elput-keymap-XXXXXX", path); fd = eina_file_mkstemp(tmp, NULL); if (fd < 0) return -1; --