[Telepathy] [Bug 14343] Connecting to a D-BUS tube can lose messages

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Apr 11 07:14:38 PDT 2008


--- Comment #2 from Alban Crequy <alban.crequy at collabora.co.uk>  2008-04-11 07:14:36 PST ---
There is 2 different races here.

1. The program is connected to the D-Bus tube but it has not registered its
objects so it is not ready for handling method calls. This is a bug in the
program and there is no need to change the tp spec nor the Connection Manager
implementation. See Bug #14877 for an example of such kind of bug.

2. The tube is open but the program is not yet connected to the D-Bus tube and
the Connection Manager has already a message to deliver. The message is lost
because no program is connected on the D-Bus address of the Connection Manager.
This is the example I wrote in my Comment #1.

To resolve the 2nd race, I would follow your suggestion: queueing messages
until the program is connected to the D-Bus address of the Connection Manager.

I think we don't need any additional signalisation in the Telepathy D-Bus spec:
the Connection Manager knows when the program connects to its D-Bus socket. And
only one connection at a time is allowed on this D-Bus socket. So, as soon as a
program connects to the socket, we can deliver the messages from the queue and
we don't need the queue anymore.

Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the Telepathy mailing list