[Telepathy] [Bug 19134] New: should return from all relevant Create/ Ensure calls before emitting NewChannels

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Dec 17 03:31:28 PST 2008


           Summary: should return from all relevant Create/Ensure calls
                    before emitting NewChannels
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: telepathy-glib
        AssignedTo: telepathy at lists.freedesktop.org
        ReportedBy: will.thompson at collabora.co.uk

If two calls to ChannelDispatcher.EnsureChannel are made, both satisfied by the
same channel, the handler would ideally receive a single HandleChannels() call
listing those two channel requests rather than two calls.  This depends on the
CM responding as follows to the two EnsureChannel calls:

CD -> CM     EnsureChannel[1]
CD -> CM     EnsureChannel[2]
CD <- CM     1 returns
CD <- CM     2 returns
   <- CM ->  NewChannels

Under the current implementation, this *should* work when the CM returns from
EnsureChannel asynchronously, but this should be verified; when it returns
synchronously, it cannot work because call 2 does not arrive at the CM until
after it's emitted NewChannels, so the CD must call HandleChannels twice.

Perhaps TpChannelManager should emit NewChannels in an idle callback to give
the second EnsureChannel call a chance to arrive and be processed?

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