Bug 11920 - Crash with Empathy and Gabble HEAD
Summary: Crash with Empathy and Gabble HEAD
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: gabble (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Dafydd Harries
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-09 13:23 UTC by Xavier Claessens
Modified: 2007-10-01 04:12 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
logs (193.97 KB, text/plain)
2007-08-12 02:20 UTC, Xavier Claessens
Details

Description Xavier Claessens 2007-08-09 13:23:49 UTC
I just started Empathy...

** CRITICAL **: gabble_vcard_manager_invalidate_cache: assertion `tp_handle_is_valid (contact_repo, handle, NULL)' failed
aborting...

Program received signal SIGTRAP, Trace/breakpoint trap.
0xb7e65d2b in g_logv () from /usr/lib/libglib-2.0.so.0
(gdb) bt
#0  0xb7e65d2b in g_logv () from /usr/lib/libglib-2.0.so.0
#1  0xb7e65fa9 in g_log () from /usr/lib/libglib-2.0.so.0
#2  0xb7e6608b in g_return_if_fail_warning () from /usr/lib/libglib-2.0.so.0
#3  0x0806746b in gabble_vcard_manager_invalidate_cache (manager=0x80a0418, handle=134800960) at vcard-manager.c:417
#4  0x080674d1 in cache_entry_timeout (data=0x80a0418) at vcard-manager.c:348
#5  0xb7e5d946 in ?? () from /usr/lib/libglib-2.0.so.0
#6  0x080a0418 in ?? ()
#7  0x08159d90 in ?? ()
#8  0xbf84c5b8 in ?? ()
#9  0xb7e5cab8 in ?? () from /usr/lib/libglib-2.0.so.0
#10 0xb7ee8784 in ?? () from /usr/lib/libglib-2.0.so.0
#11 0x080ce7a8 in ?? ()
#12 0xbf84c5d8 in ?? ()
#13 0xb7ee825c in ?? () from /usr/lib/libglib-2.0.so.0
#14 0xb7ee825c in ?? () from /usr/lib/libglib-2.0.so.0
#15 0xbf84c5fc in ?? ()
#16 0xbf84c618 in ?? ()
#17 0xb7e5d18c in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
Backtrace stopped: frame did not save the PC
Comment 1 Xavier Claessens 2007-08-10 06:01:35 UTC
With bt full we can see that the handle is completely wrong.

(gdb) bt full
#0  0xb7da3d2b in g_logv () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb7da3fa9 in g_log () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#2  0xb7da408b in g_return_if_fail_warning () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0806746b in gabble_vcard_manager_invalidate_cache (manager=0x80a0418, handle=134800960) at vcard-manager.c:417
        priv = (GabbleVCardManagerPrivate *) 0x80a0428
        entry = <value optimized out>
        contact_repo = <value optimized out>
        __PRETTY_FUNCTION__ = "gabble_vcard_manager_invalidate_cache"
#4  0x080674d1 in cache_entry_timeout (data=0x80a0418) at vcard-manager.c:348
        priv = (GabbleVCardManagerPrivate *) 0x80a0428
        now = 1186750645
        __PRETTY_FUNCTION__ = "cache_entry_timeout"
Comment 2 Xavier Claessens 2007-08-12 02:20:48 UTC
Created attachment 11108 [details]
logs

Here is logs of gabble when crashing. I added some debug information to understand the problem. You can see that cache entry 0x80a9d40 is for the selfhandle and get added to the cache heap many times. At the end that entry is invalidated and freed... but bet invalidated a second time and crash because it already got freed.
Comment 3 Xavier Claessens 2007-08-12 14:26:42 UTC
I hope I fixed that in my gabble branch:

http://projects.collabora.co.uk/~monkey/telepathy-gabble-zdra/
Comment 4 Simon McVittie 2007-10-01 04:12:09 UTC
I believe this bug was fixed in 0.5.14.


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.