diff options
Diffstat (limited to 'src/platform/wayland/shell.c')
| -rw-r--r-- | src/platform/wayland/shell.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/platform/wayland/shell.c b/src/platform/wayland/shell.c index 8e6b67e..12c73e0 100644 --- a/src/platform/wayland/shell.c +++ b/src/platform/wayland/shell.c @@ -1,5 +1,7 @@ #include "internal.h" +#include <errno.h> + static void wm_base_ping(void *data, struct xdg_wm_base *wm_base, uint32_t serial); static const struct xdg_wm_base_listener wm_base_listener; @@ -421,7 +423,11 @@ int surface_init_shell(struct wayland_surface *w, const char *title) bool wayland_surface_bell(struct wayland_surface *w) { - if (!w || w->closed || !w->conn || !w->conn->system_bell || !w->surface) return false; + if (!w || w->closed || !w->conn || !w->surface) return false; + if (!w->conn->system_bell) { + errno = ENOTSUP; /* The compositor lacks xdg-system-bell. */ + return false; + } xdg_system_bell_v1_ring(w->conn->system_bell, w->surface); return true; } |
