htt
p://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 lists.freedesktop.org
ReportedBy: simon.mcvittie 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: h
ttp://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Telepathy mailing list
Telepathy lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/telepathy
a>
|