From ee8c9c352244df448b45c263bebefff768aff7bf Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 30 Oct 2023 21:12:04 +1100 Subject: [PATCH 1/4] Removed unused test images --- Tests/images/unimplemented_fourcc.dds | Bin 32896 -> 0 bytes Tests/images/unknown_fourcc.dds | Bin 32896 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 Tests/images/unimplemented_fourcc.dds delete mode 100755 Tests/images/unknown_fourcc.dds diff --git a/Tests/images/unimplemented_fourcc.dds b/Tests/images/unimplemented_fourcc.dds deleted file mode 100755 index 4795573646b08ff503908e2d50ccb3a5b6bf0863..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32896 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 Zf8OR^GO=}gj=(gg2&mz%@jM&z{vSC0Wu^cC diff --git a/Tests/images/unknown_fourcc.dds b/Tests/images/unknown_fourcc.dds deleted file mode 100755 index 41a343886151ed2992ba8d00edadeb6f3cac5dee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32896 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 b@4EiH&Ant|>-HRhX-pAN!(HQfHs<|5>v?9Y From 5fd3035362eb8c4ab7fbe7e9e6549b3d98d0b68c Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 30 Oct 2023 21:24:42 +1100 Subject: [PATCH 2/4] Removed duplicate test --- Tests/test_file_dds.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Tests/test_file_dds.py b/Tests/test_file_dds.py index bed143656a5..098d7da8b66 100644 --- a/Tests/test_file_dds.py +++ b/Tests/test_file_dds.py @@ -210,12 +210,6 @@ def test_dx10_r8g8b8a8_unorm_srgb(): ) -def test_unimplemented_dxgi_format(): - with pytest.raises(NotImplementedError): - with Image.open("Tests/images/unimplemented_dxgi_format.dds"): - pass - - @pytest.mark.parametrize( ("mode", "size", "test_file"), [ From 881461063594ad6697cbb451e07f75c0b200c679 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 30 Oct 2023 22:05:08 +1100 Subject: [PATCH 3/4] Only unpack masks when necessary --- src/PIL/DdsImagePlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PIL/DdsImagePlugin.py b/src/PIL/DdsImagePlugin.py index 581e60a3f08..30f021b7dc5 100644 --- a/src/PIL/DdsImagePlugin.py +++ b/src/PIL/DdsImagePlugin.py @@ -345,11 +345,11 @@ def _open(self): # pixel format pfsize, pfflags, fourcc, bitcount = struct.unpack("<4I", header.read(16)) - masks = struct.unpack("<4I", header.read(16)) n = 0 rawmode = None if pfflags & DDPF.RGB: # Texture contains uncompressed RGB data + masks = struct.unpack("<4I", header.read(16)) masks = {mask: ["R", "G", "B", "A"][i] for i, mask in enumerate(masks)} if bitcount == 8: self._mode = "L" From ddcbfde4468ed664e3331568d331440677e01682 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 30 Oct 2023 22:22:37 +1100 Subject: [PATCH 4/4] Test BC4U --- Tests/images/bc4u.dds | Bin 0 -> 2896 bytes Tests/test_file_dds.py | 13 +++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 Tests/images/bc4u.dds diff --git a/Tests/images/bc4u.dds b/Tests/images/bc4u.dds new file mode 100644 index 0000000000000000000000000000000000000000..7f9f050b6f16f5b9e86979cff742697ec2d9423e GIT binary patch literal 2896 zcmeH}Ur1A77{))hH9cp}%{c|7Y_*k8hL(EaA8^!maRk9M&5H=NG8rt9@E;mXg&+{p z(Zta%M6=K?iqtD-4YjKr36YqRXv$d$VcFTbh*F*DuO`K)jX&8@gtHq!VpQJqyr@<6 zSd*3{CH9u#QSD~Q48KRsX_qoedOaCa@$1BBFCXHQ1h2D<=s4{=%e;#iM$~KIdvBkO z_mQF#micpuf!xMXsN*=zYpA#SN5%T0pYZAk<1U>TQTop4iQ|@)<p!;swTXx2P^AR+c~E4$Ik4A>vNhk9Q^T2VHR6Oz94 zgyvx%F$&Da>Y*9cVnD7-R_(8k5f;?#U$u=Dksl?c{AU{Z3i1y3Ncl zHw~J)ctL82PVX;#F0iRP_3z^ft$5ucErRep3YU@YZ@Ws@ zS6@SU{xn@@v5~SMgZf8P>3xclk|A}She7xrh093yClW$5@$@(EKmX0o!3O^d^#|$N fBSjrNLv|K@1~JCK7_*6v30+r||G2(fORv8Htp&&- literal 0 HcmV?d00001 diff --git a/Tests/test_file_dds.py b/Tests/test_file_dds.py index 098d7da8b66..b1fcab249d4 100644 --- a/Tests/test_file_dds.py +++ b/Tests/test_file_dds.py @@ -17,6 +17,7 @@ TEST_FILE_DX10_BC5_SNORM = "Tests/images/bc5_snorm.dds" TEST_FILE_DX10_BC1 = "Tests/images/bc1.dds" TEST_FILE_DX10_BC1_TYPELESS = "Tests/images/bc1_typeless.dds" +TEST_FILE_BC4U = "Tests/images/bc4u.dds" TEST_FILE_BC5S = "Tests/images/bc5s.dds" TEST_FILE_BC5U = "Tests/images/bc5u.dds" TEST_FILE_BC6H = "Tests/images/bc6h.dds" @@ -80,10 +81,18 @@ def test_sanity_dxt5(): assert_image_equal_tofile(im, TEST_FILE_DXT5.replace(".dds", ".png")) -def test_sanity_ati1(): +@pytest.mark.parametrize( + "image_path", + ( + TEST_FILE_ATI1, + # hexeditted to use BC4U FourCC + TEST_FILE_BC4U, + ), +) +def test_sanity_ati1_bc4u(image_path): """Check ATI1 images can be opened""" - with Image.open(TEST_FILE_ATI1) as im: + with Image.open(image_path) as im: im.load() assert im.format == "DDS"