Bug 458115

Summary: Trying to Copy Vector Layers from one Project into another - will cause a Crash (100% Repro)
Product: [Applications] krita Reporter: JJ <farfetchedjj>
Component: Tools/VectorAssignee: Dmitry Kazakov <dimula73>
Status: RESOLVED FIXED    
Severity: crash CC: blackword_2001, bohdankornienko, dimula73, leroyriel, lynx.mw+kde, penguinflyer2222, qampidh, raincolee, shzam, ten.maxine, yockeyjim
Priority: NOR    
Version: 5.1.0-RC1   
Target Milestone: ---   
Platform: Other   
OS: Microsoft Windows   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description JJ 2022-08-20 20:44:26 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1a) Have a project open that has Vector Layers - Mine was a group of 2 layers
(For this project I was using a 2000px by 2000px canvas at 100ppi) 
2a) New > Make a new project to Import the vectors onto a new canvas 
(For this project I used 1200px by 1500px canvas at 100ppi) 

3. Take a Vector Layers from Project 1 - And Copy the Layer 
4. On Project 2 - Hit Paste Layer 
5. On Project 2 - Try to Move the imported Vector Layer, or use as normal it in the current project 
Current Result: 100% Repro - Krita will Crash 

OBSERVED RESULT
Krita will crash 

EXPECTED RESULT
Krita would not crash. 
Users can import vectors and use them in the new project. 

SOFTWARE/OS VERSIONS
Windows: 10
Krita ver 5.1.0 

ADDITIONAL INFORMATION
Similar Issue: Marked as Fixed 
https://bugs.kde.org/show_bug.cgi?id=456450

I was not able to copy the stack trace - currently trying to record the crash to view against the repro steps.
Comment 1 Freya Lupen 2022-08-21 16:05:08 UTC
I can reproduce this by simply creating a Vector Layer and trying to copy/paste it in the same image, in both 5.1.0 and recent 5.2.x.
Detailed backtrace from my 5.2.x build, looks like pasting expects an xyresolution and crashes because there isn't one:

libkritaimage.dll!KisImage::xRes+0x0
libkritaui.dll!KisMimeData::initializeExternalNode+0xa4  [C:/mysrcdir/libs/ui/kis_mimedata.cpp @ 216]
   214:         KisShapeLayer *shapeLayer2 = new KisShapeLayer(*shapeLayer, shapeController);
   215: 
>  216:         if (!qFuzzyCompare(dstImage->xRes(), srcImage->xRes()) ||
   217:             !qFuzzyCompare(dstImage->yRes(), srcImage->yRes())) {
   218: 
libkritaui.dll!KisMimeData::tryLoadInternalNodes+0x806  [C:/mysrcdir/libs/ui/kis_mimedata.cpp @ 284]
   282:                 KisLayerUtils::addCopyOfNameTag(node);
   283:             }
>  284:             initializeExternalNode(&node, sourceImage, image, shapeController);
   285:             clones << node;
   286:         }
libkritaui.dll!KisMimeData::loadNodesFast+0x45  [C:/mysrcdir/libs/ui/kis_mimedata.cpp @ 409]
   407: {
   408:     QList<KisNodeSP> nodes =
>  409:         KisMimeData::tryLoadInternalNodes(data,
   410:                                           image,
   411:                                           shapeController,
libkritaui.dll!KisMimeData::insertMimeLayers+0x63  [C:/mysrcdir/libs/ui/kis_mimedata.cpp @ 451]
   449:                                    QPointF offset)
   450: {
>  451:     QList<KisNodeSP> nodes = loadNodesFast(data, image, shapeController, copyNode /* IN-OUT */);
   452: 
   453:     if (changeOffset) {
libkritaui.dll!KisNodeManager::pasteLayersFromClipboard+0x1ed  [C:/mysrcdir/libs/ui/kis_node_manager.cpp @ 1492]
  1490:     KisNodeDummy *aboveThisDummy = parentDummy ? parentDummy->lastChild() : 0;
  1491: 
> 1492:     KisMimeData::insertMimeLayers(data,
  1493:                                   image,
  1494:                                   shapeController,
libkritaui.dll!KisPasteActionFactory::run+0x151c  [C:/mysrcdir/libs/ui/actions/KisPasteActionFactories.cpp @ 239]
   237:             }
   238:         }();
>  239:         view->nodeManager()->pasteLayersFromClipboard(pasteAtCursorPosition,
   240:                                                       offsetTopLeft);
   241:         return;
libkritaui.dll!KisSelectionManager::paste+0x76  [C:/mysrcdir/libs/ui/kis_selection_manager.cc @ 359]
   357: {
   358:     KisPasteActionFactory factory;
>  359:     factory.run(false, m_view);
   360: }
   361:
Comment 2 sh_zam 2022-08-22 08:54:49 UTC
Since Dmitry is on a break, let me take this.
Comment 3 sh_zam 2022-08-22 10:37:55 UTC
Git commit 44c4f74a273b1f6c0b99f56a0f96342fd81b2c47 by Sharaf Zaman.
Committed on 22/08/2022 at 10:35.
Pushed by szaman into branch 'master'.

Fix nullptr crash: srcImage may not exist when deep-copying layers

M  +3    -2    libs/ui/kis_mimedata.cpp

https://invent.kde.org/graphics/krita/commit/44c4f74a273b1f6c0b99f56a0f96342fd81b2c47
Comment 4 Freya Lupen 2022-08-22 14:32:15 UTC
*** Bug 458172 has been marked as a duplicate of this bug. ***
Comment 5 Freya Lupen 2022-08-25 03:17:26 UTC
*** Bug 458276 has been marked as a duplicate of this bug. ***
Comment 6 amyspark 2022-08-25 14:30:00 UTC
Git commit 39a56110b50dc1246e76e891ac575ba8e9c613b5 by L. E. Segovia, on behalf of Sharaf Zaman.
Committed on 25/08/2022 at 14:29.
Pushed by lsegovia into branch 'krita/5.1'.

Fix nullptr crash: srcImage may not exist when deep-copying layers
(cherry picked from commit 44c4f74a273b1f6c0b99f56a0f96342fd81b2c47)

M  +3    -2    libs/ui/kis_mimedata.cpp

https://invent.kde.org/graphics/krita/commit/39a56110b50dc1246e76e891ac575ba8e9c613b5
Comment 7 Freya Lupen 2022-08-25 14:35:10 UTC
*** Bug 458301 has been marked as a duplicate of this bug. ***
Comment 8 Freya Lupen 2022-08-30 13:07:15 UTC
*** Bug 458502 has been marked as a duplicate of this bug. ***
Comment 9 Freya Lupen 2022-09-04 13:24:17 UTC
*** Bug 458691 has been marked as a duplicate of this bug. ***
Comment 10 Freya Lupen 2022-09-04 19:30:16 UTC
*** Bug 458706 has been marked as a duplicate of this bug. ***
Comment 11 fermic17 2022-09-05 05:11:53 UTC
Created attachment 151821 [details]
New crash information added by DrKonqi

krita (5.1.0) using Qt 5.15.5

Using default config :

I opened 2 files : a svg file and any kra file, go into svg tab and do Ctrl+C on the vector layer then go into other tab then finally do Ctrl+V. Krita crashes.

I joined backtrace with it.

-- Backtrace (Reduced):
#4  0x00007f2eb9cd4564 in KisImage::xRes() const () from /usr/lib/libkritaimage.so.18
#5  0x00007f2eba3e7126 in KisMimeData::initializeExternalNode(KisSharedPtr<KisNode>*, KisSharedPtr<KisImage>, KisSharedPtr<KisImage>, KisShapeController*) () from /usr/lib/libkritaui.so.18
#6  0x00007f2eba3e751d in KisMimeData::tryLoadInternalNodes(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, bool&) () from /usr/lib/libkritaui.so.18
#7  0x00007f2eba3ed7cb in KisMimeData::loadNodesFast(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, bool&) () from /usr/lib/libkritaui.so.18
#8  0x00007f2eba3ee30c in KisMimeData::insertMimeLayers(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, KisNodeDummy*, KisNodeDummy*, bool, KisNodeInsertionAdapter*, bool, QPointF) () from /usr/lib/libkritaui.so.18
Comment 12 Lynx3d 2022-09-12 09:25:37 UTC
I'm afraid I have to reopen this bug, pasting a vector layer still crashes 100% for me on master (4ec1dd783197f4eda48a3867666483920f210e68).
Doesn't matter if same document, other document or even inkscape, Krita will crash.

Application: Krita (krita), signal: Aborted

[KCrash Handler]
#4  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140021918066816) at ./nptl/pthread_kill.c:44
#5  __pthread_kill_internal (signo=6, threadid=140021918066816) at ./nptl/pthread_kill.c:78
#6  __GI___pthread_kill (threadid=140021918066816, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#7  0x00007f5969f1e476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#8  0x00007f5969f047f3 in __GI_abort () at ./stdlib/abort.c:79
#9  0x00007f596a3e2bff in  () at /opt/qt515-kde/lib/libQt5Core.so.5
#10 0x00007f596a3e1ff0 in qt_assert_x(char const*, char const*, char const*, int) () at /opt/qt515-kde/lib/libQt5Core.so.5
#11 0x00007f596c35baa5 in KisImageViewConverter::KisImageViewConverter(KisWeakSharedPtr<KisImage>) (this=this@entry=0x562ae8735990, image=...) at (...)/libs/ui/kis_image_view_converter.cpp:15
#12 0x00007f596c59eba8 in KisShapeLayerCanvasBase::KisShapeLayerCanvasBase(KisShapeLayer*, KisWeakSharedPtr<KisImage>) (this=0x562ada403520, parent=0x562adcd21f70, image=...) at (...)/libs/ui/flake/kis_shape_layer_canvas.cpp:40
#13 0x00007f596c5a1b34 in KisShapeLayerCanvas::KisShapeLayerCanvas(KisShapeLayer*, KisWeakSharedPtr<KisImage>) (this=0x562ada403520, parent=0x562adcd21f70, image=...) at (...)/libs/ui/flake/kis_shape_layer_canvas.cpp:163
#14 0x00007f596c5946d2 in KisShapeLayer::initShapeLayerImpl(KoShapeControllerBase*, KisSharedPtr<KisPaintDevice>, KisShapeLayerCanvasBase*) (this=0x562adcd21f70, controller=0x562ad2cf2658, newProjectionDevice=..., overrideCanvas=<optimized out>) at (...)/libs/ui/flake/kis_shape_layer.cc:281
#15 0x00007f596c594c1e in KisShapeLayer::KisShapeLayer(KisShapeLayer const&, KoShapeControllerBase*, KisShapeLayerCanvasBase*) (this=0x562adcd21f70, _rhs=..., controller=0x562ad2cf2658, canvas=0x0) at (...)/libs/ui/flake/kis_shape_layer.cc:146
#16 0x00007f596c4785e7 in KisShapeLayer::clone() const (this=0x562adc5f5ad0) at (...)/libs/ui/flake/kis_shape_layer.h:72
#17 0x00007f596c64f1ba in (anonymous namespace)::safeCopyNode (detachClones=<optimized out>, node=...) at (...)/libs/ui/kis_mimedata.cpp:50
#18 KisMimeData::tryLoadInternalNodes(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, bool&) (data=<optimized out>, image=..., shapeController=0x562ad2cf2640, copyNode=@0x7ffe8b50d4cc: false) at (...)/libs/ui/kis_mimedata.cpp:281
#19 0x00007f596c6519cf in KisMimeData::loadNodesFast(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, bool&) (data=0x562ad4dab5a0, image=..., shapeController=<optimized out>, copyNode=@0x7ffe8b50d4cc: false) at (...)/libs/ui/kis_mimedata.cpp:412
#20 0x00007f596c653326 in KisMimeData::insertMimeLayers(QMimeData const*, KisSharedPtr<KisImage>, KisShapeController*, KisNodeDummy*, KisNodeDummy*, bool, KisNodeInsertionAdapter*, bool, QPointF) (data=data@entry=0x562ad4dab5a0, image=..., shapeController=shapeController@entry=0x562ad2cf2640, parentDummy=<optimized out>, parentDummy@entry=0x562ad521b300, aboveThisDummy=<optimized out>, aboveThisDummy@entry=0x0, copyNode=<optimized out>, copyNode@entry=false, nodeInsertionAdapter=0x562ad0c46c00, changeOffset=false, offset=...) at (...)/libs/ui/kis_mimedata.cpp:451
#21 0x00007f596c662a0c in KisNodeManager::pasteLayersFromClipboard(bool, QPointF) (this=<optimized out>, changeOffset=<optimized out>, offset=...) at (...)/libs/ui/kis_node_manager.cpp:1492
#22 0x00007f596a6443b8 in  () at /opt/qt515-kde/lib/libQt5Core.so.5
#23 0x00007f596b146c76 in QAction::triggered(bool) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#24 0x00007f596b14998c in QAction::activate(QAction::ActionEvent) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#25 0x00007f596b2d58d2 in  () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#26 0x00007f596b2dd4a9 in  () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#27 0x00007f596b1908be in QWidget::event(QEvent*) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#28 0x00007f596b14d7a3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#29 0x00007f596b1553e4 in QApplication::notify(QObject*, QEvent*) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#30 0x00007f596c9cf775 in KisApplication::notify(QObject*, QEvent*) (this=0x7ffe8b50e690, receiver=0x562ae0979bf0, event=0x7ffe8b50ddd0) at (...)/libs/ui/KisApplication.cpp:757
#31 0x00007f596a60c78a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /opt/qt515-kde/lib/libQt5Core.so.5
#32 0x00007f596b153ec7 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#33 0x00007f596b1aac53 in  () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#34 0x00007f596b1ad3e5 in  () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#35 0x00007f596b14d7a3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /opt/qt515-kde/lib/libQt5Widgets.so.5
#36 0x00007f596c9cf775 in KisApplication::notify(QObject*, QEvent*) (this=0x7ffe8b50e690, receiver=0x7f595c00d1b0, event=0x7ffe8b50e130) at (...)/libs/ui/KisApplication.cpp:757
#37 0x00007f596a60c78a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /opt/qt515-kde/lib/libQt5Core.so.5
#38 0x00007f596aa32ac7 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /opt/qt515-kde/lib/libQt5Gui.so.5
#39 0x00007f596aa06acc in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/lib/libQt5Gui.so.5
#40 0x00007f5964402fde in  () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#41 0x00007f5967a65d1b in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#42 0x00007f5967aba6f8 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007f5967a633c3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007f596a665ca8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/lib/libQt5Core.so.5
#45 0x00007f596a60b0ab in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/lib/libQt5Core.so.5
#46 0x00007f596a613644 in QCoreApplication::exec() () at /opt/qt515-kde/lib/libQt5Core.so.5
#47 0x0000562acd7307c1 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at (...)/krita/main.cc:727
[Inferior 1 (process 23366) detached]
Comment 13 sh_zam 2022-09-13 07:35:15 UTC
(In reply to Lynx3d from comment #12)
> I'm afraid I have to reopen this bug, pasting a vector layer still crashes
> 100% for me on master (4ec1dd783197f4eda48a3867666483920f210e68).
> Doesn't matter if same document, other document or even inkscape, Krita will
> crash.

Can you paste the backtrace you get when trying to paste from inkscape? I believe they should differ from this one.
Comment 14 Yu-Hsuan Lai 2022-09-13 10:32:59 UTC
I can confirm this bug happens to me too. 5.1.0
Comment 15 Lynx3d 2022-09-14 08:53:27 UTC
sh_zam, it is shorter, but the part after KisShapeLayer::clone() looks identical at first sight:

Application: Krita (krita), signal: Aborted

[KCrash Handler]
#4  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140095856425088) at ./nptl/pthread_kill.c:44
#5  __pthread_kill_internal (signo=6, threadid=140095856425088) at ./nptl/pthread_kill.c:78
#6  __GI___pthread_kill (threadid=140095856425088, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#7  0x00007f6aa103b476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#8  0x00007f6aa10217f3 in __GI_abort () at ./stdlib/abort.c:79
#9  0x00007f6aa14ffbff in  () at /opt/qt515-kde/lib/libQt5Core.so.5
#10 0x00007f6aa14feff0 in qt_assert_x(char const*, char const*, char const*, int) () at /opt/qt515-kde/lib/libQt5Core.so.5
#11 0x00007f6aa3478aa5 in KisImageViewConverter::KisImageViewConverter(KisWeakSharedPtr<KisImage>) (this=this@entry=0x563fa011df30, image=...) at (...)/libs/ui/kis_image_view_converter.cpp:15
#12 0x00007f6aa36bbba8 in KisShapeLayerCanvasBase::KisShapeLayerCanvasBase(KisShapeLayer*, KisWeakSharedPtr<KisImage>) (this=0x563fb9f54140, parent=0x563faddfad20, image=...) at (...)/libs/ui/flake/kis_shape_layer_canvas.cpp:40
#13 0x00007f6aa36beb34 in KisShapeLayerCanvas::KisShapeLayerCanvas(KisShapeLayer*, KisWeakSharedPtr<KisImage>) (this=0x563fb9f54140, parent=0x563faddfad20, image=...) at (...)/libs/ui/flake/kis_shape_layer_canvas.cpp:163
#14 0x00007f6aa36b16d2 in KisShapeLayer::initShapeLayerImpl(KoShapeControllerBase*, KisSharedPtr<KisPaintDevice>, KisShapeLayerCanvasBase*) (this=0x563faddfad20, controller=0x563fa43b71e8, newProjectionDevice=..., overrideCanvas=<optimized out>) at (...)/libs/ui/flake/kis_shape_layer.cc:281
#15 0x00007f6aa36b1c1e in KisShapeLayer::KisShapeLayer(KisShapeLayer const&, KoShapeControllerBase*, KisShapeLayerCanvasBase*) (this=0x563faddfad20, _rhs=..., controller=0x563fa43b71e8, canvas=0x0) at (...)/libs/ui/flake/kis_shape_layer.cc:146
#16 0x00007f6aa35955e7 in KisShapeLayer::clone() const (this=0x563fa4130cb0) at (...)/libs/ui/kritaui_autogen/QUY67KCZCL/../../../libs/ui/flake/kis_shape_layer.h:72
#17 0x00007f6aa3769e48 in (anonymous namespace)::safeCopyNode(KisNodeSP, bool) (node=..., detachClones=true) at (...)/libs/ui/kis_mimedata.cpp:50
#18 0x00007f6aa376f3f1 in createDocument(QList<KisSharedPtr<KisNode> >, KisSharedPtr<KisImage>) (nodes=..., srcImage=...) at (...)/libs/ui/kis_mimedata.cpp:125
#19 0x00007f6aa3770f0e in KisMimeData::retrieveData(QString const&, QVariant::Type) const (this=<optimized out>, mimetype=<optimized out>, preferredType=QVariant::Image) at (...)/libs/ui/kis_mimedata.cpp:171
#20 0x00007f6aa1750110 in  () at /opt/qt515-kde/lib/libQt5Core.so.5
#21 0x00007f6aa1750fdd in QMimeData::imageData() const () at /opt/qt515-kde/lib/libQt5Core.so.5
#22 0x00007f6aa1b6e410 in QInternalMimeData::renderDataHelper(QString const&, QMimeData const*) () at /opt/qt515-kde/lib/libQt5Gui.so.5
#23 0x00007f6a9b500fd8 in  () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#24 0x00007f6a9b4f4643 in  () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#25 0x00007f6a9b4f4d62 in  () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#26 0x00007f6a9b4f7cf1 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#27 0x00007f6a9b4f91a6 in QXcbConnection::processXcbEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#28 0x00007f6a9b51ffd7 in  () at /opt/qt515-kde/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#29 0x00007f6a9eb82d1b in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f6a9ebd76f8 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f6a9eb803c3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f6aa1782ca8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/lib/libQt5Core.so.5
#33 0x00007f6aa17280ab in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /opt/qt515-kde/lib/libQt5Core.so.5
#34 0x00007f6aa1730644 in QCoreApplication::exec() () at /opt/qt515-kde/lib/libQt5Core.so.5
#35 0x0000563f9ec897c1 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at (...)/krita/main.cc:727
[Inferior 1 (process 4261) detached]
Comment 16 Dmitry Kazakov 2022-09-16 14:56:53 UTC
Git commit 8a1e5920e696163dc128669cbb645401941f6dc9 by Dmitry Kazakov.
Committed on 16/09/2022 at 14:56.
Pushed by dkazakov into branch 'master'.

Fix an assert when copy/paste a filter layer

M  +12   -7    libs/image/kis_selection_based_layer.cpp

https://invent.kde.org/graphics/krita/commit/8a1e5920e696163dc128669cbb645401941f6dc9
Comment 17 Dmitry Kazakov 2022-09-16 14:57:01 UTC
Git commit 31ed09f8a54f34b7f8c496c537dfbbb224c26dd1 by Dmitry Kazakov.
Committed on 16/09/2022 at 14:56.
Pushed by dkazakov into branch 'master'.

Fix a crash when copy/paste a shape layer

M  +3    -1    libs/ui/flake/kis_shape_layer_canvas.cpp

https://invent.kde.org/graphics/krita/commit/31ed09f8a54f34b7f8c496c537dfbbb224c26dd1
Comment 18 Dmitry Kazakov 2022-09-16 14:57:26 UTC
Git commit ed757644f27d4f1507b5e8c294b48529545a85cf by Dmitry Kazakov.
Committed on 16/09/2022 at 14:57.
Pushed by dkazakov into branch 'krita/5.1'.

Fix an assert when copy/paste a filter layer


(cherry picked from commit 8a1e5920e696163dc128669cbb645401941f6dc9)

M  +12   -7    libs/image/kis_selection_based_layer.cpp

https://invent.kde.org/graphics/krita/commit/ed757644f27d4f1507b5e8c294b48529545a85cf
Comment 19 Dmitry Kazakov 2022-09-16 14:57:58 UTC
Git commit 4126e6dde47dc39cbfd60f359d08988052cd8c97 by Dmitry Kazakov.
Committed on 16/09/2022 at 14:57.
Pushed by dkazakov into branch 'krita/5.1'.

Fix a crash when copy/paste a shape layer


(cherry picked from commit 31ed09f8a54f34b7f8c496c537dfbbb224c26dd1)

M  +3    -1    libs/ui/flake/kis_shape_layer_canvas.cpp

https://invent.kde.org/graphics/krita/commit/4126e6dde47dc39cbfd60f359d08988052cd8c97
Comment 20 Yu-Hsuan Lai 2022-09-17 23:08:34 UTC
I confirm this problem doesn't happen in 5.1.1.