this might be a bug in the qt library version 5.15.2+kde294-5.2 from the OpenSuse tumbleweed repository, but I don't know.
I have a project which is heavily configurable via a spreadsheet. For now I found two parameters which altered will crash FreeCAD. At least most of the time. Astonishingly while I tried to get the second backtrace it one time worked and just produced this output:
Code: Select all
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
1. one:
Code: Select all
Thread 1 "FreeCAD" received signal SIGBUS, Bus error.
QObject::installEventFilter (this=0x5b7a870, obj=0x53816e0) at kernel/qobject.cpp:2221
2221 if (d->threadData != obj->d_func()->threadData) {
(gdb) bt
#0 QObject::installEventFilter(QObject*) (this=0x5b7a870, obj=0x53816e0) at kernel/qobject.cpp:2221
#1 0x00007ffff2f036aa in QAbstractItemView::commitData(QWidget*) (this=<optimized out>, editor=0x5b7a870)
at itemviews/qabstractitemview.cpp:2909
#2 0x00007ffed67662a1 in SpreadsheetGui::SheetTableView::commitData(QWidget*) (this=0x2602bc0, editor=0x5b7a870)
at /home/system/usr/FreeCAD/src/src/Mod/Spreadsheet/Gui/SheetTableView.cpp:478
#3 0x00007ffed676aad5 in SpreadsheetGui::SheetTableView::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
(_o=0x2602bc0, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fffffffb180)
at /home/system/usr/FreeCAD/bin/build/src/Mod/Spreadsheet/Gui/SpreadsheetGui_autogen/include/moc_SheetTableView.cpp:272
#4 0x00007ffff2115488 in doActivate<false>(QObject*, int, void**) (sender=0x53816e0, signal_index=3, argv=0x7fffffffb180)
at kernel/qobject.cpp:3898
#5 0x00007ffff210e7af in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
(sender=sender@entry=0x53816e0, m=m@entry=0x7ffff31c8da0 <QAbstractItemDelegate::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffb180) at kernel/qobject.cpp:3946
#6 0x00007ffff2f2143f in QAbstractItemDelegate::commitData(QWidget*) (this=this@entry=0x53816e0, _t1=<optimized out>, _t1@entry=0x5b7a870)
at .moc/moc_qabstractitemdelegate.cpp:205
#7 0x00007ffff2f21fda in QAbstractItemDelegatePrivate::_q_commitDataAndCloseEditor(QWidget*) (editor=0x5b7a870, this=<optimized out>)
at itemviews/qabstractitemdelegate.cpp:634
#8 QAbstractItemDelegate::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
(_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qabstractitemdelegate.cpp:100
#9 0x00007ffff210b28e in QObject::event(QEvent*) (this=0x53816e0, e=0xd13520) at kernel/qobject.cpp:1314
#10 0x00007ffff2c8fb0f in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x53816e0, e=0xd13520)
at kernel/qapplication.cpp:3632
#11 0x00007ffff6aaf3ce in Gui::GUIApplication::notify(QObject*, QEvent*) (this=0x7fffffffc1d0, receiver=0x53816e0, event=0xd13520)
at /home/system/usr/FreeCAD/src/src/Gui/GuiApplication.cpp:84
#12 0x00007ffff20deb5a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x53816e0, event=0xd13520)
at kernel/qcoreapplication.cpp:1064
#13 0x00007ffff20e1b97 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x684880)
at kernel/qcoreapplication.cpp:1821
#14 0x00007ffff2136c33 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=s@entry=0x801db0) at kernel/qeventdispatcher_glib.cpp:277
#15 0x00007ffff08ca122 in g_main_dispatch (context=0x7fffe4005010) at ../glib/gmain.c:3417
#16 g_main_context_dispatch (context=0x7fffe4005010) at ../glib/gmain.c:4135
#17 0x00007ffff08ca4b8 in g_main_context_iterate
--Type <RET> for more, q to quit, c to continue without paging--
(context=context@entry=0x7fffe4005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4211
#18 0x00007ffff08ca56f in g_main_context_iteration (context=0x7fffe4005010, may_block=1) at ../glib/gmain.c:4276
#19 0x00007ffff21362b4 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x80d6d0, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#20 0x00007ffff20dd55b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffb7b0, flags=..., flags@entry=...)
at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#21 0x00007ffff20e5820 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#22 0x00007ffff695d8ef in Gui::Application::runApplication() () at /home/system/usr/FreeCAD/src/src/Gui/Application.cpp:2277
#23 0x000000000040c43f in main(int, char**) (argc=3, argv=0x7fffffffd408) at /home/system/usr/FreeCAD/src/src/Main/MainGui.cpp:290
(gdb) q
Code: Select all
Thread 1 "FreeCAD" received signal SIGSEGV, Segmentation fault.
QObject::installEventFilter (this=0x45bbb40, obj=0x23947850) at kernel/qobject.cpp:2221
2221 if (d->threadData != obj->d_func()->threadData) {
(gdb) bt
#0 QObject::installEventFilter(QObject*) (this=0x45bbb40, obj=0x23947850) at kernel/qobject.cpp:2221
#1 0x00007ffff2f036aa in QAbstractItemView::commitData(QWidget*) (this=<optimized out>, editor=0x45bbb40)
at itemviews/qabstractitemview.cpp:2909
#2 0x00007ffedab072a1 in SpreadsheetGui::SheetTableView::commitData(QWidget*) (this=0x2208f970, editor=0x45bbb40)
at /home/system/usr/FreeCAD/src/src/Mod/Spreadsheet/Gui/SheetTableView.cpp:478
#3 0x00007ffedab0bad5 in SpreadsheetGui::SheetTableView::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
(_o=0x2208f970, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fffffffb180)
at /home/system/usr/FreeCAD/bin/build/src/Mod/Spreadsheet/Gui/SpreadsheetGui_autogen/include/moc_SheetTableView.cpp:272
#4 0x00007ffff2115488 in doActivate<false>(QObject*, int, void**) (sender=0x23947850, signal_index=3, argv=0x7fffffffb180)
at kernel/qobject.cpp:3898
#5 0x00007ffff210e7af in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
(sender=sender@entry=0x23947850, m=m@entry=0x7ffff31c8da0 <QAbstractItemDelegate::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffb180) at kernel/qobject.cpp:3946
#6 0x00007ffff2f2143f in QAbstractItemDelegate::commitData(QWidget*) (this=this@entry=0x23947850, _t1=<optimized out>, _t1@entry=0x45bbb40)
at .moc/moc_qabstractitemdelegate.cpp:205
#7 0x00007ffff2f21fda in QAbstractItemDelegatePrivate::_q_commitDataAndCloseEditor(QWidget*) (editor=0x45bbb40, this=<optimized out>)
at itemviews/qabstractitemdelegate.cpp:634
#8 QAbstractItemDelegate::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)
(_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qabstractitemdelegate.cpp:100
#9 0x00007ffff210b28e in QObject::event(QEvent*) (this=0x23947850, e=0x212b5970) at kernel/qobject.cpp:1314
#10 0x00007ffff2c8fb0f in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x23947850, e=0x212b5970)
at kernel/qapplication.cpp:3632
#11 0x00007ffff6aaf3ce in Gui::GUIApplication::notify(QObject*, QEvent*) (this=0x7fffffffc1d0, receiver=0x23947850, event=0x212b5970)
at /home/system/usr/FreeCAD/src/src/Gui/GuiApplication.cpp:84
#12 0x00007ffff20deb5a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x23947850, event=0x212b5970)
at kernel/qcoreapplication.cpp:1064
#13 0x00007ffff20e1b97 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x6995e0)
at kernel/qcoreapplication.cpp:1821
#14 0x00007ffff2136c33 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=s@entry=0x8011b0) at kernel/qeventdispatcher_glib.cpp:277
#15 0x00007ffff08ca122 in g_main_dispatch (context=0x7fffe4005010) at ../glib/gmain.c:3417
#16 g_main_context_dispatch (context=0x7fffe4005010) at ../glib/gmain.c:4135
#17 0x00007ffff08ca4b8 in g_main_context_iterate
--Type <RET> for more, q to quit, c to continue without paging--
(context=context@entry=0x7fffe4005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4211
#18 0x00007ffff08ca56f in g_main_context_iteration (context=0x7fffe4005010, may_block=1) at ../glib/gmain.c:4276
#19 0x00007ffff21362b4 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x80c990, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#20 0x00007ffff20dd55b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffb7b0, flags=..., flags@entry=...)
at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#21 0x00007ffff20e5820 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#22 0x00007ffff695d8ef in Gui::Application::runApplication() () at /home/system/usr/FreeCAD/src/src/Gui/Application.cpp:2277
#23 0x000000000040c43f in main(int, char**) (argc=3, argv=0x7fffffffd408) at /home/system/usr/FreeCAD/src/src/Main/MainGui.cpp:290
(gdb)
Code: Select all
OS: openSUSE Tumbleweed (KDE//usr/share/xsessions/plasma5)
Word size of FreeCAD: 64-bit
Version: 0.20.28809 (Git)
Build type: Release
Branch: master
Hash: c960622b3d67c635534603c6c1453df1ec8b9e02
Python 3.8.13, Qt 5.15.2, Coin 4.0.0, OCC 7.6.1
Locale: German/Germany (de_DE)
Installed mods:
* 3DfindIT 1.2.0
* AirPlaneDesign 0.4.0
* BIM 2021.12.0
* BOLTSFC
* Beltrami 1.0.6-alpha
* CADExchanger
* CommandPanel
* CubeMenu
* CurvedShapes 1.0.3
* Curves 0.4.2
* Defeaturing
* Design456
* DesignSPHysics 0.6.1-2201-31-01
* DynamicData 2.46.0
* EM
* ExplodedAssembly
* FEM_FrontISTR 0.1.0
* GDML 1.8.0
* IconThemes
* ImportNURBS
* InventorLoader 1.3.0
* LCInterlocking
* Lithophane
* MakerWorkbench
* OSE3dPrinter
* dodo
* fcgear 1.0.0
* frame
* lattice2 1.0.0
* nurbs
* ose-piping
* parts_library
* pcb
* Autoload
* POV-Ray-Rendering
* Pyramids-and-Polyhedrons
* pyrate
* ose-workbench-core-master
* Glass
* Help 1.0.0-alpha
* MeshRemodel 1.8919.0
* Reinforcement 0.1.0
* OpticsWorkbench 0.1.0
* Plot 0.1.0
* MnesarcoUtils 0.1.0
* Manipulator 0.1.0
* Assembly4 0.1.0
* fasteners 0.3.40
* Marz 0.3.40
Thank you for your work,
Frank