Bug 17751 - BaseConnection::self_handle should not be set to 0 before the object is disposed
Summary: BaseConnection::self_handle should not be set to 0 before the object is disposed
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: tp-glib (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Guillaume Desmottes
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords: patch
Depends on: 22812
Blocks:
  Show dependency treegraph
 
Reported: 2008-09-24 03:01 UTC by Will Thompson
Modified: 2009-08-19 04:32 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Will Thompson 2008-09-24 03:01:49 UTC
Currently, BaseConnection::self_handle is set to 0 just before status-changed(Disconnected, …) is emitted, and in 0.17.16 it will change just after status-changed(Disconnected, …) is emitted to allow ChannelManagers listening for that signal to use the self_handle.

Ideally, the self_handle would be valid until the BaseConnection is disposed, but CMs may wrongly depend on it being 0 by the time the dispose method for their subclass of TpBaseConnection is called.  (For instance, Gabble asserts that it is 0.)  We should audit and fix all known connection managers, then move the unreffing to dispose.
Comment 1 Guillaume Desmottes 2009-07-16 08:33:26 UTC
Note that my Wockyfied Gabble sometimes crashes in the vcard/test-save-alias-to-vcard.py test because of this.
Comment 2 Guillaume Desmottes 2009-07-17 02:32:11 UTC
Gabble doesn't assert on that since 71a1f76146f752e8a007cf9a62a73e9785304587 so it shouldn't crash since Gabble 0.7.9

Salut, Idle and Haze seem fine.

telepathy-sofiasip still has the assertion. Will propose a patch removing it.
Comment 3 Guillaume Desmottes 2009-07-17 02:44:20 UTC
(In reply to comment #2)
> telepathy-sofiasip still has the assertion. Will propose a patch removing it.

See http://bugs.freedesktop.org/show_bug.cgi?id=22812
Comment 4 Guillaume Desmottes 2009-07-17 02:54:35 UTC
Fix for this bug http://git.collabora.co.uk/?p=user/cassidy/telepathy-glib;a=shortlog;h=refs/heads/self_handle-17751

It can't be merged until tp-sofiasip has been fixed. We should also document this change in NEWS and say which versions of Gabble and tp-sofiasip that will break.
Comment 5 Guillaume Desmottes 2009-08-04 04:18:21 UTC
telepathy-sofiasip 0.5.17 has been released with this assertion removed.
Comment 6 Simon McVittie 2009-08-19 04:32:52 UTC
Fixed in 0.7.35


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.