diff --git a/CHANGELOG.md b/CHANGELOG.md index 1904fd5d..9a972955 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -62,6 +62,8 @@ CSI codes in the Kitty keyboard protocol. * Assertion in `shm.c:buffer_release()` (https://codeberg.org/dnkl/foot/issues/844). +* Crash when setting a key- or mouse binding to the empty string + (https://codeberg.org/dnkl/foot/issues/851). ### Security diff --git a/config.c b/config.c index 50fb74e6..2b7ad378 100644 --- a/config.c +++ b/config.c @@ -1726,6 +1726,12 @@ value_to_key_combos(struct context *ctx, int action, struct argv *argv, } + if (idx == 0) { + LOG_CONTEXTUAL_ERR( + "empty binding not allowed (set to 'none' to unmap)"); + goto err; + } + remove_from_key_bindings_list(bindings, action, argv); bindings->arr = xrealloc(