Skip to content
New issue

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

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

Already on GitHub? # to your account

program crashes when deleting a line in the sketch #103

Closed
tiket18 opened this issue Feb 12, 2021 · 1 comment
Closed

program crashes when deleting a line in the sketch #103

tiket18 opened this issue Feb 12, 2021 · 1 comment

Comments

@tiket18
Copy link

tiket18 commented Feb 12, 2021

The problem exists in builds older than freecad-linkstage3-git-asm3.0.11.r4124.gd7b79274aa-1.

The file is in the mail. In Sketch004 delete circle = crash.

Program received signal SIGSEGV, Segmentation fault.
#0 /usr/lib/libc.so.6(+0x3d6a0) [0x7f0b198a66a0]
#1 0x7f0b1427caf7 in Part::Geometry::clone() const from /usr/lib/freecad/lib/Part.so+0x7
#2 0x7f0b1412aab9 in Part::PropertyGeometryList::setValues(std::vector<Part::Geometry*, std::allocatorPart::Geometry* > const&) from /usr/lib/freecad/lib/Part.so+0x229
#3 0x7f0acb49b467 in Sketcher::SketchObject::delGeometriesExclusiveList(std::vector<int, std::allocator > const&) from /usr/lib/freecad/lib/Sketcher.so+0x4a7
#4 0x7f0acb49b9ce in Sketcher::SketchObject::delGeometries(std::vector<int, std::allocator > const&) from /usr/lib/freecad/lib/Sketcher.so+0x2be
#5 0x7f0acb5476c7 in Sketcher::SketchObjectPy::delGeometries(_object*) from /usr/lib/freecad/lib/Sketcher.so+0x287
#6 0x7f0acb547cd7 in Sketcher::SketchObjectPy::staticCallback_delGeometries(_object*, _object*) from /usr/lib/freecad/lib/Sketcher.so+0x57
#7 /usr/lib/libpython3.8.so.1.0(PyCFunction_Call+0x19a) [0x7f0b1b0168fa]
#8 /usr/lib/libpython3.8.so.1.0(_PyObject_MakeTpCall+0x464) [0x7f0b1b0094d4]
#9 /usr/lib/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x50e8) [0x7f0b1b004da8]
#10 /usr/lib/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x304) [0x7f0b1affe9a4]
#11 /usr/lib/libpython3.8.so.1.0(PyEval_EvalCode+0x23) [0x7f0b1b0aef03]
#12 /usr/lib/libpython3.8.so.1.0(+0x1d8868) [0x7f0b1b0ba868]
#13 /usr/lib/libpython3.8.so.1.0(+0x1d2a43) [0x7f0b1b0b4a43]
#14 /usr/lib/libpython3.8.so.1.0(PyRun_StringFlags+0x7d) [0x7f0b1b0b18ad]
#15 0x7f0b1b3c5dac in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /usr/lib/freecad/lib/libFreeCADBase.so+0x6c
#16 0x7f0b1c153956 in Gui::Command::_runCommand(char const*, int, Gui::Command::DoCmd_Type, char const*) from /usr/lib/freecad/lib/libFreeCADGui.so+0x96
#17 0x7f0b1c153ad6 in Gui::Command::_doCommand(char const*, int, Gui::Command::DoCmd_Type, char const*, ...) from /usr/lib/freecad/lib/libFreeCADGui.so+0xe6
#18 0x7f0acb6e1cad in void Gui::cmdAppObjectArgs<char const*>(App::DocumentObject const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char const*&&) from /usr/lib/freecad/lib/SketcherGui.so+0x19d
#19 0x7f0acb7bcb8c in SketcherGui::ViewProviderSketch::onDelete(std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&) from /usr/lib/freecad/lib/SketcherGui.so+0xebc
#20 0x7f0acb7a8e6a in SketcherGui::ViewProviderSketch::deleteSelected() from /usr/lib/freecad/lib/SketcherGui.so+0x16a
#21 0x7f0acb7a3518 in SketcherGui::ShortcutListener::eventFilter(QObject*, QEvent*) from /usr/lib/freecad/lib/SketcherGui.so+0x58
#22 0x7f0b19ede7e3 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) from /usr/lib/libQt5Core.so.5+0x93
#23 0x7f0b1a9a8741 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /usr/lib/libQt5Widgets.so.5+0x71
#24 0x7f0b1a9afdb8 in QApplication::notify(QObject*, QEvent*) from /usr/lib/libQt5Widgets.so.5+0x9e8
#25 0x7f0b1c1056a9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib/freecad/lib/libFreeCADGui.so+0x89
#26 0x7f0b19edea7a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /usr/lib/libQt5Core.so.5+0x12a
#27 /usr/lib/libQt5Widgets.so.5(+0x1b769a) [0x7f0b1aa0569a]
#28 0x7f0b1a9a8752 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /usr/lib/libQt5Widgets.so.5+0x82
#29 0x7f0b1c1056a9 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib/freecad/lib/libFreeCADGui.so+0x89
#30 0x7f0b19edea7a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /usr/lib/libQt5Core.so.5+0x12a
#31 0x7f0b1a2b6474 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /usr/lib/libQt5Gui.so.5+0x164
#32 0x7f0b1a2900b6 in bool QWindowSystemInterfacePrivate::handleWindowSystemEventQWindowSystemInterface::SynchronousDelivery(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /usr/lib/libQt5Gui.so.5+0x46
#33 0x7f0b1a293265 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlagsQt::KeyboardModifier, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) from /usr/lib/libQt5Gui.so.5+0x145
#34 0x7f0b1a2b639c in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /usr/lib/libQt5Gui.so.5+0x8c
#35 0x7f0b1a28fbb5 in QWindowSystemInterface::sendWindowSystemEvents(QFlagsQEventLoop::ProcessEventsFlag) from /usr/lib/libQt5Gui.so.5+0xb5
#36 /usr/lib/libQt5XcbQpa.so.5(+0x5f16c) [0x7f0b1025f16c]
#37 /usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x184) [0x7f0b17c00914]
#38 /usr/lib/libglib-2.0.so.0(+0xa67d1) [0x7f0b17c547d1]
#39 /usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x31) [0x7f0b17bff121]
#40 0x7f0b19f376e1 in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) from /usr/lib/libQt5Core.so.5+0x61
#41 0x7f0b19edd3fc in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) from /usr/lib/libQt5Core.so.5+0x12c
#42 0x7f0b19ee5894 in QCoreApplication::exec() from /usr/lib/libQt5Core.so.5+0x94
#43 0x7f0b1c0597a3 in Gui::Application::runApplication() from /usr/lib/freecad/lib/libFreeCADGui.so+0x413
#44 freecad(+0x4620) [0x560c9d972620]
#45 /usr/lib/libc.so.6(__libc_start_main+0xf2) [0x7f0b19891152]
#46 freecad(+0x492e) [0x560c9d97292e]
Снимок экрана от 2021-02-12 15-21-59

realthunder added a commit that referenced this issue Feb 13, 2021
One example of call stacks that may lead to crash is
* delGeometires()
* delGeometiresExclusiveList(): copy geometries without clone
* delConstraintOnPoint()
* constraintsRemoved()
* touches ExpressionEngine
* onChanged() ExpressionEngine
* solve() : updates geometry with clone which invalidates the previous
            copy of geometries

This commit will not trigger solve on touch of ExpressionEngine if it
is a managed operation

Related #103
@tiket18
Copy link
Author

tiket18 commented Feb 13, 2021

Thank you, the question is closed
freecad-linkstage3-git-asm3.0.11.r4485.gac2bbad287-1

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

No branches or pull requests

1 participant