[PyQt] Abort trap on QtCore.QMetaObject.connectSlotsByName(<widget>)
Patrick Stinson
patrickkidd at gmail.com
Mon Feb 18 00:54:02 GMT 2019
I am seeing an abort trap on the QMetaObject.connectSlotsByName() call at the end of setupUi() as generated by pyuic5. I never use slots with the on_<objectName>_<slotName> convention. Is there a way to work around pyuic5 generating this call, or has anyone else sene the cause for this call to abort() in the CPython?
Here is a stack trace showing the call to abort coming from _Py_CheckRecursiveCall:
0 libsystem_kernel.dylib 0x00007fff60efc23e __pthread_kill + 10
1 libsystem_pthread.dylib 0x00007fff60fb2c1c pthread_kill + 285
2 libsystem_c.dylib 0x00007fff60e651c9 abort + 127
3 python3.6 0x000000010f80f951 Py_FatalError + 449
4 python3.6 0x000000010f7da6d1 _Py_CheckRecursiveCall + 65 (ceval.c:690)
5 python3.6 0x000000010f6fa124 _PyObject_FastCallDict + 68
6 python3.6 0x000000010f6f4c21 PyObject_CallFunctionObjArgs + 737 (abstract.c:2827)
7 python3.6 0x000000010f767f85 slot_tp_getattr_hook + 469 (typeobject.c:6230)
8 python3.6 0x000000010f752c99 PyObject_GetAttrString + 137 (object.c:891)
9 python3.6 0x000000010f8105b4 flush_std_files + 84 (pylifecycle.c:494)
10 python3.6 0x000000010f80f94c Py_FatalError + 444 (pylifecycle.c:1466)
11 python3.6 0x000000010f7da6d1 _Py_CheckRecursiveCall + 65 (ceval.c:690)
12 python3.6 0x000000010f6fa124 _PyObject_FastCallDict + 68
13 python3.6 0x000000010f7e3892 call_function + 466 (ceval.c:4848)
14 python3.6 0x000000010f7e07e8 _PyEval_EvalFrameDefault + 24616 (ceval.c:3323)
15 python3.6 0x000000010f7e4516 _PyEval_EvalCodeWithName + 2902 (ceval.c:753)
16 python3.6 0x000000010f7e509e _PyFunction_FastCallDict + 606 (ceval.c:5057)
17 python3.6 0x000000010f6fa1aa _PyObject_FastCallDict + 202 (abstract.c:2310)
18 python3.6 0x000000010f6fa35c _PyObject_Call_Prepend + 156 (abstract.c:2373)
19 python3.6 0x000000010f6f9fd5 PyObject_Call + 101
20 python3.6 0x000000010f768bde slot_tp_init + 158 (typeobject.c:6407)
21 python3.6 0x000000010f764ba4 type_call + 308 (typeobject.c:916)
22 python3.6 0x000000010f6fa27f _PyObject_FastCallDict + 415 (abstract.c:2331)
23 python3.6 0x000000010f7e3892 call_function + 466 (ceval.c:4848)
24 python3.6 0x000000010f7e07e8 _PyEval_EvalFrameDefault + 24616 (ceval.c:3323)
25 python3.6 0x000000010f7e4d49 fast_function + 569 (ceval.c:753)
26 python3.6 0x000000010f7e38e9 call_function + 553 (ceval.c:4845)
27 python3.6 0x000000010f7e07e8 _PyEval_EvalFrameDefault + 24616 (ceval.c:3323)
28 python3.6 0x000000010f7e4516 _PyEval_EvalCodeWithName + 2902 (ceval.c:753)
29 python3.6 0x000000010f7e4cab fast_function + 411 (ceval.c:4972)
30 python3.6 0x000000010f7e38e9 call_function + 553 (ceval.c:4845)
31 python3.6 0x000000010f7e07e8 _PyEval_EvalFrameDefault + 24616 (ceval.c:3323)
32 python3.6 0x000000010f7e4516 _PyEval_EvalCodeWithName + 2902 (ceval.c:753)
33 python3.6 0x000000010f7e509e _PyFunction_FastCallDict + 606 (ceval.c:5057)
34 python3.6 0x000000010f6fa1aa _PyObject_FastCallDict + 202 (abstract.c:2310)
35 python3.6 0x000000010f6fa35c _PyObject_Call_Prepend + 156 (abstract.c:2373)
36 python3.6 0x000000010f6f9fd5 PyObject_Call + 101
37 python3.6 0x000000010f768bde slot_tp_init + 158 (typeobject.c:6407)
38 python3.6 0x000000010f764ba4 type_call + 308 (typeobject.c:916)
39 python3.6 0x000000010f6fa27f _PyObject_FastCallDict + 415 (abstract.c:2331)
40 python3.6 0x000000010f7e3892 call_function + 466 (ceval.c:4848)
41 python3.6 0x000000010f7e07e8 _PyEval_EvalFrameDefault + 24616 (ceval.c:3323)
42 python3.6 0x000000010f7e4516 _PyEval_EvalCodeWithName + 2902 (ceval.c:753)
43 python3.6 0x000000010f7da777 PyEval_EvalCodeEx + 55 (ceval.c:4174)
44 python3.6 0x000000010f728755 function_call + 101 (funcobject.c:604)
45 python3.6 0x000000010f6f9fd5 PyObject_Call + 101
46 python3.6 0x000000010f718b3d property_descr_get + 93 (descrobject.c:1384)
47 python3.6 0x000000010f75343b _PyObject_GenericGetAttrWithDict + 171 (object.c:1060)
48 python3.6 0x000000010f767ee4 slot_tp_getattr_hook + 308 (typeobject.c:6264)
49 QtCore.so 0x000000011179887e qpycore_qmetaobject_connectslotsbyname(QObject*, _object*) + 222 (qpycore_qmetaobject_helpers.cpp:59)
50 QtCore.so 0x00000001116c96e5 meth_QMetaObject_connectSlotsByName(_object*, _object*) + 117 (qobjectdefs.sip:61)
51 python3.6 0x000000010f74fb66 _PyCFunction_FastCallDict + 166 (methodobject.c:234)
More information about the PyQt
mailing list