GNOME Bugzilla – Bug 614636
GnuCash crashes on window resize
Last modified: 2018-06-29 22:37:34 UTC
Created attachment 157732 [details] GnuCash window resize crash screenshot Vertically resizing the GnuCash window causes the application to crash after a certain point is reached. I am unable to provide a stack trace, however I have provided a screen shot showing the point at which the crash occurs and the (somewhat unhelpful) error dialog that appears.
Thank you for your report. I can confirm this crash. It still happens in 2.3.15, Windows XP. I can't reproduce on linux. This crash only occurs when GnuCash is configured to have the tabs are on the left or right. What happens can be seen more clearly when you resize the window very slowly vertically. At some point as the window shrinks, the bottom border of the last tab starts to move up together with the bottom border of the window. As soon as the tab's bottom border passes the tab's top border, GnuCash will crash. I assume this is because Gtk segfaults when a widget is given a negative height. The real question now is of course, why does this tab shrink ? To begin there is still free space below the tab, so it shouldn't have to shrink. Secondly, Gtk on linux doesn't behave like this: if the window becomes too small to hold the tabs, arrows are added before and after the tabs, and some tabs are hidden. Clicking the arrows would scroll through the tabs, hiding some and revealing others. Even on Windows with the tabs on top, these arrows appear when the window is resized horizontally. So it's not clear to me why this doesn't work in the vertical direction on windows.
Created attachment 173549 [details] Last tab with shrinking bottom border The attached screenshot shows what I mean with the tab's bottom border moving up. In the screenshot is has moved halfway the tab's text. Moving the window's bottom border a little more up will crash GnuCash.
I can confirm that this bug still exist in the 2.4.0 release. When you shrink the window smaller than the tabs it crashes. Here is my trace file: * WARN <qof.engine> [guid_init()] only got 2521 bytes. The identifiers might not be very random. * WARN <gnc.app-utils> Could not spawn perl: Failed to execute child process (No such file or directory) * WARN <Gtk> Could not find the icon 'gtk-fullscreen'. The 'hicolor' theme was not found either, perhaps you need to install it. You can get a copy from: http://icon-theme.freedesktop.org/releases * WARN <gnc.report.core> Report specified id of 7 is already is use. Using generated id. * CRIT <gnc.report.gui> gnc_plugin_page_report_name_changed: assertion `count++ <= max_count' failed * WARN <Gdk> gdkpixmap-win32.c:302: CreateDIBSection failed: The operation completed successfully. * WARN <Gdk> gdkpixmap-win32.c:114: DeleteObject failed: The operation completed successfully. Thanks for your help!
BTW I am running Windows 7.
Still present in the GnuCash 2.4.2 release. Seems only to affect when tabs are on left and not when they are on the top.
*** Bug 641430 has been marked as a duplicate of this bug. ***
From a developer's point of view, this is a bug in gtk, the GUI library used by GnuCash. The gtk version used on Windows is 2.16 (due to GtkWebKit depending on it). There are plans to update GtkWebKit in the near future, using a more recent version of Gtk. Perhaps that newer gtk version will fix the resizing bug as well.
A user reports on the mailing list [1] this also happens with the main window's tabs if they are stacked vertically. [1] https://lists.gnucash.org/pipermail/gnucash-user/2011-March/039165.html
I have found a bug on gtk for this problem: bug 552681. This bug also reveals a workaround: use a gtk theme other than Ms-Windows. You can use the "Select theme" tool that ships with GnuCash to change your theme. This tool is found in the GnuCash group of the start menu.
This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report. Note that it is fixed by choosing another theme by default. The Ms-Windows theme is still broken. If you are interested to know when the Ms-Windows theme is fixed, please track the upstream bug 552681.
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=614636. Please update any external references or bookmarks.