diff --git a/CHANGELOG.md b/CHANGELOG.md index 2e409cbf..b4eef6c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,6 +56,9 @@ `double-width` to `wcswidth`. * INSTALL.md: `--override tweak.grapheme-shaping=no` added to PGO command line. +* Foot now terminates if there are no available seats - for example, + due to the compositor not implementing a recent enough version of + the `wl_seat` interface (https://codeberg.org/dnkl/foot/issues/779). ### Deprecated diff --git a/wayland.c b/wayland.c index 22e3d6dc..44157ab2 100644 --- a/wayland.c +++ b/wayland.c @@ -1238,6 +1238,10 @@ wayl_init(const struct config *conf, struct fdm *fdm) "(wl_data_device_manager not implemented by server)"); goto out; } + if (tll_length(wayl->seats) == 0) { + LOG_ERR("no seats available (wl_seat interface too old?)"); + goto out; + } if (wayl->primary_selection_device_manager == NULL) LOG_WARN("no primary selection available");