realthunder / FreeCAD

Link branch FreeCAD
Other
747 stars 46 forks source link

[Problem] Crash when making a Compound out of a Mesh #1012

Open ElementW opened 1 month ago

ElementW commented 1 month ago

Is there an existing issue for this?

Version

0.20 (Release)

Full version info

OS: Void Linux (KDE)
Word size of FreeCAD: 64-bit
Version: 2024.409.0.14555 (Git shallow) AppImage
Build type: Release
Branch: (HEAD detached at 20240407stable)
Hash: 973e4821bcd19a5a1af9ae3e1d2ed961aad0a8ab
Python 3.11.6, Qt 5.15.8, Coin 4.0.1, Vtk 9.2.5, OCC 7.7.1
Locale: English/United Kingdom (en_GB)
Installed mods: 
  * fasteners 0.5.20
  * OpenTheme 2024.5.3

Subproject(s) affected?

Part

Problem description

Creating a Compound out of a Mesh crashes FreeCAD. Vanilla FreeCAD simply fails to display anything as part of the created Compound. Tested with 20+ 3D print .stl files, behaviour is consistent.

Anything else?

Stack trace
#0  /usr/lib/libc.so.6(+0x3f8c0) [0x7f99052728c0]
#1  /usr/lib/libc.so.6(+0x15c599) [0x7f990538f599]
#2  0x7f990716aa2f in Data::IndexedName::set(char const*, int, std::vector > const&, bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0x4f
#3  0x7f9850716149 in Mesh::MeshObject::getSubElementAsMesh(char const*) const from /tmp/.mount_FreeCAR8rjf0/usr/lib/Mesh.so+0x39
#4  0x7f985071c1c7 in Mesh::Feature::getSubObject(char const*, _object**, Base::Matrix4D*, bool, int) const from /tmp/.mount_FreeCAR8rjf0/usr/lib/Mesh.so+0x97
#5  /tmp/.mount_FreeCAR8rjf0/usr/lib/Part.so(+0x2f4de4) [0x7f99000f4de4]
#6  0x7f99000f78c8 in Part::Feature::getTopoShape(App::DocumentObject const*, char const*, bool, Base::Matrix4D*, App::DocumentObject**, bool, bool, bool) from /tmp/.mount_FreeCAR8rjf0/usr/lib/Part.so+0x3f8
#7  0x7f99000d41b9 in Part::Compound::execute() from /tmp/.mount_FreeCAR8rjf0/usr/lib/Part.so+0x159
#8  0x7f9906ee4af2 in App::DocumentObject::recompute() from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0xc2
#9  0x7f99000f400c in Part::Feature::recompute() from /tmp/.mount_FreeCAR8rjf0/usr/lib/Part.so+0xc
#10  0x7f9906e5aa1c in App::Document::_recomputeFeature(App::DocumentObject*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0x24c
#11  0x7f9906eb833b in App::Document::recompute(std::vector > const&, bool, bool*, int) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0x66b
#12  0x7f9906f5cb80 in App::DocumentPy::recompute(_object*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0x2f0
#13  0x7f9906f5ccd6 in App::DocumentPy::staticCallback_recompute(_object*, _object*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADApp.so+0x56
#14  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(+0x2020d8) [0x7f99076020d8]
#15  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(_PyObject_MakeTpCall+0x25c) [0x7f99075e2cec]
#16  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(_PyEval_EvalFrameDefault+0x6f2) [0x7f99075ed3d2]
#17  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(+0x2a6e3d) [0x7f99076a6e3d]
#18  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(PyEval_EvalCode+0xa4) [0x7f99076a68b4]
#19  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(+0x2c5ae3) [0x7f99076c5ae3]
#20  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(+0x2c1c0a) [0x7f99076c1c0a]
#21  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libpython3.11.so.1.0(PyRun_StringFlags+0x69) [0x7f99076b5b09]
#22  0x7f990573c00c in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADBase.so+0x6c
#23  0x7f9908091714 in Gui::Command::_runCommand(char const*, int, Gui::Command::DoCmd_Type, char const*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x94
#24  0x7f99080918a3 in Gui::Command::_doCommand(char const*, int, Gui::Command::DoCmd_Type, char const*, ...) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0xe3
#25  0x7f99080919c4 in Gui::Command::updateActive() from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x44
#26  0x7f9807771888 in CmdPartCompound::activated(int) from /tmp/.mount_FreeCAR8rjf0/usr/lib/./PartGui.so+0x3f8
#27  0x7f990809dc3d in Gui::Command::_invoke(int, bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x33d
#28  0x7f990809dfb7 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x187
#29  0x7f990809e0d1 in Gui::GroupCommand::activated(int) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x11
#30  0x7f990809db37 in Gui::Command::_invoke(int, bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x237
#31  0x7f990809dfb7 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x187
#32  0x7f990804630c in Gui::ActionGroup::onToggled(bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x5c
#33  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5(+0x1dff9b) [0x7f9905bdff9b]
#34  0x7f990676516e in QAction::toggled(bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x32
#35  0x7f9906766b2e in QAction::setChecked(bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x76
#36  0x7f9906766bfe in QAction::activate(QAction::ActionEvent) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0xa4
#37  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5(+0x2036cb) [0x7f99068036cb]
#38  0x7f99068037a7 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x79
#39  0x7f990689c0d0 in QToolButton::mouseReleaseEvent(QMouseEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0xa
#40  0x7f9906794202 in QWidget::event(QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x134
#41  0x7f990676a087 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0xd9
#42  0x7f990676e36d in QApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x663
#43  0x7f99080115c9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x99
#44  0x7f9905bc2a18 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5+0x8e
#45  0x7f990676d981 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&, bool, bool) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0x283
#46  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5(+0x1a338d) [0x7f99067a338d]
#47  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5(+0x1a4505) [0x7f99067a4505]
#48  0x7f990676a087 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Widgets.so.5+0xd9
#49  0x7f99080115c9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x99
#50  0x7f9905bc2a18 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5+0x8e
#51  0x7f990610956e in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Gui.so.5+0x6b6
#52  0x7f99060f6091 in QWindowSystemInterface::sendWindowSystemEvents(QFlags) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Gui.so.5+0x57
#53  /tmp/.mount_FreeCAR8rjf0/usr/plugins/platforms/../../lib/libQt5XcbQpa.so.5(+0x5672c) [0x7f98fac9b72c]
#54  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/./libglib-2.0.so.0(+0x5a417) [0x7f9903f11417]
#55  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/./libglib-2.0.so.0(+0x5d3c7) [0x7f9903f143c7]
#56  /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/./libglib-2.0.so.0(g_main_context_iteration+0x2e) [0x7f9903f149be]
#57  0x7f9905bf3d50 in QEventDispatcherGlib::processEvents(QFlags) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5+0x5c
#58  0x7f9905bc05d8 in QEventLoop::exec(QFlags) from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5+0x180
#59  0x7f9905bc47af in QCoreApplication::exec() from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libQt5Core.so.5+0x107
#60  0x7f9907f739a6 in Gui::Application::runApplication() from /tmp/.mount_FreeCAR8rjf0/usr/bin/../lib/libFreeCADGui.so+0x4b6
#61  ./FreeCADLink(+0x87e6) [0x55e17daff7e6]
#62  /usr/lib/libc.so.6(+0x29c4c) [0x7f990525cc4c]
#63  /usr/lib/libc.so.6(__libc_start_main+0x85) [0x7f990525cd05]
#64  ./FreeCADLink(+0x8bad) [0x55e17daffbad]

Code of Conduct