GIMP doesn't load all the layers in a PSD file
Environment/Versions
- GIMP version: 2.10.36
- Package: Homebrew Cask
- Operating System: macOS 12.7.1 Monterey
Description of the bug
The current PSD loader implementation may not load all the layers in a PSD file that must be loaded.
This issue can be reproduced by using GIMP to load a PSD file (hereinafter referred to as "the reproducible PSD file") that has been uploaded to the location accessible to any users all over the world. The instructions for obtaining the reproducible PSD file are provided in the "Reproduction" section.
The reproducible PSD file contains a face layer with eyes and a mouth. However, at least as far as we can see, the left eye (左目) and mouth (口) layers are not loaded. Normally, these layers should exist under the 全体 (whole body) → 頭;前面 (head; front) → 顔 (face) layers hierarchy. For now, I don't use any other image editors allowing me to exactly check all the layers, so other layers may not be loaded too.
Some codes in the plug-ins/file-psd
module may need to be improved.
Disclaimer: I am NOT the author of this PSD file.
Caution: The author of the PSD file says in the readme.txt
in the ZIP file, “redistribution or reprinting of the PSD file is prohibited for any reason.”
Reproduction
Is the bug reproducible? Always
Reproduction steps:
- Download the ZIP file containing the reproducible PSD file, mentioned in this article.
- Extract the reproducible PSD file from the downloaded ZIP file. Even though the file name may be garbled, you can change it.
- Launch GIMP and load the reproducible PSD file.
- If required, launch the other image viewer or editor and compare with it.
…
Expected result: All the layers (at least more than 175 layers) are loaded.
Actual result: Only 173 layers are loaded. As we can see, left eye (左目) and mouth (口) layers are missing.
Additional information
file-psd[35028:4231761] *** WARNING: Method userSpaceScaleFactor in class NSView is deprecated on 10.7 and later. It should not be used in new applications. Use convertRectToBacking: instead.
when loading the reproducible PSD file.
GIMP consumes about 1.45GB of memory in total as soon as the PSD file is loaded. But no any error or warning messages about memory issues are observed