[Bug 27553] telepathy-butterfly crashed with InvalidHandle in check_handle()

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sun Apr 25 22:05:22 CEST 2010


https://bugs.freedesktop.org/show_bug.cgi?id=27553

--- Comment #5 from Jonny Lamb <jonny.lamb at collabora.co.uk> 2010-04-25 13:05:22 PDT ---
Okay what's happening here is Empathy is calling RequestHandles for the contact
you are trying to add, and then the contact list channel waits for the mutex to
become unlocked before progressing.

In the mean time, Empathy calls ReleaseHandles on the handle which was just
requested. This means that the contact handle object gets disposed and gets
lost from the Connection._handles dict. When the mutex unlocked callback gets
called, it can't find the object, hence the traceback.

However, if you try to add a contact which actually exists (i.e. not
foo at example.com), then it kind of works, which is odd. It requests the handle
of the contact, does something, then the callback gets called and the
ReleaseHandles has already been called so it can't find the handle. However,
papyon calls a callback with this new contact and a brand new handle appears
out of the blue.

I've not got time to look into this more right now, but I thought I'd write
down what I know for now. We could use this as an excuse to push butterfly into
the future of having connection-persistent handles?

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.



More information about the telepathy-bugs mailing list