mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-07 15:21:46 +00:00
* net/dbus.el (dbus-name-owner-changed-handler): Use
`dbus-unregister-signal' for removing old rules. Obey new structure of `dbus-registered-functions-table'.
This commit is contained in:
parent
f5306ca30f
commit
3cc546adf4
@ -1,3 +1,9 @@
|
||||
2007-12-16 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/dbus.el (dbus-name-owner-changed-handler): Use
|
||||
`dbus-unregister-signal' for removing old rules. Obey new
|
||||
structure of `dbus-registered-functions-table'.
|
||||
|
||||
2007-12-12 Thien-Thi Nguyen <ttn@gnuvola.org>
|
||||
|
||||
* progmodes/cc-vars.el (defcustom-c-stylevar): Rewrite.
|
||||
|
@ -79,21 +79,17 @@ owner of SERVICE, or the empty string if SERVICE looses any name owner."
|
||||
'(lambda (key value)
|
||||
(dolist (elt value)
|
||||
;; key has the structure (BUS INTERFACE SIGNAL).
|
||||
;; elt has the structure (SERVICE UNAME PATH HANDLER).
|
||||
(when (string-equal old-owner (cadr elt))
|
||||
;; elt has the structure (UNAME SERVICE PATH HANDLER).
|
||||
(when (string-equal old-owner (car elt))
|
||||
;; Remove old key, and add new entry with changed name.
|
||||
(when dbus-debug (message "Remove rule for %s %s" key elt))
|
||||
;(dbus-unregister-signal key)
|
||||
(setcar (cdr elt) new-owner)
|
||||
(when dbus-debug (message "Add rule for %s %s" key elt))
|
||||
(dbus-unregister-signal (list key (cdr elt)))
|
||||
;; Maybe we could arrange the lists a little bit better
|
||||
;; that we don't need to extract every single element?
|
||||
(when (not (zerop (length new-owner)))
|
||||
(dbus-register-signal
|
||||
;; BUS SERVICE PATH
|
||||
(nth 0 key) (nth 0 elt) (nth 2 elt)
|
||||
;; INTERFACE SIGNAL HANDLER
|
||||
(nth 1 key) (nth 2 key) (nth 3 elt))))))
|
||||
(dbus-register-signal
|
||||
;; BUS SERVICE PATH
|
||||
(nth 0 key) (nth 1 elt) (nth 2 elt)
|
||||
;; INTERFACE SIGNAL HANDLER
|
||||
(nth 1 key) (nth 2 key) (nth 3 elt)))))
|
||||
(copy-hash-table dbus-registered-functions-table)))))
|
||||
|
||||
;; Register the handler.
|
||||
|
Loading…
Reference in New Issue
Block a user