Bug 14188

Summary: Invalidate TpChannel objects as soon as their parent TpConnection disconnects
Product: Telepathy Reporter: Simon McVittie <smcv>
Component: tp-glibAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: major    
Priority: high    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Simon McVittie 2008-01-21 12:43:32 UTC
Before telepathy-glib is released with client code, we need to ensure that TpChannel objects are invalidated as soon as their parent TpConnection disconnects.

To be able to get this information, we need to be able to work out what the parent TpConnection *is*. I don't think the Telepathy spec explicitly guarantees that you can truncate the object path at an appropriate point, so we probably need to force the issue by making the user pass a TpConnection to tp_channel_new() (since you have a channel, you presumably got it from *somewhere*).

Otherwise, you'll keep referring to handles which are now completely meaningless, leading to total reality failure.

Passing a TpConnection to tp_channel_new() would be good future-proofing anyway, since you can't do anything useful with 90% of our API unless you have some idea where you're getting handles from, and we want to be able to provide handle-related convenience API.
Comment 1 Simon McVittie 2008-01-21 12:45:03 UTC
I suspect related handle-validity nightmares caused <http://bugzilla.gnome.org/show_bug.cgi?id=511063>.
Comment 2 Simon McVittie 2008-01-28 03:12:43 UTC
Fixed in Darcs.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.