aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/net
diff options
context:
space:
mode:
authorMichael Albinus2014-06-15 14:15:25 +0200
committerMichael Albinus2014-06-15 14:15:25 +0200
commit2c7bf3ce244fec86b899ac4804aa1956f291f8d6 (patch)
tree45adbbd9f2fa83955c520da9491a46985b604d87 /lisp/net
parente4cff260759aa8affa01a28f944c328c1c90c827 (diff)
downloademacs-2c7bf3ce244fec86b899ac4804aa1956f291f8d6.tar.gz
emacs-2c7bf3ce244fec86b899ac4804aa1956f291f8d6.zip
Fix a regression bug in D-Bus event handling.
* net/dbus.el (dbus-call-method): Push only non D-Bus events into `unread-command-events'.
Diffstat (limited to 'lisp/net')
-rw-r--r--lisp/net/dbus.el10
1 files changed, 6 insertions, 4 deletions
diff --git a/lisp/net/dbus.el b/lisp/net/dbus.el
index 7f230a9d2ab..66170dafef8 100644
--- a/lisp/net/dbus.el
+++ b/lisp/net/dbus.el
@@ -318,10 +318,12 @@ object is returned instead of a list containing this single Lisp object.
318 (while (eq (car result) :pending) 318 (while (eq (car result) :pending)
319 (let ((event (let ((inhibit-redisplay t) unread-command-events) 319 (let ((event (let ((inhibit-redisplay t) unread-command-events)
320 (read-event nil nil check-interval)))) 320 (read-event nil nil check-interval))))
321 (when event 321 (when event
322 (setf unread-command-events 322 (if (ignore-errors (dbus-check-event event))
323 (nconc unread-command-events 323 (setf result (gethash key dbus-return-values-table))
324 (cons event nil)))) 324 (setf unread-command-events
325 (nconc unread-command-events
326 (cons event nil)))))
325 (when (< check-interval 1) 327 (when (< check-interval 1)
326 (setf check-interval (* check-interval 1.05)))))) 328 (setf check-interval (* check-interval 1.05))))))
327 (when (eq (car result) :error) 329 (when (eq (car result) :error)