Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SIGSEGV in isConstraintFiltered #1338

Open
Premik opened this issue Aug 25, 2024 · 3 comments
Open

SIGSEGV in isConstraintFiltered #1338

Premik opened this issue Aug 25, 2024 · 3 comments

Comments

@Premik
Copy link

Premik commented Aug 25, 2024

Steps to reproduce

  • Open the attached file Crash.zip
  • Edit the last Sketch006
  • Select the topmost Edge12 line.
  • Add h-length constrain for instance by pressing x

image

FC crashes with SIGSEGV.

Note changing a small thing like visibility of the SleeveScrew part or doing small edits prevents the crash or make it happend later. Sometimes it takes multiple tries to reproduce.

Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: Program received signal SIGSEGV, Segmentation fault.
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #0  /usr/lib/libc.so.6(+0x3d1d0) [0x7c14156691d0]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #1  0x7c134038299a in SketcherGui::TaskSketcherConstraints::isConstraintFiltered(QListWidgetItem*) from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x4a
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #2  0x7c1340388ac8 in SketcherGui::TaskSketcherConstraints::change3DViewVisibilityToTrackFilter() from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x118
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #3  0x7c134038c866 in SketcherGui::TaskSketcherConstraints::updateList() from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x66
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #4  0x7c134038caaa in SketcherGui::TaskSketcherConstraints::onSelectionChanged(Gui::SelectionChanges const&) from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x14a
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #5  0x7c1418b4b7a0 in Gui::SelectionObserver::_onSelectionChanged(Gui::SelectionChanges const&) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x30
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #6  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so(+0x90786d) [0x7c141870786d]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #7  0x7c1418b4b848 in Gui::SelectionSingleton::slotSelectionChanged(Gui::SelectionChanges const&) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x68
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #8  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so(+0x90786d) [0x7c141870786d]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #9  0x7c1418b4cd65 in Gui::SelectionSingleton::notify(Gui::SelectionChanges&&) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x465
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #10  0x7c1418b4df42 in Gui::SelectionSingleton::clearCompleteSelection(bool) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x372
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #11  0x7c1340395ba0 in SketcherGui::TaskSketcherElements::on_elementsWidget_itemSelectionChanged() from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x150
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #12  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1dfff5) [0x7c1415fdfff5]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #13  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5(+0x33836b) [0x7c1416d3836b]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #14  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1dfff5) [0x7c1415fdfff5]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #15  0x7c1415f9ac3a in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x2a
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #16  0x7c1415f9fd71 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x1c3
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #17  0x7c1415f9be23 in QItemSelectionModel::select(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x2f
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #18  0x7c1415f9ce3e in QItemSelectionModel::setCurrentIndex(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0xfa
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #19  0x7c1416cec1c3 in QAbstractItemView::setCurrentIndex(QModelIndex const&) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5+0x5d
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #20  0x7c1416d3796a in QTreeWidget::setCurrentItem(QTreeWidgetItem*, int) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5+0x2e
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #21  /tmp/.mount_FreeCAxWXykz/usr/lib/Sketcher.so(+0xed516) [0x7c13d50ed516]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #22  0x7c13d51142a6 in Sketcher::SketchObject::onChanged(App::Property const*) from /tmp/.mount_FreeCAxWXykz/usr/lib/Sketcher.so+0x3a6
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #23  0x7c1417465638 in App::Property::touch() from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADApp.so+0x1a8
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #24  0x7c13d510d606 in Sketcher::SketchObject::solve(bool) from /tmp/.mount_FreeCAxWXykz/usr/lib/Sketcher.so+0x4c6
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #25  0x7c13d51d2655 in Sketcher::SketchObjectPy::addConstraint(_object*) from /tmp/.mount_FreeCAxWXykz/usr/lib/Sketcher.so+0x305
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #26  0x7c13d51d2bb6 in Sketcher::SketchObjectPy::staticCallback_addConstraint(_object*, _object*) from /tmp/.mount_FreeCAxWXykz/usr/lib/Sketcher.so+0x56
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #27  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(+0x2020d8) [0x7c1417a020d8]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #28  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(_PyObject_MakeTpCall+0x25c) [0x7c14179e2cec]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #29  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(_PyEval_EvalFrameDefault+0x6f2) [0x7c14179ed3d2]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #30  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(+0x2a6e3d) [0x7c1417aa6e3d]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #31  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(PyEval_EvalCode+0xa4) [0x7c1417aa68b4]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #32  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(+0x2c5ae3) [0x7c1417ac5ae3]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #33  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(+0x2c1c0a) [0x7c1417ac1c0a]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #34  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libpython3.11.so.1.0(PyRun_StringFlags+0x69) [0x7c1417ab5b09]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #35  0x7c1415b3c00c in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADBase.so+0x6c
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #36  0x7c1418491714 in Gui::Command::_runCommand(char const*, int, Gui::Command::DoCmd_Type, char const*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x94
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #37  0x7c14184918a3 in Gui::Command::_doCommand(char const*, int, Gui::Command::DoCmd_Type, char const*, ...) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0xe3
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #38  0x7c134033a7a0 in void Gui::cmdAppObjectArgs<int&, int, int&, int, double&>(App::DocumentObject const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int&, int&&, int&, int&&, double&) from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x290
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #39  0x7c134034c0c2 in CmdSketcherConstrainDistanceX::activated(int) from /tmp/.mount_FreeCAxWXykz/usr/lib/SketcherGui.so+0x652
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #40  0x7c141849db37 in Gui::Command::_invoke(int, bool) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x237
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #41  0x7c141849dfb7 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x187
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #42  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1dff9b) [0x7c1415fdff9b]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #43  0x7c1416b65136 in QAction::triggered(bool) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5+0x32
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #44  0x7c1416b66c20 in QAction::activate(QAction::ActionEvent) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5+0xc6
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #45  0x7c1418500b08 in Gui::ShortcutManager::onTimer() from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x208
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #46  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1dff9b) [0x7c1415fdff9b]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #47  0x7c1415fe251a in QTimer::timeout(QTimer::QPrivateSignal) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x2a
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #48  0x7c1415fd9304 in QObject::event(QEvent*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x5a
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #49  0x7c1416b6a087 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Widgets.so.5+0xd9
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #50  0x7c14184115c9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x99
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #51  0x7c1415fc2a18 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x8e
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #52  0x7c1415ff34c0 in QTimerInfoList::activateTimers() from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x234
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #53  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1f3b62) [0x7c1415ff3b62]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #54  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5(+0x1f3b7d) [0x7c1415ff3b7d]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #55  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/./libglib-2.0.so.0(+0x5a417) [0x7c1414311417]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #56  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/./libglib-2.0.so.0(+0x5d3c7) [0x7c14143143c7]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #57  /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/./libglib-2.0.so.0(g_main_context_iteration+0x2e) [0x7c14143149be]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #58  0x7c1415ff3d50 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x5c
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #59  0x7c1415fc05d8 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x180
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #60  0x7c1415fc47af in QCoreApplication::exec() from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libQt5Core.so.5+0x107
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #61  0x7c14183739a6 in Gui::Application::runApplication() from /tmp/.mount_FreeCAxWXykz/usr/bin/../lib/libFreeCADGui.so+0x4b6
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #62  ./FreeCADLink(+0x87e6) [0x63d7092a77e6]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #63  /usr/lib/libc.so.6(+0x25e08) [0x7c1415651e08]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #64  /usr/lib/libc.so.6(__libc_start_main+0x8c) [0x7c1415651ecc]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: #65  ./FreeCADLink(+0x8bad) [0x63d7092a7bad]
Aug 25 06:31:32 r9 FreeCAD-Link-Stable-Linux-x86_64-py3.11-20240407.AppImage[12913]: FreeCAD 0.21.0, Libs: 2024.409.0R14555 (Git shallow)

OS: Arch Linux (KDE/plasmax11)
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 States (en_US)
@realthunder
Copy link
Owner

I can't seem to produce the problem. Do you mean by h-length the Horizontal Distance constraint? It's default shortcut is L. Could you please post your configuration here? Tools -> Edit parameters -> Export.

@Premik
Copy link
Author

Premik commented Aug 25, 2024

Do you mean by h-length the Horizontal Distance constraint?

Indeed. I forgot I've changed the shortcut.

Could you please post your configuration here?

BaseApp.FCParam.zip

Turned out this is actually more tricky to reproduce then I first thought. Today I found out it depends on the main window size and won't crash if the window is too small. At least of my setup:

1

Edit: Seems it is not much about the size. But if I change the size and then reload the file (or freshly start the app and open it) and then add the constraint in a short time it usually crashes. Also I've collapsed the Constraints panel on the left size. But can't say for sure if it is related.

@Premik
Copy link
Author

Premik commented Sep 8, 2024

I've managed to reproduce SegFault with the same stacktrace, but using a different file. So it is not related to anything specific to the file.

From what I remember, I was in the Sketcher and trying to make the Constrains view in the Tasks tab display associated constraints (which I failed to achieve). Then did some small changes in the sketch. And then I think I used undo and it crashed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants