Bug 514744

Summary: #484796 Error Regression: Program Crash When Overwriting Gradient Resources in Krita
Product: [Applications] krita Reporter: SharpIce <VupRbl>
Component: Resource ManagementAssignee: Krita Bugs <krita-bugs-null>
Status: REPORTED ---    
Severity: crash CC: dimula73
Priority: NOR    
Version First Reported In: 5.2.14   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: drkonqi.txt, gdb.txt, gdb_output.txt, krita.log, krita-sysinfo.log

Description SharpIce 2026-01-17 16:14:49 UTC
Created attachment 188619 [details]
drkonqi.txt, gdb.txt, gdb_output.txt, krita.log, krita-sysinfo.log

# SUMMARY
I encountered a program crash after overwriting gradient resources.

I have a suspicion that the previous fix didn't actually resolve the root cause but only masked it. The issue re-emerged when I was working on multiple files at the same time.

After several attempts, I have found a consistent way to reproduce the issue:
1. Open Krita and create a new document.
2. Draw a stroke on the layer, then open the "Layer Styles" dialog.
3. Enable "Gradient Overlay", set the "Blending Mode" to "Normal" and "Opacity" to "100%". Create a new gradient preset, keep the default name (do not rename it), and click OK.
4. Re-enter the "Layer Styles" dialog and change the "Angle" of the Gradient Overlay to a random value.
5. Close the document without saving, then create another new document.
6. Open "Layer Styles" in the new document, create a different gradient effect but keep the same default name as before, then click OK.
7. The application crashes immediately.

# SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.5.5
KDE Frameworks Version: 6.22.0
Qt Version: 6.10.1
Kernel Version: 6.18.5-zen1-1-zen (64-bit)
Graphics Platform: Wayland
Processors: 18 × Intel® Core™ Ultra 5 125H
Memory: 32 GiB of RAM (30.8 GiB usable)
Graphics Processor: Intel® Arc

ADDITIONAL INFORMATION
Previous bug: https://bugs.kde.org/show_bug.cgi?id=484796
Reproduction video: https://drive.google.com/file/d/1mZhAHcYj3OC0Xzowc9vEbBohLRWhfTBQ
There's also a coredump, but I'm not sure if it's useful.
Comment 1 Dmitry Kazakov 2026-01-19 12:51:24 UTC
I cannot reproduce the crash/assert here. But if I create two layers with different gradients names "unnamed", then after reloading both layers will have the same gradient, even though both are loaded.
Comment 2 SharpIce 2026-01-19 13:30:57 UTC
(In reply to Dmitry Kazakov from comment #1)
> I cannot reproduce the crash/assert here. But if I create two layers with
> different gradients names "unnamed", then after reloading both layers will
> have the same gradient, even though both are loaded.

I tried again, but the issue persists. I might have missed a step in my description, so could you please check the video? My apologies for forgetting to set the permissions to public earlier: https://drive.google.com/file/d/1mZhAHcYj3OC0Xzowc9vEbBohLRWhfTBQ
Comment 3 Dmitry Kazakov 2026-01-19 15:01:35 UTC
Hi, SharpIce!

Could you please also retest with the official AppImage?
Comment 4 SharpIce 2026-01-19 15:09:38 UTC
(In reply to Dmitry Kazakov from comment #3)
> Hi, SharpIce!
> 
> Could you please also retest with the official AppImage?

I've tested this on both AppImage and Windows 11, and the issue persists. After checking with a few friends, it seems to work fine on X11.

Below is the terminal log generated while running the AppImage:
```
Bundle "/home/sharpice/.local/share/krita/EO_Bundle.bundle" is broken. File "gradients/krita.svg" is missing
QObject::startTimer: Timers cannot have negative intervals
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
/tmp/.mount_krita-gakadI/usr/lib/krita-python-libs/krita added to PYTHONPATH
ASSERT (krita): "embeddedResources.last().data()" in file /builds/graphics/krita/libs/image/kis_asl_layer_style_serializer.cpp, line 756
zsh: IOT instruction (core dumped)  ./krita-5.2.14-x86_64.AppImage
```