https://bugs.kde.org/show_bug.cgi?id=457915

            Bug ID: 457915
           Summary: Reproducible crash after Undoing twice in a new window
           Product: kolourpaint
           Version: 22.04.3
          Platform: Archlinux Packages
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: kolourpaint-supp...@lists.sourceforge.net
          Reporter: marc00...@hotmail.com
  Target Milestone: ---

SUMMARY
Reproducible crash after Undoing twice in a new window

STEPS TO REPRODUCE
1. Copy any image to the clipboard
2. Open kolourpaint
3. Paste the image using Edit -> Paste in New Window (or Ctrl + Shift + V)
4. Use the text tool and draw a text area in the image
5. Undo (Ctrl + Z)
6. Use the text tool and draw a text area in the image (again)
7. Undo (Ctrl + Z)


OBSERVED RESULT
Application crashes. Stack trace:
#0  0x00005555555be943 in  ()
#1  0x00005555555bf761 in  ()
#2  0x00005555555ac61c in  ()
#3  0x00005555555abe64 in  ()
#4  0x00005555555ac4f0 in  ()
#5  0x00007ffff64bd341 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7fffffffdcc0, r=<optimized out>, this=0x555555ed7ce0, this=<optimized
out>, r=<optimized out>, a=<optimized out>) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#6  doActivate<false>(QObject*, int, void**) (sender=0x555555ebe920,
signal_index=4, argv=0x7fffffffdcc0) at kernel/qobject.cpp:3886
#7  0x00007ffff716bec7 in QAction::triggered(bool)
(this=this@entry=0x555555ebe920, _t1=<optimized out>) at
.moc/moc_qaction.cpp:376
#8  0x00007ffff71718e7 in QAction::activate(QAction::ActionEvent)
(this=0x555555ebe920, event=<optimized out>) at kernel/qaction.cpp:1161
#9  0x00007ffff71719ae in QAction::event(QEvent*) (e=<optimized out>,
this=<optimized out>) at kernel/qaction.cpp:1086
#10 QAction::event(QEvent*) (this=<optimized out>, e=<optimized out>) at
kernel/qaction.cpp:1075
#11 0x00007ffff7178b3c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x555555ebe920, e=0x7fffffffde50) at
kernel/qapplication.cpp:3637
#12 0x00007ffff648cad8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x555555ebe920, event=0x7fffffffde50) at
kernel/qcoreapplication.cpp:1064
#13 0x00007ffff69740cd in QShortcutMap::dispatchEvent(QKeyEvent*)
(this=<optimized out>, e=<optimized out>) at kernel/qshortcutmap.cpp:675
#14 0x00007ffff696a947 in QShortcutMap::tryShortcut(QKeyEvent*)
(this=0x5555556a9f28, e=0x7fffffffdf10) at kernel/qshortcutmap.cpp:343
#15 0x00007ffff692a0e8 in QWindowSystemInterface::handleShortcutEvent(QWindow*,
unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int,
unsigned int, QString const&, bool, unsigned short) (window=<optimized out>,
timestamp=18214209, keyCode=90, modifiers=..., nativeScanCode=52,
nativeVirtualKey=122, nativeModifiers=20, text=..., autorepeat=false, count=1)
at kernel/qwindowsysteminterface.cpp:477
#16 0x00007ffff693f9e2 in
QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*)
(e=0x555555e93a40) at kernel/qguiapplication.cpp:2395
#17 0x00007ffff6928935 in
QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#18 0x00007ffff1130a30 in xcbSourceDispatch(GSource*, GSourceFunc, gpointer)
(source=<optimized out>) at
/usr/src/debug/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105
#19 0x00007ffff4b18c6b in g_main_dispatch (context=0x7fffec005010) at
../glib/glib/gmain.c:3417
#20 g_main_context_dispatch (context=0x7fffec005010) at
../glib/glib/gmain.c:4135
#21 0x00007ffff4b6f001 in g_main_context_iterate.constprop.0
(context=context@entry=0x7fffec005010, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4211
#22 0x00007ffff4b16392 in g_main_context_iteration (context=0x7fffec005010,
may_block=1) at ../glib/glib/gmain.c:4276
#23 0x00007ffff64d732c in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x5555557d9670, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#24 0x00007ffff648527c in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffffffe2c0,
flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#25 0x00007ffff648fda9 in QCoreApplication::exec() () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#26 0x0000555555595072 in  ()
#27 0x00007ffff5c3c2d0 in __libc_start_call_main
(main=main@entry=0x555555594520, argc=argc@entry=1,
argv=argv@entry=0x7fffffffe518) at ../sysdeps/nptl/libc_start_call_main.h:58
#28 0x00007ffff5c3c38a in __libc_start_main_impl (main=0x555555594520, argc=1,
argv=0x7fffffffe518, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7fffffffe508) at ../csu/libc-start.c:381
#29 0x0000555555595525 in  ()


EXPECTED RESULT
No crash.

SOFTWARE/OS VERSIONS
Linux: 5.18.16-arch1-1
Kolourpaint version: 22.04.3
KDE Frameworks Version: 5.96.0
Qt Version: 5.15.5

ADDITIONAL INFORMATION
Bug is very easy to reproduce in less than a minute. I can attach a coredump if
needed.
The problem can only be reproduced when pasting to a new window and does not
happen when using only the main window.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to