diff options
-rw-r--r-- | lisp/ChangeLog | 5 | ||||
-rw-r--r-- | lisp/net/dbus.el | 10 |
2 files changed, 15 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 21851fa7b89..69d02d2a68c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2009-08-18 Michael Albinus <michael.albinus@gmx.de> + + * net/dbus.el (dbus-init-bus): Declare. Apply it for the :system + and :session buses. + 2009-08-18 Kenichi Handa <handa@m17n.org> * international/ucs-normalize.el (ucs-normalize-version): Changed diff --git a/lisp/net/dbus.el b/lisp/net/dbus.el index 894d7c63787..c1222a66f66 100644 --- a/lisp/net/dbus.el +++ b/lisp/net/dbus.el @@ -34,12 +34,22 @@ ;; option "--without-dbus". Declare used subroutines and variables. (declare-function dbus-call-method "dbusbind.c") (declare-function dbus-call-method-asynchronously "dbusbind.c") +(declare-function dbus-init-bus "dbusbind.c") (declare-function dbus-method-return-internal "dbusbind.c") (declare-function dbus-method-error-internal "dbusbind.c") (declare-function dbus-register-signal "dbusbind.c") (defvar dbus-debug) (defvar dbus-registered-functions-table) +;; Initialize :system and :session buses. This adds their file +;; descriptors to input_wait_mask, in order to detect incoming +;; messages immediately. +;; We must avoid to call the function twice for a bus, because the +;; DBusWatch will be removed then. +(when (and (featurep 'dbusbind) (not (featurep 'dbus))) + (dbus-init-bus :system) + (dbus-init-bus :session)) + ;; Pacify byte compiler. (eval-when-compile (require 'cl)) |