aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dbusbind.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/dbusbind.c b/src/dbusbind.c
index 4fce92521a4..b637c0e58aa 100644
--- a/src/dbusbind.c
+++ b/src/dbusbind.c
@@ -1508,7 +1508,7 @@ xd_read_message_1 (DBusConnection *connection, Lisp_Object bus)
1508 int mtype; 1508 int mtype;
1509 dbus_uint32_t serial; 1509 dbus_uint32_t serial;
1510 unsigned int ui_serial; 1510 unsigned int ui_serial;
1511 const char *uname, *path, *interface, *member; 1511 const char *uname, *path, *interface, *member, *error_name;
1512 1512
1513 dmessage = dbus_connection_pop_message (connection); 1513 dmessage = dbus_connection_pop_message (connection);
1514 1514
@@ -1544,10 +1544,11 @@ xd_read_message_1 (DBusConnection *connection, Lisp_Object bus)
1544 path = dbus_message_get_path (dmessage); 1544 path = dbus_message_get_path (dmessage);
1545 interface = dbus_message_get_interface (dmessage); 1545 interface = dbus_message_get_interface (dmessage);
1546 member = dbus_message_get_member (dmessage); 1546 member = dbus_message_get_member (dmessage);
1547 error_name =dbus_message_get_error_name (dmessage);
1547 1548
1548 XD_DEBUG_MESSAGE ("Event received: %s %u %s %s %s %s %s", 1549 XD_DEBUG_MESSAGE ("Event received: %s %u %s %s %s %s %s %s",
1549 XD_MESSAGE_TYPE_TO_STRING (mtype), 1550 XD_MESSAGE_TYPE_TO_STRING (mtype),
1550 ui_serial, uname, path, interface, member, 1551 ui_serial, uname, path, interface, member, error_name,
1551 XD_OBJECT_TO_STRING (args)); 1552 XD_OBJECT_TO_STRING (args));
1552 1553
1553 if (mtype == DBUS_MESSAGE_TYPE_INVALID) 1554 if (mtype == DBUS_MESSAGE_TYPE_INVALID)
@@ -1571,7 +1572,10 @@ xd_read_message_1 (DBusConnection *connection, Lisp_Object bus)
1571 EVENT_INIT (event); 1572 EVENT_INIT (event);
1572 event.kind = DBUS_EVENT; 1573 event.kind = DBUS_EVENT;
1573 event.frame_or_window = Qnil; 1574 event.frame_or_window = Qnil;
1574 event.arg = Fcons (value, args); 1575 event.arg =
1576 Fcons (value,
1577 (mtype == DBUS_MESSAGE_TYPE_ERROR)
1578 ? (Fcons (build_string (error_name), args)) : args);
1575 } 1579 }
1576 1580
1577 else /* DBUS_MESSAGE_TYPE_METHOD_CALL, DBUS_MESSAGE_TYPE_SIGNAL. */ 1581 else /* DBUS_MESSAGE_TYPE_METHOD_CALL, DBUS_MESSAGE_TYPE_SIGNAL. */