GNOME Bugzilla – Bug 639894
Full History leads to crash
Last modified: 2014-12-22 23:56:25 UTC
When I open full history, Gnumeric consistently crashes. Launch a new Gnumeric instance, click File > Full History, the window opens showing no documents and a second later crashes. It's possible that some of the items in the history are moved or deleted documents or point to drives that no longer exist. They could also have been opened in previous versions of Gnumeric (I used 10.5 before this, now running 10.12)
Can you provide a backtrace of the crash? This would likely be Macintosh specific and likely a gtk bug rather than a gnumeric one. Without a backtrace there is little Gnumeric developers can do since none of us uses a Macintosh.
Created attachment 178673 [details] Crash report
I could also recompile and attach gdb to it if this doesn't give enough detail
It doesn't look like Gnumeric is involved: 1 libSystem.B.dylib 0x00007fff83155cca abort + 83 2 libglib-2.0.0.dylib 0x00000001013a9bd8 g_assertion_message + 328 3 libglib-2.0.0.dylib 0x00000001013aa122 g_assertion_message_expr + 82 4 libgtk-x11-2.0.0.dylib 0x000000010088c897 get_icon_fallback + 103 Do you see any messages on the terminal if you run Gnumeric from a terminal window? The crash seems to be the result of a failing g_assert inside gtk code. This shoujld give an error message on the console.
** Gtk:ERROR:gtkrecentmanager.c:1942:get_icon_fallback: assertion failed: (retval != NULL) Abort trap
The assert in question should be in gtkrecentmanager.c: static GdkPixbuf * get_icon_fallback (const gchar *icon_name, gint size) { GtkIconTheme *icon_theme; GdkPixbuf *retval; icon_theme = gtk_icon_theme_get_default (); retval = gtk_icon_theme_load_icon (icon_theme, icon_name, size, GTK_ICON_LOOKUP_USE_BUILTIN, NULL); g_assert (retval != NULL); return retval; } Michael, you may want to give a different icon theme a try.
Whoever compiled your Gnumeric didn't turn off the g-assert macro which caused this crash: g_assert() Debugging macro to terminate the application if the assertion fails. If the assertion fails (i.e. the expression is not true), an error message is logged and the application is terminated. The macro can be turned off in final releases of code by defining G_DISABLE_ASSERT when compiling the application.
Ok, I'll set that and rebuild it. (FYI It was compiled using mac ports, which is the mac equivalent of apt-get. Evidently this flag isn't in their portfile)
I think this was fixed a long time ago