summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/wayland.cpp5
-rw-r--r--src/wayland.hpp2
2 files changed, 4 insertions, 3 deletions
diff --git a/src/wayland.cpp b/src/wayland.cpp
index c19b0dc..b4f4800 100644
--- a/src/wayland.cpp
+++ b/src/wayland.cpp
@@ -53,8 +53,9 @@ constexpr struct wl_registry_listener registry_listener = {
}
registry::registry(struct wl_display *d)
- : wayland_proxy(wl_display_get_registry(d)) {
- wl_registry_add_listener(this->proxy, &registry_listener, this);
+ : wayland_proxy(!d ? nullptr : wl_display_get_registry(d)) {
+ if (this->proxy)
+ wl_registry_add_listener(this->proxy, &registry_listener, this);
}
registry::~registry() {
diff --git a/src/wayland.hpp b/src/wayland.hpp
index c97c51a..afebe92 100644
--- a/src/wayland.hpp
+++ b/src/wayland.hpp
@@ -27,7 +27,7 @@ struct wayland_proxy {
// custom wayland dtor
if (this->proxy) {
logdebug("%s %p @ %p", __func__, this, this->proxy);
- wl_proxy_destroy(reinterpret_cast<struct wl_proxy *>(proxy));
+ wl_proxy_destroy(reinterpret_cast<struct wl_proxy *>(this->proxy));
}
}
};