Summary: | Random assert message | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | acc4commissions |
Component: | General | Assignee: | Dmitry Kazakov <dimula73> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | dimula73 |
Priority: | NOR | ||
Version: | nightly build (please specify the git hash!) | ||
Target Milestone: | --- | ||
Platform: | Microsoft Windows | ||
OS: | Microsoft Windows | ||
Latest Commit: | https://invent.kde.org/kde/krita/commit/fdc983ada1e9aeb3bb81e4209f8f92c66038d492 | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | capture |
I was just drawing and nothing alse was going on in the canvas. Hi, acc4commissions! Do you remember, did you have any shape layers or transformation masks on your image? And was the image animated? Git commit ca2e423a9af4f5c1f4691ab3e5f86d5fee61938b by Dmitry Kazakov. Committed on 14/10/2019 at 14:45. Pushed by dkazakov into branch 'master'. Fix an assert when force-autosaving the image right during the stroke When we make a clone of a shape layer, we must ensure that no updates are initiated after cloning the image. We used to block updates at the level of KisShapeLayerCanvas, but it works only when we save/clone the image from the GUI thread. When we save it from the worker thread, KoShapeManager queues the event into the GUI events queue, so an update comes asynchronously. To resolve this issue, the patch moves locking from KisShapeLayerCanvas to KoShapeManager. We must ensure that there is no compressors nor queues between the adding code and blocking code. M +12 -0 libs/flake/KoShapeManager.cpp M +11 -0 libs/flake/KoShapeManager.h M +2 -0 libs/flake/KoShapeManager_p.h M +2 -2 libs/ui/flake/kis_shape_layer.cc M +1 -12 libs/ui/flake/kis_shape_layer_canvas.cpp M +0 -4 libs/ui/flake/kis_shape_layer_canvas.h https://invent.kde.org/kde/krita/commit/ca2e423a9af4f5c1f4691ab3e5f86d5fee61938b *** Bug 412747 has been marked as a duplicate of this bug. *** Git commit fdc983ada1e9aeb3bb81e4209f8f92c66038d492 by Dmitry Kazakov. Committed on 05/11/2019 at 17:18. Pushed by dkazakov into branch 'krita/4.2'. Fix an assert when force-autosaving the image right during the stroke When we make a clone of a shape layer, we must ensure that no updates are initiated after cloning the image. We used to block updates at the level of KisShapeLayerCanvas, but it works only when we save/clone the image from the GUI thread. When we save it from the worker thread, KoShapeManager queues the event into the GUI events queue, so an update comes asynchronously. To resolve this issue, the patch moves locking from KisShapeLayerCanvas to KoShapeManager. We must ensure that there is no compressors nor queues between the adding code and blocking code. M +12 -0 libs/flake/KoShapeManager.cpp M +11 -0 libs/flake/KoShapeManager.h M +2 -0 libs/flake/KoShapeManager_p.h M +2 -2 libs/ui/flake/kis_shape_layer.cc M +1 -12 libs/ui/flake/kis_shape_layer_canvas.cpp M +0 -4 libs/ui/flake/kis_shape_layer_canvas.h https://invent.kde.org/kde/krita/commit/fdc983ada1e9aeb3bb81e4209f8f92c66038d492 |
Created attachment 123141 [details] capture SUMMARY git 56ee905 Krita was autosaving when this poped up, but I'm not sure those are related. SOFTWARE/OS VERSIONS Windows: Win7 macOS: Linux/KDE Plasma: (available in About System) KDE Plasma Version: KDE Frameworks Version: Qt Version: ADDITIONAL INFORMATION