[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 Andrey changed: What|Removed |Added Latest Commit|https://commits.kde.org/kri |https://commits.kde.org/kri |ta/223f0d2d0bc13e8378ad48ec |ta/7ac310a2a2da6e0eba2519ea |f414291ac977624c|65fba7c7ac05b86b --- Comment #6 from Andrey --- Git commit 7ac310a2a2da6e0eba2519ea65fba7c7ac05b86b by Andrey Kamakin, on behalf of Dmitry Kazakov. Committed on 26/06/2018 at 14:18. Pushed by akamakin into branch 'akamakin/T8628-multithreading-optimization'. Fix assert when trying to merge down a group with a transform mask We should be very careful about passing node pointers in queued signals. Sometimes it may happen that the signal is delivered *after* the node has been removed from the layers graph. If it is possible and we should avoid that, e.g. activating this node, we should check node's graph listener's pointer. M +6-2libs/ui/canvas/kis_display_color_converter.cpp M +2-0libs/ui/flake/kis_dummies_facade_base.cpp M +9-0libs/ui/kis_node_manager.cpp https://commits.kde.org/krita/7ac310a2a2da6e0eba2519ea65fba7c7ac05b86b -- You are receiving this mail because: You are watching all bug changes.
[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 Boudewijn Rempt changed: What|Removed |Added Latest Commit|https://commits.kde.org/kri |https://commits.kde.org/kri |ta/026e857c0c6899e2bab04727 |ta/223f0d2d0bc13e8378ad48ec |ef30eb82c9cb6c68|f414291ac977624c --- Comment #5 from Boudewijn Rempt --- Git commit 223f0d2d0bc13e8378ad48ecf414291ac977624c by Boudewijn Rempt, on behalf of Dmitry Kazakov. Committed on 25/06/2018 at 07:57. Pushed by rempt into branch 'krita/4.1'. Fix assert when trying to merge down a group with a transform mask We should be very careful about passing node pointers in queued signals. Sometimes it may happen that the signal is delivered *after* the node has been removed from the layers graph. If it is possible and we should avoid that, e.g. activating this node, we should check node's graph listener's pointer. M +6-2libs/ui/canvas/kis_display_color_converter.cpp M +2-0libs/ui/flake/kis_dummies_facade_base.cpp M +9-0libs/ui/kis_node_manager.cpp https://commits.kde.org/krita/223f0d2d0bc13e8378ad48ecf414291ac977624c -- You are receiving this mail because: You are watching all bug changes.
[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 Dmitry Kazakov changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED|RESOLVED Latest Commit||https://commits.kde.org/kri ||ta/026e857c0c6899e2bab04727 ||ef30eb82c9cb6c68 --- Comment #4 from Dmitry Kazakov --- Git commit 026e857c0c6899e2bab04727ef30eb82c9cb6c68 by Dmitry Kazakov. Committed on 20/06/2018 at 18:27. Pushed by dkazakov into branch 'master'. Fix assert when trying to merge down a group with a transform mask We should be very careful about passing node pointers in queued signals. Sometimes it may happen that the signal is delivered *after* the node has been removed from the layers graph. If it is possible and we should avoid that, e.g. activating this node, we should check node's graph listener's pointer. M +6-2libs/ui/canvas/kis_display_color_converter.cpp M +2-0libs/ui/flake/kis_dummies_facade_base.cpp M +9-0libs/ui/kis_node_manager.cpp https://commits.kde.org/krita/026e857c0c6899e2bab04727ef30eb82c9cb6c68 -- You are receiving this mail because: You are watching all bug changes.
[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 Boudewijn Rempt changed: What|Removed |Added Status|CONFIRMED |ASSIGNED Assignee|krita-bugs-n...@kde.org |dimul...@gmail.com CC||b...@valdyas.org --- Comment #3 from Boudewijn Rempt --- I can confirm too, and thanks for providing the test file, that makes life a lot easier! -- You are receiving this mail because: You are watching all bug changes.
[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 Antti Savolainen changed: What|Removed |Added Status|UNCONFIRMED |CONFIRMED CC||antti.s...@gmail.com Ever confirmed|0 |1 --- Comment #2 from Antti Savolainen --- Easily reproducable https://youtu.be/xlDNFw0-SOk Build Date & Platform: krita 4.1.0-pre-alpha (Built on 4.6.2018) Xubuntu 17.10 Krita Lime https://launchpad.net/~kritalime/+archive/ubuntu/ppa (gdb) bt #0 0x744f40bb in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #1 0x744f5f5d in __GI_abort () at abort.c:90 #2 0x74ed1107 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #3 0x7678c584 in kis_assert_common(char const*, char const*, int, bool, bool) (assertion=0x777d4cd4 "nodeColorSpace", file=0x777d4c60 "/home/managor/Sourcebuilding/krita/krita-testing-4.0.0/libs/ui/canvas/kis_display_color_converter.cpp", line=255, throwException=false, isIgnorable=false) at ./libs/global/kis_assert.cpp:90 #4 0x7678c89c in kis_assert_recoverable(char const*, char const*, int) (assertion=0x777d4cd4 "nodeColorSpace", file=0x777d4c60 "/home/managor/Sourcebuilding/krita/krita-testing-4.0.0/libs/ui/canvas/kis_display_color_converter.cpp", line=255) at ./libs/global/kis_assert.cpp:103 #5 0x7725e365 in KisDisplayColorConverter::Private::setCurrentNode(KisSharedPtr) (this=0x60a61a80, node=...) at ./libs/ui/canvas/kis_display_color_converter.cpp:255 #6 0x7725e07b in KisDisplayColorConverter::Private::slotCanvasResourceChanged(int, QVariant const&) (this=0x60a61a80, key=6005, v=...) at ./libs/ui/canvas/kis_display_color_converter.cpp:223 #7 0x7726047d in KisDisplayColorConverter::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x6098c3a0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fffcdc0) at ./obj-x86_64-linux-gnu/libs/ui/kritaui_autogen/include/moc_kis_display_color_converter.cpp:91 #8 0x750f28e5 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #9 0x716feaa3 in KoCanvasResourceManager::canvasResourceChanged(int, QVariant const&) (this=0x5eb02a18, _t1=6005, _t2=...) at ./obj-x86_64-linux-gnu/libs/flake/kritaflake_autogen/EWIEGA46WW/moc_KoCanvasResourceManager.cpp:154 #10 0x7152ec14 in QtPrivate::FunctorCall, QtPrivate::List, void, void (KoCanvasResourceManager::*)(int, QVariant const&)>::call(void (KoCanvasResourceManager::*)(int, QVariant const&), KoCanvasResourceManager*, void**) (f=(void (KoCanvasResourceManager::*)(KoCanvasResourceManager * const, int, const QVariant &)) 0x716fea3a , o=0x5eb02a18, arg=0x7fffcfd0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:136 #11 0x7152eb7f in QtPrivate::FunctionPointer::call, void>(void (KoCanvasResourceManager::*)(int, QVariant const&), KoCanvasResourceManager*, void**) (f= (void (KoCanvasResourceManager::*)(KoCanvasResourceManager * const, int, const QVariant &)) 0x716fea3a , o=0x5eb02a18, arg=0x7fffcfd0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:169 #12 0x7152eae9 in QtPrivate::QSlotObject, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x560f39c0, r=0x5eb02a18, a=0x7fffcfd0, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:120 #13 0x750f29ff in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #14 0x716ff77d in KoResourceManager::resourceChanged(int, QVariant const&) (this=0x5ead6170, _t1=6005, _t2=...) at ./obj-x86_64-linux-gnu/libs/flake/kritaflake_autogen/EWIEGA46WW/moc_KoResourceManager_p.cpp:138 #15 0x715281b8 in KoResourceManager::notifyResourceChanged(int, QVariant const&) (this=0x5ead6170, key=6005, value=...) at ./libs/flake/KoResourceManager_p.cpp:74 #16 0x715280b6 in KoResourceManager::setResource(int, QVariant const&) (this=0x5ead6170, key=6005, value=...) at ./libs/flake/KoResourceManager_p.cpp:67 #17 0x7152de5f in KoCanvasResourceManager::setResource(int, QVariant const&) (this=0x5eb02a18, key=6005, value=...) at ./libs/flake/KoCanvasResourceManager.cpp:58 #18 0x77374dd7 in KisCanvasResourceProvider::slotNodeActivated(KisSharedPtr) (this=0x5eb029e0, node=...) at ./libs/ui/kis_canvas_resource_provider.cpp:248 #19 0x777b045d in KisCanvasResourceProvider::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x5eb029e0, _c=QMetaObject::InvokeMetaMethod, _id=20, _a=0x7fffd3b0) at ./obj-x86_64-linux-gnu/libs/ui/kritaui_autogen/EWIEGA46WW/moc_kis_canvas_resource_provider.cpp:206 #20 0x750f28e5 in QM
[krita] [Bug 395003] Crash when Clone Layer with Transform Mask is merged with it's parent.
https://bugs.kde.org/show_bug.cgi?id=395003 --- Comment #1 from n-pigeon --- Ah forgot one more thing. Clone must be below it's Original for it to crash. -- You are receiving this mail because: You are watching all bug changes.