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

Dmitry Kazakov <dimul...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|https://invent.kde.org/grap |https://invent.kde.org/grap
                   |hics/krita/-/commit/8ad47b9 |hics/krita/-/commit/d8e8822
                   |7f2ae9fd1ba7c0b8946409adfdd |bac32005536a934c0cdb2917cc2
                   |9ddf57                      |aca8f2

--- Comment #14 from Dmitry Kazakov <dimul...@gmail.com> ---
Git commit d8e8822bac32005536a934c0cdb2917cc2aca8f2 by Dmitry Kazakov.
Committed on 29/09/2023 at 09:34.
Pushed by dkazakov into branch 'krita/5.2'.

Fix a crash after removing a vector layer with active selection of shapes

Steps to reproduce:

0) set undo limit to 10 steps;
1) add a vector layer;
2) add a lot of shapes/text to that;
3) select some of these shapes
4) remove the vector layer;
5) do 10 brush strokes to make sure the vector layer
   is pushed out of the history;

The problem happened in the following way:

1) On destruction of the layer, KoSelection::deselect() was called
2) This deselect() call triggered a start of the QTimer
3) The timer itself was destroyed in the non-gui thread (in an
   active state), as was warned by Qt
4) The timer event was delivered to the destroyed timer, which
   caused a crash.


(cherry picked from commit 8ad47b97f2ae9fd1ba7c0b8946409adfdd9ddf57)

M  +4    -4    libs/flake/KoSelection.cpp
M  +8    -3    libs/flake/KoSelection_p.h
M  +3    -3    libs/flake/KoShapeManager.cpp
M  +3    -2    libs/flake/KoShapeManager_p.h

https://invent.kde.org/graphics/krita/-/commit/d8e8822bac32005536a934c0cdb2917cc2aca8f2

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

Reply via email to