Summary: | krita 5.2.3 can't open the file i saved in an old version (including 5.1.5) | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | 112358asdfg |
Component: | File formats | Assignee: | Krita Bugs <krita-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | critical | CC: | code, dimula73 |
Priority: | NOR | Keywords: | regression |
Version: | 5.2.3 | ||
Target Milestone: | --- | ||
Platform: | Microsoft Windows | ||
OS: | Microsoft Windows | ||
Latest Commit: | https://invent.kde.org/graphics/krita/-/commit/a1ea610de2b57a9b8e737c8524da07d790b0d0f9 | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: |
the auto-saved file before update and the final version of the drawing
part 2 part 3 |
Description
112358asdfg
2024-08-28 14:07:55 UTC
Created attachment 173041 [details]
the auto-saved file before update and the final version of the drawing
Created attachment 173042 [details]
part 2
Created attachment 173043 [details]
part 3
Upgrading to a dataloss bug A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/2228 Hi, 123asdf! Could you please check if this Krita build opens your file correctly? Please pay close attention to the position of the transformation masks that were created for offset only. https://invent.kde.org/graphics/krita/-/jobs/2098635/artifacts/raw/krita-x64-5.3.0-prealpha-50c0f3c5.zip Git commit b3f0ad41d5a1677b8a2821a6b7e7ce16aae27cd2 by Dmitry Kazakov. Committed on 05/09/2024 at 11:37. Pushed by dkazakov into branch 'master'. Fix infinite loop with combination of clone + transform-mask-on-source Some tricky combination of transform masks and clone layers could cause an infinite loop, e.g. this one: +-----------------+ |root | | clone_of_p1 -+ | | paint 2 | | | paint 1 <-+ | | transf1 | +-----------------+ When a clone layer is updated, it may request recalculation of the source layer in the areas outside the bounds of the image. This outside-the-image update could cause the async regeneration of the mask. And async regeneration of the mask could cause an update of the clone layer, which would close the infinite loop. M +6 -1 libs/image/kis_transform_mask.cpp M +6 -1 libs/image/tests/CMakeLists.txt A +- -- libs/image/tests/data/clone_layer_test/tmask_source_00_initial.png A +- -- libs/image/tests/data/clone_layer_test/tmask_source_10_transform_mask_initial_static.png A +- -- libs/image/tests/data/clone_layer_test/tmask_source_20_final.png M +110 -0 libs/image/tests/kis_clone_layer_test.cpp M +4 -0 libs/image/tests/kis_clone_layer_test.h M +39 -109 plugins/tools/tool_transform2/tests/TransformStrokeStrategyTest.cpp M +9 -6 sdk/tests/KisDumbTransformMaskParams.cpp A +87 -0 sdk/tests/KisTransformMaskTestingListener.h [License: GPL(v2.0+)] https://invent.kde.org/graphics/krita/-/commit/b3f0ad41d5a1677b8a2821a6b7e7ce16aae27cd2 Git commit 58bb19c0bff170381682dcf634beb1e50d84e0e9 by Dmitry Kazakov. Committed on 05/09/2024 at 11:37. Pushed by dkazakov into branch 'master'. Make sure that older files with simple transform masks load fine M +14 -0 plugins/impex/libkra/kis_kra_load_visitor.cpp M +29 -0 plugins/tools/tool_transform2/kis_transform_mask_adapter.cpp M +1 -0 plugins/tools/tool_transform2/kis_transform_mask_adapter.h M +1 -0 plugins/tools/tool_transform2/tool_transform.cc https://invent.kde.org/graphics/krita/-/commit/58bb19c0bff170381682dcf634beb1e50d84e0e9 Git commit a1ea610de2b57a9b8e737c8524da07d790b0d0f9 by Dmitry Kazakov. Committed on 05/09/2024 at 11:45. Pushed by dkazakov into branch 'krita/5.2'. Make sure that older files with simple transform masks load fine M +14 -0 plugins/impex/libkra/kis_kra_load_visitor.cpp M +29 -0 plugins/tools/tool_transform2/kis_transform_mask_adapter.cpp M +1 -0 plugins/tools/tool_transform2/kis_transform_mask_adapter.h M +1 -0 plugins/tools/tool_transform2/tool_transform.cc https://invent.kde.org/graphics/krita/-/commit/a1ea610de2b57a9b8e737c8524da07d790b0d0f9 Git commit 1d1159b5eaafed77f0d3f86fcf54289f3c1abe9c by Dmitry Kazakov. Committed on 05/09/2024 at 11:45. Pushed by dkazakov into branch 'krita/5.2'. Fix infinite loop with combination of clone + transform-mask-on-source Some tricky combination of transform masks and clone layers could cause an infinite loop, e.g. this one: +-----------------+ |root | | clone_of_p1 -+ | | paint 2 | | | paint 1 <-+ | | transf1 | +-----------------+ When a clone layer is updated, it may request recalculation of the source layer in the areas outside the bounds of the image. This outside-the-image update could cause the async regeneration of the mask. And async regeneration of the mask could cause an update of the clone layer, which would close the infinite loop. M +6 -1 libs/image/kis_transform_mask.cpp M +6 -1 libs/image/tests/CMakeLists.txt A +- -- libs/image/tests/data/clone_layer_test/tmask_source_00_initial.png A +- -- libs/image/tests/data/clone_layer_test/tmask_source_10_transform_mask_initial_static.png A +- -- libs/image/tests/data/clone_layer_test/tmask_source_20_final.png M +110 -0 libs/image/tests/kis_clone_layer_test.cpp M +4 -0 libs/image/tests/kis_clone_layer_test.h M +39 -109 plugins/tools/tool_transform2/tests/TransformStrokeStrategyTest.cpp M +9 -6 sdk/tests/KisDumbTransformMaskParams.cpp A +87 -0 sdk/tests/KisTransformMaskTestingListener.h [License: GPL(v2.0+)] https://invent.kde.org/graphics/krita/-/commit/1d1159b5eaafed77f0d3f86fcf54289f3c1abe9c *** Bug 486877 has been marked as a duplicate of this bug. *** (In reply to Dmitry Kazakov from comment #6) > Hi, 123asdf! > > Could you please check if this Krita build opens your file correctly? Please > pay close attention to the position of the transformation masks that were > created for offset only. > > https://invent.kde.org/graphics/krita/-/jobs/2098635/artifacts/raw/krita-x64- > 5.3.0-prealpha-50c0f3c5.zip yes, it can open my file correctly |