From 6921f4a5961fb53f8fb24d1a5a3f94266f990f6e Mon Sep 17 00:00:00 2001 From: Ken Brown Date: Sat, 11 Jun 2016 08:31:27 -0400 Subject: [PATCH] Fix dbus crash on 32-bit Cygwin * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store connection address. (Bug#23741) (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection address. --- src/dbusbind.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/dbusbind.c b/src/dbusbind.c index d3a32c00341..56bfd7164a4 100644 --- a/src/dbusbind.c +++ b/src/dbusbind.c @@ -943,7 +943,7 @@ xd_get_connection_references (DBusConnection *connection) static DBusConnection* xd_lisp_dbus_to_dbus (Lisp_Object bus) { - return (DBusConnection *) (intptr_t) XFASTINT (bus); + return (DBusConnection *) XSAVE_POINTER (bus, 0); } /* Return D-Bus connection address. BUS is either a Lisp symbol, @@ -1187,7 +1187,7 @@ this connection to those buses. */) XD_SIGNAL1 (build_string ("Cannot add watch functions")); /* Add bus to list of registered buses. */ - XSETFASTINT (val, (intptr_t) connection); + val = make_save_ptr (connection); xd_registered_buses = Fcons (Fcons (bus, val), xd_registered_buses); /* Cleanup. */ -- 2.11.4.GIT