From 790988d116b79c443517084daf4944996fc327b6 Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Tue, 27 Feb 2024 13:07:22 +0000 Subject: [PATCH] core: Catch sdbus-cpp exception to print better error (#19) $ hypridle [...] [LOG] wayland done, registering dbus Abort --- src/core/Hypridle.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/core/Hypridle.cpp b/src/core/Hypridle.cpp index 2aea26d..38b5d04 100644 --- a/src/core/Hypridle.cpp +++ b/src/core/Hypridle.cpp @@ -430,10 +430,15 @@ void CHypridle::setupDBUS() { auto proxy = sdbus::createProxy("org.freedesktop.login1", "/org/freedesktop/login1"); auto method = proxy->createMethodCall("org.freedesktop.login1.Manager", "GetSession"); method << "auto"; - auto reply = proxy->callMethod(method); - sdbus::ObjectPath path; - reply >> path; + + try { + auto reply = proxy->callMethod(method); + reply >> path; + } catch (std::exception& e) { + Debug::log(CRIT, "Couldn't connect to logind service ({})", e.what()); + exit(1); + } Debug::log(LOG, "Using dbus path {}", path.c_str());