Created attachment 37119 [details] Backtrace of the crash. Often, when I rack up several hundred unread messages in an IRC channel, when I activate the window (or tab) that contains them, tp-idle crashes on me. This seems to have been happening as long as I remember using it.
*** Bug 30288 has been marked as a duplicate of this bug. ***
I wrote a test to simulate a really busy channel which doesn't acknowledge messages for a while in the hope that it would catch this bug. http://git.collabora.co.uk/?p=user/wjt/telepathy-idle-wjt.git;a=shortlog;h=refs/heads/spam It didn't, though. :(
I've also tried to debug this crash using Valgrind, but I've not been able to reproduce it when running telepathy-idle this way for a whole week. So it may be a very nasty memory bug that doesn't happen when disabling GSlice and friends. Not sure what I can do to avoid this and actually get debugging informations... I can confirm it happens when clicking on a tab that contains many unread messages (thus, it happens when you return from a quiet period and change chat room).
(In reply to comment #3) > I've also tried to debug this crash using Valgrind, but I've not been able to > reproduce it when running telepathy-idle this way for a whole week. So it may > be a very nasty memory bug that doesn't happen when disabling GSlice and > friends. Not sure what I can do to avoid this and actually get debugging > informations... One thing you could try is, rather than disabling GSlice using G_SLICE=always-malloc, set it to perform extra sanity-checks using G_SLICE=debug-blocks. This catches people slice-freeing the wrong size of block, which always-malloc does not. (No point in using Valgrind when doing this, though.) If you could also run Idle with debugging output so we can see what happens leading up to the crash, that would be great. It might be possible to scrape the debug log and turn it into a test case. :)
Created attachment 40700 [details] Log with IDLE_PERSIST=1 IDLE_DEBUG=all G_SLICE=debug-blocks (immediate abort) Not sure it can be related at all, but with your method tp-idle aborted when I started Empathy. So I can't test G_SLICE=debug-blocks. Log is attached. Unrelated: I've found in an old log of tp-idle using Valgrind this: ***MEMORY-ERROR***: telepathy-idle[5611]: GSlice: assertion failed: sinfo->n_allocated > 0 It happens when closing, and the crash had not happened. This was with G_SLICE=always-malloc.
I've filed Bug 32019 about the abort(), it looks different from the present crash. And I've attached a better stacktrace.
I just fixed a crash in TpMessageMixin when acknowledging pending messages, namely bug 40523. Seems faintly unlikely that these are related, though.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-idle/issues/19.
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.