Summary: | ktp-contactlist crash on show contact info with custom connection manager | ||
---|---|---|---|
Product: | [Unmaintained] telepathy | Reporter: | Maksim Melnikau <maxposedon> |
Component: | contactlist | Assignee: | Telepathy Bugs <kde-telepathy-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | kde |
Priority: | NOR | ||
Version: | 0.6.1 | ||
Target Milestone: | Future | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/telepathy-common-internals/347988c448dd503d7f1c813dd5b96ac293bcd20a | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | full dbus-monitor log, during the crash |
Description
Maksim Melnikau
2013-05-05 14:02:19 UTC
Created attachment 79715 [details]
full dbus-monitor log, during the crash
looks like ktp-contactlist don't ready for errors from connection manager side, in this case for
"
method call sender=:1.225 -> dest=:1.209 serial=80 path=/org/freedesktop/Telepathy/Connection/foo/foo/xxx; interface=org.freedesktop.Telepathy.Connection.Interface.Contacts; member=GetContactAttributes
array [
uint32 3
]
array [
string "org.freedesktop.Telepathy.Connection.Interface.ContactInfo"
]
boolean true
error sender=:1.209 -> dest=:1.225 error_name=org.freedesktop.DBus.Python.NotImplementedError reply_serial=80
string "Traceback (most recent call last):
File "/usr/lib64/python2.7/site-packages/dbus/service.py", line 707, in _message_cb
retval = candidate_method(self, *args, **keywords)
File "/home/max_posedon/GitHub/telepathy-python/telepathy/server/conn.py", line 744, in GetContactAttributes
results = functions[interface](handles)
File "/home/max_posedon/GitHub/telepathy-python/telepathy/server/conn.py", line 737, in <lambda>
CONNECTION_INTERFACE_CONTACT_INFO: lambda x: self.GetContactInfo(x).items()
File "/home/max_posedon/GitHub/telepathy-python/telepathy/_generated/Connection_Interface_Contact_Info.py", line 70, in GetContactInfo
raise NotImplementedError
NotImplementedError
"
Given your output we almost certainly this this: Q_ASSERT(contacts->contacts().count() == 1); We assume the contact will be returned properly. I guess we can/should guard against this. *hit this Git commit 347988c448dd503d7f1c813dd5b96ac293bcd20a by David Edmundson. Committed on 10/06/2013 at 22:10. Pushed by davidedmundson into branch 'master'. Check upgradeContacts succeeded M +4 -0 KTp/contact-info-dialog.cpp http://commits.kde.org/telepathy-common-internals/347988c448dd503d7f1c813dd5b96ac293bcd20a |