diff --git a/patches/avifil32-AVIFileGetStream/0001-avifil32-AVIFileGetStream-should-set-stream-to-NULL-.patch b/patches/avifil32-AVIFileGetStream/0001-avifil32-AVIFileGetStream-should-set-stream-to-NULL-.patch deleted file mode 100644 index 234dc55f..00000000 --- a/patches/avifil32-AVIFileGetStream/0001-avifil32-AVIFileGetStream-should-set-stream-to-NULL-.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 64ce8c391c3706a2b3ce9b5f8f76710d5751a766 Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Thu, 20 Oct 2016 17:48:24 +0800 -Subject: avifil32: AVIFileGetStream should set stream to NULL in case of an - error. - ---- - dlls/avifil32/avifile.c | 1 + - dlls/avifil32/tests/api.c | 5 +++++ - 2 files changed, 6 insertions(+) - -diff --git a/dlls/avifil32/avifile.c b/dlls/avifil32/avifile.c -index f649d05..7a4caaa 100644 ---- a/dlls/avifil32/avifile.c -+++ b/dlls/avifil32/avifile.c -@@ -316,6 +316,7 @@ static HRESULT WINAPI IAVIFile_fnGetStream(IAVIFile *iface, IAVIStream **avis, D - } - - /* Sorry, but the specified stream doesn't exist */ -+ *avis = NULL; - return AVIERR_NODATA; - } - -diff --git a/dlls/avifil32/tests/api.c b/dlls/avifil32/tests/api.c -index b3d822d..8a00865 100644 ---- a/dlls/avifil32/tests/api.c -+++ b/dlls/avifil32/tests/api.c -@@ -373,6 +373,11 @@ static void test_default_data(void) - res = AVIFileOpenA(&pFile, filename, OF_SHARE_DENY_WRITE, 0L); - ok(res == 0, "Unable to open file: error=%u\n", res); - -+ pStream0 = (void *)0xdeadbeef; -+ res = AVIFileGetStream(pFile, &pStream0, ~0, 0); -+ ok(res == AVIERR_NODATA, "expected AVIERR_NODATA, got %#x\n", res); -+ ok(pStream0 == NULL, "AVIFileGetStream should set stream to NULL\n"); -+ - res = AVIFileGetStream(pFile, &pStream0, 0, 0); - ok(res == 0, "Unable to open video stream: error=%u\n", res); - --- -2.9.0 - diff --git a/patches/avifil32-AVIFileGetStream/definition b/patches/avifil32-AVIFileGetStream/definition deleted file mode 100644 index 45e2ed85..00000000 --- a/patches/avifil32-AVIFileGetStream/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [41579] AVIFileGetStream should set stream to NULL in case of an error diff --git a/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch b/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch index c01e1b90..5ee5180f 100644 --- a/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch +++ b/patches/d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch @@ -1,4 +1,4 @@ -From 499d0a3ccd24ffb60e5fe58dd054b71de1f3121f Mon Sep 17 00:00:00 2001 +From 33854851913e9046eb6ea4cd765a2f0026729f07 Mon Sep 17 00:00:00 2001 From: Christian Costa Date: Sat, 1 Nov 2014 13:08:05 +0100 Subject: d3dx9_36: Add dxtn support. @@ -29,7 +29,7 @@ Subject: d3dx9_36: Add dxtn support. 22 files changed, 120 insertions(+), 31 deletions(-) diff --git a/dlls/d3dx9_24/Makefile.in b/dlls/d3dx9_24/Makefile.in -index 7464bd1..bca7d82 100644 +index 7464bd1f18f..bca7d826db0 100644 --- a/dlls/d3dx9_24/Makefile.in +++ b/dlls/d3dx9_24/Makefile.in @@ -1,5 +1,5 @@ @@ -40,7 +40,7 @@ index 7464bd1..bca7d82 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_25/Makefile.in b/dlls/d3dx9_25/Makefile.in -index 1531e66..5d847a2 100644 +index 1531e66c1e6..5d847a2828b 100644 --- a/dlls/d3dx9_25/Makefile.in +++ b/dlls/d3dx9_25/Makefile.in @@ -1,5 +1,5 @@ @@ -51,7 +51,7 @@ index 1531e66..5d847a2 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_26/Makefile.in b/dlls/d3dx9_26/Makefile.in -index 2a58c58..cf0c150 100644 +index 2a58c58b8a1..cf0c1509693 100644 --- a/dlls/d3dx9_26/Makefile.in +++ b/dlls/d3dx9_26/Makefile.in @@ -1,5 +1,5 @@ @@ -62,7 +62,7 @@ index 2a58c58..cf0c150 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_27/Makefile.in b/dlls/d3dx9_27/Makefile.in -index 9ba1e2a..7cc647c 100644 +index 9ba1e2ac5bd..7cc647c1647 100644 --- a/dlls/d3dx9_27/Makefile.in +++ b/dlls/d3dx9_27/Makefile.in @@ -1,5 +1,5 @@ @@ -73,7 +73,7 @@ index 9ba1e2a..7cc647c 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_28/Makefile.in b/dlls/d3dx9_28/Makefile.in -index 15dec71..bbf4140 100644 +index 15dec71f2d7..bbf4140e723 100644 --- a/dlls/d3dx9_28/Makefile.in +++ b/dlls/d3dx9_28/Makefile.in @@ -1,5 +1,5 @@ @@ -84,7 +84,7 @@ index 15dec71..bbf4140 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_29/Makefile.in b/dlls/d3dx9_29/Makefile.in -index 5a5a8fc..1aa1663 100644 +index 5a5a8fcad97..1aa1663ea06 100644 --- a/dlls/d3dx9_29/Makefile.in +++ b/dlls/d3dx9_29/Makefile.in @@ -1,5 +1,5 @@ @@ -95,7 +95,7 @@ index 5a5a8fc..1aa1663 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_30/Makefile.in b/dlls/d3dx9_30/Makefile.in -index bafcdb4..df8f87b 100644 +index bafcdb49312..df8f87bfedf 100644 --- a/dlls/d3dx9_30/Makefile.in +++ b/dlls/d3dx9_30/Makefile.in @@ -1,5 +1,5 @@ @@ -106,7 +106,7 @@ index bafcdb4..df8f87b 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_31/Makefile.in b/dlls/d3dx9_31/Makefile.in -index f5df4d8..6ea8d15 100644 +index f5df4d88ae0..6ea8d15b411 100644 --- a/dlls/d3dx9_31/Makefile.in +++ b/dlls/d3dx9_31/Makefile.in @@ -1,5 +1,5 @@ @@ -117,7 +117,7 @@ index f5df4d8..6ea8d15 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_32/Makefile.in b/dlls/d3dx9_32/Makefile.in -index cce9293..df0759f 100644 +index cce9293063c..df0759fedfc 100644 --- a/dlls/d3dx9_32/Makefile.in +++ b/dlls/d3dx9_32/Makefile.in @@ -1,5 +1,5 @@ @@ -128,7 +128,7 @@ index cce9293..df0759f 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_33/Makefile.in b/dlls/d3dx9_33/Makefile.in -index c9b6587..ecf1b15 100644 +index c9b6587e77b..ecf1b1598c9 100644 --- a/dlls/d3dx9_33/Makefile.in +++ b/dlls/d3dx9_33/Makefile.in @@ -1,5 +1,5 @@ @@ -139,7 +139,7 @@ index c9b6587..ecf1b15 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_34/Makefile.in b/dlls/d3dx9_34/Makefile.in -index 822f621..2dcd721 100644 +index 822f621008d..2dcd721c0a9 100644 --- a/dlls/d3dx9_34/Makefile.in +++ b/dlls/d3dx9_34/Makefile.in @@ -1,5 +1,5 @@ @@ -150,7 +150,7 @@ index 822f621..2dcd721 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_35/Makefile.in b/dlls/d3dx9_35/Makefile.in -index 3c8df66..8c90f16 100644 +index 3c8df661029..8c90f16b24f 100644 --- a/dlls/d3dx9_35/Makefile.in +++ b/dlls/d3dx9_35/Makefile.in @@ -1,5 +1,5 @@ @@ -161,7 +161,7 @@ index 3c8df66..8c90f16 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_36/Makefile.in b/dlls/d3dx9_36/Makefile.in -index 24ce09d..6b78518 100644 +index 24ce09daefa..6b78518dc71 100644 --- a/dlls/d3dx9_36/Makefile.in +++ b/dlls/d3dx9_36/Makefile.in @@ -1,6 +1,6 @@ @@ -173,7 +173,7 @@ index 24ce09d..6b78518 100644 C_SRCS = \ diff --git a/dlls/d3dx9_36/surface.c b/dlls/d3dx9_36/surface.c -index 1bfe75a..4099cd5 100644 +index fc747799d6d..f851e74ee76 100644 --- a/dlls/d3dx9_36/surface.c +++ b/dlls/d3dx9_36/surface.c @@ -27,6 +27,8 @@ @@ -225,8 +225,8 @@ index 1bfe75a..4099cd5 100644 } else /* Stretching or format conversion. */ { -- if (((srcformatdesc->type != FORMAT_ARGB) && (srcformatdesc->type != FORMAT_INDEX)) || -- (destformatdesc->type != FORMAT_ARGB)) +- if (!is_conversion_from_supported(srcformatdesc) +- || !is_conversion_to_supported(destformatdesc)) + dxtn_conversion_func pre_convert, post_convert; + void *tmp_src_memory = NULL, *tmp_dst_memory = NULL; + UINT tmp_src_pitch, tmp_dst_pitch; @@ -234,10 +234,10 @@ index 1bfe75a..4099cd5 100644 + pre_convert = get_dxtn_conversion_func(srcformatdesc->format, FALSE); + post_convert = get_dxtn_conversion_func(destformatdesc->format, TRUE); + -+ if ((!pre_convert && (srcformatdesc->type != FORMAT_ARGB) && (srcformatdesc->type != FORMAT_INDEX)) || -+ (!post_convert && (destformatdesc->type != FORMAT_ARGB))) ++ if ((!pre_convert && !is_conversion_from_supported(srcformatdesc)) || ++ (!post_convert && !is_conversion_to_supported(destformatdesc))) { - FIXME("Format conversion missing %#x -> %#x\n", src_format, surfdesc.Format); + FIXME("Unsupported format conversion %#x -> %#x.\n", src_format, surfdesc.Format); return E_NOTIMPL; @@ -1847,10 +1878,52 @@ HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface, if (FAILED(IDirect3DSurface9_LockRect(dst_surface, &lockrect, dst_rect, 0))) @@ -329,7 +329,7 @@ index 1bfe75a..4099cd5 100644 /************************************************************ diff --git a/dlls/d3dx9_36/tests/surface.c b/dlls/d3dx9_36/tests/surface.c -index f2855e8..2be48df 100644 +index f2855e8ddb8..2be48dfddab 100644 --- a/dlls/d3dx9_36/tests/surface.c +++ b/dlls/d3dx9_36/tests/surface.c @@ -1174,7 +1174,7 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device) @@ -364,7 +364,7 @@ index f2855e8..2be48df 100644 check_release((IUnknown*)newsurf, 1); check_release((IUnknown*)tex, 0); diff --git a/dlls/d3dx9_37/Makefile.in b/dlls/d3dx9_37/Makefile.in -index 672878f..9eecd32 100644 +index 672878ff7e4..9eecd32899d 100644 --- a/dlls/d3dx9_37/Makefile.in +++ b/dlls/d3dx9_37/Makefile.in @@ -1,5 +1,5 @@ @@ -375,7 +375,7 @@ index 672878f..9eecd32 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_38/Makefile.in b/dlls/d3dx9_38/Makefile.in -index 0b537c6..6bb7bac 100644 +index 0b537c66b68..6bb7bac0513 100644 --- a/dlls/d3dx9_38/Makefile.in +++ b/dlls/d3dx9_38/Makefile.in @@ -1,5 +1,5 @@ @@ -386,7 +386,7 @@ index 0b537c6..6bb7bac 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_39/Makefile.in b/dlls/d3dx9_39/Makefile.in -index 58d88f7..5d03e18 100644 +index 58d88f78abc..5d03e18feb3 100644 --- a/dlls/d3dx9_39/Makefile.in +++ b/dlls/d3dx9_39/Makefile.in @@ -1,5 +1,5 @@ @@ -397,7 +397,7 @@ index 58d88f7..5d03e18 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_40/Makefile.in b/dlls/d3dx9_40/Makefile.in -index a4417b5..8982d4e 100644 +index a4417b5aa13..8982d4ec5e4 100644 --- a/dlls/d3dx9_40/Makefile.in +++ b/dlls/d3dx9_40/Makefile.in @@ -1,5 +1,5 @@ @@ -408,7 +408,7 @@ index a4417b5..8982d4e 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_41/Makefile.in b/dlls/d3dx9_41/Makefile.in -index 0463175..e9f3d65 100644 +index 0463175210a..e9f3d657e6c 100644 --- a/dlls/d3dx9_41/Makefile.in +++ b/dlls/d3dx9_41/Makefile.in @@ -1,5 +1,5 @@ @@ -419,7 +419,7 @@ index 0463175..e9f3d65 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_42/Makefile.in b/dlls/d3dx9_42/Makefile.in -index 309324f..a55736d 100644 +index 309324f4307..a55736d756f 100644 --- a/dlls/d3dx9_42/Makefile.in +++ b/dlls/d3dx9_42/Makefile.in @@ -1,5 +1,5 @@ @@ -430,7 +430,7 @@ index 309324f..a55736d 100644 PARENTSRC = ../d3dx9_36 diff --git a/dlls/d3dx9_43/Makefile.in b/dlls/d3dx9_43/Makefile.in -index 9c1a87d..c2e787c 100644 +index 9c1a87da600..c2e787c5836 100644 --- a/dlls/d3dx9_43/Makefile.in +++ b/dlls/d3dx9_43/Makefile.in @@ -1,5 +1,5 @@ @@ -441,5 +441,5 @@ index 9c1a87d..c2e787c 100644 PARENTSRC = ../d3dx9_36 -- -2.8.0 +2.11.0 diff --git a/patches/kernel32-Named_Pipe/0009-ntdll-Add-handling-for-partially-received-messages-i.patch b/patches/kernel32-Named_Pipe/0009-ntdll-Add-handling-for-partially-received-messages-i.patch index ba79a68b..5481dd50 100644 --- a/patches/kernel32-Named_Pipe/0009-ntdll-Add-handling-for-partially-received-messages-i.patch +++ b/patches/kernel32-Named_Pipe/0009-ntdll-Add-handling-for-partially-received-messages-i.patch @@ -1,4 +1,4 @@ -From cdb1ae761d777e7a1cf4c73edd946c94d1e73700 Mon Sep 17 00:00:00 2001 +From ddcad4846ab1fe881bed762210f369c621bbb2de Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 11 Aug 2014 05:01:11 +0200 Subject: ntdll: Add handling for partially received messages in NtReadFile. @@ -18,10 +18,10 @@ Changes in v4: 2 files changed, 30 insertions(+), 55 deletions(-) diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c -index 5f5553b..3811ccd 100644 +index 71d75be90e8..ae37afd2ee7 100644 --- a/dlls/kernel32/tests/pipe.c +++ b/dlls/kernel32/tests/pipe.c -@@ -305,9 +305,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -313,9 +313,7 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -31,7 +31,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 4, "read got %d bytes\n", readden); -@@ -328,15 +326,11 @@ static void test_CreateNamedPipe(int pipemode) +@@ -336,15 +334,11 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -47,7 +47,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 4, "read got %d bytes\n", readden); -@@ -398,9 +392,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -406,9 +400,7 @@ static void test_CreateNamedPipe(int pipemode) ok(readden == sizeof(obuf) + sizeof(obuf2), "read 4 got %d bytes\n", readden); } else { @@ -58,7 +58,7 @@ index 5f5553b..3811ccd 100644 } pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 4a check\n"); -@@ -430,9 +422,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -438,9 +430,7 @@ static void test_CreateNamedPipe(int pipemode) pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 5a check\n"); ok(ReadFile(hFile, ibuf, sizeof(ibuf), &readden, NULL), "ReadFile\n"); @@ -69,7 +69,7 @@ index 5f5553b..3811ccd 100644 pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 5a check\n"); if (readden <= sizeof(obuf)) -@@ -441,10 +431,8 @@ static void test_CreateNamedPipe(int pipemode) +@@ -449,10 +439,8 @@ static void test_CreateNamedPipe(int pipemode) /* Multiple writes in the reverse direction */ /* the write of obuf2 from write4 should still be in the buffer */ ok(PeekNamedPipe(hnp, ibuf, sizeof(ibuf), &readden, &avail, NULL), "Peek6a\n"); @@ -82,7 +82,7 @@ index 5f5553b..3811ccd 100644 if (avail > 0) { ok(ReadFile(hnp, ibuf, sizeof(ibuf), &readden, NULL), "ReadFile\n"); ok(readden == sizeof(obuf2), "read 6a got %d bytes\n", readden); -@@ -462,9 +450,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -470,9 +458,7 @@ static void test_CreateNamedPipe(int pipemode) pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 6a check\n"); ok(ReadFile(hnp, ibuf, sizeof(ibuf), &readden, NULL), "ReadFile\n"); @@ -93,7 +93,7 @@ index 5f5553b..3811ccd 100644 pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 6a check\n"); if (readden <= sizeof(obuf)) -@@ -475,9 +461,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -483,9 +469,7 @@ static void test_CreateNamedPipe(int pipemode) ok(WriteFile(hnp, obuf2, sizeof(obuf2), &written, NULL), "WriteFile 7\n"); ok(written == sizeof(obuf2), "write file len 7\n"); SetLastError(0xdeadbeef); @@ -103,7 +103,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 7\n"); ok(readden == 4, "read got %d bytes 7\n", readden); ok(ReadFile(hFile, ibuf + 4, sizeof(ibuf) - 4, &readden, NULL), "ReadFile 7\n"); -@@ -488,9 +472,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -496,9 +480,7 @@ static void test_CreateNamedPipe(int pipemode) ok(WriteFile(hFile, obuf, sizeof(obuf), &written, NULL), "WriteFile 8\n"); ok(written == sizeof(obuf), "write file len 8\n"); SetLastError(0xdeadbeef); @@ -113,7 +113,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 8\n"); ok(readden == 4, "read got %d bytes 8\n", readden); ok(ReadFile(hnp, ibuf + 4, sizeof(ibuf) - 4, &readden, NULL), "ReadFile 8\n"); -@@ -515,16 +497,12 @@ static void test_CreateNamedPipe(int pipemode) +@@ -523,16 +505,12 @@ static void test_CreateNamedPipe(int pipemode) ok(readden == sizeof(obuf) + sizeof(obuf2), "peek got %d bytes total 9\n", readden); ok(leftmsg == sizeof(obuf), "peek got %d bytes left in message 9\n", leftmsg); SetLastError(0xdeadbeef); @@ -130,7 +130,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 9\n"); ok(readden == 4, "read got %d bytes 9\n", readden); readden = leftmsg = -1; -@@ -537,7 +515,6 @@ static void test_CreateNamedPipe(int pipemode) +@@ -545,7 +523,6 @@ static void test_CreateNamedPipe(int pipemode) ok(leftmsg == sizeof(obuf) - 8, "peek got %d bytes left in message 9\n", leftmsg); ret = RpcReadFile(hFile, ibuf + 8, sizeof(ibuf), &readden, NULL); ok(ret, "RpcReadFile 9\n"); @@ -138,7 +138,7 @@ index 5f5553b..3811ccd 100644 ok(readden == sizeof(obuf) - 8, "read got %d bytes 9\n", readden); ok(memcmp(obuf, ibuf, sizeof(obuf)) == 0, "content check 9\n"); if (readden <= sizeof(obuf) - 8) /* blocks forever if second part was already received */ -@@ -554,13 +531,10 @@ static void test_CreateNamedPipe(int pipemode) +@@ -562,13 +539,10 @@ static void test_CreateNamedPipe(int pipemode) SetLastError(0xdeadbeef); ret = RpcReadFile(hFile, ibuf, 4, &readden, NULL); ok(!ret, "RpcReadFile 9\n"); @@ -152,7 +152,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 9\n"); ok(readden == 4, "read got %d bytes 9\n", readden); readden = leftmsg = -1; -@@ -600,16 +574,12 @@ static void test_CreateNamedPipe(int pipemode) +@@ -608,16 +582,12 @@ static void test_CreateNamedPipe(int pipemode) ok(readden == sizeof(obuf) + sizeof(obuf2), "peek got %d bytes total 10\n", readden); ok(leftmsg == sizeof(obuf2), "peek got %d bytes left in message 10\n", leftmsg); SetLastError(0xdeadbeef); @@ -169,7 +169,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 10\n"); ok(readden == 4, "read got %d bytes 10\n", readden); readden = leftmsg = -1; -@@ -622,7 +592,6 @@ static void test_CreateNamedPipe(int pipemode) +@@ -630,7 +600,6 @@ static void test_CreateNamedPipe(int pipemode) ok(leftmsg == sizeof(obuf2) - 8, "peek got %d bytes left in message 10\n", leftmsg); ret = RpcReadFile(hnp, ibuf + 8, sizeof(ibuf), &readden, NULL); ok(ret, "RpcReadFile 10\n"); @@ -177,7 +177,7 @@ index 5f5553b..3811ccd 100644 ok(readden == sizeof(obuf2) - 8, "read got %d bytes 10\n", readden); ok(memcmp(obuf2, ibuf, sizeof(obuf2)) == 0, "content check 10\n"); if (readden <= sizeof(obuf2) - 8) /* blocks forever if second part was already received */ -@@ -639,13 +608,10 @@ static void test_CreateNamedPipe(int pipemode) +@@ -647,13 +616,10 @@ static void test_CreateNamedPipe(int pipemode) SetLastError(0xdeadbeef); ret = RpcReadFile(hnp, ibuf, 4, &readden, NULL); ok(!ret, "RpcReadFile 10\n"); @@ -191,7 +191,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 10\n"); ok(readden == 4, "read got %d bytes 10\n", readden); readden = leftmsg = -1; -@@ -751,15 +717,11 @@ static void test_CreateNamedPipe(int pipemode) +@@ -759,15 +725,11 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -207,7 +207,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 32, "read got %d bytes\n", readden); -@@ -1657,7 +1619,7 @@ static void test_CloseHandle(void) +@@ -1665,7 +1627,7 @@ static void test_CloseHandle(void) numbytes = 0xdeadbeef; memset(buffer, 0, sizeof(buffer)); ret = ReadFile(hfile, buffer, 0, &numbytes, NULL); @@ -216,18 +216,18 @@ index 5f5553b..3811ccd 100644 ok(numbytes == 0, "expected 0, got %u\n", numbytes); numbytes = 0xdeadbeef; -@@ -1750,8 +1712,8 @@ static void test_CloseHandle(void) +@@ -1763,8 +1725,8 @@ static void test_CloseHandle(void) numbytes = 0xdeadbeef; memset(buffer, 0, sizeof(buffer)); ret = ReadFile(hpipe, buffer, 0, &numbytes, NULL); -- todo_wine ok(ret || broken(GetLastError() == ERROR_MORE_DATA) /* >= Win 8 */, +- todo_wine ok(ret || GetLastError() == ERROR_MORE_DATA /* >= Win 8 */, - "ReadFile failed with %u\n", GetLastError()); -+ ok(ret || broken(GetLastError() == ERROR_MORE_DATA) /* >= Win 8 */, ++ ok(ret || GetLastError() == ERROR_MORE_DATA /* >= Win 8 */, + "ReadFile failed with %u\n", GetLastError()); ok(numbytes == 0, "expected 0, got %u\n", numbytes); numbytes = 0xdeadbeef; -@@ -2559,7 +2521,6 @@ static void test_readfileex_pending(void) +@@ -2720,7 +2682,6 @@ static void test_readfileex_pending(void) SetLastError(0xdeadbeef); ret = ReadFile(server, read_buf, 0, &num_bytes, &overlapped); ok(!ret, "ReadFile should fail\n"); @@ -235,7 +235,7 @@ index 5f5553b..3811ccd 100644 ok(GetLastError() == ERROR_IO_PENDING, "expected ERROR_IO_PENDING, got %d\n", GetLastError()); ok(num_bytes == 0, "bytes %u\n", num_bytes); ok((NTSTATUS)overlapped.Internal == STATUS_PENDING, "expected STATUS_PENDING, got %#lx\n", overlapped.Internal); -@@ -2575,11 +2536,9 @@ todo_wine +@@ -2736,11 +2697,9 @@ todo_wine ok(num_bytes == 1, "bytes %u\n", num_bytes); wait = WaitForSingleObject(event, 100); @@ -248,10 +248,10 @@ index 5f5553b..3811ccd 100644 ok(overlapped.InternalHigh == 0, "expected 0, got %lu\n", overlapped.InternalHigh); diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c -index fd6c605..18ee740 100644 +index 4a736f42d6d..4347e419029 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c -@@ -490,7 +490,7 @@ NTSTATUS FILE_GetNtStatus(void) +@@ -492,7 +492,7 @@ NTSTATUS FILE_GetNtStatus(void) } } @@ -260,7 +260,7 @@ index fd6c605..18ee740 100644 static NTSTATUS unix_fd_avail(int fd, int *avail) { struct pollfd pollfd; -@@ -519,7 +519,14 @@ static NTSTATUS unix_fd_avail(int fd, int *avail) +@@ -521,7 +521,14 @@ static NTSTATUS unix_fd_avail(int fd, int *avail) static inline int get_pipe_flags(int fd) { #ifdef __linux__ @@ -276,7 +276,7 @@ index fd6c605..18ee740 100644 #else return 0; #endif -@@ -565,10 +572,12 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, +@@ -567,10 +574,12 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, if (result >= 0) { *total += result; @@ -291,7 +291,7 @@ index fd6c605..18ee740 100644 switch (type) { case FD_TYPE_FILE: -@@ -577,11 +586,18 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, +@@ -579,11 +588,18 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, return length ? STATUS_END_OF_FILE : STATUS_SUCCESS; case FD_TYPE_SERIAL: return length ? STATUS_PENDING : STATUS_SUCCESS; @@ -311,7 +311,7 @@ index fd6c605..18ee740 100644 continue; else if (type != FD_TYPE_FILE) /* no async I/O on regular files */ return STATUS_PENDING; -@@ -1039,7 +1055,7 @@ done: +@@ -1061,7 +1077,7 @@ done: err: if (needs_close) close( unix_handle ); @@ -321,5 +321,5 @@ index fd6c605..18ee740 100644 io_status->u.Status = status; io_status->Information = total; -- -2.6.2 +2.11.0 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 0b19b279..bf0bd5b7 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "152b24015308286441399f9fc2be57213c762c7a" + echo "2dd0fb880c005cd5660928d1646a117407cec238" } # Show version information @@ -92,7 +92,6 @@ patch_enable_all () enable_advapi32_SetSecurityInfo="$1" enable_advapi32_WinBuiltinAnyPackageSid="$1" enable_api_ms_win_Stub_DLLs="$1" - enable_avifil32_AVIFileGetStream="$1" enable_avifil32_AVIFile_Proxies="$1" enable_avifil32_IGetFrame_fnSetFormat="$1" enable_avifile_dll16_AVIStreamGetFrame="$1" @@ -433,7 +432,6 @@ patch_enable_all () enable_wininet_Internet_Settings="$1" enable_wininet_ParseX509EncodedCertificateForListBoxEntry="$1" enable_winmm_Delay_Import_Depends="$1" - enable_winmm_PlaySoundA="$1" enable_winmm_mciSendCommandA="$1" enable_wintrust_WinVerifyTrust="$1" enable_wpcap_Dynamic_Linking="$1" @@ -486,9 +484,6 @@ patch_enable () api-ms-win-Stub_DLLs) enable_api_ms_win_Stub_DLLs="$2" ;; - avifil32-AVIFileGetStream) - enable_avifil32_AVIFileGetStream="$2" - ;; avifil32-AVIFile_Proxies) enable_avifil32_AVIFile_Proxies="$2" ;; @@ -1509,9 +1504,6 @@ patch_enable () winmm-Delay_Import_Depends) enable_winmm_Delay_Import_Depends="$2" ;; - winmm-PlaySoundA) - enable_winmm_PlaySoundA="$2" - ;; winmm-mciSendCommandA) enable_winmm_mciSendCommandA="$2" ;; @@ -2791,21 +2783,6 @@ if test "$enable_api_ms_win_Stub_DLLs" -eq 1; then ) >> "$patchlist" fi -# Patchset avifil32-AVIFileGetStream -# | -# | This patchset fixes the following Wine bugs: -# | * [#41579] AVIFileGetStream should set stream to NULL in case of an error -# | -# | Modified files: -# | * dlls/avifil32/avifile.c, dlls/avifil32/tests/api.c -# | -if test "$enable_avifil32_AVIFileGetStream" -eq 1; then - patch_apply avifil32-AVIFileGetStream/0001-avifil32-AVIFileGetStream-should-set-stream-to-NULL-.patch - ( - printf '%s\n' '+ { "Dmitry Timoshkov", "avifil32: AVIFileGetStream should set stream to NULL in case of an error.", 1 },'; - ) >> "$patchlist" -fi - # Patchset avifil32-AVIFile_Proxies # | # | This patchset fixes the following Wine bugs: @@ -7768,7 +7745,6 @@ fi # | if test "$enable_windowscodecs_Palette_Images" -eq 1; then patch_apply windowscodecs-Palette_Images/0001-windowscodecs-Implement-IWICBitmapDecoder-CopyPalett.patch - patch_apply windowscodecs-Palette_Images/0002-windowscodecs-Implement-IWICBitmapFrameEncode-SetPal.patch patch_apply windowscodecs-Palette_Images/0003-windowscodecs-Fix-IWICBitmapEncoder-SetPalette-for-a.patch patch_apply windowscodecs-Palette_Images/0004-windowscodecs-Decode-PNG-images-with-a-tRNS-chunk-in.patch patch_apply windowscodecs-Palette_Images/0005-windowscodecs-Add-support-for-palette-image-formats-.patch @@ -7791,7 +7767,6 @@ if test "$enable_windowscodecs_Palette_Images" -eq 1; then patch_apply windowscodecs-Palette_Images/0022-windowscodecs-PNG-decoder-should-use-indexed-formats.patch ( printf '%s\n' '+ { "Dmitry Timoshkov", "windowscodecs: Implement IWICBitmapDecoder::CopyPalette in PNG decoder.", 1 },'; - printf '%s\n' '+ { "Dmitry Timoshkov", "windowscodecs: Implement IWICBitmapFrameEncode::SetPalette in PNG encoder.", 1 },'; printf '%s\n' '+ { "Dmitry Timoshkov", "windowscodecs: Fix IWICBitmapEncoder::SetPalette for a not initialized case in PNG encoder.", 1 },'; printf '%s\n' '+ { "Dmitry Timoshkov", "windowscodecs: Decode PNG images with a tRNS chunk in their native formats.", 1 },'; printf '%s\n' '+ { "Dmitry Timoshkov", "windowscodecs: Add support for palette image formats to PNG encoder.", 1 },'; @@ -8711,21 +8686,6 @@ if test "$enable_winmm_Delay_Import_Depends" -eq 1; then ) >> "$patchlist" fi -# Patchset winmm-PlaySoundA -# | -# | This patchset fixes the following Wine bugs: -# | * [#42257] Fix ordinal number of winmm.PlaySoundA -# | -# | Modified files: -# | * dlls/winmm/winmm.spec -# | -if test "$enable_winmm_PlaySoundA" -eq 1; then - patch_apply winmm-PlaySoundA/0001-winmm-Fix-the-ordinal-number-of-PlaySoundA.patch - ( - printf '%s\n' '+ { "Bruno Jesus", "winmm: Fix the ordinal number of PlaySoundA.", 1 },'; - ) >> "$patchlist" -fi - # Patchset winmm-mciSendCommandA # | # | Modified files: diff --git a/patches/windowscodecs-Palette_Images/0002-windowscodecs-Implement-IWICBitmapFrameEncode-SetPal.patch b/patches/windowscodecs-Palette_Images/0002-windowscodecs-Implement-IWICBitmapFrameEncode-SetPal.patch deleted file mode 100644 index 0ea06557..00000000 --- a/patches/windowscodecs-Palette_Images/0002-windowscodecs-Implement-IWICBitmapFrameEncode-SetPal.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 252fc281bc7a0dbedec51582534184bfd83137d2 Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Tue, 20 Sep 2016 14:13:28 +0800 -Subject: windowscodecs: Implement IWICBitmapFrameEncode::SetPalette in PNG - encoder. - ---- - dlls/windowscodecs/pngformat.c | 23 ++++++++++++++++++++--- - 1 file changed, 20 insertions(+), 3 deletions(-) - -diff --git a/dlls/windowscodecs/pngformat.c b/dlls/windowscodecs/pngformat.c -index 623577e..1fda2b7 100644 ---- a/dlls/windowscodecs/pngformat.c -+++ b/dlls/windowscodecs/pngformat.c -@@ -1359,6 +1359,8 @@ typedef struct PngEncoder { - BYTE *data; - UINT stride; - UINT passes; -+ WICColor palette[256]; -+ UINT colors; - } PngEncoder; - - static inline PngEncoder *impl_from_IWICBitmapEncoder(IWICBitmapEncoder *iface) -@@ -1536,10 +1538,24 @@ static HRESULT WINAPI PngFrameEncode_SetColorContexts(IWICBitmapFrameEncode *ifa - } - - static HRESULT WINAPI PngFrameEncode_SetPalette(IWICBitmapFrameEncode *iface, -- IWICPalette *pIPalette) -+ IWICPalette *palette) - { -- FIXME("(%p,%p): stub\n", iface, pIPalette); -- return WINCODEC_ERR_UNSUPPORTEDOPERATION; -+ PngEncoder *This = impl_from_IWICBitmapFrameEncode(iface); -+ HRESULT hr; -+ -+ TRACE("(%p,%p)\n", iface, palette); -+ -+ if (!palette) return E_INVALIDARG; -+ -+ EnterCriticalSection(&This->lock); -+ -+ if (This->frame_initialized) -+ hr = IWICPalette_GetColors(palette, 256, This->palette, &This->colors); -+ else -+ hr = WINCODEC_ERR_NOTINITIALIZED; -+ -+ LeaveCriticalSection(&This->lock); -+ return hr; - } - - static HRESULT WINAPI PngFrameEncode_SetThumbnail(IWICBitmapFrameEncode *iface, -@@ -2044,6 +2060,7 @@ HRESULT PngEncoder_CreateInstance(REFIID iid, void** ppv) - This->frame_committed = FALSE; - This->committed = FALSE; - This->data = NULL; -+ This->colors = 0; - InitializeCriticalSection(&This->lock); - This->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": PngEncoder.lock"); - --- -2.9.0 - diff --git a/patches/windowscodecs-Palette_Images/0011-windowscodecs-tests-Add-some-tests-for-encoding-1bpp.patch b/patches/windowscodecs-Palette_Images/0011-windowscodecs-tests-Add-some-tests-for-encoding-1bpp.patch index 22a365c2..6d8461e1 100644 --- a/patches/windowscodecs-Palette_Images/0011-windowscodecs-tests-Add-some-tests-for-encoding-1bpp.patch +++ b/patches/windowscodecs-Palette_Images/0011-windowscodecs-tests-Add-some-tests-for-encoding-1bpp.patch @@ -1,4 +1,4 @@ -From 93ab66ef7c5d801936bc90e0e35b5b35db1f387e Mon Sep 17 00:00:00 2001 +From c0876d0b4f8e7773db7d97a5d2d287db51cc3177 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 20 Sep 2016 14:47:48 +0800 Subject: windowscodecs/tests: Add some tests for encoding 1bpp/8bpp images @@ -9,7 +9,7 @@ Subject: windowscodecs/tests: Add some tests for encoding 1bpp/8bpp images 1 file changed, 340 insertions(+), 19 deletions(-) diff --git a/dlls/windowscodecs/tests/converter.c b/dlls/windowscodecs/tests/converter.c -index 7ca201a..78bcdbf 100644 +index 367df51a0b2..7bfd70bdc21 100644 --- a/dlls/windowscodecs/tests/converter.c +++ b/dlls/windowscodecs/tests/converter.c @@ -1,5 +1,6 @@ @@ -27,8 +27,8 @@ index 7ca201a..78bcdbf 100644 #include #define COBJMACROS -@@ -27,6 +29,8 @@ - #include "wincodec.h" +@@ -28,6 +30,8 @@ + #include "wincodecsdk.h" #include "wine/test.h" +static IWICImagingFactory *factory; @@ -36,7 +36,7 @@ index 7ca201a..78bcdbf 100644 typedef struct bitmap_data { const WICPixelFormatGUID *format; UINT bpp; -@@ -231,6 +235,19 @@ static BOOL compare_bits(const struct bitmap_data *expect, UINT buffersize, cons +@@ -232,6 +236,19 @@ static BOOL compare_bits(const struct bitmap_data *expect, UINT buffersize, cons break; } } @@ -56,7 +56,7 @@ index 7ca201a..78bcdbf 100644 else equal = (memcmp(expect->bits, converted_bits, buffersize) == 0); -@@ -262,7 +279,7 @@ static void compare_bitmap_data(const struct bitmap_data *expect, IWICBitmapSour +@@ -263,7 +280,7 @@ static void compare_bitmap_data(const struct bitmap_data *expect, IWICBitmapSour hr = IWICBitmapSource_GetPixelFormat(source, &dst_pixelformat); ok(SUCCEEDED(hr), "GetPixelFormat(%s) failed, hr=%x\n", name, hr); @@ -65,7 +65,7 @@ index 7ca201a..78bcdbf 100644 prc.X = 0; prc.Y = 0; -@@ -286,6 +303,21 @@ static void compare_bitmap_data(const struct bitmap_data *expect, IWICBitmapSour +@@ -287,6 +304,21 @@ static void compare_bitmap_data(const struct bitmap_data *expect, IWICBitmapSour HeapFree(GetProcessHeap(), 0, converted_bits); } @@ -87,7 +87,7 @@ index 7ca201a..78bcdbf 100644 static const BYTE bits_24bppBGR[] = { 255,0,0, 0,255,0, 0,0,255, 0,0,0, 0,255,255, 255,0,255, 255,255,0, 255,255,255}; -@@ -553,6 +585,118 @@ static void test_encoder_properties(const CLSID* clsid_encoder, IPropertyBag2 *o +@@ -571,6 +603,118 @@ static void test_encoder_properties(const CLSID* clsid_encoder, IPropertyBag2 *o } } @@ -206,7 +206,7 @@ index 7ca201a..78bcdbf 100644 struct setting { const WCHAR *name; PROPBAG2_TYPE type; -@@ -562,7 +706,7 @@ struct setting { +@@ -624,7 +768,7 @@ todo_wine static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* clsid_encoder, const struct bitmap_data **dsts, const CLSID *clsid_decoder, WICRect *rc, @@ -215,7 +215,7 @@ index 7ca201a..78bcdbf 100644 { HRESULT hr; IWICBitmapEncoder *encoder; -@@ -591,9 +735,22 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -653,9 +797,22 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls if (hglobal && SUCCEEDED(hr)) { @@ -238,7 +238,7 @@ index 7ca201a..78bcdbf 100644 i=0; while (SUCCEEDED(hr) && srcs[i]) { -@@ -627,28 +784,60 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -689,13 +846,20 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls } } @@ -260,6 +260,9 @@ index 7ca201a..78bcdbf 100644 hr = IWICBitmapFrameEncode_SetSize(frameencode, srcs[i]->width, srcs[i]->height); ok(SUCCEEDED(hr), "SetSize failed, hr=%x\n", hr); +@@ -703,17 +867,42 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls + if (IsEqualGUID(clsid_encoder, &CLSID_WICPngEncoder)) + test_set_frame_palette(frameencode); + if (palette) + { @@ -304,7 +307,7 @@ index 7ca201a..78bcdbf 100644 IWICBitmapFrameEncode_Release(frameencode); IPropertyBag2_Release(options); -@@ -663,6 +852,8 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -728,6 +917,8 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls { hr = IWICBitmapEncoder_Commit(encoder); ok(SUCCEEDED(hr), "Commit failed, hr=%x\n", hr); @@ -313,7 +316,7 @@ index 7ca201a..78bcdbf 100644 } if (SUCCEEDED(hr)) -@@ -674,25 +865,105 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -739,25 +930,105 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls if (SUCCEEDED(hr)) { @@ -420,7 +423,7 @@ index 7ca201a..78bcdbf 100644 IWICBitmapDecoder_Release(decoder); } -@@ -708,13 +979,31 @@ static void test_encoder(const struct bitmap_data *src, const CLSID* clsid_encod +@@ -773,13 +1044,31 @@ static void test_encoder(const struct bitmap_data *src, const CLSID* clsid_encod { const struct bitmap_data *srcs[2]; const struct bitmap_data *dsts[2]; @@ -453,7 +456,7 @@ index 7ca201a..78bcdbf 100644 } static void test_encoder_rects(void) -@@ -733,20 +1022,20 @@ static void test_encoder_rects(void) +@@ -798,20 +1087,20 @@ static void test_encoder_rects(void) rc.Width = 4; rc.Height = 2; @@ -479,7 +482,7 @@ index 7ca201a..78bcdbf 100644 } static const struct bitmap_data *multiple_frames[3] = { -@@ -765,8 +1054,14 @@ static const struct setting png_interlace_settings[] = { +@@ -830,8 +1119,14 @@ static const struct setting png_interlace_settings[] = { START_TEST(converter) { @@ -494,7 +497,7 @@ index 7ca201a..78bcdbf 100644 test_conversion(&testdata_32bppBGRA, &testdata_32bppBGR, "BGRA -> BGR", FALSE); test_conversion(&testdata_32bppBGR, &testdata_32bppBGRA, "BGR -> BGRA", FALSE); test_conversion(&testdata_32bppBGRA, &testdata_32bppBGRA, "BGRA -> BGRA", FALSE); -@@ -791,22 +1086,48 @@ START_TEST(converter) +@@ -857,22 +1152,48 @@ START_TEST(converter) test_invalid_conversion(); test_default_converter(); @@ -549,5 +552,5 @@ index 7ca201a..78bcdbf 100644 CoUninitialize(); } -- -2.9.0 +2.11.0 diff --git a/patches/windowscodecs-Palette_Images/0012-windowscodecs-tests-Add-tests-for-encoding-2bpp-4bpp.patch b/patches/windowscodecs-Palette_Images/0012-windowscodecs-tests-Add-tests-for-encoding-2bpp-4bpp.patch index 41038b29..597aac1d 100644 --- a/patches/windowscodecs-Palette_Images/0012-windowscodecs-tests-Add-tests-for-encoding-2bpp-4bpp.patch +++ b/patches/windowscodecs-Palette_Images/0012-windowscodecs-tests-Add-tests-for-encoding-2bpp-4bpp.patch @@ -1,26 +1,18 @@ -From 8b2f07d7c2e51812617bb58533a17b6f3eccaf05 Mon Sep 17 00:00:00 2001 +From d8486a686064dfb9e0ed41968888cbb8f94161f1 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Thu, 22 Sep 2016 19:15:33 +0800 Subject: windowscodecs/tests: Add tests for encoding 2bpp/4bpp images with a palette. --- - dlls/windowscodecs/tests/converter.c | 292 ++++++++++++++++++++++++++++++++++- - 1 file changed, 286 insertions(+), 6 deletions(-) + dlls/windowscodecs/tests/converter.c | 291 ++++++++++++++++++++++++++++++++++- + 1 file changed, 285 insertions(+), 6 deletions(-) diff --git a/dlls/windowscodecs/tests/converter.c b/dlls/windowscodecs/tests/converter.c -index 78bcdbf..78bc8f5 100644 +index 7bfd70bdc21..85214d4fb1f 100644 --- a/dlls/windowscodecs/tests/converter.c +++ b/dlls/windowscodecs/tests/converter.c -@@ -27,6 +27,7 @@ - #include "windef.h" - #include "objbase.h" - #include "wincodec.h" -+#include "wincodecsdk.h" - #include "wine/test.h" - - static IWICImagingFactory *factory; -@@ -312,6 +313,20 @@ static const struct bitmap_data testdata_BlackWhite = { +@@ -313,6 +313,20 @@ static const struct bitmap_data testdata_BlackWhite = { static const struct bitmap_data testdata_1bppIndexed = { &GUID_WICPixelFormat1bppIndexed, 1, bits_1bpp, 32, 2, 96.0, 96.0}; @@ -41,7 +33,7 @@ index 78bcdbf..78bc8f5 100644 static const BYTE bits_8bpp[] = { 0,1,2,3, 4,5,6,7}; -@@ -585,14 +600,224 @@ static void test_encoder_properties(const CLSID* clsid_encoder, IPropertyBag2 *o +@@ -603,14 +617,224 @@ static void test_encoder_properties(const CLSID* clsid_encoder, IPropertyBag2 *o } } @@ -269,7 +261,7 @@ index 78bcdbf..78bc8f5 100644 } static unsigned be_uint(unsigned val) -@@ -649,6 +874,28 @@ static void check_png_format(IStream *stream, const WICPixelFormatGUID *format) +@@ -667,6 +891,28 @@ static void check_png_format(IStream *stream, const WICPixelFormatGUID *format) ok(png.filter == 0, "wrong filter %d\n", png.filter); ok(png.interlace == 0, "wrong interlace %d\n", png.interlace); } @@ -298,7 +290,7 @@ index 78bcdbf..78bc8f5 100644 else if (IsEqualGUID(format, &GUID_WICPixelFormat8bppIndexed)) { ok(be_uint(png.width) == 4, "wrong width %u\n", be_uint(png.width)); -@@ -829,6 +1076,8 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -894,6 +1140,8 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls ok(SUCCEEDED(hr), "WriteSource(%dx%d) failed, hr=%x (%s)\n", rc->Width, rc->Height, hr, name); else ok(hr == S_OK || @@ -307,7 +299,7 @@ index 78bcdbf..78bc8f5 100644 broken(hr == E_INVALIDARG && IsEqualGUID(clsid_encoder, &CLSID_WICBmpEncoder) && IsEqualGUID(srcs[i]->format, &GUID_WICPixelFormatBlackWhite)) /* XP */, "WriteSource(NULL) failed, hr=%x (%s)\n", hr, name); } -@@ -913,7 +1162,12 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -978,7 +1226,12 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls ok(ret == count, "expected %u, got %u\n", count, ret); if (IsEqualGUID(clsid_decoder, &CLSID_WICPngDecoder)) { @@ -321,7 +313,7 @@ index 78bcdbf..78bc8f5 100644 ok(colors[0] == 0x11111111, "got %08x (%s)\n", colors[0], name); ok(colors[1] == 0x22222222, "got %08x (%s)\n", colors[1], name); -@@ -921,8 +1175,11 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -986,8 +1239,11 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls { ok(colors[2] == 0x33333333, "got %08x (%s)\n", colors[2], name); ok(colors[3] == 0x44444444, "got %08x (%s)\n", colors[3], name); @@ -335,7 +327,7 @@ index 78bcdbf..78bc8f5 100644 } } else if (IsEqualGUID(clsid_decoder, &CLSID_WICBmpDecoder) || -@@ -940,6 +1197,17 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls +@@ -1005,6 +1261,17 @@ static void test_multi_encoder(const struct bitmap_data **srcs, const CLSID* cls ok(colors[4] == 0xff555555, "got %08x (%s)\n", colors[4], name); ok(colors[5] == 0xff000000, "got %08x (%s)\n", colors[5], name); } @@ -353,7 +345,7 @@ index 78bcdbf..78bc8f5 100644 else { ok(count == 2, "expected 2, got %u (%s)\n", count, name); -@@ -1090,6 +1358,10 @@ START_TEST(converter) +@@ -1156,6 +1423,10 @@ START_TEST(converter) &testdata_BlackWhite, &CLSID_WICPngDecoder, "PNG encoder BlackWhite"); test_encoder(&testdata_1bppIndexed, &CLSID_WICPngEncoder, &testdata_1bppIndexed, &CLSID_WICPngDecoder, "PNG encoder 1bppIndexed"); @@ -364,7 +356,7 @@ index 78bcdbf..78bc8f5 100644 test_encoder(&testdata_8bppIndexed, &CLSID_WICPngEncoder, &testdata_8bppIndexed, &CLSID_WICPngDecoder, "PNG encoder 8bppIndexed"); test_encoder(&testdata_24bppBGR, &CLSID_WICPngEncoder, -@@ -1101,6 +1373,10 @@ if (!strcmp(winetest_platform, "windows")) /* FIXME: enable once implemented in +@@ -1167,6 +1438,10 @@ if (!strcmp(winetest_platform, "windows")) /* FIXME: enable once implemented in &testdata_1bppIndexed, &CLSID_WICBmpDecoder, "BMP encoder BlackWhite"); test_encoder(&testdata_1bppIndexed, &CLSID_WICBmpEncoder, &testdata_1bppIndexed, &CLSID_WICBmpDecoder, "BMP encoder 1bppIndexed"); @@ -375,7 +367,7 @@ index 78bcdbf..78bc8f5 100644 test_encoder(&testdata_8bppIndexed, &CLSID_WICBmpEncoder, &testdata_8bppIndexed, &CLSID_WICBmpDecoder, "BMP encoder 8bppIndexed"); } -@@ -1113,6 +1389,10 @@ if (!strcmp(winetest_platform, "windows")) /* FIXME: enable once implemented in +@@ -1179,6 +1454,10 @@ if (!strcmp(winetest_platform, "windows")) /* FIXME: enable once implemented in { test_encoder(&testdata_1bppIndexed, &CLSID_WICTiffEncoder, &testdata_1bppIndexed, &CLSID_WICTiffDecoder, "TIFF encoder 1bppIndexed"); @@ -387,5 +379,5 @@ index 78bcdbf..78bc8f5 100644 &testdata_8bppIndexed, &CLSID_WICTiffDecoder, "TIFF encoder 8bppIndexed"); } -- -2.9.0 +2.11.0 diff --git a/patches/winmm-PlaySoundA/0001-winmm-Fix-the-ordinal-number-of-PlaySoundA.patch b/patches/winmm-PlaySoundA/0001-winmm-Fix-the-ordinal-number-of-PlaySoundA.patch deleted file mode 100644 index 80038e5e..00000000 --- a/patches/winmm-PlaySoundA/0001-winmm-Fix-the-ordinal-number-of-PlaySoundA.patch +++ /dev/null @@ -1,23 +0,0 @@ -From ea81f88b5641ff317dbc8c674a70e0c3be373f6f Mon Sep 17 00:00:00 2001 -From: Bruno Jesus <00cpxxx@gmail.com> -Date: Sat, 21 Jan 2017 21:19:20 +0100 -Subject: winmm: Fix the ordinal number of PlaySoundA. - ---- - dlls/winmm/winmm.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dlls/winmm/winmm.spec b/dlls/winmm/winmm.spec -index a1eaf816a28..87908b3d021 100644 ---- a/dlls/winmm/winmm.spec -+++ b/dlls/winmm/winmm.spec -@@ -1,5 +1,5 @@ - # ordinal exports --1 stdcall @(ptr long long) PlaySoundA -+2 stdcall @(ptr long long) PlaySoundA - 3 stub @ - 4 stub @ - --- -2.11.0 - diff --git a/patches/winmm-PlaySoundA/definition b/patches/winmm-PlaySoundA/definition deleted file mode 100644 index b08db832..00000000 --- a/patches/winmm-PlaySoundA/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [42257] Fix ordinal number of winmm.PlaySoundA