OSDN Git Service

plasma: check the reply of the org.freedesktop.ScreenSaver.Lock call in PowerManageme...
authorIvailo Monev <xakepa10@gmail.com>
Wed, 30 Nov 2022 01:03:38 +0000 (03:03 +0200)
committerIvailo Monev <xakepa10@gmail.com>
Wed, 30 Nov 2022 01:03:38 +0000 (03:03 +0200)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
plasma/dataengines/powermanagement/powermanagementjob.cpp

index ba8c4bb..c528057 100644 (file)
@@ -47,10 +47,13 @@ void PowerManagementJob::start()
     //kDebug() << "starting operation  ... " << operation;
 
     if (operation == "lockScreen") {
-#warning TODO: error check
         static const QString interface("org.freedesktop.ScreenSaver");
         QDBusInterface screensaver(interface, "/ScreenSaver");
-        screensaver.asyncCall("Lock");
+        QDBusPendingReply<void> reply = screensaver.asyncCall("Lock");
+        if (reply.isError()) {
+            setResult(false);
+            return;
+        }
         setResult(true);
         return;
     } else if (operation == "suspend" || operation == "suspendToRam") {