Bug 262324

Summary: krita produces artefacts when upscaling
Product: [Applications] krita Reporter: Halla Rempt <halla>
Component: GeneralAssignee: LukasT <lukast.dev>
Severity: critical CC: cberger, dimula73, lukast.dev, pentalis
Priority: NOR Keywords: release_blocker
Version: unspecified   
Target Milestone: ---   
Platform: Unlisted Binaries   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Halla Rempt 2011-01-06 17:29:37 UTC
When upscaling (say, from 2000 to 10000, approx), krita can produce artefacts that look like we're reading wrong pixel data. This means we can show transparent squares, spurious colored lines or colored blocks. See http://www.valdyas.org/~boud/krita_scaling3.jpg.
Comment 1 Halla Rempt 2011-01-10 20:17:48 UTC
Ico reports that this might be a regression; apparently an earlier beta didn't have the problem. On the other hand, the issue seems to happen intermittently.
Comment 2 LukasT 2011-04-02 17:55:54 UTC
"See" image is missing here.
Comment 3 Halla Rempt 2011-06-09 15:13:32 UTC
It's a png, I think http://www.valdyas.org/~boud/krita_scaling3.png
Comment 4 pentalis 2011-10-17 00:06:21 UTC
This bug _might_ have been related to the bug in the new iterators, which was solved in 2a578a2c77d7394523b790bc989a7a07e905c110

Can someone still reproduce this?, Can we close it?.
Comment 5 Dmitry Kazakov 2011-10-17 12:52:42 UTC
Still reproducible
Comment 6 LukasT 2011-10-17 13:33:39 UTC
It is still reproducible, I work on this one.
It might be related to iterators, not sure yet.

I was able to rescale image from 1000 to 10000 pixels by doing more steps.
S possible work-around is to scale from 1000 to 2000 then to 4000 to 8000 to 10000.
Comment 7 Cyrille Berger 2011-10-24 12:40:59 UTC
On a side note, the transform code is using the old iterators.
Comment 8 Halla Rempt 2011-10-30 13:34:21 UTC
Lukas is working on this.
Comment 9 LukasT 2011-12-29 14:06:36 UTC
Git commit 8d7cf7b38a17c71cb32cb5b12e004c96899326f0 by Lukáš Tvrdý.
Committed on 29/12/2011 at 14:25.
Pushed by lukast into branch 'master'.

Fix artefacts when upscaling

o overflow in arithemthics caused opaque
  pixels, might fix crashes for scaling for MSVC compiler
o removed alias variable
o fix coding style: add braces to single-line if conditions
o add asserts to catch overflows

M  +40   -25   krita/image/kis_transform_worker.cc