Ondsel-Development / FreeCAD

This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler.
https://www.freecad.org
Other
192 stars 9 forks source link

Crash when opening sketch after editing sketch wich was referenced using shape binder #100

Open pagdot opened 5 months ago

pagdot commented 5 months ago

Is there an existing issue for this?

Problem description

Crash (sigsev) when opening a certain sketch in sketcher

Crash log:

Traceback (most recent call last):
  File "<string>", line 8, in <module>
FileNotFoundError: [Errno 2] No such file or directory: '/lsiopy/bin/activate_this.py'
QStandardPaths: wrong permissions on runtime directory /config/.XDG, 0755 instead of 0700
<Exception> TopoShapeExpansion.cpp(2062): Shape index 11 out of bound 10
Program received signal SIGSEGV, Segmentation fault.
#0  /lib/x86_64-linux-gnu/libc.so.6(+0x3c050) [0x7f5d64ae7050]
#1  0x7f5cd1fc6c43 in SketcherGui::EditModeGeometryCoinManager::updateGeometryColor(Sketcher::GeoListModel<std::unique_ptr<Sketcher::GeometryFacade const, std::default_delete<Sketcher::GeometryFacade const> > > const&, bool) from /app/usr/lib/SketcherGui.so+0x193
#2  0x7f5cd1fbdb0b in SketcherGui::EditModeCoinManager::updateColor(Sketcher::GeoListModel<std::unique_ptr<Sketcher::GeometryFacade const, std::default_delete<Sketcher::GeometryFacade const> > > const&) from /app/usr/lib/SketcherGui.so+0x3b
#3  0x7f5cd1fbdba4 in SketcherGui::EditModeCoinManager::updateColor() from /app/usr/lib/SketcherGui.so+0x34
#4  0x7f5cd1fe81dd in SketcherGui::ViewProviderSketch::onSelectionChanged(Gui::SelectionChanges const&) from /app/usr/lib/SketcherGui.so+0x27d
#5  0x7f5d67a742cc in Gui::SelectionObserver::_onSelectionChanged(Gui::SelectionChanges const&) from /app/usr/bin/../lib/libFreeCADGui.so+0x2c
#6  /app/usr/bin/../lib/libFreeCADGui.so(+0x74e757) [0x7f5d67762757]
#7  0x7f5d67a75d87 in Gui::SelectionSingleton::slotSelectionChanged(Gui::SelectionChanges const&) from /app/usr/bin/../lib/libFreeCADGui.so+0x1e7
#8  /app/usr/bin/../lib/libFreeCADGui.so(+0x74e757) [0x7f5d67762757]
#9  0x7f5d67a76003 in Gui::SelectionSingleton::notify(Gui::SelectionChanges&&) from /app/usr/bin/../lib/libFreeCADGui.so+0x83
#10  0x7f5d67a76929 in Gui::SelectionSingleton::rmvPreselect(bool) from /app/usr/bin/../lib/libFreeCADGui.so+0x4f9
#11  0x7f5d67a76bd2 in Gui::SelectionSingleton::setPreselect(char const*, char const*, char const*, float, float, float, Gui::SelectionChanges::MsgSource) from /app/usr/bin/../lib/libFreeCADGui.so+0xa2
#12  0x7f5d677f89e1 in Gui::SoFCUnifiedSelection::setHighlight(SoFullPath*, SoDetail const*, Gui::ViewProviderDocumentObject*, char const*, float, float, float) from /app/usr/bin/../lib/libFreeCADGui.so+0x231
#13  0x7f5d677ffd7f in Gui::SoFCUnifiedSelection::handleEvent(SoHandleEventAction*) from /app/usr/bin/../lib/libFreeCADGui.so+0x1ff
#14  0x7f5d64487e48 in SoAction::traverse(SoNode*) from /app/usr/bin/../lib/./libCoin.so.80+0x68
#15  0x7f5d64641cba in SoChildList::traverse(SoAction*, int, int) from /app/usr/bin/../lib/./libCoin.so.80+0x15a
#16  0x7f5d64691cd8 in SoGroup::doAction(SoAction*) from /app/usr/bin/../lib/./libCoin.so.80+0x58
#17  0x7f5d646acf7a in SoSeparator::doAction(SoAction*) from /app/usr/bin/../lib/./libCoin.so.80+0x2a
#18  0x7f5d64487e48 in SoAction::traverse(SoNode*) from /app/usr/bin/../lib/./libCoin.so.80+0x68
#19  0x7f5d64491a3c in SoHandleEventAction::beginTraversal(SoNode*) from /app/usr/bin/../lib/./libCoin.so.80+0xac
#20  0x7f5d64488b2a in SoAction::apply(SoNode*) from /app/usr/bin/../lib/./libCoin.so.80+0x2ea
#21  0x7f5d6465ddc2 in SoEventManager::actuallyProcessEvent(SoEvent const*) from /app/usr/bin/../lib/./libCoin.so.80+0x72
#22  0x7f5d678a1bee in SIM::Coin3D::Quarter::QuarterWidget::processSoEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x1e
#23  0x7f5d678a9648 in SIM::Coin3D::Quarter::SoQTQuarterAdaptor::processSoEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x58
#24  0x7f5d678b083d in Gui::NavigationStyle::processSoEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x2d
#25  0x7f5d678b7e5b in Gui::RevitNavigationStyle::processSoEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x3db
#26  0x7f5d678b4115 in Gui::NavigationStyle::processEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x65
#27  0x7f5d678dd0ab in Gui::View3DInventorViewer::processSoEvent(SoEvent const*) from /app/usr/bin/../lib/libFreeCADGui.so+0x6b
#28  0x7f5d6789d20d in SIM::Coin3D::Quarter::EventFilter::eventFilter(QObject*, QEvent*) from /app/usr/bin/../lib/libFreeCADGui.so+0x14d
#29  0x7f5d651488bb in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Core.so.5+0x7b
#30  0x7f5d65c7539e in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Widgets.so.5+0x6e
#31  0x7f5d65c7c8f9 in QApplication::notify(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Widgets.so.5+0xa39
#32  0x7f5d675332e9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /app/usr/bin/../lib/libFreeCADGui.so+0x99
#33  0x7f5d65148b28 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Core.so.5+0x108
#34  0x7f5d65c7b3eb in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) from /app/usr/bin/../lib/libQt5Widgets.so.5+0x1ab
#35  /app/usr/bin/../lib/libQt5Widgets.so.5(+0x1c6e6f) [0x7f5d65ccbe6f]
#36  /app/usr/bin/../lib/libQt5Widgets.so.5(+0x1ca0c9) [0x7f5d65ccf0c9]
#37  0x7f5d65c753ae in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Widgets.so.5+0x7e
#38  0x7f5d675332e9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /app/usr/bin/../lib/libFreeCADGui.so+0x99
#39  0x7f5d65148b28 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /app/usr/bin/../lib/libQt5Core.so.5+0x108
#40  0x7f5d655d53ec in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) from /app/usr/bin/../lib/libQt5Gui.so.5+0x84c
#41  0x7f5d655ab0bc in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /app/usr/bin/../lib/libQt5Gui.so.5+0xac
#42  /app/usr/plugins/platforms/../../lib/libQt5XcbQpa.so.5(+0x64bea) [0x7f5d4f3f2bea]
#43  /app/usr/bin/../lib/./libglib-2.0.so.0(+0x5bad7) [0x7f5d61191ad7]
#44  /app/usr/bin/../lib/./libglib-2.0.so.0(+0x5eac7) [0x7f5d61194ac7]
#45  /app/usr/bin/../lib/./libglib-2.0.so.0(g_main_context_iteration+0x2e) [0x7f5d611950ce]
#46  0x7f5d6519ca36 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /app/usr/bin/../lib/libQt5Core.so.5+0x66
#47  0x7f5d6514770b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /app/usr/bin/../lib/libQt5Core.so.5+0x11b
#48  0x7f5d6514f212 in QCoreApplication::exec() from /app/usr/bin/../lib/libQt5Core.so.5+0x82
#49  0x7f5d6749d50d in Gui::Application::runApplication() from /app/usr/bin/../lib/libFreeCADGui.so+0xd8d
#50  /app/usr/bin/ondsel-es(+0x75c5) [0x56390560c5c5]
#51  /lib/x86_64-linux-gnu/libc.so.6(+0x2724a) [0x7f5d64ad224a]
#52  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x85) [0x7f5d64ad2305]
#53  /app/usr/bin/ondsel-es(+0x789d) [0x56390560c89d]

File: http://s.pagdot.at/u/GQk6M2.FCStd

To Reproduce:

  1. Open File in Ondsel
  2. Open Sketch in Slice.0 -> Slice -> Body001 -> Pad001 -> Sketch001
  3. Crash

Just some additional Info:

Full version info

OS: Debian GNU/Linux 12 (bookworm)
Word size of Ondsel: 64-bit
Version: 2024.2.0.37191 (Git)
Build type: Release
Branch: (HEAD detached at 2024.2.0)
Hash: 2ad5fb327d068ae6280cf702d528b3a6e35770a7
Python 3.11.9, Qt 5.15.13, Coin 4.0.2, Vtk 9.2.6, OCC 7.7.2
Locale: English/United States (en_US)
Installed mods: 
  * Ondsel-Lens 2024.5.6.01
  * Assembly4 0.50.8
  * Silk 0.1.5
  * Curves 0.6.38

Subproject(s) affected?

Sketcher

Anything else?

No response

Code of Conduct

pagdot commented 5 months ago

Managed to reproduce this with another model too :/

http://s.pagdot.at/u/tunWcS.FCStd

Open the sketch in Pipe -> Revolution002 -> Sketch010