mirror of
https://github.com/hyprwm/hypridle.git
synced 2024-11-16 23:25:58 +01:00
core: Fix running without logind (#76)
* dbus: Move logind matches inside try-catch * core: Don't exit when logind is absent logind being missing is non-fatal
This commit is contained in:
parent
9163a9f318
commit
e5366d34b5
1 changed files with 4 additions and 5 deletions
|
@ -476,16 +476,15 @@ void CHypridle::setupDBUS() {
|
||||||
try {
|
try {
|
||||||
auto reply = proxy->callMethod(method);
|
auto reply = proxy->callMethod(method);
|
||||||
reply >> path;
|
reply >> path;
|
||||||
|
|
||||||
|
m_sDBUSState.connection->addMatch("type='signal',path='" + path + "',interface='org.freedesktop.login1.Session'", handleDbusLogin, sdbus::floating_slot_t{});
|
||||||
|
m_sDBUSState.connection->addMatch("type='signal',path='/org/freedesktop/login1',interface='org.freedesktop.login1.Manager'", handleDbusSleep, sdbus::floating_slot_t{});
|
||||||
} catch (std::exception& e) {
|
} catch (std::exception& e) {
|
||||||
Debug::log(CRIT, "Couldn't connect to logind service ({})", e.what());
|
Debug::log(WARN, "Couldn't connect to logind service ({})", e.what());
|
||||||
exit(1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug::log(LOG, "Using dbus path {}", path.c_str());
|
Debug::log(LOG, "Using dbus path {}", path.c_str());
|
||||||
|
|
||||||
m_sDBUSState.connection->addMatch("type='signal',path='" + path + "',interface='org.freedesktop.login1.Session'", handleDbusLogin, sdbus::floating_slot_t{});
|
|
||||||
m_sDBUSState.connection->addMatch("type='signal',path='/org/freedesktop/login1',interface='org.freedesktop.login1.Manager'", handleDbusSleep, sdbus::floating_slot_t{});
|
|
||||||
|
|
||||||
if (!IGNORE_SYSTEMD_INHIBIT) {
|
if (!IGNORE_SYSTEMD_INHIBIT) {
|
||||||
m_sDBUSState.connection->addMatch("type='signal',path='/org/freedesktop/login1',interface='org.freedesktop.DBus.Properties'", handleDbusBlockInhibitsPropertyChanged, sdbus::floating_slot_t{});
|
m_sDBUSState.connection->addMatch("type='signal',path='/org/freedesktop/login1',interface='org.freedesktop.DBus.Properties'", handleDbusBlockInhibitsPropertyChanged, sdbus::floating_slot_t{});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue