Fix opening psd files with RGBA layers when A mode is not of type 65535

but 3.
Fixes issue https://github.com/python-imaging/Pillow/issues/3
This commit is contained in:
tdesvenain 2012-07-29 15:48:40 +02:00
parent f5caa40711
commit 4ebe7fc459
2 changed files with 13 additions and 4 deletions

View File

@ -165,7 +165,6 @@ def _layerinfo(file):
# read layerinfo block
layers = []
read = file.read
for i in range(abs(i16(read(2)))):
# bounding box
@ -175,12 +174,18 @@ def _layerinfo(file):
# image info
info = []
mode = []
for i in range(i16(read(2))):
types = range(i16(read(2)))
if len(types) > 4:
continue
for i in types:
type = i16(read(2))
if type == 65535:
m = "A"
else:
m = "RGB"[type]
m = "RGBA"[type]
mode.append(m)
size = i32(read(4))
info.append((m, size))

View File

@ -5,6 +5,10 @@ Changelog
1.7.8 (Unreleased)
------------------
- Fix opening psd files with RGBA layers when A mode is not of type 65535 but 3.
Fixes issue https://github.com/python-imaging/Pillow/issues/3
[thomasdesvenain]
1.7.7 (2012-04-04)
------------------