diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ec5ccb8..588adf0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -180,6 +180,8 @@ * Memory leak caused by custom box drawing glyphs not being completely freed when destroying a foot window instance (https://codeberg.org/dnkl/foot/issues/586). +* Crash in scrollback search when current XKB layout is missing + _compose_ definitions. ### Security diff --git a/search.c b/search.c index 3d1ace4b..9fc1ab2a 100644 --- a/search.c +++ b/search.c @@ -798,8 +798,9 @@ search_input(struct seat *seat, struct terminal *term, uint32_t key, { LOG_DBG("search: input: sym=%d/0x%x, mods=0x%08x", sym, sym, mods); - enum xkb_compose_status compose_status = xkb_compose_state_get_status( - seat->kbd.xkb_compose_state); + enum xkb_compose_status compose_status = seat->kbd.xkb_compose_state != NULL + ? xkb_compose_state_get_status(seat->kbd.xkb_compose_state) + : XKB_COMPOSE_NOTHING; bool update_search_result = false; bool redraw = false;