mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-01 22:58:38 -04:00
Add wlr_signal_emit_safe
This commit is contained in:
parent
3497e53516
commit
5e58d46cc1
43 changed files with 265 additions and 182 deletions
|
|
@ -13,13 +13,14 @@
|
|||
#include <wlr/config.h>
|
||||
#include <wlr/backend/session/interface.h>
|
||||
#include <wlr/util/log.h>
|
||||
#include <wlr/util/signal.h>
|
||||
|
||||
#ifdef WLR_HAS_SYSTEMD
|
||||
#include <systemd/sd-bus.h>
|
||||
#include <systemd/sd-login.h>
|
||||
#elif defined(WLR_HAS_ELOGIND)
|
||||
#include <elogind/sd-bus.h>
|
||||
#include <elogind/sd-login.h>
|
||||
#include <elogind/sd-login.h>
|
||||
#endif
|
||||
|
||||
enum { DRM_MAJOR = 226 };
|
||||
|
|
@ -250,7 +251,7 @@ static int pause_device(sd_bus_message *msg, void *userdata, sd_bus_error *ret_e
|
|||
|
||||
if (major == DRM_MAJOR) {
|
||||
session->base.active = false;
|
||||
wl_signal_emit(&session->base.session_signal, session);
|
||||
wlr_signal_emit_safe(&session->base.session_signal, session);
|
||||
}
|
||||
|
||||
if (strcmp(type, "pause") == 0) {
|
||||
|
|
@ -286,7 +287,7 @@ static int resume_device(sd_bus_message *msg, void *userdata, sd_bus_error *ret_
|
|||
|
||||
if (!session->base.active) {
|
||||
session->base.active = true;
|
||||
wl_signal_emit(&session->base.session_signal, session);
|
||||
wlr_signal_emit_safe(&session->base.session_signal, session);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue