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

            Bug ID: 428349
           Summary: (Old version of) Filter mask with color adjustment
                    crashes Krita in lcms
           Product: krita
           Version: 4.4.0
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Color models
          Assignee: krita-bugs-n...@kde.org
          Reporter: tamtamy.tym...@gmail.com
  Target Milestone: ---

SUMMARY
If you open some specific old files, they crash in lcms on the filer mask with
color adjustment.


STEPS TO REPRODUCE
1. Open Krita.
2. Open the attached file.

OBSERVED RESULT
Crash

EXPECTED RESULT
No crash

ADDITIONAL INFORMATION
Note 1: It's not caused by the fact it's CMYK; (1) you can make and save and
open a CMYK file in Krita 4.4.0 with color adjustment curves mask, even with
Hue, Saturation and Lightness curves changed.

Note 2: I was checking versions 3.3.3, 4.0.4, 4.1.7 and later. It worked in
4.0.4, but crashed in 4.1.7. However if I open it in 4.0.4 and save under a new
name, it still cannot be opened in 4.1.7, which means it was a regression 4.0.4
-> 4.1.7. which went uncaught and still crashes.


CRASH LOG
Thread 39 "Thread (pooled)" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffbbfff700 (LWP 26784)]
0x00007fffc2f059fb in ?? () from /usr/lib/x86_64-linux-gnu/liblcms2.so.2
(gdb) bt
#0  0x00007fffc2f059fb in  () at /usr/lib/x86_64-linux-gnu/liblcms2.so.2
#1  0x00007fffc309579c in LcmsColorSpace<KoCmykTraits<unsigned char>
>::createPerChannelAdjustment(unsigned short const* const*) const
(this=0x555559ad4710, transferValues=0x7fff903c1ad0)
    at
/home/tymon/kritadev/krita/plugins/color/lcms2engine/LcmsColorSpace.h:347
#2  0x00007fffc2e5e797 in
KisPerChannelFilter::createTransformation(KoColorSpace const*,
KisPinnedSharedPtr<KisFilterConfiguration>) const (this=<optimized out>,
cs=0x555559ad4710, config=...)
    at
/home/tymon/kritadev/krita/plugins/filters/colorsfilters/kis_perchannel_filter.cpp:330
#3  0x00007ffff5b3cf0a in
KisColorTransformationConfiguration::colorTransformation(KoColorSpace const*,
KisColorTransformationFilter const*) const (this=0x5555678f4f70,
cs=0x555559ad4710, filter=0x5555596e8790)
    at /usr/include/c++/8/bits/atomic_base.h:295
#4  0x00007ffff5b414ea in
KisColorTransformationFilter::processImpl(KisSharedPtr<KisPaintDevice>, QRect
const&, KisPinnedSharedPtr<KisFilterConfiguration>, KoUpdater*) const
(this=0x5555596e8790, device=..., applyRect=..., config=...,
progressUpdater=0x7fff900c2eb0) at
/home/tymon/kritadev/krita/libs/global/kis_shared_ptr.h:179
#5  0x00007ffff5b38b7b in KisFilter::process(KisSharedPtr<KisPaintDevice>,
KisSharedPtr<KisPaintDevice>, KisSharedPtr<KisSelection>, QRect const&,
KisPinnedSharedPtr<KisFilterConfiguration>, KoUpdater*) const
(this=0x5555596e8790, src=..., dst=..., selection=..., applyRect=...,
config=..., progressUpdater=0x7fff900c2eb0) at
/usr/include/c++/8/bits/atomic_base.h:295
#6  0x00007ffff5bfd6fd in
KisFilterMask::decorateRect(KisSharedPtr<KisPaintDevice>&,
KisSharedPtr<KisPaintDevice>&, QRect const&, KisNode::PositionToFilthy) const
(this=<optimized out>, src=..., dst=..., rc=..., maskPos=<optimized out>)
    at /usr/include/c++/8/bits/atomic_base.h:295
#7  0x00007ffff5cbad0c in
KisMask::mergeInMaskInternal(KisSharedPtr<KisPaintDevice>,
KisSharedPtr<KisSelection>, QRect const&, QRect const&,
KisNode::PositionToFilthy) const (this=0x55555e84d6b0, projection=...,
effectiveSelection=..., applyRect=..., preparedNeedRect=..., maskPos=<optimized
out>) at /home/tymon/kritadev/krita/libs/image/kis_mask.cc:340
#8  0x00007ffff5cbe081 in KisMask::apply(KisSharedPtr<KisPaintDevice>, QRect
const&, QRect const&, KisNode::PositionToFilthy) const (this=0x55555e84d6b0,
projection=..., applyRect=..., needRect=..., maskPos=KisNode::N_ABOVE_FILTHY)
    at /usr/include/c++/8/bits/atomic_base.h:295
#9  0x00007ffff5c92dde in KisLayer::applyMasks(KisSharedPtr<KisPaintDevice>,
KisSharedPtr<KisPaintDevice>, QRect const&, KisSharedPtr<KisNode>,
KisSharedPtr<KisNode>) const (this=0x55555ddff8c0, source=..., destination=...,
requestedRect=..., filthyNode=..., lastNode=...) at
/usr/include/c++/8/bits/atomic_base.h:295
#10 0x00007ffff5c931d2 in KisLayer::updateProjection(QRect const&,
KisSharedPtr<KisNode>) (this=0x55555ddff8c0, rect=..., filthyNode=...) at
/usr/include/c++/8/bits/atomic_base.h:295
#11 0x00007ffff5c98239 in KisLayerProjectionPlane::recalculate(QRect const&,
KisSharedPtr<KisNode>) (this=<optimized out>, rect=..., filthyNode=...) at
/usr/include/c++/8/bits/atomic_base.h:295
#12 0x00007ffff5c27670 in KisAsyncMerger::startMerge(KisBaseRectsWalker&, bool)
(this=0x55555c189408, walker=..., notifyClones=<optimized out>) at
/usr/include/c++/8/bits/atomic_base.h:295
#13 0x00007ffff5e83740 in non-virtual thunk to KisUpdateJobItem::run() () at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:234
#14 0x00007ffff4663f71 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007ffff466bc87 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007ffff1a3a182 in start_thread (arg=<optimized out>) at
pthread_create.c:486
#17 0x00007ffff3f3ab1f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95



SOFTWARE/OS VERSIONS
Krita

 Version: 4.4.0 (appimage)
 Languages: en_US, en, en_US, en, en_US, en, pl_PL, pl, pl_PL, pl
 Hidpi: true

Qt

  Version (compiled): 5.12.9
  Version (loaded): 5.12.9

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

Reply via email to