diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-06-16 17:27:14 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-06-16 22:59:50 -0300 |
commit | 607dae3919672d68ed0d14e6db5e636724d783fc (patch) | |
tree | 00a9da0d3d89fbed71f2d429b42a20859d0f3584 /libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch | |
parent | e9765cea3f9ad93d05cd6c9a9a6b6ec17200e777 (diff) | |
download | abslibre-607dae3919672d68ed0d14e6db5e636724d783fc.tar.gz abslibre-607dae3919672d68ed0d14e6db5e636724d783fc.tar.bz2 abslibre-607dae3919672d68ed0d14e6db5e636724d783fc.zip |
xorg-server-1.17.2-1.parabola1: updating version
Diffstat (limited to 'libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch')
-rw-r--r-- | libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch b/libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch deleted file mode 100644 index ee968ef17..000000000 --- a/libre/xorg-server/systemd-logind-filter-out-non-signal-messages-from.patch +++ /dev/null @@ -1,90 +0,0 @@ -From e90798c142dedc4fd296936b69fe34a40d0aa35a Mon Sep 17 00:00:00 2001 -From: Ray Strode <rstrode@redhat.com> -Date: Fri, 10 Apr 2015 14:19:50 -0400 -Subject: [PATCH] systemd-logind: filter out non-signal messages from message - filter - -It's possible to receive a message reply in the message filter if a -previous message call timed out locally before the reply arrived. - -The message_filter function only handles signals, at the moment, and -does not properly handle message replies. - -This commit changes the message_filter function to filter out all -non-signal messages, including spurious message replies. - -https://bugzilla.redhat.com/show_bug.cgi?id=1209347 ---- - hw/xfree86/os-support/linux/systemd-logind.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/hw/xfree86/os-support/linux/systemd-logind.c b/hw/xfree86/os-support/linux/systemd-logind.c -index 49758f4..57c87c0 100644 ---- a/hw/xfree86/os-support/linux/systemd-logind.c -+++ b/hw/xfree86/os-support/linux/systemd-logind.c -@@ -286,60 +286,63 @@ systemd_logind_ack_pause(struct systemd_logind_info *info, - DBUS_TYPE_INVALID)) { - LogMessage(X_ERROR, "systemd-logind: out of memory\n"); - goto cleanup; - } - - reply = dbus_connection_send_with_reply_and_block(info->conn, msg, - DBUS_TIMEOUT, &error); - if (!reply) - LogMessage(X_ERROR, "systemd-logind: failed to ack pause: %s\n", - error.message); - - cleanup: - if (msg) - dbus_message_unref(msg); - if (reply) - dbus_message_unref(reply); - dbus_error_free(&error); - } - - static DBusHandlerResult - message_filter(DBusConnection * connection, DBusMessage * message, void *data) - { - struct systemd_logind_info *info = data; - struct xf86_platform_device *pdev = NULL; - InputInfoPtr pInfo = NULL; - int ack = 0, pause = 0, fd = -1; - DBusError error; - dbus_int32_t major, minor; - char *pause_str; - -+ if (dbus_message_get_type (message) != DBUS_MESSAGE_TYPE_SIGNAL) -+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; -+ - dbus_error_init(&error); - - if (dbus_message_is_signal(message, - "org.freedesktop.DBus", "NameOwnerChanged")) { - char *name, *old_owner, *new_owner; - - dbus_message_get_args(message, &error, - DBUS_TYPE_STRING, &name, - DBUS_TYPE_STRING, &old_owner, - DBUS_TYPE_STRING, &new_owner, DBUS_TYPE_INVALID); - if (dbus_error_is_set(&error)) { - LogMessage(X_ERROR, "systemd-logind: NameOwnerChanged: %s\n", - error.message); - dbus_error_free(&error); - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; - } - - if (name && strcmp(name, "org.freedesktop.login1") == 0) - FatalError("systemd-logind disappeared (stopped/restarted?)\n"); - - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; - } - - if (strcmp(dbus_message_get_path(message), info->session) != 0) - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; - - if (dbus_message_is_signal(message, "org.freedesktop.login1.Session", - "PauseDevice")) { - if (!dbus_message_get_args(message, &error, - DBUS_TYPE_UINT32, &major, --- -2.3.3 |