From 56a5e00b17921aa47acf0e3dc442031d7dc4efa1 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Wed, 30 Nov 2022 09:51:17 -0500 Subject: [PATCH] device-manager: Actually fall back to reading from tty if no xkb layout specified Commit 7fcfcdf2d63025151a160f7948ee7406f0f16843 tried to fall back to reading from a tty if no xkb layout was specified, but neglected to actually check if no xkb layout was specified and force fall back to reading from a tty in that case. This commit changes device manager to actually disable reading from /dev/input if the user doesn't specify a layout to use in vconsole.conf. Closes https://gitlab.freedesktop.org/plymouth/plymouth/-/issues/199 --- src/libply-splash-core/ply-device-manager.c | 22 +++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/libply-splash-core/ply-device-manager.c b/src/libply-splash-core/ply-device-manager.c index 03fa0f30..7e21bffe 100644 --- a/src/libply-splash-core/ply-device-manager.c +++ b/src/libply-splash-core/ply-device-manager.c @@ -837,16 +837,18 @@ parse_vconsole_conf (ply_device_manager_t *manager) ply_trace ("XKB_KEYMAP: %s KEYMAP: %s", xkb_layout, keymap); - struct xkb_rule_names xkb_keymap = { - .layout = xkb_layout, - .model = xkb_model, - .variant = xkb_variant, - .options = xkb_options, - }; - manager->xkb_keymap = xkb_keymap_new_from_names (manager->xkb_context, &xkb_keymap, XKB_MAP_COMPILE_NO_FLAGS); - - if (manager->xkb_keymap == NULL) { - ply_trace ("Failed to set xkb keymap of LAYOUT: %s MODEL: %s VARIANT: %s OPTIONS: %s", xkb_layout, xkb_model, xkb_variant, xkb_options); + if (xkb_layout != NULL) { + struct xkb_rule_names xkb_keymap = { + .layout = xkb_layout, + .model = xkb_model, + .variant = xkb_variant, + .options = xkb_options, + }; + manager->xkb_keymap = xkb_keymap_new_from_names (manager->xkb_context, &xkb_keymap, XKB_MAP_COMPILE_NO_FLAGS); + + if (manager->xkb_keymap == NULL) { + ply_trace ("Failed to set xkb keymap of LAYOUT: %s MODEL: %s VARIANT: %s OPTIONS: %s", xkb_layout, xkb_model, xkb_variant, xkb_options); + } } free (xkb_layout); -- 2.47.3