Merge branch 'dbus-1.4'
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Fri, 8 Apr 2011 14:23:17 +0000 (15:23 +0100)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Fri, 8 Apr 2011 14:23:17 +0000 (15:23 +0100)
Conflicts:
NEWS

NEWS
bus/activation.c
configure.ac
doc/dbus-specification.xml

diff --git a/NEWS b/NEWS
index 0ba9762..41465b6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -12,9 +12,11 @@ D-Bus 1.5.0 (UNRELEASED)
     paths that are not part of the object tree, and UnknownInterface for calls
     to unknown interfaces in the bus daemon (fd.o #34527, Lennart Poettering)
 
-D-Bus 1.4.8 (UNRELEASED)
+D-Bus 1.4.8 (2011-04-08)
 ==
 
+The "It's like the beginning of a lobster" release.
+
   • Rename configure.in to configure.ac, and update it to modern conventions
     (fd.o #32245; Javier Jardón, Simon McVittie)
   • Correctly give XDG_DATA_HOME priority over XDG_DATA_DIRS (fd.o #34496,
@@ -28,6 +30,12 @@ D-Bus 1.4.8 (UNRELEASED)
     booleans when sending them (fd.o #16338, NB#223152; Simon McVittie)
   • Add UnknownObject, UnknownInterface, UnknownProperty and PropertyReadOnly
     errors to dbus-shared.h (fd.o #34527, Lennart Poettering)
+  • Break up a huge conditional in config-parser so gcov can produce coverage
+    data (fd.o #10887, Simon McVittie)
+  • List which parts of the Desktop Entry specification are applicable to
+    .service files (fd.o #19159, Sven Herzberg)
+  • Don't suppress service activation if two services have the same Exec=
+    (fd.o #35750, Colin Walters)
   • Windows:
     · Avoid the name ELEMENT_TYPE due to namespace-pollution from winioctl.h
       (Andre Heinecke)
@@ -37,6 +45,8 @@ D-Bus 1.4.8 (UNRELEASED)
 D-Bus 1.4.6 (2010-02-17)
 ==
 
+The "1, 2, miss a few, 99, 100" release.
+
   • Remove unfinished changes intended to support GTest-based tests,
     which were mistakenly included in 1.4.4
 
index 7b2a72b..ab6ef51 100644 (file)
@@ -1685,11 +1685,9 @@ bus_activation_activate_service (BusActivation  *activation,
   int argc;
   dbus_bool_t retval;
   DBusHashIter iter;
-  dbus_bool_t activated;
+  dbus_bool_t was_pending_activation;
   DBusString command;
 
-  activated = TRUE;
-
   _DBUS_ASSERT_ERROR_IS_CLEAR (error);
 
   if (activation->n_pending_activations >=
@@ -1768,7 +1766,8 @@ bus_activation_activate_service (BusActivation  *activation,
 
   /* Check if the service is being activated */
   pending_activation = _dbus_hash_table_lookup_string (activation->pending_activations, service_name);
-  if (pending_activation)
+  was_pending_activation = (pending_activation != NULL);
+  if (was_pending_activation)
     {
       if (!_dbus_list_append (&pending_activation->entries, pending_activation_entry))
         {
@@ -1875,19 +1874,6 @@ bus_activation_activate_service (BusActivation  *activation,
       pending_activation->n_entries += 1;
       pending_activation->activation->n_pending_activations += 1;
 
-      activated = FALSE;
-      _dbus_hash_iter_init (activation->pending_activations, &iter);
-      while (_dbus_hash_iter_next (&iter))
-        {
-          BusPendingActivation *p = _dbus_hash_iter_get_value (&iter);
-
-          if (strcmp (p->exec, entry->exec) == 0)
-            {
-              activated = TRUE;
-              break;
-            }
-        }
-
       if (!_dbus_hash_table_insert_string (activation->pending_activations,
                                            pending_activation->service_name,
                                            pending_activation))
@@ -1910,7 +1896,7 @@ bus_activation_activate_service (BusActivation  *activation,
       return FALSE;
     }
 
-  if (activated)
+  if (was_pending_activation)
     return TRUE;
 
   if (bus_context_get_systemd_activation (activation->context))
index ced95e4..a49cda4 100644 (file)
@@ -3,7 +3,7 @@ AC_PREREQ([2.63])
 
 m4_define([dbus_major_version], [1])
 m4_define([dbus_minor_version], [4])
-m4_define([dbus_micro_version], [7])
+m4_define([dbus_micro_version], [9])
 m4_define([dbus_version],
           [dbus_major_version.dbus_minor_version.dbus_micro_version])
 AC_INIT([dbus],[dbus_version],[https://bugs.freedesktop.org/enter_bug.cgi?product=dbus],[dbus])
@@ -36,7 +36,7 @@ LT_CURRENT=8
 
 ## increment any time the source changes; set to
 ##  0 if you increment CURRENT
-LT_REVISION=4
+LT_REVISION=5
 
 ## increment if any interfaces have been added; set to 0
 ## if any interfaces have been changed or removed. removal has
index bb8ecd2..0205e4b 100644 (file)
           </address>
        </affiliation>
       </author>
+      <author>
+       <firstname>Sven</firstname>
+       <surname>Herzberg</surname>
+       <affiliation>
+         <orgname>Imendio AB</orgname>
+         <address>
+            <email>sven@imendio.com</email>
+          </address>
+       </affiliation>
+      </author>
     </authorgroup>
    <revhistory>
      <revision>
         <xref linkend="message-bus-types"/>.
       </para>
       <para>
-        [FIXME the file format should be much better specified than "similar to
-        .desktop entries" esp. since desktop entries are already
-        badly-specified. ;-)] Service description files have the ".service" file
+        Service description files have the ".service" file
         extension. The message bus will only load service description files
         ending with .service; all other files will be ignored.  The file format
         is similar to that of <ulink
         encoding. To ensure that there will be no name collisions, service files
         must be namespaced using the same mechanism as messages and service
         names.
+      </para>
+
+      <para>
+        [FIXME the file format should be much better specified than "similar to
+        .desktop entries" esp. since desktop entries are already
+        badly-specified. ;-)]
+        These sections from the specification apply to service files as well:
+
+        <itemizedlist>
+          <listitem><para>General syntax</para></listitem>
+          <listitem><para>Comment format</para></listitem>
+        </itemizedlist>
 
         <figure>
          <title>Example service description file</title>