GNOME Bugzilla – Bug 347916
Entering =[] causes CRITICAL
Last modified: 2006-07-21 19:42:57 UTC
Steps to reproduce: 1. Enter the formula =[] or any other formula containing left and right brackets. 2. Upon entering the ']', the following is printed on the console before crash: ** (gnumeric:28012): CRITICAL **: go_url_encode: assertion `*text != '\0'' failed Stack trace: (gdb) run Starting program: /Users/cdc6d/local/bin/gnumeric Reading symbols for shared libraries ......+++.+++++...........................................++++++++++++++ done Reading symbols for shared libraries . done Reading symbols for shared libraries .. done Reading symbols for shared libraries . done ** (gnumeric:28012): CRITICAL **: go_url_encode: assertion `*text != '\0'' failed Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00000000 0x900030e8 in strlen () (gdb) where
+ Trace 69418
Other information: This executable was built on Mac OS X 10.4.6 using Mac's X11. Libgsf and libgoffice were built the same way; the rest of the dependencies came from Fink. Gnumeric 1.6.3 built the same way does not exhibit this bug.
Thanks for taking the time to report this bug. This bug report isn't very useful because it doesn't describe the bug well. If you have time and can still reproduce the bug, please read http://bugzilla.gnome.org/bug-HOWTO.html and add a more useful description to this bug.
Bug report is fine. And I can reproduce. We throw a critical in this case. There are no null-pointers involved.
2006-07-18 Morten Welinder <terra@gnome.org> * src/application.c (gnm_app_workbook_get_by_name): Handle empty name. Fixes #347916. Fixed in the development version. The fix will be available in the next major release. Thank you for your bug report.
Actually, in the non-gnome version there really was a null pointer dereference. While it can no longer be reached this way, I still felt it right to fix go_url_resolve_relative (in goffice) by adding preconditions that will catch this.