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 509124 - crash in e_msg_composer_new_with_message (message=0x0) at e-msg-composer.c:4549
crash in e_msg_composer_new_with_message (message=0x0) at e-msg-composer.c:4549
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
2.12.x (obsolete)
Other All
: High critical
: ---
Assigned To: Matthew Barnes
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2008-01-13 12:05 UTC by Josselin Mouette
Modified: 2008-01-24 12:44 UTC
See Also:
GNOME target: ---
GNOME version: 2.19/2.20


Attachments
Patch for camel_object_cast() (400 bytes, patch)
2008-01-22 22:38 UTC, Matthew Barnes
committed Details | Review
Patch for e-msg-composer.c (1.11 KB, patch)
2008-01-22 22:48 UTC, Matthew Barnes
committed Details | Review

Description Josselin Mouette 2008-01-13 12:05:37 UTC
What were you doing when the application crashed?
I was juggling between two emails. I hit control+enter by mistake, and the seahorse dialog popped up to ask whether to allow using my GPG passphrase. I canceled the seahorse dialog and the Evolution dialog that came after, and there it crashed.


Distribution: Debian lenny/sid
Gnome Release: 2.20.3 2008-01-12 (Debian)
BugBuddy Version: 2.20.1

System: Linux 2.6.22-3-amd64 #1 SMP Sun Nov 4 18:18:09 UTC 2007 x86_64
X Vendor: The X.Org Foundation
X Vendor Release: 10400000
Selinux: No
Accessibility: Disabled
GTK+ Theme: Gorilla
Icon Theme: Gorilla

Memory status: size: 717639680 vsize: 717639680 resident: 126541824 share: 34324480 rss: 126541824 rss_rlim: 18446744073709551615
CPU usage: start_time: 1200215881 rtime: 9278 utime: 7318 stime: 1960 cutime:117 cstime: 57 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/usr/bin/evolution'

Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 0x2b49d210c970 (LWP 4649)]
[New Thread 0x41802950 (LWP 6071)]
[New Thread 0x43847950 (LWP 5875)]
[New Thread 0x43806950 (LWP 5230)]
[New Thread 0x43005950 (LWP 5229)]
[New Thread 0x42804950 (LWP 5200)]
[New Thread 0x42003950 (LWP 5195)]
[New Thread 0x41001950 (LWP 5192)]
[New Thread 0x40800950 (LWP 5191)]
0x00002b49c9d3b34f in waitpid () from /lib/libpthread.so.0

Thread 1 (Thread 0x2b49d210c970 (LWP 4649))

  • #0 waitpid
    from /lib/libpthread.so.0
  • #1 IA__g_spawn_sync
    at /build/buildd/glib2.0-2.14.4/glib/gspawn.c line 369
  • #2 IA__g_spawn_command_line_sync
    at /build/buildd/glib2.0-2.14.4/glib/gspawn.c line 677
  • #3 ??
    from /usr/lib/gtk-2.0/modules/libgnomebreakpad.so
  • #4 <signal handler called>
  • #5 camel_object_cast
    at camel-object.c line 1091
  • #6 e_msg_composer_new_with_message
    at e-msg-composer.c line 4549
  • #7 e_msg_composer_get_message_print
    at e-msg-composer.c line 5367
  • #8 org_gnome_print_preview
    at print-message.c line 68
  • #9 epl_invoke
    at e-plugin.c line 893
  • #10 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c line 490
  • #11 bonobo_closure_invoke_va_list
    from /usr/lib/libbonobo-2.so.0
  • #12 bonobo_closure_invoke
    from /usr/lib/libbonobo-2.so.0
  • #13 ??
    from /usr/lib/libbonoboui-2.so.0
  • #14 Bonobo_UIComponent_execVerb
    from /usr/lib/libbonobo-2.so.0
  • #15 ??
    from /usr/lib/libbonoboui-2.so.0
  • #16 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c line 490
  • #17 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2478
  • #18 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2199
  • #19 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2243
  • #20 ??
    from /usr/lib/libbonoboui-2.so.0
  • #21 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c line 490
  • #22 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2440
  • #23 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2199
  • #24 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2243
  • #25 closure_accel_activate
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkwidget.c line 4088
  • #26 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c line 490
  • #27 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2440
  • #28 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2209
  • #29 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2243
  • #30 IA__gtk_accel_group_activate
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkaccelgroup.c line 739
  • #31 IA__gtk_accel_groups_activate
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkaccelgroup.c line 777
  • #32 IA__gtk_window_activate_key
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkwindow.c line 8005
  • #33 gtk_window_key_press_event
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkwindow.c line 4961
  • #34 ??
    from /usr/lib/libbonoboui-2.so.0
  • #35 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkmarshalers.c line 84
  • #36 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c line 490
  • #37 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2478
  • #38 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2209
  • #39 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c line 2243
  • #40 gtk_widget_event_internal
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkwidget.c line 4675
  • #41 IA__gtk_propagate_event
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkmain.c line 2310
  • #42 IA__gtk_main_do_event
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkmain.c line 1556
  • #43 gdk_event_dispatch
    at /build/buildd/gtk+2.0-2.12.3/gdk/x11/gdkevents-x11.c line 2351
  • #44 IA__g_main_context_dispatch
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c line 2061
  • #45 g_main_context_iterate
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c line 2694
  • #46 IA__g_main_loop_run
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c line 2898
  • #47 bonobo_main
    from /usr/lib/libbonobo-2.so.0
  • #48 main
    at main.c line 602
  • #49 __libc_start_main
    from /lib/libc.so.6
  • #50 _start
  • #0 waitpid
    from /lib/libpthread.so.0


----------- .xsession-errors (280 sec old) ---------------------
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
creating
fff
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
adding certinfo sudres jacques <jacques.sudres@c-s.fr>
fff
get joss smtp://joss;auth=PLAIN@diva.malsain.org/
Find Items 0
get joss smtp://joss;auth=PLAIN@diva.malsain.org/
Find Items 0
(evolution:4649): Gdk-CRITICAL **: gdk_window_get_origin: assertion `GDK_IS_WINDOW (window)' failed
--------------------------------------------------
Comment 1 Matthew Barnes 2008-01-22 22:35:56 UTC
The "Evolution dialog that came after" was probably the one we present if 
something goes wrong in build_message():


    Could not create mail message.

    Because (blah), you may need to select different mail options.


build_message() will then return NULL and we don't handle that well anywhere.

Additionally, camel_object_cast() should check for NULL.
Comment 2 Matthew Barnes 2008-01-22 22:38:01 UTC
Created attachment 103492 [details] [review]
Patch for camel_object_cast()
Comment 3 Matthew Barnes 2008-01-22 22:48:06 UTC
Created attachment 103494 [details] [review]
Patch for e-msg-composer.c

Improves the error handling a bit when build_message() fails.
Comment 4 Srinivasa Ragavan 2008-01-24 03:58:29 UTC
Looks fine Matt.
Comment 5 Matthew Barnes 2008-01-24 12:44:04 UTC
Committed to trunk (evo revision 34883 / eds revision 8418).