ime: don’t call text-input functions when it isn’t available

Closes #259
This commit is contained in:
Daniel Eklöf 2020-12-25 22:04:19 +01:00
parent 218ce4ab87
commit 2227e36c66
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
2 changed files with 8 additions and 0 deletions

View file

@ -36,6 +36,8 @@
* Exit when the client application terminates, not when the TTY file
descriptor is closed.
* Crash on compositors not implementing the _text input_ interface
(https://codeberg.org/dnkl/foot/issues/259).
### Security

6
ime.c
View file

@ -327,6 +327,9 @@ ime_reset(struct seat *seat)
void
ime_enable(struct seat *seat)
{
if (unlikely(seat->wayl->text_input_manager == NULL))
return;
struct terminal *term = seat->kbd_focus;
assert(term != NULL);
@ -348,6 +351,9 @@ ime_enable(struct seat *seat)
void
ime_disable(struct seat *seat)
{
if (unlikely(seat->wayl->text_input_manager == NULL))
return;
ime_reset(seat);
zwp_text_input_v3_disable(seat->wl_text_input);