diff --git a/input/common/linux_common.c b/input/common/linux_common.c index 89b9e38b21..e2fa845ab9 100644 --- a/input/common/linux_common.c +++ b/input/common/linux_common.c @@ -68,8 +68,6 @@ bool linux_terminal_init(void) if (tcsetattr(0, TCSAFLUSH, &newTerm) < 0) return false; - if (ioctl(0, KDSKBMODE, K_MEDIUMRAW) < 0) - return false; return true; } @@ -101,6 +99,9 @@ bool linux_terminal_disable_input(void) return false; if (!linux_terminal_init()) + return false; + + if (ioctl(0, KDSKBMODE, K_MEDIUMRAW) < 0) { linux_terminal_flush(); return false; diff --git a/input/drivers/udev_input.c b/input/drivers/udev_input.c index 22b6237c7d..e630e14743 100644 --- a/input/drivers/udev_input.c +++ b/input/drivers/udev_input.c @@ -697,6 +697,7 @@ static void *udev_input_init(void) input_keymaps_init_keyboard_lut(rarch_key_map_linux); linux_terminal_disable_input(); + return udev; error: