[Telepathy] [Bug 14606] New: After a channel is closed, you can't tell who was in it ( the "missed call from, er, someone?" bug)

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Feb 21 07:25:59 PST 2008


http://bugs.freedesktop.org/show_bug.cgi?id=14606

           Summary: After a channel is closed, you can't tell who was in it
                    (the "missed call from, er, someone?" bug)
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: major
          Priority: high
         Component: telepathy-spec
        AssignedTo: telepathy at lists.freedesktop.org
        ReportedBy: simon.mcvittie at collabora.co.uk


After a group channel is closed, handles that were previously in that channel
may have become invalid, so you can no longer inspect them. This leads to the
following failure:

CM: NewChannel: /foo/bar, channel type StreamedMedia, handle type 0, handle 0
client: foobar = Channel("/foo/bar")
client: foobar.GetMembers()
CM replies to GetMembers: [42]
CM: /foo/bar Closed
client: InspectHandles([42])
CM replies to InspectHandles: InvalidHandle

If the group channel closes quickly enough, you can even get this:

CM: NewChannel: /foo/bar, channel type StreamedMedia, handle type 0, handle 0
client: foobar = Channel("/foo/bar")
client: foobar.GetMembers()
CM: /foo/bar Closed
CM replies to GetMembers: no such channel

In private mail, Rob wrote:

"""
One idea for fixing this particular one might involve adding a
richer/alternative channel request/notification interface, where RequestChannel
method and NewChannel signal have a dictionary which they can use to
request/notify of properties belonging to the channel. When the signal is
extensible, extra items like the call initiator's handle, and its string value,
could be included in this dictionary.

I don't really see a clean way to fix it by playing games with handle validity
or reference counting or so, unless we added a way for a bus client to
"subscribe" to handles, so that it owned a references to every new handle and
was notified of them being created, and then could choose to use the value or
to unref the handle. Seems a little mad though.
"""

Rob's first suggestion would fix this problem; his second would fix the first
example but not the second.


-- 
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