Index: /trunk/src/VBox/Main/src-server/linux/HostPowerLinux.cpp
===================================================================
--- /trunk/src/VBox/Main/src-server/linux/HostPowerLinux.cpp	(revision 55646)
+++ /trunk/src/VBox/Main/src-server/linux/HostPowerLinux.cpp	(revision 55647)
@@ -99,5 +99,6 @@
         DBusMessage *pMessage = NULL;
 
-        do {
+        for (;;)
+        {
             DBusMessageIter args;
             dbus_bool_t fSuspend;
@@ -105,5 +106,5 @@
             pMessage = dbus_connection_pop_message(pPowerObj->mpConnection);
             if (pMessage == NULL)
-                continue;
+                break;
             /* The systemd-logind interface notification. */
             if (   dbus_message_is_signal(pMessage, "org.freedesktop.login1.Manager", "PrepareForSleep")
@@ -117,5 +118,5 @@
                     pPowerObj->notify(Reason_HostSuspend);
                 else
-                    pPowerObj->notify(Reason_HostResume);            
+                    pPowerObj->notify(Reason_HostResume);
             }
             /* The UPowerd interface notifications.  Sleeping is the older one,
@@ -130,5 +131,5 @@
             /* Free local resources held for the message. */
             dbus_message_unref(pMessage);
-        } while (pMessage != NULL);
+        }
     }
     /* Close the socket or whatever underlying the connection. */
