Mercurial > emacs
changeset 101617:bb28e4b4c12c
* dbus.texi (Errors and Events): Fix typos. Describe second parameter
of hook functions.
author | Michael Albinus <michael.albinus@gmx.de> |
---|---|
date | Wed, 28 Jan 2009 16:07:07 +0000 |
parents | 3fd27701bdb1 |
children | 2259d23e6d85 |
files | doc/misc/dbus.texi |
diffstat | 1 files changed, 16 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/misc/dbus.texi Wed Jan 28 15:54:46 2009 +0000 +++ b/doc/misc/dbus.texi Wed Jan 28 16:07:07 2009 +0000 @@ -1525,11 +1525,11 @@ @end defun @defun dbus-event-interface-name event -Returns the interface name of of the D-Bus object @var{event} is coming from. +Returns the interface name of the D-Bus object @var{event} is coming from. @end defun @defun dbus-event-member-name event -Returns the member name of of the D-Bus object @var{event} is coming +Returns the member name of the D-Bus object @var{event} is coming from. It is either a signal name or a method name. @end defun @@ -1541,17 +1541,27 @@ @defvar dbus-event-error-hooks This hook variable keeps a list of functions, which are called when a D-Bus error happens in the event handler. Every function must accept -one argument, the error variable catched in @code{condition-case} by -@code{dbus-error}. Example: +two arguments, the event and the error variable catched in +@code{condition-case} by @code{dbus-error}. + +Such functions can be used the adapt the error signal to be raised. +Example: @lisp -(defun my-dbus-event-error-handler (err) - (message "my-dbus-event-error-handler: %S" (cadr err))) +(defun my-dbus-event-error-handler (event error) + (when (string-equal (concat dbus-service-emacs ".FileManager") + (dbus-event-interface-name event)) + (message "my-dbus-event-error-handler: %S %S" event error) + (signal 'file-error (cdr error)))) (add-hook 'dbus-event-error-hooks 'my-dbus-event-error-handler) @end lisp @end defvar +Hook functions shall take into account, that there might be other +D-Bus applications running. Therefore, they shall check carefully, +whether a given D-Bus error is related to them. + @node GNU Free Documentation License @appendix GNU Free Documentation License