On Mon, 2012-08-13 at 09:36 +0200, Patrick Ohly wrote:
> I double-checked. Debian's syncevo-dbus-server does use GIO D-Bus; what
> I saw must have been an indirect call to libdbus (happens later, via
> gvfs).
> 
> > I think I got the same
> > issue with 1.2.99.4 (can't really check as I'm on vacation).
> 
> I'll have another look.

Fixed on master branch. I now have an automated test case which
triggered the problem and a solution. This will be in 1.2.99.5 or 1.3,
whatever comes next.

It would be good to get this into Debian as a distro patch.

commit f7718ebb48bbd85b2b7eb29b45892ec20cbba0a2
Author: Patrick Ohly <patrick.o...@intel.com>
Date:   Mon Aug 13 21:51:21 2012 +0200

    D-Bus server + GIO D-Bus: fix auto-activation (Debian bug #599247)
    
    When syncevo-dbus-server was started on demand by the D-Bus daemon,
    then it registered itself with the daemon before it was ready to
    serve requests. Only happened in combination with GIO D-Bus and
    thus was not a problem before 1.2.99.x.
    
    One user-visible effect was that the GTK UI did select the default
    service when it was started for the first time, because it could not
    retrieve that information from syncevo-dbus-server.
    
    The fix consists of delaying the name acquisition. That gives the
    caller a chance to register D-Bus objects first, before completing the
    connection setup. The semantic change is that
    dbus_bus_connection_undelay() must be called on new connections which
    have a name (a NOP with libdbus).
    
    This patch tries to minimize code changes. The downside of not
    changing the GDBusCXX API more radically is that the bus name must be
    attached to DBusConnectionPtr, where it will be copied into each
    reference to the connection. Hopefully std::string is smart enough to
    share the (small) data in this case. Should be solved cleaner once
    libdbus support can be deprecated.
    
    A test for auto-activation and double start of syncevo-dbus-server
    is also added.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to