GNOME Bugzilla – Bug 712663
Memory usage issue on saving a fuzzed .gnumeric file
Last modified: 2013-11-19 18:50:36 UTC
Memory usage issue on saving a fuzzed .gnumeric file. Git versions of glib, goffice, gnumeric, libgsf and libxml2. The file opens normally, but on Save As it consumes 10GB+ of RAM in my system and gnumeric process gets killed. For a small file of 5.5KB this sounds odd, so here is the test case for inspection if it is a bug or a feature of the file. Test case: http://jutaky.com/fuzzing/gnumeric_case_29298_3345.2gnumeric.gnumeric -- Juha Kylmänen Research Assistant, OUSPG
I am unable to provoke this behaviour. Not with the gui, not with ssconvert, not under valgrind. Can you get a stack trace after it grows to, say, 1GB?
Here is a trace when ssconvert is taking approximately 6GB of RAM. Program received signal SIGINT, Interrupt. 0x00007fffef256cdf in g_base64_encode_step (in=0x7ffed1f5d800 "", len=4294967295, break_lines=1, out=0x7ffd77e2b800 'A' <repeats 76 times>, "\n", 'A' <repeats 76 times>, "\n", 'A' <repeats 46 times>..., state=0x7fffffffdfc0, save=0x7fffffffe000) at gbase64.c:147 147 *outptr++ = base64_alphabet [ ((c2 &0x0f) << 2) | (gdb) bt
+ Trace 232798
Might be fixed with goffice update now.
The patch seems to work. The test case no longer eats all the memory.
This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report.