Bug 455361 - Crash when exporting animation to jxl
Summary: Crash when exporting animation to jxl
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Animation (show other bugs)
Version: nightly build (please specify the git hash!)
Platform: Microsoft Windows Microsoft Windows
: NOR crash
Target Milestone: ---
Assignee: amyspark
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-06-15 19:19 UTC by Alvin Wong
Modified: 2022-06-28 18:52 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
crash backtrace (2.29 KB, text/plain)
2022-06-15 19:19 UTC, Alvin Wong
Details
test file (67.79 KB, application/x-krita)
2022-06-16 10:14 UTC, Alvin Wong
Details
crash backtrace with line numbers (6.98 KB, text/plain)
2022-06-16 10:16 UTC, Alvin Wong
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alvin Wong 2022-06-15 19:19:35 UTC
Created attachment 149754 [details]
crash backtrace

Got a crash when exporting an animation with animated transform mask. I can't exactly share the file I have, but I can try to make a reproducer later if needed.

Nightly d51784a501
Comment 1 amyspark 2022-06-15 22:23:59 UTC
Your file has a strange state; the image claims that it's animated yet its projection lacks a keyframe channel, so it cannot be rendered. Emmet, is this something expected?
Comment 2 Alvin Wong 2022-06-16 10:14:57 UTC
Created attachment 149779 [details]
test file

Here is a very simple file that crashes when exporting to jxl.
Comment 3 Alvin Wong 2022-06-16 10:16:58 UTC
Created attachment 149780 [details]
crash backtrace with line numbers

Backtrace with line numbers in case you need it (this is with nightly 93e3db259c)
Comment 4 amyspark 2022-06-16 11:27:17 UTC
(In reply to Alvin Wong from comment #3)
> Created attachment 149780 [details]
> crash backtrace with line numbers
> 
> Backtrace with line numbers in case you need it (this is with nightly
> 93e3db259c)

Yeah, it's exactly as I expected. The file claims to be animated but the keyframe channel of the projection (JXL can't take layers) doesn't exist.
Comment 5 amyspark 2022-06-17 01:25:28 UTC
Git commit 6ec76fd7917f1160dbb7301404f0cf5812fe9092 by L. E. Segovia.
Committed on 17/06/2022 at 01:25.
Pushed by lsegovia into branch 'master'.

JPEG-XL: fix export of multi-layer animations

M  +8    -2    plugins/impex/jxl/JPEGXLExport.cpp

https://invent.kde.org/graphics/krita/commit/6ec76fd7917f1160dbb7301404f0cf5812fe9092
Comment 6 amyspark 2022-06-17 01:26:10 UTC
Git commit 36109032410e9c249b8e579a3eb51c1e3f7e96d2 by L. E. Segovia.
Committed on 17/06/2022 at 01:25.
Pushed by lsegovia into branch 'krita/5.1'.

JPEG-XL: fix export of multi-layer animations
(cherry picked from commit 6ec76fd7917f1160dbb7301404f0cf5812fe9092)

M  +8    -2    plugins/impex/jxl/JPEGXLExport.cpp

https://invent.kde.org/graphics/krita/commit/36109032410e9c249b8e579a3eb51c1e3f7e96d2
Comment 7 amyspark 2022-06-28 18:50:55 UTC
Git commit c771be4d29190a594c7f7110e3432dfdb810ee15 by L. E. Segovia.
Committed on 28/06/2022 at 17:31.
Pushed by lsegovia into branch 'master'.

JPEG XL: fix retrieval of the projection

After flattening, the projection is the first node. Assert that
it's animated and has a paint device.

M  +5    -1    plugins/impex/jxl/JPEGXLExport.cpp

https://invent.kde.org/graphics/krita/commit/c771be4d29190a594c7f7110e3432dfdb810ee15
Comment 8 amyspark 2022-06-28 18:52:21 UTC
Git commit f32449d635f18548cf26532e3fda07386778e7d7 by L. E. Segovia.
Committed on 28/06/2022 at 18:51.
Pushed by lsegovia into branch 'krita/5.1'.

JPEG XL: fix retrieval of the projection

After flattening, the projection is the first node. Assert that
it's animated and has a paint device.
(cherry picked from commit c771be4d29190a594c7f7110e3432dfdb810ee15)

M  +5    -1    plugins/impex/jxl/JPEGXLExport.cpp

https://invent.kde.org/graphics/krita/commit/f32449d635f18548cf26532e3fda07386778e7d7