[PyQt] I'm seeing some strange behaviour whenever I quit my PyQt5 application

Xavion xavion.0 at gmail.com
Tue Sep 6 06:56:20 BST 2016


Hi All,

I've just finished converting my PyQt4 application to PyQt5, and I keep
seeing the following error message whenever I *exit* it:

fish: “./App.pyw” terminated by signal SIGSEGV (Address boundary error)


This doesn't happen with the PyQt4 edition of the program, so I'm guessing
it's either due to a bug in Qt5 or PyQt5.

When I run the program via GDB, I get the following output.  The backtrace
is available in the first attachment.

Thread 1 "python" received signal SIGSEGV, Segmentation
fault.0x00007ffff5cf3643 in ?? () from /usr/lib/libQt5Core.so.5


It appeared to be related to the 'Breeze' style, so I installed qt5ct
<https://sourceforge.net/projects/qt5ct/> and switched to 'Fusion'.  When I
then ran my program (again via GDB), the output and backtrace were entirely
different.

Thread 2 "Qt bearer threa" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffea52b700 (LWP 22844)]
0x00007fffe98cbbe5 in QDBusMetaType::typeToSignature(int) () from
/usr/lib/libQt5DBus.so.5


I'm on Arch Linux, by the way.  I'm using Python v3.5.2-1, Qt v5.7.0-2, and
PyQt v5.7-2.  All are packages installed from the [extra] repository.

With all of this in mind, is anyone able to pinpoint the nature of the
problem(s)?  If so, is it the sort of thing that'd be easy enough to fix in
time for the next (Py)Qt5 release?


-- 
Regards, Xavion.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20160906/12fe4c36/attachment-0001.html>
-------------- next part --------------
#0  0x00007ffff5cf3643 in ?? () from /usr/lib/libQt5Core.so.5
#1  0x00007ffff5cf2d9b in QPropertyAnimation::updateState(QAbstractAnimation::State, QAbstractAnimation::State) () from /usr/lib/libQt5Core.so.5
#2  0x00007ffff5ceb179 in QAbstractAnimation::stop() () from /usr/lib/libQt5Core.so.5
#3  0x00007ffff5cf1a97 in QPropertyAnimation::~QPropertyAnimation() () from /usr/lib/libQt5Core.so.5
#4  0x00007fffd1156343 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#5  0x00007ffff5f1cc51 in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#6  0x00007ffff5f264ff in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#7  0x00007fffd11572c3 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#8  0x00007ffff5f1cc51 in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#9  0x00007ffff5f264ff in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#10 0x00007fffd1157cd9 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#11 0x00007ffff5f1cc51 in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#12 0x00007ffff5f264ff in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#13 0x00007fffd1157800 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#14 0x00007ffff5f1cc51 in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#15 0x00007ffff5f264ff in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#16 0x00007fffd1135769 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#17 0x00007ffff5f1e85e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#18 0x00007ffff5f1eeaf in QObject::destroyed(QObject*) () from /usr/lib/libQt5Core.so.5
#19 0x00007ffff5f25fa5 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#20 0x00007fffd11493e7 in ?? () from /usr/lib/qt/plugins/styles/breeze.so
#21 0x00007ffff5ee8329 in ?? () from /usr/lib/libQt5Core.so.5
#22 0x00007ffff5ede1a2 in ?? () from /usr/lib/libQt5Core.so.5
#23 0x00007ffff5ede2c9 in ?? () from /usr/lib/libQt5Core.so.5
#24 0x00007ffff5f26547 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#25 0x00007ffff5edd6fe in QFactoryLoader::~QFactoryLoader() () from /usr/lib/libQt5Core.so.5
#26 0x00007ffff0989be9 in ?? () from /usr/lib/libQt5Widgets.so.5
#27 0x00007ffff7181990 in __run_exit_handlers () from /usr/lib/libc.so.6
#28 0x00007ffff71819ea in exit () from /usr/lib/libc.so.6
#29 0x00007ffff784c86f in Py_Exit () from /usr/lib/libpython3.5m.so.1.0
#30 0x00007ffff784f5a8 in ?? () from /usr/lib/libpython3.5m.so.1.0
#31 0x00007ffff784f98d in PyErr_PrintEx () from /usr/lib/libpython3.5m.so.1.0
#32 0x00007ffff657c0c1 in ?? () from /usr/lib/python3.5/site-packages/PyQt5/QtCore.so
#33 0x00007ffff657340d in ?? () from /usr/lib/python3.5/site-packages/PyQt5/QtCore.so
#34 0x00007ffff6573dd7 in ?? () from /usr/lib/python3.5/site-packages/PyQt5/QtCore.so
#35 0x00007ffff5f1f349 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#36 0x00007ffff0919e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#37 0x00007ffff09215b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#38 0x00007ffff126eefe in ?? () from /usr/lib/python3.5/site-packages/PyQt5/QtWidgets.so
#39 0x00007ffff5ef2c80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#40 0x00007ffff5ef53fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#41 0x00007ffff5f47173 in ?? () from /usr/lib/libQt5Core.so.5
#42 0x00007ffff497de67 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#43 0x00007ffff497e0d0 in ?? () from /usr/lib/libglib-2.0.so.0
#44 0x00007ffff497e17c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#45 0x00007ffff5f4757f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#46 0x00007ffff5ef10da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#47 0x00007ffff5ef95cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#48 0x00007ffff126d7eb in ?? () from /usr/lib/python3.5/site-packages/PyQt5/QtWidgets.so
#49 0x00007ffff77b68a9 in PyCFunction_Call () from /usr/lib/libpython3.5m.so.1.0
#50 0x00007ffff782e47b in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#51 0x00007ffff782f2c3 in ?? () from /usr/lib/libpython3.5m.so.1.0
#52 0x00007ffff782f3a3 in PyEval_EvalCodeEx () from /usr/lib/libpython3.5m.so.1.0
#53 0x00007ffff782f3cb in PyEval_EvalCode () from /usr/lib/libpython3.5m.so.1.0
#54 0x00007ffff782363d in ?? () from /usr/lib/libpython3.5m.so.1.0
#55 0x00007ffff77b68a9 in PyCFunction_Call () from /usr/lib/libpython3.5m.so.1.0
#56 0x00007ffff782d71f in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#57 0x00007ffff782f2c3 in ?? () from /usr/lib/libpython3.5m.so.1.0
#58 0x00007ffff782bb0e in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#59 0x00007ffff782e64a in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#60 0x00007ffff782e64a in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#61 0x00007ffff782e64a in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#62 0x00007ffff782f2c3 in ?? () from /usr/lib/libpython3.5m.so.1.0
#63 0x00007ffff782f3a3 in PyEval_EvalCodeEx () from /usr/lib/libpython3.5m.so.1.0
#64 0x00007ffff779a008 in ?? () from /usr/lib/libpython3.5m.so.1.0
#65 0x00007ffff776f2d7 in PyObject_Call () from /usr/lib/libpython3.5m.so.1.0
#66 0x00007ffff776fd74 in _PyObject_CallMethodIdObjArgs () from /usr/lib/libpython3.5m.so.1.0
#67 0x00007ffff78430bd in PyImport_ImportModuleLevelObject () from /usr/lib/libpython3.5m.so.1.0
#68 0x00007ffff7821ec8 in ?? () from /usr/lib/libpython3.5m.so.1.0
#69 0x00007ffff77b68c9 in PyCFunction_Call () from /usr/lib/libpython3.5m.so.1.0
#70 0x00007ffff776f2d7 in PyObject_Call () from /usr/lib/libpython3.5m.so.1.0
#71 0x00007ffff7825a87 in PyEval_CallObjectWithKeywords () from /usr/lib/libpython3.5m.so.1.0
#72 0x00007ffff782a851 in PyEval_EvalFrameEx () from /usr/lib/libpython3.5m.so.1.0
#73 0x00007ffff782f2c3 in ?? () from /usr/lib/libpython3.5m.so.1.0
#74 0x00007ffff782f3a3 in PyEval_EvalCodeEx () from /usr/lib/libpython3.5m.so.1.0
#75 0x00007ffff782f3cb in PyEval_EvalCode () from /usr/lib/libpython3.5m.so.1.0
#76 0x00007ffff784e364 in ?? () from /usr/lib/libpython3.5m.so.1.0
#77 0x00007ffff78508e5 in PyRun_FileExFlags () from /usr/lib/libpython3.5m.so.1.0
#78 0x00007ffff7850a55 in PyRun_SimpleFileExFlags () from /usr/lib/libpython3.5m.so.1.0
#79 0x00007ffff786769c in Py_Main () from /usr/lib/libpython3.5m.so.1.0
#80 0x0000000000400af0 in main ()
-------------- next part --------------
#0  0x00007fffe98cbbe5 in QDBusMetaType::typeToSignature(int) () from /usr/lib/libQt5DBus.so.5
#1  0x00007fffe98c2774 in qDBusParametersForMethod(QList<QByteArray> const&, QVector<int>&, QString&) () from /usr/lib/libQt5DBus.so.5
#2  0x00007fffe98c2d4b in ?? () from /usr/lib/libQt5DBus.so.5
#3  0x00007fffe988795e in ?? () from /usr/lib/libQt5DBus.so.5
#4  0x00007fffe98881c5 in ?? () from /usr/lib/libQt5DBus.so.5
#5  0x00007fffe9888c54 in ?? () from /usr/lib/libQt5DBus.so.5
#6  0x00007fffe989afc3 in ?? () from /usr/lib/libQt5DBus.so.5
#7  0x00007ffff5f1f349 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007ffff5ef2c6b in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#9  0x00007ffff5ef53fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#10 0x00007ffff5f47173 in ?? () from /usr/lib/libQt5Core.so.5
#11 0x00007ffff497de67 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#12 0x00007ffff497e0d0 in ?? () from /usr/lib/libglib-2.0.so.0
#13 0x00007ffff497e17c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#14 0x00007ffff5f4757f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#15 0x00007ffff5ef10da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#16 0x00007ffff5d140f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#17 0x00007ffff5d18d78 in ?? () from /usr/lib/libQt5Core.so.5
#18 0x00007ffff74f1454 in start_thread () from /usr/lib/libpthread.so.0
#19 0x00007ffff72347df in clone () from /usr/lib/libc.so.6


More information about the PyQt mailing list