View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0017652 | Scribus | General | public | 2025-10-16 14:27 | 2025-10-16 17:06 |
Reporter | qirat | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | Linux | OS | Fedora | OS Version | 42 Workstation |
Product Version | 1.7.1.svn | ||||
Summary | 0017652: Deleting nodes using Delete key causes crash | ||||
Description | Scribus crashes when deleting a node from a path using the Delete key on the keyboard (KB). | ||||
Steps To Reproduce | 1. New doc -> and get the Bezier pen 2. Draw a path (preferably 3 nodes) 3. Get into the path edit mode 4. Drag-select a node (using mouse) and press the Delete key on the KB. 5. Try: moving the path (maybe 2, 3 times), adding a new node to the same path etc. This results in a crash with Signal-11. | ||||
Additional Information | Moreover, @ale (finally) confirmed this issue in the matrix group chat. It is worth noticing/mentioning that it is only when you use the "Delete key" on your keyboard that Scribus crashes. Using the "Delete Nodes" tool from the "Nodes" panel that comes up in the edit mode does not cause the crash. Things work fine. The issue is reproducible (for me) on: 1. Fedora 42 (Wayland) 2. LMDE 7 (X11) 3. Windows 10. | ||||
Tags | nodes | ||||
Patch | No | ||||
|
Here is a backtrace:bt * thread 0000001, name = 'scribus', stop reason = signal SIGSEGV: address not mapped to object (fault address=0x60) * frame #0: 0x000055a47720cc84 scribus`std::vector<UndoState*, std::allocator<UndoState*>>::push_back(this=size=0, __x=0x00007ffeaa6feda8) at stl_vector.h:1285:20 frame 0000001: 0x000055a47720c0bb scribus`TransactionState::pushBack(this=0x0000000000000000, target=0x000055a47ce5d8b0, state=0x000055a47ebf13e0) at undostate.cpp:285:21 frame 0000002: 0x000055a4771f57dd scribus`UndoManager::action(this=0x000055a47c6a1500, target=0x000055a47ce5d8b0, state=0x000055a47ebf13e0, targetPixmap=0x0000000000000000) at undomanager.cpp:358:52 frame 0000003: 0x000055a47720f3f2 scribus`UndoTransaction::commit(this=0x000055a47fbe67f0) at undotransaction.cpp:142:15 frame 0000004: 0x000055a4771a3ac1 scribus`ScribusView::endGroupTransaction(this=0x000055a47fbe6690) at scribusview.cpp:1898:28 frame 0000005: 0x000055a476b72a9d scribus`CanvasMode_Normal::mouseReleaseEvent(this=0x000055a47fb6f700, m=0x00007ffeaa6ff7e0) at canvasmode_normal.cpp:1220:30 frame 0000006: 0x000055a4771ac953 scribus`ScribusView::eventFilter(this=0x000055a47fbe6690, obj=0x000055a47fbfab40, event=0x00007ffeaa6ff7e0) at scribusview.cpp:3330:34 frame 0000007: 0x00007f3da0595e5a libQt6Core.so.6`QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) + 218 frame 0000008: 0x00007f3da15b49a5 libQt6Widgets.so.6`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 117 frame 0000009: 0x00007f3da15b8c96 libQt6Widgets.so.6`QApplication::notify(QObject*, QEvent*) + 4102 frame 0000010: 0x00007f3da05965b0 libQt6Core.so.6`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 352 frame 0000011: 0x00007f3da15aeb9e libQt6Widgets.so.6`QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) + 478 frame 0000012: 0x00007f3da161ad0d libQt6Widgets.so.6`___lldb_unnamed_symbol18200 + 1229 frame 0000013: 0x00007f3da161e148 libQt6Widgets.so.6`___lldb_unnamed_symbol18221 + 760 frame 0000014: 0x00007f3da15b49b5 libQt6Widgets.so.6`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 133 frame 0000015: 0x00007f3da05965b0 libQt6Core.so.6`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 352 frame 0000016: 0x00007f3da0bdfbc5 libQt6Gui.so.6`QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) + 949 frame 0000017: 0x00007f3da0c3945c libQt6Gui.so.6`QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 172 frame 0000018: 0x00007f3d9bc433be libQt6XcbQpa.so.6`___lldb_unnamed_symbol2793 + 30 frame 0000019: 0x00007f3d9fcdd385 libglib-2.0.so.0`___lldb_unnamed_symbol2624 + 389 frame 0000020: 0x00007f3d9fcdf5b7 libglib-2.0.so.0`___lldb_unnamed_symbol2630 + 839 frame 0000021: 0x00007f3d9fcdfd20 libglib-2.0.so.0`g_main_context_iteration + 48 frame 0000022: 0x00007f3da07a6323 libQt6Core.so.6`QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 115 frame 0000023: 0x00007f3da0598893 libQt6Core.so.6`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 707 frame 0000024: 0x00007f3da059a18a libQt6Core.so.6`QCoreApplication::exec() + 170 frame 0000025: 0x000055a476a3052a scribus`mainApp(argc=1, argv=0x00007ffeaa700398) at main_nix.cpp:100:18 frame 0000026: 0x000055a476a302af scribus`main(argc=1, argv=0x00007ffeaa700398) at main_nix.cpp:52:16 frame 0000027: 0x00007f3d9fe33ca8 libc.so.6`__libc_start_call_main(main=(scribus`main at main_nix.cpp:51:1), argc=1, argv=0x00007ffeaa700398) at libc_start_call_main.h:58:16 frame 0000028: 0x00007f3d9fe33d65 libc.so.6`__libc_start_main_impl(main=(scribus`main at main_nix.cpp:51:1), argc=1, argv=0x00007ffeaa700398, init=<unavailable>, fini=<unavailable>, rtld_fini=<unavailable>, stack_end=0x00007ffeaa700388) at libc-start.c:360:3 frame 0000029: 0x000055a47698c9d1 scribus`_start + 33 |