Bug 26928

Summary: Request's CreateChannel not returning all properties causes random failures on Maemo 5
Product: Telepathy Reporter: Ed Page <eopage>
Component: tp-pythonAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium    
Version: git master   
Hardware: All   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Ed Page 2010-03-06 12:59:01 UTC
I guess I should be using the bugzilla.  This is taken from a post on the telepathy mailing list.
http://lists.freedesktop.org/archives/telepathy/2010-March/004282.html

After much help from Lassi Syrjälä of Nokia, I've been able to narrow
down an issue I was having with my connection Manager on the Maemo 5.

I got random reports of Maemo's phone UI reporting "General Error".
Monitoring DBus showed that this came from Maemo 5's Mission Control
randomly passing incomplete information to the UI, particularly the
InitiatorHandle was lacking.

What happens is Mission Control calls HandleChannels sometime after
CreateChannel with whatever information it has at the moment.
telepathy-python's implementation of the Requests interface only
returns the properties it was given, minus the mutable ones.  This
does not include the InitiatorHandle.  Mission Control starts some
other queries for information on the channel.  If those don't return
with the InitiatorHandle before HandleChannels is called then we see
the error.

My patch is to have CreateChannel/EnsureChannel return the properties
from the channel (much like NewChannels does) rather than uselessly
returning the properties passed in.  I've done some basic testing and
have reports of one or two other people testing this.  Sadly with race
conditions its hard to prove they are fixed by the lack of them.
Github page for the branch containing the fix
http://github.com/epage/telepathy-python/tree/tor-fixes
The change
http://github.com/epage/telepathy-python/commit/d86238e21e4f19080de7273e8b7d809069c9ccce
Git repo
http://github.com/epage/telepathy-python.git

The "The One Ring" bug report that has the investigation on this:
https://bugs.maemo.org/show_bug.cgi?id=8980
Comment 1 Jonny Lamb 2010-03-09 03:26:51 UTC
I've literally just run into exactly the same problem, so thanks for fixing it for me! I like your patch. I've pushed it into the git repository.

Thanks for the report!

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.