Bug 407630 - 4.2.0-beta appimage does not display saved vectors
Summary: 4.2.0-beta appimage does not display saved vectors
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Layers/Vector (show other bugs)
Version: nightly build (please specify the git hash!)
Platform: Debian stable Linux
: NOR major
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-17 07:18 UTC by Ahab Greybeard
Modified: 2019-05-18 06:43 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ahab Greybeard 2019-05-17 07:18:31 UTC
SUMMARY
This bug only happens with the krita-4.2.0-beta-fb226d0-x86_64.appimage.
I think the 4.2.0 beta Windows version is not ready yet?

Vectors in a newly created layer will be displayed and saved but will not be displayed when the .kra file is opened again after saving. Any additional lines drawn will replace the original line but not be displayed after Save and re-Open.

STEPS TO REPRODUCE
1. Make a new file and add a vector layer then draw a line in that layer.
2. Save As line.kra then Close the image.
3. Examine the contents of line.kra and note that all seems to be correct.
4. Open line.kra - the vector line is not shown.
5. Draw a second line and Save then Close the image.
6. Examine line.kra and note that it now contains only the second line.
7. Open line.kra - nothing is shown - etc. etc.

OBSERVED RESULT
As described above.

EXPECTED RESULT
The vector lines should be shown and should remain after new lines are drawn

SOFTWARE/OS VERSIONS
Krita

 Version: 4.2.0-beta (git fb226d0)
 Languages: en_GB, en
 Hidpi: true

Qt

  Version (compiled): 5.12.2
  Version (loaded): 5.12.2

OS Information

  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 4.9.0-9-amd64
  Pretty Productname: Debian GNU/Linux 9 (stretch)
  Product Type: debian
  Product Version: 9

Hardware Information

  GPU Acceleration: auto
  Memory: 16049 Mb
  Number of Cores: 8
  Swap Location: /tmp

ADDITIONAL INFORMATION
The situation is more complicated in that the presence of a second vector layer seems to 'protect' the lines in another vector layer but you can't draw/save lines in one of the layers.

Also, if you open the file with a recent 4.2.0-alpha appimage and add a line, then save it, that additional line will be displayed in the 4.2.0-alpha but not in the 4.2.0-beta.

It's difficult to describe in words and gets more complicated the more you try different actions.
Comment 1 Halla Rempt 2019-05-17 07:51:28 UTC
All beta builds for all platforms were released yesterday.
Comment 2 Halla Rempt 2019-05-17 09:21:38 UTC
Ah, you're not talking about the beta itself, but the latest nightly build. That contained a fix for https://bugs.kde.org/show_bug.cgi?id=407537 that broke other files. I've reverted the fix and am trying to figure out a different solution.
Comment 3 Ahab Greybeard 2019-05-17 09:40:37 UTC
It does identify itself as a 'beta' as does the very recent Windows nightly build, hence the 'confusion'.
The latest Windows nightly build is listed as an 'alpha' but self-identifies as a 'beta' when it runs.
Comment 4 Halla Rempt 2019-05-17 09:43:30 UTC
yes, the way the binary factory automatically determines the filenames is different for windows and and for linux.
Comment 5 Halla Rempt 2019-05-17 09:43:59 UTC
Git commit 4cb990274f8664d4eb3311af7755c8ff6065150c by Boudewijn Rempt.
Committed on 17/05/2019 at 09:40.
Pushed by rempt into branch 'master'.

Add a legacy zip store for writing backwards-compatible kra files

Use the Quazip store for reading and writing 64 bits zip files,
the Legacy store for writing 32 bits zip files. It's still not
ideal, having two zip implementations (and a third one hidden
inside Qt), but this gives maximal compatibility. Vectors and
colorize masks load again as well.
Related: bug 407601, bug 407537

M  +1    -0    CMakeLists.txt
M  +2    -0    libs/store/CMakeLists.txt
A  +272  -0    libs/store/KoLegacyZipStore.cpp     [License: LGPL (v2+)]
A  +73   -0    libs/store/KoLegacyZipStore.h     [License: LGPL (v2+)]
M  +27   -2    libs/store/KoStore.cpp
M  +2    -0    libs/store/KoStore_p.h

https://invent.kde.org/kde/krita/commit/4cb990274f8664d4eb3311af7755c8ff6065150c
Comment 6 Halla Rempt 2019-05-18 06:43:57 UTC
Git commit 77d87639051c2115aa516897cbb094cc4d8bbb19 by Boudewijn Rempt.
Committed on 18/05/2019 at 06:43.
Pushed by rempt into branch 'krita/4.2'.

Add a legacy zip store for writing backwards-compatible kra files

Use the Quazip store for reading and writing 64 bits zip files,
the Legacy store for writing 32 bits zip files. It's still not
ideal, having two zip implementations (and a third one hidden
inside Qt), but this gives maximal compatibility. Vectors and
colorize masks load again as well.
Related: bug 407601, bug 407537

M  +1    -0    CMakeLists.txt
M  +2    -0    libs/store/CMakeLists.txt
A  +272  -0    libs/store/KoLegacyZipStore.cpp     [License: LGPL (v2+)]
A  +73   -0    libs/store/KoLegacyZipStore.h     [License: LGPL (v2+)]
M  +27   -2    libs/store/KoStore.cpp
M  +2    -0    libs/store/KoStore_p.h

https://invent.kde.org/kde/krita/commit/77d87639051c2115aa516897cbb094cc4d8bbb19