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

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

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

1 participant