diff -ur xfce4-screensaver-0.1.9-orig/src/gs-listener-dbus.c xfce4-screensaver-0.1.9/src/gs-listener-dbus.c --- xfce4-screensaver-0.1.9-orig/src/gs-listener-dbus.c 2020-03-23 02:35:47.000000000 +0300 +++ xfce4-screensaver-0.1.9/src/gs-listener-dbus.c 2020-03-29 23:40:01.192265252 +0300 @@ -1305,14 +1305,32 @@ g_return_val_if_fail (message != NULL, DBUS_HANDLER_RESULT_NOT_YET_HANDLED); if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "Lock")) { + DBusMessage *reply = dbus_message_new_method_return (message); + if (reply) { + dbus_connection_send (connection, reply, NULL); + dbus_message_unref (reply); + } + g_signal_emit (listener, signals[LOCK], 0); return DBUS_HANDLER_RESULT_HANDLED; } if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "Quit")) { + DBusMessage *reply = dbus_message_new_method_return (message); + if (reply) { + dbus_connection_send (connection, reply, NULL); + dbus_message_unref (reply); + } + g_signal_emit (listener, signals[QUIT], 0); return DBUS_HANDLER_RESULT_HANDLED; } if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "Cycle")) { + DBusMessage *reply = dbus_message_new_method_return (message); + if (reply) { + dbus_connection_send (connection, reply, NULL); + dbus_message_unref (reply); + } + g_signal_emit (listener, signals[CYCLE], 0); return DBUS_HANDLER_RESULT_HANDLED; } @@ -1344,6 +1362,11 @@ return listener_show_message (listener, connection, message); } if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "SimulateUserActivity")) { + DBusMessage *reply = dbus_message_new_method_return (message); + if (reply) { + dbus_connection_send (connection, reply, NULL); + dbus_message_unref (reply); + } g_signal_emit (listener, signals[SIMULATE_USER_ACTIVITY], 0); return DBUS_HANDLER_RESULT_HANDLED; } @@ -1753,7 +1776,7 @@ listener_service_deleted (listener, message); } } else { - return listener_dbus_handle_session_message (connection, message, user_data, FALSE); + return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } return DBUS_HANDLER_RESULT_HANDLED; @@ -1778,7 +1801,7 @@ g_timeout_add (10000, (GSourceFunc)reinit_dbus, listener); } else { - return listener_dbus_handle_system_message (connection, message, user_data, FALSE); + return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } return DBUS_HANDLER_RESULT_HANDLED;