launcher-util: Initialize kb_mode also when weston-launch sets up tty
authorKristian Høgsberg <krh@bitplanet.net>
Wed, 30 Apr 2014 17:40:39 +0000 (10:40 -0700)
committerKristian Høgsberg <krh@bitplanet.net>
Wed, 30 Apr 2014 17:40:39 +0000 (10:40 -0700)
We need a valid kb_mode to restore to in case weston-launch dies and
weston has to clean up the tty.  We don't get a chance to read out the
kb mode before weston-launch changes it, but it's safe to assume that it's
always K_UNICODE.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77455

src/launcher-util.c

index 1b63458..ac764dc 100644 (file)
@@ -390,6 +390,11 @@ weston_launcher_connect(struct weston_compositor *compositor, int tty,
        launcher->fd = weston_environment_get_fd("WESTON_LAUNCHER_SOCK");
        if (launcher->fd != -1) {
                launcher->tty = weston_environment_get_fd("WESTON_TTY_FD");
+               /* We don't get a chance to read out the original kb
+                * mode for the tty, so just hard code K_UNICODE here
+                * in case we have to clean if weston-launch dies. */
+               launcher->kb_mode = K_UNICODE;
+
                loop = wl_display_get_event_loop(compositor->wl_display);
                launcher->source = wl_event_loop_add_fd(loop, launcher->fd,
                                                        WL_EVENT_READABLE,