1. Create a new document.
2. Switch to Draft workbench and select Top view
3. Add a horizontal draft line
4. Double click the created object in the tree view
5. Select the leftmost point of the line with mouse
6. Restrict change to just x coordinate with shift and move cursor to task dialog and select the "Local delta X" input
7. Enter a positive value that moves the endpoint a little bit to the right and hit return.
8. Observe that FreeCAD crashes. Stacktrace below. In fact, two stacktraces from two different attempts, with a small difference.
The problem cannot be reproduced by moving the line endpoint with mouse, you need to enter the delta X value to the dialog.
Stacktrace from one attempt:
Code: Select all
Program received signal SIGSEGV, Segmentation fault.
#0 /lib/x86_64-linux-gnu/libc.so.6(+0x43090) [0x151bd36fb090]
#1 0x151bd14da376 in QQmlData::isSignalConnected(QAbstractDeclarativeData*, QObject const*, int) from /lib/x86_64-linux-gnu/libQt5Qml.so.5+0x6
#2 0x151bd3d58a6e in QMetaObject::activate(QObject*, int, int, void**) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x6e
#3 0x151bd489ac8d in QWidgetLineControl::processKeyEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2cd
#4 0x151bd488d99f in QLineEdit::keyPressEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1f
#5 0x151bd7f5dfe2 in Gui::InputField::keyPressEvent(QKeyEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x382
#6 0x151bd478a77d in QWidget::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x74d
#7 0x151bd4893d32 in QLineEdit::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xb2
#8 0x151bd4747a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x86
#9 0x151bd475181e in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xa5e
#10 0x151bd794914a in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x112
#11 0x151bd3d2d80a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x18a
#12 /lib/x86_64-linux-gnu/libQt5Widgets.so.5(+0x1cc216) [0x151bd47a9216]
#13 0x151bd4747a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x86
#14 0x151bd47510f0 in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x330
#15 0x151bd794914a in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x112
#16 0x151bd3d2d80a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x18a
#17 0x151bd4114b2b in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x16b
#18 0x151bd411a0f1 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x241
#19 0x151bd40f435b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0xbb
#20 /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5(+0x7932e) [0x151bcd73f32e]
#21 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x27d) [0x151bd19d917d]
#22 /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x52400) [0x151bd19d9400]
#23 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x151bd19d94a3]
#24 0x151bd3d85435 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x65
#25 0x151bd3d2c3ab in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x12b
#26 0x151bd3d34116 in QCoreApplication::exec() from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x96
#27 0x151bd77f5956 in Gui::Application::runApplication() from /usr/local/freecad/lib/libFreeCADGui.so+0x28f2
#28 /usr/local/freecad/bin/FreeCAD(+0x12987) [0x55fccbdbe987]
#29 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x151bd36dc083]
#30 /usr/local/freecad/bin/FreeCAD(+0x11c2e) [0x55fccbdbdc2e]
Code: Select all
Program received signal SIGSEGV, Segmentation fault.
#0 /lib/x86_64-linux-gnu/libc.so.6(+0x43090) [0x151351a68090]
#1 0x1513520c5a32 in QMetaObject::activate(QObject*, int, int, void**) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x32
#2 0x151352c07c8d in QWidgetLineControl::processKeyEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2cd
#3 0x151352bfa99f in QLineEdit::keyPressEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1f
#4 0x1513562cafe2 in Gui::InputField::keyPressEvent(QKeyEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x382
#5 0x151352af777d in QWidget::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x74d
#6 0x151352c00d32 in QLineEdit::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xb2
#7 0x151352ab4a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x86
#8 0x151352abe81e in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xa5e
#9 0x151355cb614a in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x112
#10 0x15135209a80a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x18a
#11 /lib/x86_64-linux-gnu/libQt5Widgets.so.5(+0x1cc216) [0x151352b16216]
#12 0x151352ab4a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x86
#13 0x151352abe0f0 in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x330
#14 0x151355cb614a in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/local/freecad/lib/libFreeCADGui.so+0x112
#15 0x15135209a80a in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x18a
#16 0x151352481b2b in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x16b
#17 0x1513524870f1 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x241
#18 0x15135246135b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0xbb
#19 /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5(+0x7932e) [0x15134baac32e]
#20 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x27d) [0x15134fd4617d]
#21 /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x52400) [0x15134fd46400]
#22 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x15134fd464a3]
#23 0x1513520f2435 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x65
#24 0x1513520993ab in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x12b
#25 0x1513520a1116 in QCoreApplication::exec() from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x96
#26 0x151355b62956 in Gui::Application::runApplication() from /usr/local/freecad/lib/libFreeCADGui.so+0x28f2
#27 /usr/local/freecad/bin/FreeCAD(+0x12987) [0x55f99d5fd987]
#28 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x151351a49083]
#29 /usr/local/freecad/bin/FreeCAD(+0x11c2e) [0x55f99d5fcc2e]
Code: Select all
OS: Ubuntu 20.04.5 LTS (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: recent master, see hash
Build type: Debug
Branch: master
Hash: c6c1c46ca04edf5f923180acf05aeb5f7b0dca5f
Python 3.8.10, Qt 5.12.8, Coin 4.0.0, Vtk 7.1.1, OCC 7.3.0
Locale: English/United States (en_US)
Installed mods:
* 3DfindIT 1.2.0
* Render 2022.2.0
* BIM 2021.12.0
* Reinforcement
* Manipulator 1.4.9
* Assembly4.backup1662941442.2770898
* parts_library
* Assembly4 0.12.4
* fasteners 0.4.15
* dodo