GNOME Bugzilla – Bug 624867
Crash in em_format_set_mode at em-format.c line 880
Last modified: 2010-08-02 14:38:54 UTC
What were you doing when the application crashed? Switched off full headers display. Distribution: Mandriva Linux release 2010.1 (Official) for x86_64 Gnome Release: 2.30.0 2010-03-31 (Mandriva) BugBuddy Version: 2.30.0 System: Linux 2.6.33.6-desktop-0.rc1.1mnb #1 SMP Sat Jul 3 03:29:05 EEST 2010 x86_64 X Vendor: The X.Org Foundation X Vendor Release: 10707000 Selinux: No Accessibility: Enabled GTK+ Theme: Ia Ora Gray Icon Theme: Foxtrot GTK+ Modules: canberra-gtk-module, gail-gnome, gail:atk-bridge, gnomebreakpad Memory status: size: 1962352640 vsize: 1962352640 resident: 148123648 share: 30236672 rss: 148123648 rss_rlim: 18446744073709551615 CPU usage: start_time: 1279654392 rtime: 1383 utime: 1199 stime: 184 cutime:0 cstime: 0 timeout: 0 it_real_value: 0 frequency: 100 Backtrace was generated from '/usr/bin/evolution' [Thread debugging using libthread_db enabled] [New Thread 0x7ff5255d0710 (LWP 27582)] [New Thread 0x7ff527fff710 (LWP 27372)] [New Thread 0x7ff50b4a4710 (LWP 26968)] [New Thread 0x7ff50aca2710 (LWP 26964)] [New Thread 0x7ff50cca8710 (LWP 26959)] [New Thread 0x7ff54bfff710 (LWP 26958)] [New Thread 0x7ff50d4a9710 (LWP 26957)] [New Thread 0x7ff5179b2710 (LWP 26956)] [New Thread 0x7ff5171b1710 (LWP 26524)] [New Thread 0x7ff5161af710 (LWP 26512)] [New Thread 0x7ff5169b0710 (LWP 26511)] [New Thread 0x7ff5685aa710 (LWP 26050)] [New Thread 0x7ff524dcf710 (LWP 25800)] [New Thread 0x7ff525dd1710 (LWP 25798)] [New Thread 0x7ff5265d2710 (LWP 25797)] [New Thread 0x7ff526dd3710 (LWP 25796)] [New Thread 0x7ff530ca6710 (LWP 25795)] [New Thread 0x7ff5314a7710 (LWP 25794)] [New Thread 0x7ff531ca8710 (LWP 25781)] [New Thread 0x7ff533fff710 (LWP 25780)] [New Thread 0x7ff54997d710 (LWP 25778)] [New Thread 0x7ff54a3e7710 (LWP 25777)] [New Thread 0x7ff54b7fe710 (LWP 25776)] [New Thread 0x7ff54abe8710 (LWP 25775)] [New Thread 0x7ff56179b710 (LWP 25773)] [New Thread 0x7ff560f9a710 (LWP 25760)] [New Thread 0x7ff561f9c710 (LWP 25758)] [New Thread 0x7ff56279d710 (LWP 25757)] [New Thread 0x7ff5631c8710 (LWP 25755)] [New Thread 0x7ff5639c9710 (LWP 25754)] 0x00007ff57aabdd4d in waitpid () from /lib64/libpthread.so.0
+ Trace 222944
Thread 1 (Thread 0x7ff57cba5860 (LWP 25505))
Inferior 1 [process 25505] will be detached. Quit anyway? (y or n) [answered Y; input not from terminal] ---- Critical and fatal warnings logged during execution ---- ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GLib **: g_hash_table_lookup: assertion `hash_table != NULL' failed ** GdkPixbuf **: gdk_pixbuf_new: assertion `width > 0' failed ** GdkPixbuf **: gdk_pixbuf_new: assertion `width > 0' failed ** evolution-mail **: e_mail_reader_get_html_display: assertion `E_IS_MAIL_READER (reader)' failed ----------- .xsession-errors --------------------- (evolution:25505): GLib-CRITICAL **: g_hash_table_lookup: assertion `hash_table != NULL' failed (evolution:25505): GLib-CRITICAL **: g_hash_table_lookup: assertion `hash_table != NULL' failed (nautilus:8465): GdkPixbuf-CRITICAL **: gdk_pixbuf_format_get_name: assertion `format != NULL' failed (evolution:25505): GdkPixbuf-CRITICAL **: gdk_pixbuf_new: assertion `width > 0' failed (evolution:25505): GdkPixbuf-CRITICAL **: gdk_pixbuf_new: assertion `width > 0' failed (evolution:25505): evolution-mail-CRITICAL **: e_mail_reader_get_html_display: assertion `E_IS_MAIL_READER (reader)' failed warning: no loadable sections found in added symbol-file /usr/lib/debug/usr/lib64/libgnomecanvas-2.so.0.3000.1.debug Cannot access memory at address 0x78 --------------------------------------------------
Created attachment 166977 [details] [review] Patch to guard entry point
Ah, this is because e_mail_reader_get_formatter can now return NULL (when it is of type EMailNotebookView from it's get_formatter implementation: >-------EMailNotebookViewPrivate *priv = E_MAIL_NOTEBOOK_VIEW (reader)->priv; >-------if (!priv->current_view) >------->-------return NULL; >-------return e_mail_reader_get_formatter (E_MAIL_READER(priv->current_view)); I attach two patches. One which guards the entry point to em_format_set_mode and another that correctly bails out of setting the formatter when the action is fired.
Created attachment 166978 [details] [review] Handle NULL returning from get_formatter
Comment on attachment 166978 [details] [review] Handle NULL returning from get_formatter Seems fine to me.
Comment on attachment 166977 [details] [review] Patch to guard entry point Seems fine to me.
Fixed in git master. Thanks: commit 3696034171889e067b7c9b9e118b9746c1986bcf Author: Rob Bradford <rob@linux.intel.com> Date: Mon Aug 2 15:09:27 2010 +0100 mail-reader: e_mail_reader_get_formatter may now return NULL Since e_mail_reader_get_formatter (the EMailNotebookView implementation) can now return NULL we need to prevent that being passed into other functions. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=624867 commit 2b6e5cce1912d6d7bb7f69b7cae29ccb0c8a7161 Author: Rob Bradford <rob@linux.intel.com> Date: Mon Aug 2 15:05:32 2010 +0100 em-format: Guard entry point to em_format_set_mode with g_return_if_fail