After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 316071 - evolution crashes on quit
evolution crashes on quit
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
2.6.x (obsolete)
Other Linux
: High critical
: ---
Assigned To: Veerapuram Varadhan
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2005-09-12 11:55 UTC by Sebastien Bacher
Modified: 2013-09-13 00:48 UTC
See Also:
GNOME target: ---
GNOME version: 2.13/2.14


Attachments
backtrace from crash on quit by broken vfolders (17.10 KB, text/plain)
2005-12-09 15:59 UTC, Mario Manno
Details

Description Sebastien Bacher 2005-09-12 11:55:48 UTC
This bug has been opened here: http://bugzilla.ubuntu.com/show_bug.cgi?id=15175

"Evolution crashes when I quit.
This only happens when I used the mail view. 
I have two imap servers added.
Just before the crash dialog opens i can see the number of messages in the
"Unmatched" vfolder go up, the number is back to normal on the next run.

This is the last message on the command line:
camel-ERROR **: file camel-object.c: line 242 (cobject_finalise): assertion
failed: (o->ref_count == 0)
aborting...
...
> Thanks for your bug. What version of evolution/ubuntu do you use? Seems to be
the same issue as http://bugzilla.gnome.org/show_bug.cgi?id=269903.
...
I'm running breezy, evolution version 2.4.0-0ubuntu2.

The crash happens every time, no matter if i use 'quit' or 'close'.

I think it is related to my profile, I removed one of my imap servers yesterday,
added it again and everything worked fine, but today I'm back to 'crash every
time on quit'.

Maybe I should delete the whole profile and re-setup evolution, copying my
tasks, contacts and calenders to the new profile ?
...
> Could you get a backtrace with debug packages installed
(https://wiki.ubuntu.com/DebuggingProgramCrash) before moving the files?
...
> Thanks for the backtrace, it's still not a debug one though. Do you use some
vFolder as decribed by http://bugzilla.gnome.org/show_bug.cgi?id=306345 comments?
...
Hi, yes it is definitly vfolder related, deleting all vfolders and creating new
ones fixes the problem.

Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) run --sync
Starting program: /usr/bin/evolution --sync
[Thread debugging using libthread_db enabled]
[New Thread -1230809408 (LWP 6326)]
adding hook target 'source'
[New Thread -1239077968 (LWP 6333)]
[New Thread -1247466576 (LWP 6334)]
[New Thread -1255855184 (LWP 6335)]
[New Thread -1264243792 (LWP 6336)]
[New Thread -1273631824 (LWP 6337)]
[New Thread -1284080720 (LWP 6338)]

Program received signal SIGABRT, Aborted.
[Switching to Thread -1284080720 (LWP 6338)]
0xb78b4ab7 in raise () from /lib/tls/libc.so.6
(gdb) thread apply all bt full

Thread 1 (Thread -1230809408 (LWP 6326))

  • #0 read
    from /lib/tls/libc.so.6
  • #1 _X11TransSocketRead
    at Xtranssock.c line 2132
  • #2 _X11TransRead
    at Xtrans.c line 890
  • #3 _XRead
    at ../../src/XlibInt.c line 1074
  • #4 _XReply
    at ../../src/XlibInt.c line 1714
  • #5 XSync
    at ../../src/Sync.c line 48
  • #6 _XSyncFunction
    at ../../src/Synchro.c line 37
  • #7 XDrawLine
    at ../../src/DrLine.c line 96
  • #8 _gdk_x11_have_render
    from /usr/lib/libgdk-x11-2.0.so.0
  • #9 gdk_draw_segments
    from /usr/lib/libgdk-x11-2.0.so.0
  • #10 gdk_pixmap_get_type
    from /usr/lib/libgdk-x11-2.0.so.0
  • #11 gdk_draw_segments
    from /usr/lib/libgdk-x11-2.0.so.0
  • #12 gdk_window_get_internal_paint_info
    from /usr/lib/libgdk-x11-2.0.so.0
  • #13 gdk_draw_line
    from /usr/lib/libgdk-x11-2.0.so.0
  • #14 cl_draw_rectangle
    from /usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
  • #15 clearlooks_rc_style_register_type
    from /usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
  • #16 gtk_paint_box
    from /usr/lib/libgtk-x11-2.0.so.0
  • #17 gtk_range_get_adjustment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #18 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #19 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #20 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #21 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #22 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #23 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #24 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #25 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #26 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #27 gtk_scrolled_window_get_shadow_type
    from /usr/lib/libgtk-x11-2.0.so.0
  • #28 gtk_container_forall
    from /usr/lib/libgtk-x11-2.0.so.0
  • #29 gtk_container_get_focus_hadjustment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #30 _gtk_scrolled_window_get_scrollbar_spacing
    from /usr/lib/libgtk-x11-2.0.so.0
  • #31 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #32 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #33 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #34 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #35 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #36 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #37 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #38 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #39 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #40 gtk_box_reorder_child
    from /usr/lib/libgtk-x11-2.0.so.0
  • #41 gtk_container_forall
    from /usr/lib/libgtk-x11-2.0.so.0
  • #42 gtk_container_get_focus_hadjustment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #43 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #44 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #45 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #46 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #47 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #48 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #49 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #50 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #51 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #52 gtk_box_reorder_child
    from /usr/lib/libgtk-x11-2.0.so.0
  • #53 gtk_container_forall
    from /usr/lib/libgtk-x11-2.0.so.0
  • #54 gtk_container_get_focus_hadjustment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #55 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #56 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #57 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #58 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #59 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #60 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #61 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #62 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #63 gtk_container_propagate_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #64 gtk_bin_get_type
    from /usr/lib/libgtk-x11-2.0.so.0
  • #65 gtk_container_forall
    from /usr/lib/libgtk-x11-2.0.so.0
  • #66 gtk_container_get_focus_hadjustment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #67 gtk_window_get_position
    from /usr/lib/libgtk-x11-2.0.so.0
  • #68 bonobo_plug_set_control
    from /usr/lib/libbonoboui-2.so.0
  • #69 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #70 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #71 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #72 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #73 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #74 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #75 gtk_widget_activate
    from /usr/lib/libgtk-x11-2.0.so.0
  • #76 gtk_main_do_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #77 gdk_window_clear_area_e
    from /usr/lib/libgdk-x11-2.0.so.0
  • #78 gdk_window_process_all_updates
    from /usr/lib/libgdk-x11-2.0.so.0
  • #79 gtk_container_check_resize
    from /usr/lib/libgtk-x11-2.0.so.0
  • #80 g_child_watch_add
    from /usr/lib/libglib-2.0.so.0
  • #81 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #82 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #83 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #84 bonobo_main
    at bonobo-main.c line 395
  • #85 main
  • #0 raise
    from /lib/tls/libc.so.6
Continuing.

Program exited with code 01.
(gdb) 

debug backtrace from gdb"
Comment 1 parthasarathi susarla 2005-09-22 17:04:54 UTC
I presume, this happened after an upgrade. please recreate your vfolder rules
(deleting the current ones). This should get it working. This is just a
work-around though. :)
Comment 2 parthasarathi susarla 2005-10-07 05:54:17 UTC
sebastian, are you still seeing this problem happen?? 
Comment 3 Mario Manno 2005-12-09 15:59:36 UTC
Created attachment 55812 [details]
backtrace from crash on quit by broken vfolders

Hi, I originally reported this bug at
http://bugzilla.ubuntu.com/show_bug.cgi?id=15175 .

I recompiled evolution with nostrip and noopt today, because of #314576.
So i tried my old vfolder settings and they crash dapper drakes evolution
2.5.2.

I attach a new backtrace and i can email a tarball with the broken vfolder
settings if you want to close this bug.
Comment 4 Sebastien Bacher 2005-12-20 15:02:21 UTC
Reopening according to the previous comment, thanks for the backtrace!
Comment 5 parthasarathi susarla 2006-02-02 04:35:57 UTC
Pasting contents of the previous attachment 

Thread 3 (Thread -1246205008 (LWP 15550))

  • #0 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #1 g_log
    from /usr/lib/libglib-2.0.so.0
  • #2 g_assert_warning
    from /usr/lib/libglib-2.0.so.0
  • #3 cobject_finalise
    at camel-object.c line 242
  • #4 camel_object_unref
    at camel-object.c line 925
  • #5 folder_changed_free
    at camel-vee-folder.c line 1429
  • #6 session_thread_msg_free
    at camel-session.c line 503
  • #7 ms_thread_msg_free
    from /usr/lib/evolution/2.6/components/libevolution-mail.so
  • #8 camel_session_thread_msg_free
    at camel-session.c line 605
  • #9 session_thread_destroy
    at camel-session.c line 514
  • #10 thread_destroy_msg
    at e-msgport.c line 810
  • #11 thread_dispatch
    at e-msgport.c line 913
  • #12 start_thread
    from /lib/tls/libpthread.so.0
  • #13 clone
    from /lib/tls/libc.so.6

Comment 6 parthasarathi susarla 2006-02-02 05:38:28 UTC
Hey seb,
am sure i had fixed this issue as a part of some other patch for a crasher. Could you just check with the latest sources on HEAD and make a closure on this issue?? Thanks.
Comment 7 Sebastien Bacher 2006-02-02 10:59:49 UTC
I've put a comment on the Ubuntu bug about that
Comment 8 Sebastien Bacher 2006-02-03 09:12:24 UTC
Distribution bug comment:

"http://librarian.launchpad.net/1546912/evolution2.5.90.txt

Hi,

Evolution still crashes.
If I follow the instructions from https://wiki.ubuntu.com/DebuggingProgramCrash
 i don't get a stack trace.

Shall I try to build from cvs?"
Comment 9 Sebastien Bacher 2006-02-03 09:14:48 UTC
Is evolution or evolution-data-server supposed to contain the fix for that? Does .90 has it?
Comment 10 Veerapuram Varadhan 2006-02-20 19:34:52 UTC
Partha: ^^^^^ ???
Comment 11 Jason Brower 2006-03-09 13:34:27 UTC
I get that too...
camel-ERROR **: file camel-object.c: line 242 (cobject_finalise): assertion failed: (o->ref_count == 0)
aborting...
jason@tabby:~$
I too have two pop accounts.
it only seems to happen if I check the mail... if I don't check and exit, I don't get the crash.
Ideas?
Comment 12 Heikki Henriksen 2006-03-24 12:50:58 UTC
I've managed to consistently reproduce/remove/reproduce what I think is this same bug in evolution 2.4.2.1 :)

I have a hunch the issue is vfolders which are based on other vfolders.
ie: 
1. Create a vfolder based on all local/external folders - let's call it "Last Week"
2. Create a new vfolder based on Last Week - let's call it "Unread Last week"

Every time these vfolders are updated (ie new mail, deleted mail, changed mail), 
Exit -> Crash.
Comment 13 Karsten Bräckelmann 2006-03-26 02:13:11 UTC
Heikki, good catch. This may very well be. There are a bunch of "crash on close" bugs, that are suspected to be related to vFolders.

However, you are not entirely clear about your observations. Can you reproduce this with any vFolders and fetching mail, or with cascaded vFolders only? Can you reliably fetch mail and exit without a crash, after some modifications? If so, did you remove all vFolders or just don't use cascaded ones?

Hope, I'm not confusing... ;)
Comment 14 Heikki Henriksen 2006-03-26 10:35:48 UTC
Karsten:
I can reproduce the crash on exit with any cascaded vfolders. When I remove the cascading, I also remove the crash :)
Comment 15 Poornima 2006-04-28 04:02:55 UTC
Confirming this bug, I dont remember any fix has gone in recently with respect to this bug. 
Comment 16 Jason Brower 2006-04-28 04:47:28 UTC
Anything I can do to help solve this bug... I use vfolders, but no imap.  Sometimes it doesn't crash with an error... If I don't get email it ussually doesn't crash... and sometimes when I check for email when leaving the program it doesn't give an error.
Comment 17 parthasarathi susarla 2006-10-20 03:51:25 UTC
related to bug 330157 ??
Comment 18 Veerapuram Varadhan 2006-10-31 13:16:35 UTC
Trying to reproduce the bug - following Heikki's steps.
Comment 19 Jason Brower 2007-01-13 08:21:23 UTC
With edgy it is doing it again.  Grrr....
Comment 20 Michael R Head 2007-02-05 20:51:49 UTC
I have recently upgraded to feisty and haven't seen evo 2.9.6 exhibit this behavior.
Comment 21 Daniel Holbach 2007-02-09 11:47:46 UTC
Does anybody else still see the problem in 2.9.x?
Comment 22 Daniel Holbach 2007-02-12 19:10:24 UTC
From https://launchpad.net/ubuntu/+source/evolution/+bug/21399

Hi, I just copied my one year old vfolders.xml onto .evolution/mail/vfolders.xml.
This file was known to trigger the bug, but does not anymore.

I think the 'UNMATCHED' folder in vfolders.xml was the problem last year:

<sources with="specific">
        <folder uri="email://vfolder@local/UNMATCHED"/>
        <folder uri="email://111111111.11111.0@hostname/INBOX/Groups/All"/>
</sources>

Currently i can't reproduce the bug on edgy.



I think it's safe to close the bug.
Comment 23 Sebastien Bacher 2007-03-04 13:11:48 UTC
The ubuntu bug has been marked fixed, doing the same for the upstream one. Feel free to reopen if you think that's wrong