emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] notifications: only register signals if possible


From: Julien Danjou
Subject: [PATCH] notifications: only register signals if possible
Date: Sat, 25 Sep 2010 22:15:10 +0200

That avoids error when (require 'notifications) is called on system
without D-Bus.

Signed-off-by: Julien Danjou <address@hidden>
---
 lisp/ChangeLog        |    5 +++++
 lisp/notifications.el |   30 ++++++++++++++++--------------
 2 files changed, 21 insertions(+), 14 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index c8011ac..bfbb0de 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2010-09-25  Julien Danjou  <address@hidden>
+
+       * notifications.el: Call dbus-register-signal only if the function
+       is bound.
+
 2010-09-25  Juanma Barranquero  <address@hidden>
 
        * server.el (server-start): Revert part of 2010-08-08 change.  Using
diff --git a/lisp/notifications.el b/lisp/notifications.el
index 68db58e..dc4904d 100644
--- a/lisp/notifications.el
+++ b/lisp/notifications.el
@@ -95,13 +95,14 @@
       (funcall (cadr entry) id action)
       (remove entry 'notifications-on-action-map))))
 
-(dbus-register-signal
- :session
- notifications-service
- notifications-path
- notifications-interface
- notifications-action-signal
- 'notifications-on-action-signal)
+(when (fboundp 'dbus-register-signal)
+  (dbus-register-signal
+   :session
+   notifications-service
+   notifications-path
+   notifications-interface
+   notifications-action-signal
+   'notifications-on-action-signal))
 
 (defun notifications-on-closed-signal (id reason)
   "Dispatch signals to callback functions from `notifications-on-closed-map'."
@@ -111,13 +112,14 @@
               id (cadr (assoc reason notifications-closed-reason)))
       (remove entry 'notifications-on-close-map))))
 
-(dbus-register-signal
- :session
- notifications-service
- notifications-path
- notifications-interface
- notifications-closed-signal
- 'notifications-on-closed-signal)
+(when (fboundp 'dbus-register-signal)
+  (dbus-register-signal
+   :session
+   notifications-service
+   notifications-path
+   notifications-interface
+   notifications-closed-signal
+   'notifications-on-closed-signal))
 
 (defun notifications-notify (&rest params)
   "Send notification via D-Bus using the Freedesktop notification protocol.
-- 
1.7.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]