[issue34455] Tkinter crashing when pressing Command + ^ (OSX)

Ronald Oussoren report at bugs.python.org
Wed Aug 22 10:21:24 EDT 2018


Ronald Oussoren <ronaldoussoren at mac.com> added the comment:

FWIW I can reproduce the problem with IDLE and tk_scroll.py:

1) Add a spanish keyboard layout in System Preferences (my normal layout is US International, matching the text on the keyboard)

2) Select this keyboard using the keyboard menu item

3) Type CMD-^ by pressing "CMD+SHIFT+[" (that is, at the same time press the keys CMD, SHIFT and the key where [ is on the keycap). 

With tk_scroll.py the following output is shown in the terminal:

2018-08-22 16:12:22.231 Python[51578:13988425] -[TKMenu submenuAction:]: unrecognized selector sent to instance 0x7fe078f56270
2018-08-22 16:12:22.315 Python[51578:13988425] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[TKMenu submenuAction:]: unrecognized selector sent to instance 0x7fe078f56270'
*** First throw call stack:
(
	0   CoreFoundation                      0x00007fff30e8a2db __exceptionPreprocess + 171
	1   libobjc.A.dylib                     0x00007fff58034c76 objc_exception_throw + 48
	2   CoreFoundation                      0x00007fff30f22db4 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
	3   CoreFoundation                      0x00007fff30e00820 ___forwarding___ + 1456
	4   CoreFoundation                      0x00007fff30e001e8 _CF_forwarding_prep_0 + 120
	5   AppKit                              0x00007fff2eb37a43 -[NSApplication(NSResponder) sendAction:to:from:] + 312
	6   AppKit                              0x00007fff2e82c1bb -[NSCarbonMenuImpl performMenuAction:withTarget:] + 155
	7   AppKit                              0x00007fff2e5cb232 -[NSMenu _performKeyEquivalentWithDelegate:] + 361
	8   AppKit                              0x00007fff2e5cacd8 -[NSMenu performKeyEquivalent:] + 68
	9   AppKit                              0x00007fff2eb366a9 routeKeyEquivalent + 884
	10  AppKit                              0x00007fff2eb33ce0 -[NSApplication(NSEvent) sendEvent:] + 1096
	11  libtk8.6.dylib                      0x0000000108e7f3ee -[TKApplication(TKNotify) sendEvent:] + 39
	12  libtk8.6.dylib                      0x0000000108e7f787 TkMacOSXEventsCheckProc + 434
	13  libtcl8.6.dylib                     0x0000000108d16d06 Tcl_DoOneEvent + 316
	14  _tkinter.cpython-37m-darwin.so      0x0000000108c4701d _tkinter_tkapp_mainloop + 269
	15  Python                              0x000000010865884e _PyMethodDef_RawFastCallKeywords + 430
	16  Python                              0x000000010865e462 _PyMethodDescr_FastCallKeywords + 82
	17  Python                              0x00000001087175e0 call_function + 832
	18  Python                              0x0000000108714546 _PyEval_EvalFrameDefault + 25126
	19  Python                              0x0000000108718096 _PyEval_EvalCodeWithName + 2422
	20  Python                              0x0000000108657d81 _PyFunction_FastCallKeywords + 257
	21  Python                              0x00000001087175bb call_function + 795
	22  Python                              0x0000000108714560 _PyEval_EvalFrameDefault + 25152
	23  Python                              0x0000000108718096 _PyEval_EvalCodeWithName + 2422
	24  Python                              0x000000010870e244 PyEval_EvalCode + 100
	25  Python                              0x000000010874b041 PyRun_FileExFlags + 209
	26  Python                              0x000000010874a8eb PyRun_SimpleFileExFlags + 859
	27  Python                              0x000000010876893c pymain_main + 8044
	28  Python                              0x0000000108768da1 _Py_UnixMain + 129
	29  libdyld.dylib                       0x00007fff58c4e015 start + 1
	30  ???                                 0x0000000000000002 0x0 + 2
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Abort trap: 6

I haven't (and won't) further investigated this problem, but at least this should help reproduce the problem.  Its likely a Tk problem, but maybe it is possible to tweak IDLE or Tkinter to avoid a crash. 

P.S. The crash does not happen with a US keyboard layout. 

P.P.S. SHIFT+[ appears to be how you enter "^" on a spanish keyboard.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue34455>
_______________________________________


More information about the Python-bugs-list mailing list