GNOME Bugzilla – Bug 721762
All text entry fails, system beep on keypress
Last modified: 2018-02-10 05:50:13 UTC
Created attachment 265627 [details] Trace from run of Gnucash 2.6.0 on Mac OS X 10.5.8 When I run the Gnucash app 2.6.0 on Mac OS X 10.5.8, I am unable to enter text into any text entry field in the application. Each keypress yields a system beep sound, and no character entered. How to reproduce: * Run GnuCash application * Gnucash application starts. * Tip of the Day dialog appears. Click Close button. Disappears. * Account window appears. * Open any account (I use "Miscellaneous") * Click in Description field at bottom of register to enter a new transaction. Observed behaviour: * No character appears in the Description field. A system beep sounds at any key press. Expected behaviour: * Characters appear in the Description field. No system beep. Further information: * Running 2.6.0 from command line gets an error message about "Trace/BPT trap", and app doesn't start at all. Here's what I see: % /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin Application Path /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin Trace/BPT trap % Running 2.6.0 from command line with --debug gets error messages, but I suspect not relevant ones. I'll file bug reports for the 2.4.14 and the 2.6.0 behaviours, and put more details there. Likewise, Trace file has error message but I suspect not relevant ones. Workaround in https://bugzilla.gnome.org/show_bug.cgi?id=721260 has no effect. GnuCash 2.4.13 seems to still work as it always did. GnuCash 2.6.0 about box says "built from rev 38a0d33+ on 2013-12-29". Same symptoms with any text input field, e.g. changing the Notes field of an Edit Account dialog. Opening an empty file from the app and putting a transaction into a new Account yields the same behaviour.
Please disregard Description text from "Running 2.6.0 from command line with --debug" on. Bugzilla committed the Description when I uploaded the attachment, which I didn't expect. I've attached a trace file from running Gnucash 2.6.0 on my Mac OS X 10.5.8 system. This is a run which ended in a Trace/BPT trap error. There are two CRIT messages in the trace file. However, there are similar CRIT messages in a trace file for 2.4.13, so I suspect they aren't closely related to the text entry failure. Running Gnucash from the command line with the --debug flag has no apparent effect: % /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin --debug Application Path /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin Trace/BPT trap % Workaround in https://bugzilla.gnome.org/show_bug.cgi?id=721260 has no effect. Opening an empty file from the app and putting a transaction into a new Account yields the same behaviour. Thus I suspect text entry is broken throughout the application, and it isn't simply a corruption in my bookkeeping file. GnuCash 2.6.0 about box says "built from rev 38a0d33+ on 2013-12-29". Same symptoms with any text input field, e.g. changing the Notes field of an Edit Account dialog. GnuCash 2.4.13 seems to still work as it always did.
John Ralls asks, via gnucash-users: >Intel or PPC? Intel. Hardware = MacBook Core 2 duo. >For 2.6.0, what are your localization settings? International settings: * Languages: English, Japanese, German. * Order for sorted lists: English * Formats: Canadian. * Input Menu: Several keyboards and input methods selected, including Canadian English, Kotoeri (Japanese), Hangul, Character Palette, Japanese Kana Palette, Turkish, etc. etc. * Keyboard selected: Canadian English. > Is there a crash report in /Applications/Utilities/Console? Not for an invocation of the GnuCash application via Finder. But when invoking from command line as /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin , yes there is a crash report. I'll attach it to the bug report. The punch line appears to be: EXC_BREAKPOINT (SIGTRAP) at libglib-2.0.0.dylib 0x03897593 g_logv + 755
Created attachment 265671 [details] Crash report from running GnuCash 2.6.0 from command line This crash log appears when running GnuCash 2.6.0 on Mac OS X 10.5.8 on an intel CPU machine as follows: % /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin Application Path /Applications/Gnucash-2.6.0.app/Contents/MacOS/Gnucash-bin Trace/BPT trap %
As with 2.4.14, I'm able to run GnuCash on 10.5.8 and enter text correctly if I first remove Gnucash.app/Contents/etc/gtk.immodules. Also as noted in bug 721765, you can't run Gnucash-bin directly, you must use the launcher script, Gnucash.
Thanks to John Ralls for the guidance. I confirm that on my Mac OS X 10.5.8 system, if I: 1. Delete the previous copy of GnuCash 2.6.0 2. Re-copy GnuCash application from the .dmg to the /Applications folder 3. Delete (or in my case remove to a separate directory) the gtk.immodules file, as in: rm /Applications/Gnucash-2.6.0.app/Contents/Resources/etc/gtk-2.0/gtk.immodules 4. Run GnuCash 2.6.0 by double-clicking the Application icon, then the observed behaviour becomes is the same as expected. That is: * Gnucash application starts. * Tip of the Day dialog appears. Click Close button. Disappears. * Account window appears. * Open any account (I use "Miscellaneous") * Click in Description field at bottom of register to enter a new transaction. * Characters appear in the Description field. No system beep. Based on the discussion, it makes sense to me that the bug behaviour is due to the GTK functionality related to gtk.immodules being incompatible with versions of Mac OS X before 10.6.0. Thus I'd support reducing the Priority of this bug to Normal, and the Severity to Normal or Minor (not many of us left on 10.5.8). I won't make this change, because I don't know the ground rules here well enough. Also, it seems to me that reasonable responses to this bug report might be: * Declare that GnuCash 2.6.0 requires Mac OS X 10.6.0 or newer to run * Document the workaround of deleting gtk.immodules in the README file or similar, for the benefit of GnuCash 2.5.8 users * Add a feature to GnuCash that, if it finds itself running on Mac OS X 10.5.8, it deletes gtk.immodules on the user's behalf In any event, on behalf of the other 10.5.8 users, thanks for explaining this workaround.
By the way, my attempt to run Gnucash-bin directly was suggested by how I read the Mac OS-related instructions at http://wiki.gnucash.org/wiki/FAQ#Q:_Something_bad_happened.3B_how_can_I_help_debug.3F , item 3, final bullet. I now see I mis-read it. I thought it was encouraging me to run Gnucash from the command line but wasn't quite telling me how. Now I see it's encouraging me _not_ to run it from the command line. Thus I now regard the behaviour I reported about running Gnucash from the command line to be moot. I'll rewrite that FAQ text to make it clearer (to me at least). Thanks.
*** Bug 721765 has been marked as a duplicate of this bug. ***
The correct solution is to disable the imquartz calls for 10.5 and earlier in Gtk, so transferring this bug there.
Created attachment 293317 [details] backtrace fwiw, this backtrace just showed up when running the textview gtk-demo. The crash happens on the first attempt to press a key with the text view focused.
Ryan, is this with gtk master?
Never mind, found it. The g_free()s in output_text weren't needed after https://git.gnome.org/browse/gtk+/commit/gdk/quartz/GdkQuartzView.c?id=8b5d30d4396ba0e3e0b2ff2e515d8eddb5c26849. Fixed and pushed to master, which is the only branch affected.
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
Per John Ralls' comment 11 https://bugzilla.gnome.org/show_bug.cgi?id=721762#c11 saying that a fix was pushed to master, and given the three+ years which have passed, I believe it's fine to close this bug, even though there is no evidence from testing that it is fixed. Marking status to RESOLVED/FIXED.