https://bugs.kde.org/show_bug.cgi?id=523689

            Bug ID: 523689
           Summary: Krita 6 cannot load brush presets (kpp) with large
                    iTXt chunks - Qt6 libpng out of memory
    Classification: Applications
           Product: krita
      Version First 6.0.3
       Reported In:
          Platform: Arch Linux
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Resource Management
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 194732
  --> https://bugs.kde.org/attachment.cgi?id=194732&action=edit
logs

Title: Krita 6 (Qt6) cannot load brush presets (kpp) larger than ~7MB - iTXt
out of memory

Description:
Krita 6.0.3 (Qt6) fails to load brush presets (kpp files) that are 
larger than ~7MB. This is not just a third-party compatibility issue — 
presets created natively inside Krita 6 itself also disappear after 
restart with the same error.

Steps to reproduce:
1. Create a new brush preset using an RGBA animated brush tip
2. Save it (resulting kpp file ~10MB)
3. Restart Krita 6
4. Preset is gone

OR:

1. Import memileo Impasto Brushes 1.0 bundle (created with Krita 5.2.2)
   via Settings → Manage Resource Libraries
2. Only tags appear, no brush presets are loaded

Workarounds attempted (all failed):
- Import bundle via Settings → Manage Resource Libraries
- Copy kpp files directly to ~/.local/share/krita/paintoppresets/
- Create new brush preset natively in Krita 6 (~10MB kpp)
  → also disappears after restart

Console output:
  qt.gui.imageio: libpng warning: iTXt: out of memory
  Could not load the resource from the bundle "paintoppresets"
  "paintoppresets/memileo 01 Brush - Flat Tip.kpp"
  "/home/user/.local/share/krita/memileo-Impasto-Brushes-1.0.bundle"

The affected kpp files range from 7MB to 27MB. All load correctly 
in Krita 5.3.3 (Qt5, installed via Flatpak).

Root cause appears to be Qt6's libpng failing to allocate memory 
when reading large iTXt chunks, which is the format kpp files use 
to store preset data.

System:
- Arch Linux (rolling), Krita 6.0.3
- Qt 6 (system), libpng (system)
- NVIDIA RTX 3080 Ti, driver 610.43.03
- Wayland (niri compositor)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to