Created attachment 167972 [details] log # Summary I encountered a program crash after overwriting gradient resources. # Steps To Reproduce 1. Open Krita. 2. Create a new project. 3. Open the layer style of any layer, then navigate to the gradient overlay options and create a new gradient resource with the same name as an existing one. 4 .When prompted to overwrite the gradient resource, click "Yes," then apply the layer style. 5. Program crashes. # OS Version Windows: Windows 10 Professional Workstation Edition [64-bit] (Kernel: 10.0.19045.0) # Additional Infoormation Dump file: https://drive.google.com/file/d/1nR2smSiyFbQvo9KEzQOY-8rlv6X2iYRk
Probably not needed, but this is the `bt` of the dump file: > (gdb) bt -full -frame-arguments all > #0 0x00007ffe2c60b502 in ?? () > No symbol table info available. > #1 0x00007ffdb45a5aaa in qt_message_fatal () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\global/qlogging.cpp:1908 > No locals. > #2 0x00007ffdb45a6a74 in QMessageLogger::fatal () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\global/qlogging.cpp:893 > No locals. > #3 0x00007ffdd5182f66 in kis_assert_common (assertion=<optimized out>, file=0x7ffdb60da09e <typeinfo for KisTranslateLayerNamesVisitor+2214> "C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_asl_layer_style_serializer.cpp", line=<optimized out>, abort=true, isIgnorable=false) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/global/kis_assert.cpp:90 > shortMessage = "ASSERT (krita): \"embeddedResources.last().data()\" in file C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_asl_layer_style_serializer.cpp, line 756" > longMessage = "Krita has encountered an internal error:\n\nASSERT (krita): \"embeddedResources.last().data()\" in file C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_asl_layer_style_serializer"... > disableAssertMsg = true > forceCrashOnSafeAsserts = false > shouldIgnoreAsserts = true > button = <optimized out> > #4 0x00007ffdd51830c1 in kis_assert_exception (assertion=0x7ffdb4a76450 <QArrayData::shared_null> "ÿÿÿÿ", file=0x1b31c520000 "", line=474553664) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/global/kis_assert.cpp:111 > No locals. > #5 0x00007ffdb5f9886c in KisAslLayerStyleSerializer::fetchEmbeddedResources (style=0x1b34f3fcb80) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_asl_layer_style_serializer.cpp:756 > embeddedResources = QVector<QSharedPointer<KoResource>> (size = 1) = {[0] = {value = 0x0, d = 0x0}} > #6 0x00007ffdb5fcb5ea in KisPSDLayerStyle::embeddedResources (this=0x1b31c520000, globalResourcesInterface=<optimized out>) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_psd_layer_style.cpp:396 > No locals. > #7 0x00007ffdd6d3f11e in KoResource::requiredResources (this=0x1b34f3fcb80, globalResourcesInterface={value = 0x1b3255fc8b0, d = 0x1b3255fc910}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/resources/KoResource.cpp:242 > No locals. > #8 0x00007ffdb5fcfba7 in KisRequiredResourcesOperators::createLocalResourcesSnapshot<KisPSDLayerStyle> (object=0x1b34f3fcb80, globalResourcesInterface={value = 0x1b3255fc8b0, d = 0x1b3255fc910}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/resources/KisRequiredResourcesOperators.h:61 > effectiveResourcesInterface = {value = 0x1b3255fc8b0, d = 0x1b3255fc910} > loadedResources = QList<KoResourceLoadResult> (size = 1792099538)<error reading variable: Cannot access memory at address 0x7ffa011707c3> > resources = QList<QSharedPointer<KoResource>> (size = -1329580173) > #9 0x00007ffdb5fce158 in KisRequiredResourcesOperators::cloneWithResourcesSnapshot<QSharedPointer<KisPSDLayerStyle>, KisPSDLayerStyle> (object=object@entry=0x1b3494f2590, globalResourcesInterface={value = 0x1b3255fc8b0, d = 0x1b3255fc910}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/resources/KisRequiredResourcesOperators.h:91 > clonedStorage = {value = 0x1b34f3fcb80, d = 0x1b34f3fca40} > cloned = <optimized out> > #10 0x00007ffdb5fca909 in KisPSDLayerStyle::cloneWithResourcesSnapshot (this=0x1b3494f2590, globalResourcesInterface=<optimized out>, canvasResourcesInterface={value = 0x1b326776dc0, d = 0x1b326777180}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/image/kis_psd_layer_style.cpp:335 > style = <optimized out> > #11 0x00007ffdb543f6ae in updateLayerStyles (layer=<optimized out>, dlg=<optimized out>, canvasResourcesInterface={value = 0x1b326776dc0, d = 0x1b326777180}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/kis_layer_manager.cc:996 > No locals. > #12 0x00007ffdb5442cca in std::__1::__invoke[abi:v15000]<void (*&)(KisSharedPtr<KisLayer>, KisDlgLayerStyle*, QSharedPointer<KoCanvasResourcesInterface>), KisSharedPtr<KisLayer>&, KisDlgLayerStyle*&, QSharedPointer<KoCanvasResourcesInterface>&>(void (*&)(KisSharedPtr<KisLayer>, KisDlgLayerStyle*, QSharedPointer<KoCanvasResourcesInterface>), KisSharedPtr<KisLayer>&, KisDlgLayerStyle*&, QSharedPointer<KoCanvasResourcesInterface>&) (__f=<optimized out>, __args=<error reading variable: Cannot access memory at address 0x1>, __args=<error reading variable: Cannot access memory at address 0x1>, __args=<error reading variable: Cannot access memory at address 0x1>) at C:/MingW-LLVM/include/c++/v1/__functional/invoke.h:394 > No locals. > #13 0x00007ffdb47a0cbb in doActivate<false> () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qobject.cpp:3931 > No locals. > #14 0x00007ffdb47a0cbb in doActivate<false> () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qobject.cpp:3931 > No locals. > #15 0x00007ffdd1dcbbde in QDialogPrivate::finalize () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\dialogs/qdialog.cpp:175 > No locals. > #16 QDialog::done () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\dialogs/qdialog.cpp:638 > No locals. > #17 0x00007ffdd31bef90 in KoDialog::slotButtonClicked (this=0x44becf6c90, button=<optimized out>) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/widgets/KoDialog.cpp:819 > d = 0x1b34f596dc0 > #18 0x00007ffdb47a0b8b in QtPrivate::QSlotObjectBase::call () at ../../include/QtCore/../../../../s/qtbase/src/corelib/kernel/qobjectdefs_impl.h:398 > No locals. > #19 doActivate<false> () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qobject.cpp:3919 > No locals. > #20 0x00007ffdd1cbb941 in QAbstractButton::clicked () at .moc\release/moc_qabstractbutton.cpp:308 > No locals. > #21 QAbstractButtonPrivate::emitClicked () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qabstractbutton.cpp:416 > No locals. > #22 0x00007ffdd1cbb7d0 in QAbstractButtonPrivate::click () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qabstractbutton.cpp:409 > No locals. > #23 0x00007ffdd1cbc8bc in QAbstractButton::mouseReleaseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qabstractbutton.cpp:1045 > No locals. > #24 0x00007ffdd1c16479 in QWidget::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidget.cpp:8670 > No locals. > #25 0x00007ffdd1d5ff10 in QPushButton::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qpushbutton.cpp:718 > No locals. > #26 0x00007ffdd1bdc5a3 in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3637 > No locals. > #27 0x00007ffdd1bdf20a in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3081 > No locals. > #28 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x1b32bd93950, event=0x44becf30b8) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #29 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #30 0x00007ffdd1bdce6f in QApplicationPrivate::sendMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:2619 > No locals. > #31 0x00007ffdd1c33091 in QWidgetWindow::handleMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:683 > No locals. > #32 0x00007ffdd1c31cbc in QWidgetWindow::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:300 > No locals. > #33 0x00007ffdd1bdc5a3 in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3637 > No locals. > #34 0x00007ffdd1bdd823 in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:2976 > No locals. > #35 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x1b34ff15f70, event=0x44becf35a8) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #36 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #37 0x00007ffdb4b45fd7 in QGuiApplicationPrivate::processMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qguiapplication.cpp:2285 > No locals. > #38 0x00007ffdb4b2d1ea in QWindowSystemInterface::sendWindowSystemEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qwindowsysteminterface.cpp:1179 > No locals. > #39 0x00007ffdb47c20fc in QEventDispatcherWin32::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventdispatcher_win.cpp:512 > No locals. > #40 0x00007ffdb1ed8a35 in QWindowsGuiEventDispatcher::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\platformsupport\eventdispatchers/qwindowsguieventdispatcher.cpp:73 > No locals. > #41 0x00007ffdb476b236 in QEventLoop::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:139 > No locals. > #42 QEventLoop::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:232 > No locals. > #43 0x00007ffdd1dcbac4 in QDialog::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\dialogs/qdialog.cpp:601 > No locals. > #44 0x00007ffdb544000f in KisLayerManager::layerStyle (this=<optimized out>) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/kis_layer_manager.cc:1035 > image = {d = 0x1b34ccb19d0, weakReference = 0x1b32673e590} > layer = {d = 0x1b34bded580} > canvasResourcesInterface = {value = 0x1b326776dc0, d = 0x1b326777180} > oldStyle = {value = 0x1b3494f2750, d = 0x1b3494f24d0} > newStyle = {value = 0x1b3494f2590, d = 0x1b3494f27d0} > dlg = {<KoDialog> = {<QDialog> = {<QWidget> = {<QObject> = {_vptr$QObject = 0x7ffdb58e6308 <vtable for KisDlgLayerStyle+16>, d_ptr = <incomplete type>}, <QPaintDevice> = {_vptr$QPaintDevice = 0x7ffdb58e6500 <vtable for KisDlgLayerStyle+520>, painters = 0, reserved = 0x0}, data = 0x1b34f0fe890}, }, d_ptr = 0x1b34f596dc0}, m_layerStyle = {value = 0x1b3494f2590, d = 0x1b3494f27d0}, m_initialLayerStyle = {value = 0x1b3494f2f30, d = 0x1b3494f2af0}, wdgLayerStyles = {<Ui_WdgStylesDialog> = {horizontalLayout = 0x1b34f54db00, verticalLayout_2 = 0x1b34f54d650, chkMasterFxSwitch = 0x1b32bd930d0, lstStyleSelector = 0x1b32bd83cd0, stylesStack = 0x1b32bd8ffd0, verticalLayout = 0x1b34f54e640, btnNewStyle = 0x1b32bd90f90, btnLoadStyle = 0x1b32bd91050, btnSaveStyle = 0x1b32bd91490, chkPreview = 0x1b32bd91410, lblPreview = 0x1b32bd91610, verticalSpacer = 0x1b34f54e9a0}, <No data fields>}, m_bevelAndEmboss = 0x1b34c6dbb90, m_blendingOptions = 0x1b34c6db550, m_colorOverlay = 0x1b34f484bc0, m_contour = 0x1b34fd1c9b0, m_dropShadow = 0x1b34c57f770, m_gradientOverlay = 0x1b34fe22c60, m_innerGlow = 0x1b34f2b4a40, m_innerShadow = 0x1b34c581060, m_outerGlow = 0x1b34f2b3a70, m_patternOverlay = 0x1b34c28bd40, m_satin = 0x1b34f3aa980, m_stroke = 0x1b34f518d20, m_stylesSelector = 0x1b34c6c18c0, m_texture = 0x1b34c28b740, m_configChangedCompressor = 0x1b34f535be0, m_isSwitchingPredefinedStyle = false, m_sanityLayerStyleDirty = false} > updateCall = {<std::__1::__function::__maybe_derive_from_unary_function<void ()>> = {<No data fields>}, <std::__1::__function::__maybe_derive_from_binary_function<void ()>> = {<No data fields>}, __f_ = {__buf_ = {__lx = " ÍTO³\001\000\000Ю\001µý\177\000\000\200͵´ý\177\000\000@lϾD\000\000"}, __f_ = 0x1b34fdfd850}} > proxy = {<QObject> = {_vptr$QObject = 0x7ffdd5245878 <vtable for SignalToFunctionProxy+16>, d_ptr = <incomplete type>}, m_function = {<std::__1::__function::__maybe_derive_from_unary_function<void ()>> = {<No data fields>}, <std::__1::__function::__maybe_derive_from_binary_function<void ()>> = {<No data fields>}, __f_ = {__buf_ = {__lx = "$\000\000\000\000\000\000\000\200¿6O³\001\000\000 \026@O³\001\000\000üM¾Ñý\177\000"}, __f_ = 0x1b34fe03ad0}}} > #45 0x00007ffdb47a0cbb in doActivate<false> () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qobject.cpp:3931 > No locals. > #46 0x00007ffdd1bd3aa4 in QAction::activate () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qaction.cpp:1161 > No locals. > #47 0x00007ffdd1d4cdaa in QMenuPrivate::activateCausedStack () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qmenu.cpp:1384 > No locals. > #48 0x00007ffdd1d4a56f in QMenuPrivate::activateAction () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qmenu.cpp:1461 > No locals. > #49 0x00007ffdd1c16479 in QWidget::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidget.cpp:8670 > No locals. > #50 0x00007ffdd1d51825 in QMenu::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qmenu.cpp:3087 > No locals. > #51 0x00007ffdd1bdc5a3 in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3637 > No locals. > #52 0x00007ffdd1bdf20a in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3081 > No locals. > #53 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x44becfb148, event=0x44becf76d8) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #54 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #55 0x00007ffdd1bdce6f in QApplicationPrivate::sendMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:2619 > No locals. > #56 0x00007ffdd1c33726 in QWidgetWindow::handleMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:580 > No locals. > #57 0x00007ffdd1c31cbc in QWidgetWindow::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:300 > No locals. > #58 0x00007ffdd1bdc5a3 in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3637 > No locals. > #59 0x00007ffdd1bdd823 in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:2976 > No locals. > #60 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x1b34f15f630, event=0x44becf7bc8) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #61 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #62 0x00007ffdb4b45fd7 in QGuiApplicationPrivate::processMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qguiapplication.cpp:2285 > No locals. > #63 0x00007ffdb4b2d1ea in QWindowSystemInterface::sendWindowSystemEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qwindowsysteminterface.cpp:1179 > No locals. > #64 0x00007ffdb47c20fc in QEventDispatcherWin32::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventdispatcher_win.cpp:512 > No locals. > #65 0x00007ffdb1ed8a35 in QWindowsGuiEventDispatcher::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\platformsupport\eventdispatchers/qwindowsguieventdispatcher.cpp:73 > No locals. > #66 0x00007ffdb476b236 in QEventLoop::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:139 > No locals. > #67 QEventLoop::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:232 > No locals. > #68 0x00007ffdd1d4f9d8 in QMenuPrivate::exec(QPoint const&, QAction*, std::__1::function<QPoint (QSize const&)>) () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qmenu.cpp:2698 > No locals. > #69 0x00007ffdd1d4f8c0 in QMenu::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qmenu.cpp:2685 > No locals. > #70 0x00007ffdace0b19c in LayerBox::slotContextMenuRequested (this=0x1b327aa0640, pos=@0x44becfbc6c: {xp = 1706, yp = 409}, index=@0x44becfb310: {r = 0, c = 0, i = 1869642486960, m = 0x1b349421860}) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/plugins/dockers/layerdocker/LayerBox.cpp:800 > menu = {<QWidget> = {<QObject> = {_vptr$QObject = 0x7ffdd1f99d28 <vtable for QMenu+16>, d_ptr = <incomplete type>}, <QPaintDevice> = {_vptr$QPaintDevice = 0x7ffdd1f99ed8 <vtable for QMenu+448>, painters = 0, reserved = 0x0}, data = 0x1b34f531640}, } > nodes = QList<KisSharedPtr<KisNode>> (size = 1) = {[0] = {d = 0x1b34bded580}} > activeNode = {d = 0x1b34bded580} > #71 0x00007ffdb47a0cbb in doActivate<false> () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qobject.cpp:3931 > No locals. > #72 0x00007ffdace2481c in NodeView::contextMenuRequested (this=0x7ffdb4a76450 <QArrayData::shared_null>, _t1=<optimized out>, _t2=<optimized out>) at plugins/dockers/layerdocker/kritalayerdocker_static_autogen/EWIEGA46WW/moc_NodeView.cpp:230 > _a = {0x0, 0x44becfbc6c, 0x44becfb310} > #73 0x00007ffdace19541 in NodeView::contextMenuEvent (this=0x1b32c0180f0, e=<optimized out>) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/plugins/dockers/layerdocker/NodeView.cpp:297 > i = {r = 0, c = 0, i = 1869642486960, m = 0x1b349421860} > #74 0x00007ffdd1c16800 in QWidget::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidget.cpp:8848 > No locals. > #75 0x00007ffdd1cb55b8 in QFrame::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\widgets/qframe.cpp:550 > No locals. > #76 0x00007ffdd1e3958c in QAbstractItemView::viewportEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\itemviews/qabstractitemview.cpp:1747 > No locals. > #77 0x00007ffdd1ea3d16 in QTreeView::viewportEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\itemviews/qtreeview.cpp:1314 > No locals. > #78 0x00007ffdace1935c in NodeView::viewportEvent (this=0x1b32c0180f0, e=0x44becfbc48) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/plugins/dockers/layerdocker/NodeView.cpp:267 > No locals. > #79 0x00007ffdb476e298 in QCoreApplicationPrivate::sendThroughObjectEventFilters () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1190 > No locals. > #80 0x00007ffdd1bdc58f in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3631 > No locals. > #81 0x00007ffdd1bde7d1 in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3243 > No locals. > #82 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x1b349209c00, event=0x44becfbc48) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #83 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #84 0x00007ffdd1c33591 in QWidgetWindow::handleMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:691 > No locals. > #85 0x00007ffdd1c31cbc in QWidgetWindow::event () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qwidgetwindow.cpp:300 > No locals. > #86 0x00007ffdd1bdc5a3 in QApplicationPrivate::notify_helper () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:3637 > No locals. > #87 0x00007ffdd1bdd823 in QApplication::notify () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\widgets\kernel/qapplication.cpp:2976 > No locals. > #88 0x00007ffdb57a7388 in KisApplication::notify (this=0x44becff6a0, receiver=0x1b326918bf0, event=0x44becfc138) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/libs/ui/KisApplication.cpp:763 > guard = {m_info = 0x1b31e109120} > result = true > info = @0x1b31e109120: {eventRecursionCount = 6, postponedSynchronizationEvents = {c = {<std::__1::__deque_base<KisSynchronizedConnectionEvent, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {__map_ = {__first_ = 0x0, __begin_ = 0x0, __end_ = 0x0, __end_cap_ = {<std::__1::__compressed_pair_elem<KisSynchronizedConnectionEvent**, 0, false>> = {__value_ = 0x0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent*>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent*>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent*> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, __start_ = 0, __size_ = {<std::__1::__compressed_pair_elem<unsigned long long, 0, false>> = {__value_ = 0}, <std::__1::__compressed_pair_elem<std::__1::allocator<KisSynchronizedConnectionEvent>, 1, true>> = {<std::__1::allocator<KisSynchronizedConnectionEvent>> = {<std::__1::__non_trivial_if<true, std::__1::allocator<KisSynchronizedConnectionEvent> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}}} > e = <optimized out> > #89 0x00007ffdb476dfb2 in QCoreApplication::notifyInternal2 () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1064 > No locals. > #90 0x00007ffdb4b45fd7 in QGuiApplicationPrivate::processMouseEvent () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qguiapplication.cpp:2285 > No locals. > #91 0x00007ffdb4b2d1ea in QWindowSystemInterface::sendWindowSystemEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\gui\kernel/qwindowsysteminterface.cpp:1179 > No locals. > #92 0x00007ffdb47c20fc in QEventDispatcherWin32::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventdispatcher_win.cpp:512 > No locals. > #93 0x00007ffdb1ed8a35 in QWindowsGuiEventDispatcher::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\platformsupport\eventdispatchers/qwindowsguieventdispatcher.cpp:73 > No locals. > #94 0x00007ffdb476b236 in QEventLoop::processEvents () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:139 > No locals. > #95 QEventLoop::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qeventloop.cpp:232 > No locals. > #96 0x00007ffdb476e54d in QCoreApplication::exec () at C:\Packaging\KritaDepsBuild\ext_qt\s\qtbase\src\corelib\kernel/qcoreapplication.cpp:1375 > No locals. > #97 0x00007ffdd52855d9 in krita_main (argc=<optimized out>, argv=0x1b31dfc66c0) at C:/Packaging/workspace/Krita_Release_Windows64_Build/krita/krita/main.cc:766 > key = "Krita5C__Users_SharpIce" > configPath = {d_ptr = <incomplete type>} > kritarc = {<QObject> = {_vptr$QObject = 0x7ffdb4981088 <vtable for QSettings+16>, d_ptr = <incomplete type>}, } > root = "C:/Users/SharpIce/Desktop/krita-x64-5.2.2/bin/../" > language = "" > app = {<QtSingleApplication> = {<QApplication> = {<QGuiApplication> = {<QCoreApplication> = {<QObject> = {_vptr$QObject = 0x7ffdb58d9d38 <vtable for KisApplication+16>, d_ptr = <incomplete type>}, }, }, }, firstPeer = -1, instances = 0x1b31e7e8dc0, pidPeer = 0x1b31e726140, actWin = 0x0, appId = "Krita5C__Users_SharpIce", block = false}, d = {d = 0x1b31e84ee90}} > appdir = {d_ptr = <incomplete type>} > path = "C:\\Program Files\\Python311\\Scripts\\;C:\\Program Files\\Python311\\;C:\\Program Files (x86)\\VMware\\VMware Workstation\\bin\\;C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.9.9-hotspot\\bin;C:\\Windows\\system32;C:\\"... > args = {d = {d = 0x1b31c5485e0}} > cfg = {m_cfg = {<KConfigBase> = {_vptr$KConfigBase = 0x7ffde8dcadd0 <vtable for KConfigGroup+16>}, d = <incomplete type>}, m_readOnly = false} > osVersion = {m_os = QOperatingSystemVersion::Windows, m_major = 10, m_minor = 0, m_micro = 19045} > enableOpenGLDebug = <optimized out> > openGLDebugSynchronous = <optimized out> > logUsage = true > rightToLeft = <optimized out> > forceWinTab = <optimized out> > supportedWindowsVersion = <optimized out> > useWinInkAPI = <optimized out> > state = <optimized out> > runningInKDE = <optimized out> > #98 0x00007ff71dfd13d6 in __tmainCRTStartup () at ../crt/crtexe.c:329 > lock_free = <optimized out> > fiberid = <optimized out> > nested = <optimized out> > StartupInfo = {cb = 104, lpReserved = 0x1b31c5677f0 "", lpDesktop = 0x1b31dfc6280 "Winsta0\\Default", lpTitle = 0x1b31e0803c0 "C:\\Users\\SharpIce\\Desktop\\krita-x64-5.2.2\\bin\\krita.exe", dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0, dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0, dwFlags = 1025, wShowWindow = 1, cbReserved2 = 0, lpReserved2 = 0x0, hStdInput = 0x0, hStdOutput = 0x10001, hStdError = 0x0} > lpszCommandLine = <optimized out> > inDoubleQuote = <optimized out> > #99 0x00007ff71dfd1156 in WinMainCRTStartup () at ../crt/crtexe.c:176 > ret = 255
I cannot reproduce the issue, but the asserts were introduced by someone who no longer works on Krita, and are still present. This is the relevant commit: https://invent.kde.org/graphics/krita/-/commit/885e62a63383e5117a158b3c6601c910ce21b2e6 I currently have no idea of the asserts are actually relevant, though I have my doubts, they basically check nothing.
I am not sure if it's related, but I have found a way to consistently crash Krita when re-importing and overwriting existing gradients: 1. Import an SVG gradient 2. Change a color in the definition of the gradient (for example with a text editor) 3. Re-import the gradient -> Krita crashes: Output on terminal: QLayout: Attempting to add QLayout "" to DlgResourceManager "", which already has a layout A resource with the same filename but a different MD5 already exists in the storage "gradients" "D:/SandboxFiles/crash_test.svg" "" Proceeding with overwriting the existing resource... ASSERT (krita): "!originalImageCache.contains(key)" in file D:/git/krita-dev/krita-src/libs/resources/KisResourceThumbnailCache.cpp, line 91 It seems like the required update of the thumbnail fails an assert statement? Krita version 5.2.3 on Windows 10
Git commit 3b2e6575fd7827d0b65ec2aa5d08b67f195501c3 by Dmitry Kazakov. Committed on 22/10/2024 at 12:37. Pushed by dkazakov into branch 'krita/5.2'. Fix crash when re-importing the same resource, but changed We have to remove the old resource from the thumbnail cache as well. M +5 -0 libs/resources/KisResourceLocator.cpp https://invent.kde.org/graphics/krita/-/commit/3b2e6575fd7827d0b65ec2aa5d08b67f195501c3
Git commit b18e25c5b9ec1cd46042ce183603a313d2649c9d by Dmitry Kazakov. Committed on 22/10/2024 at 12:37. Pushed by dkazakov into branch 'master'. Fix crash when re-importing the same resource, but changed We have to remove the old resource from the thumbnail cache as well. M +5 -0 libs/resources/KisResourceLocator.cpp https://invent.kde.org/graphics/krita/-/commit/b18e25c5b9ec1cd46042ce183603a313d2649c9d