]> git.eshelyaron.com Git - emacs.git/commitdiff
* dbusbind.c (Fdbus_register_service): Raise an error in case of
authorMichael Albinus <michael.albinus@gmx.de>
Mon, 10 Jan 2011 11:28:31 +0000 (12:28 +0100)
committerMichael Albinus <michael.albinus@gmx.de>
Mon, 10 Jan 2011 11:28:31 +0000 (12:28 +0100)
unexpected return values.
(Fdbus_register_method): Remove connection initialization.

src/ChangeLog
src/dbusbind.c

index a8b8c87b09c23d377b4cf11ae72efb751788b1b1..83524a5c048f054895dc5e802c3ff128425d7978 100644 (file)
@@ -1,4 +1,10 @@
-2011-01-08  Jan Moringen  <jmoringe@techfak.uni-bielefeld.de>
+2011-01-10  Michael Albinus  <michael.albinus@gmx.de>
+
+       * dbusbind.c (Fdbus_register_service): Raise an error in case of
+       unexpected return values.
+       (Fdbus_register_method): Remove connection initialization.
+
+2011-01-10  Jan Moringen  <jan.moringen@uni-bielefeld.de>
 
        * dbusbind.c (QCdbus_request_name_allow_replacement): New symbol;
        used by Fdbus_register_service.
index 2e0a71cad62c0fc7685a4cf7a02afdd44251c26c..0c59c08f5b7891f8b319f4246e6b768fbf04ce6d 100644 (file)
@@ -1888,8 +1888,8 @@ Example:
   => :primary-owner.
 
 \(dbus-register-service
-:session "org.freedesktop.TextEditor"
-dbus-service-allow-replacement dbus-service-replace-existing)
+  :session "org.freedesktop.TextEditor"
+  dbus-service-allow-replacement dbus-service-replace-existing)
 
   => :already-owner.
 
@@ -1939,18 +1939,20 @@ usage: (dbus-register-service BUS SERVICE &rest FLAGS)  */)
   dbus_error_free (&derror);
 
   /* Return object.  */
-  switch (result) {
-  case DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER:
-    return QCdbus_request_name_reply_primary_owner;
-  case DBUS_REQUEST_NAME_REPLY_IN_QUEUE:
-    return QCdbus_request_name_reply_in_queue;
-  case DBUS_REQUEST_NAME_REPLY_EXISTS:
-    return QCdbus_request_name_reply_exists;
-  case DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER:
-    return QCdbus_request_name_reply_already_owner;
-  default:
-    return Qnil;
-  }
+  switch (result)
+    {
+    case DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER:
+      return QCdbus_request_name_reply_primary_owner;
+    case DBUS_REQUEST_NAME_REPLY_IN_QUEUE:
+      return QCdbus_request_name_reply_in_queue;
+    case DBUS_REQUEST_NAME_REPLY_EXISTS:
+      return QCdbus_request_name_reply_exists;
+    case DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER:
+      return QCdbus_request_name_reply_already_owner;
+    default:
+      /* This should not happen.  */
+      XD_SIGNAL2 (build_string ("Could not register service"), service);
+    }
 }
 
 DEFUN ("dbus-register-signal", Fdbus_register_signal, Sdbus_register_signal,
@@ -2129,8 +2131,6 @@ discovering the still incomplete interface.*/)
    Lisp_Object dont_register_service)
 {
   Lisp_Object key, key1, value;
-  DBusConnection *connection;
-  int result;
   DBusError derror;
   Lisp_Object args[2] = { bus, service };
 
@@ -2144,11 +2144,8 @@ discovering the still incomplete interface.*/)
   /* TODO: We must check for a valid service name, otherwise there is
      a segmentation fault.  */
 
-  /* Open a connection to the bus.  */
-  connection = xd_initialize (bus, TRUE);
-
   /* Request the name.  */
-  if (NILP(dont_register_service))
+  if (NILP (dont_register_service))
     Fdbus_register_service (2, args);
 
   /* Create a hash table entry.  We use nil for the unique name,