From 4a8df258cd7ab6a41930d515b41446d86a4e8664 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Wed, 4 Mar 2015 17:56:00 +0100 Subject: [PATCH] Removed multiple patches (accepted upstream). --- README.md | 4 +- debian/changelog | 2 + ...ng-for-partially-received-messages-i.patch | 58 +++++++-------- ...ree-implementation-for-get_cached_fd.patch | 35 +++------ ...-stub-for-IoGetAttachedDeviceReferen.patch | 16 ++-- patches/patchinstall.sh | 35 --------- ...x-init-of-LONGLONG-variable-with-a-n.patch | 28 ------- patches/windowscodecs-TGA_Decoder/definition | 1 - ...ary-override-instead-of-closing-wine.patch | 74 ------------------- patches/winecfg-Libraries/definition | 1 - .../wined3d-CSMT_Main/9999-IfDefined.patch | 2 +- 11 files changed, 53 insertions(+), 203 deletions(-) delete mode 100644 patches/windowscodecs-TGA_Decoder/0001-windowscodecs-Fix-init-of-LONGLONG-variable-with-a-n.patch delete mode 100644 patches/windowscodecs-TGA_Decoder/definition delete mode 100644 patches/winecfg-Libraries/0001-winecfg-Add-library-override-instead-of-closing-wine.patch delete mode 100644 patches/winecfg-Libraries/definition diff --git a/README.md b/README.md index 1f52ab31..59568e3e 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ Included bug fixes and improvements * Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](https://bugs.winehq.org/show_bug.cgi?id=36374)) * Add default ACLs for user shell folders * Add implementation for CreateThreadpool ([Wine Bug #35192](https://bugs.winehq.org/show_bug.cgi?id=35192)) -* Add library override instead of closing winecfg when pressing ENTER over the combobox ([Wine Bug #12804](https://bugs.winehq.org/show_bug.cgi?id=12804)) +* ~~Add library override instead of closing winecfg when pressing ENTER over the combobox~~ ([Wine Bug #12804](https://bugs.winehq.org/show_bug.cgi?id=12804)) * Add nvapi stubs required for GPU PhysX support * Add performance library registry keys needed by MS SQL Server Management Studio Express 2008 R2 ([Wine Bug #33661](https://bugs.winehq.org/show_bug.cgi?id=33661)) * Add semi-stub for GetFileVersionInfoExA/W ([Wine Bug #38098](https://bugs.winehq.org/show_bug.cgi?id=38098)) @@ -123,7 +123,7 @@ Included bug fixes and improvements * Fix handling of empty section and key name for profile files. ([Wine Bug #8036](https://bugs.winehq.org/show_bug.cgi?id=8036)) * Fix handling of invert_y in DrawTextExW ([Wine Bug #22109](https://bugs.winehq.org/show_bug.cgi?id=22109)) * Fix handling of window attributes for WS_EX_LAYERED | WS_EX_COMPOSITED ([Wine Bug #37876](https://bugs.winehq.org/show_bug.cgi?id=37876)) -* Fix init of LONGLONG variable with a negative value in TGA decoder +* ~~Fix init of LONGLONG variable with a negative value in TGA decoder~~ * Fix issues with dragging layers between images in Adobe Photoshop 7.0 ([Wine Bug #12007](https://bugs.winehq.org/show_bug.cgi?id=12007)) * Fix missing video introduced by pixelformat changes. ([Wine Bug #36900](https://bugs.winehq.org/show_bug.cgi?id=36900)) * ~~Fix mouse jittering in Planetside 2~~ ([Wine Bug #32913](https://bugs.winehq.org/show_bug.cgi?id=32913)) diff --git a/debian/changelog b/debian/changelog index ea1a40c2..7fe930e1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -47,6 +47,8 @@ wine-staging (1.7.38) UNRELEASED; urgency=low * Removed patch with tests for NtQueryLicenseKey (accepted upstream). * Removed patch to fix crash when trying to switch back to a 16-bit stack (accepted upstream). * Removed patch to fix definition of SECTION_BASIC_INFORMATION and SECTION_IMAGE_INFORMATION (accepted upstream). + * Removed patch to add library override instead of closing winecfg when pressing ENTER (accepted upstream). + * Removed patch to fix init of LONGLONG variable with a negative value in TGA decoder (accepted upstream). -- Sebastian Lackner Mon, 23 Feb 2015 18:24:51 +0100 wine-staging (1.7.37) unstable; urgency=low diff --git a/patches/kernel32-Named_Pipe/0010-ntdll-Add-handling-for-partially-received-messages-i.patch b/patches/kernel32-Named_Pipe/0010-ntdll-Add-handling-for-partially-received-messages-i.patch index 1c1708dd..b6dac417 100644 --- a/patches/kernel32-Named_Pipe/0010-ntdll-Add-handling-for-partially-received-messages-i.patch +++ b/patches/kernel32-Named_Pipe/0010-ntdll-Add-handling-for-partially-received-messages-i.patch @@ -1,4 +1,4 @@ -From 8d70c149974dafbdabc76cf2fb9daf9108a853f2 Mon Sep 17 00:00:00 2001 +From 24ad6b8855d6739be102ed3d1cd3d18b39e3fceb Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 11 Aug 2014 18:20:52 +0200 Subject: ntdll: Add handling for partially received messages in NtReadFile. @@ -18,10 +18,10 @@ Changes in v4: 2 files changed, 27 insertions(+), 54 deletions(-) diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c -index 743144e..6a27826 100644 +index dff00c9..81b4581 100644 --- a/dlls/kernel32/tests/pipe.c +++ b/dlls/kernel32/tests/pipe.c -@@ -304,9 +304,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -305,9 +305,7 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -31,7 +31,7 @@ index 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 4, "read got %d bytes\n", readden); -@@ -327,15 +325,11 @@ static void test_CreateNamedPipe(int pipemode) +@@ -328,15 +326,11 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -47,7 +47,7 @@ index 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 4, "read got %d bytes\n", readden); -@@ -397,9 +391,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -398,9 +392,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 743144e..6a27826 100644 } pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 4a check\n"); -@@ -429,9 +421,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -430,9 +422,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 743144e..6a27826 100644 pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 5a check\n"); if (readden <= sizeof(obuf)) -@@ -440,10 +430,8 @@ static void test_CreateNamedPipe(int pipemode) +@@ -441,10 +431,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 743144e..6a27826 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); -@@ -461,9 +449,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -462,9 +450,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 743144e..6a27826 100644 pbuf = ibuf; ok(memcmp(obuf, pbuf, sizeof(obuf)) == 0, "content 6a check\n"); if (readden <= sizeof(obuf)) -@@ -474,9 +460,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -475,9 +461,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 743144e..6a27826 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"); -@@ -487,9 +471,7 @@ static void test_CreateNamedPipe(int pipemode) +@@ -488,9 +472,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 743144e..6a27826 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"); -@@ -514,16 +496,12 @@ static void test_CreateNamedPipe(int pipemode) +@@ -515,16 +497,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 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 9\n"); ok(readden == 4, "read got %d bytes 9\n", readden); readden = leftmsg = -1; -@@ -536,7 +514,6 @@ static void test_CreateNamedPipe(int pipemode) +@@ -537,7 +515,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 743144e..6a27826 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 */ -@@ -553,13 +530,10 @@ static void test_CreateNamedPipe(int pipemode) +@@ -554,13 +531,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 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 9\n"); ok(readden == 4, "read got %d bytes 9\n", readden); readden = leftmsg = -1; -@@ -599,16 +573,12 @@ static void test_CreateNamedPipe(int pipemode) +@@ -600,16 +574,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 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 10\n"); ok(readden == 4, "read got %d bytes 10\n", readden); readden = leftmsg = -1; -@@ -621,7 +591,6 @@ static void test_CreateNamedPipe(int pipemode) +@@ -622,7 +592,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 743144e..6a27826 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 */ -@@ -638,13 +607,10 @@ static void test_CreateNamedPipe(int pipemode) +@@ -639,13 +608,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 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error 10\n"); ok(readden == 4, "read got %d bytes 10\n", readden); readden = leftmsg = -1; -@@ -750,15 +716,11 @@ static void test_CreateNamedPipe(int pipemode) +@@ -751,15 +717,11 @@ static void test_CreateNamedPipe(int pipemode) else { SetLastError(0xdeadbeef); @@ -207,7 +207,7 @@ index 743144e..6a27826 100644 ok(GetLastError() == ERROR_MORE_DATA, "wrong error\n"); } ok(readden == 32, "read got %d bytes\n", readden); -@@ -948,7 +910,6 @@ static void test_CloseNamedPipe(void) +@@ -949,7 +911,6 @@ static void test_CloseNamedPipe(void) /* close server end without disconnecting */ ok(CloseHandle(hnp), "CloseHandle() failed: %08x\n", GetLastError()); @@ -215,7 +215,7 @@ index 743144e..6a27826 100644 ok(ReadFile(hFile, ibuf, 0, &readden, NULL), "ReadFile() failed: %08x\n", GetLastError()); ok(readden == 0, "got %d bytes\n", readden); -@@ -990,7 +951,6 @@ static void test_CloseNamedPipe(void) +@@ -991,7 +952,6 @@ static void test_CloseNamedPipe(void) ok(CloseHandle(hFile), "CloseHandle() failed: %08x\n", GetLastError()); /* you'd think ERROR_MORE_DATA, but no */ @@ -223,15 +223,15 @@ index 743144e..6a27826 100644 ok(ReadFile(hnp, ibuf, 0, &readden, NULL), "ReadFile() failed: %08x\n", GetLastError()); ok(readden == 0, "got %d bytes\n", readden); -@@ -2460,7 +2420,6 @@ static void test_readfileex_pending(void) - num_bytes = 0xdeadbeef; +@@ -2459,7 +2419,6 @@ static void test_readfileex_pending(void) SetLastError(0xdeadbeef); ret = ReadFile(server, read_buf, 0, &num_bytes, &overlapped); + ok(!ret, "ReadFile should fail\n"); -todo_wine 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); -@@ -2476,11 +2435,9 @@ todo_wine +@@ -2475,11 +2434,9 @@ todo_wine ok(num_bytes == 1, "bytes %u\n", num_bytes); wait = WaitForSingleObject(event, 100); @@ -244,10 +244,10 @@ index 743144e..6a27826 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 5cbfa40..81f941d 100644 +index d8579a9..2c8855c 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c -@@ -415,7 +415,7 @@ NTSTATUS FILE_GetNtStatus(void) +@@ -441,7 +441,7 @@ NTSTATUS FILE_GetNtStatus(void) } } @@ -256,7 +256,7 @@ index 5cbfa40..81f941d 100644 static NTSTATUS unix_fd_avail(int fd, int *avail) { struct pollfd pollfd; -@@ -444,7 +444,14 @@ static NTSTATUS unix_fd_avail(int fd, int *avail) +@@ -470,7 +470,14 @@ static NTSTATUS unix_fd_avail(int fd, int *avail) static inline int get_pipe_flags(int fd) { #ifdef __linux__ @@ -272,7 +272,7 @@ index 5cbfa40..81f941d 100644 #else return 0; #endif -@@ -490,10 +497,12 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, +@@ -516,10 +523,12 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, if (result >= 0) { *total += result; @@ -287,7 +287,7 @@ index 5cbfa40..81f941d 100644 switch (type) { case FD_TYPE_FILE: -@@ -501,11 +510,18 @@ static NTSTATUS read_unix_fd(int fd, char *buf, ULONG *total, ULONG length, +@@ -527,11 +536,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 STATUS_PENDING; @@ -307,7 +307,7 @@ index 5cbfa40..81f941d 100644 continue; else if (type != FD_TYPE_FILE) /* no async I/O on regular files */ return STATUS_PENDING; -@@ -863,7 +879,7 @@ done: +@@ -890,7 +906,7 @@ done: err: if (needs_close) close( unix_handle ); @@ -317,5 +317,5 @@ index 5cbfa40..81f941d 100644 io_status->u.Status = status; io_status->Information = total; -- -2.1.3 +2.3.0 diff --git a/patches/ntdll-FD_Cache/0001-ntdll-Use-lockfree-implementation-for-get_cached_fd.patch b/patches/ntdll-FD_Cache/0001-ntdll-Use-lockfree-implementation-for-get_cached_fd.patch index 12ca3854..0a297fdf 100644 --- a/patches/ntdll-FD_Cache/0001-ntdll-Use-lockfree-implementation-for-get_cached_fd.patch +++ b/patches/ntdll-FD_Cache/0001-ntdll-Use-lockfree-implementation-for-get_cached_fd.patch @@ -8,7 +8,7 @@ Subject: ntdll: Use lockfree implementation for get_cached_fd. (try 5) 1 file changed, 69 insertions(+), 4 deletions(-) diff --git a/dlls/ntdll/server.c b/dlls/ntdll/server.c -index aabda4f..be90cde 100644 +index 69d01be..94d0544 100644 --- a/dlls/ntdll/server.c +++ b/dlls/ntdll/server.c @@ -75,6 +75,8 @@ @@ -20,7 +20,7 @@ index aabda4f..be90cde 100644 #include "wine/library.h" #include "wine/server.h" #include "wine/debug.h" -@@ -789,6 +791,7 @@ static int receive_fd( obj_handle_t *handle ) +@@ -790,6 +792,7 @@ static int receive_fd( obj_handle_t *handle ) /***********************************************************************/ /* fd cache support */ @@ -28,7 +28,7 @@ index aabda4f..be90cde 100644 struct fd_cache_entry { int fd; -@@ -796,6 +799,7 @@ struct fd_cache_entry +@@ -797,6 +800,7 @@ struct fd_cache_entry unsigned int access : 3; unsigned int options : 24; }; @@ -36,7 +36,7 @@ index aabda4f..be90cde 100644 #define FD_CACHE_BLOCK_SIZE (65536 / sizeof(struct fd_cache_entry)) #define FD_CACHE_ENTRIES 128 -@@ -810,6 +814,36 @@ static inline unsigned int handle_to_index( HANDLE handle, unsigned int *entry ) +@@ -811,6 +815,36 @@ static inline unsigned int handle_to_index( HANDLE handle, unsigned int *entry ) return idx % FD_CACHE_BLOCK_SIZE; } @@ -73,28 +73,18 @@ index aabda4f..be90cde 100644 /*********************************************************************** * add_fd_to_cache -@@ -820,7 +854,6 @@ static BOOL add_fd_to_cache( HANDLE handle, int fd, enum server_fd_type type, - unsigned int access, unsigned int options ) - { - unsigned int entry, idx = handle_to_index( handle, &entry ); -- int prev_fd; - - if (entry >= FD_CACHE_ENTRIES) - { -@@ -839,12 +872,26 @@ static BOOL add_fd_to_cache( HANDLE handle, int fd, enum server_fd_type type, +@@ -839,12 +873,26 @@ static BOOL add_fd_to_cache( HANDLE handle, int fd, enum server_fd_type type, fd_cache[entry] = ptr; } } + +#if defined(__powerpc__) /* store fd+1 so that 0 can be used as the unset value */ -- prev_fd = interlocked_xchg( &fd_cache[entry][idx].fd, fd + 1 ) - 1; -+ fd = interlocked_xchg( &fd_cache[entry][idx].fd, fd + 1 ); + fd = interlocked_xchg( &fd_cache[entry][idx].fd, fd + 1 ); fd_cache[entry][idx].type = type; fd_cache[entry][idx].access = access; fd_cache[entry][idx].options = options; -- if (prev_fd != -1) close( prev_fd ); -+ assert( !fd ); + assert( !fd ); +#else + { + struct fd_cache_entry cache; @@ -110,7 +100,7 @@ index aabda4f..be90cde 100644 return TRUE; } -@@ -852,7 +899,7 @@ static BOOL add_fd_to_cache( HANDLE handle, int fd, enum server_fd_type type, +@@ -852,7 +900,7 @@ static BOOL add_fd_to_cache( HANDLE handle, int fd, enum server_fd_type type, /*********************************************************************** * get_cached_fd * @@ -119,7 +109,7 @@ index aabda4f..be90cde 100644 */ static inline int get_cached_fd( HANDLE handle, enum server_fd_type *type, unsigned int *access, unsigned int *options ) -@@ -862,10 +909,19 @@ static inline int get_cached_fd( HANDLE handle, enum server_fd_type *type, +@@ -862,10 +910,19 @@ static inline int get_cached_fd( HANDLE handle, enum server_fd_type *type, if (entry < FD_CACHE_ENTRIES && fd_cache[entry]) { @@ -139,7 +129,7 @@ index aabda4f..be90cde 100644 } return fd; } -@@ -903,6 +959,11 @@ int server_get_unix_fd( HANDLE handle, unsigned int wanted_access, int *unix_fd, +@@ -903,6 +960,11 @@ int server_get_unix_fd( HANDLE handle, unsigned int wanted_access, int *unix_fd, *needs_close = 0; wanted_access &= FILE_READ_DATA | FILE_WRITE_DATA | FILE_APPEND_DATA; @@ -151,7 +141,7 @@ index aabda4f..be90cde 100644 server_enter_uninterrupted_section( &fd_cache_section, &sigset ); fd = get_cached_fd( handle, type, &access, options ); -@@ -930,6 +991,10 @@ int server_get_unix_fd( HANDLE handle, unsigned int wanted_access, int *unix_fd, +@@ -930,6 +992,10 @@ int server_get_unix_fd( HANDLE handle, unsigned int wanted_access, int *unix_fd, done: server_leave_uninterrupted_section( &fd_cache_section, &sigset ); @@ -162,6 +152,3 @@ index aabda4f..be90cde 100644 if (!ret && ((access & wanted_access) != wanted_access)) { ret = STATUS_ACCESS_DENIED; --- -2.1.3 - diff --git a/patches/ntoskrnl-Stubs/0003-ntoskrnl.exe-Add-stub-for-IoGetAttachedDeviceReferen.patch b/patches/ntoskrnl-Stubs/0003-ntoskrnl.exe-Add-stub-for-IoGetAttachedDeviceReferen.patch index 8500ca0f..791c2cfb 100644 --- a/patches/ntoskrnl-Stubs/0003-ntoskrnl.exe-Add-stub-for-IoGetAttachedDeviceReferen.patch +++ b/patches/ntoskrnl-Stubs/0003-ntoskrnl.exe-Add-stub-for-IoGetAttachedDeviceReferen.patch @@ -1,4 +1,4 @@ -From d7911933e870e44358ae93c81f13020af49fecf4 Mon Sep 17 00:00:00 2001 +From 9b3429a9704b5ee5cd393036b64b80002c8b00de Mon Sep 17 00:00:00 2001 From: Alexander Morozov Date: Thu, 29 Jan 2015 23:23:13 +0100 Subject: ntoskrnl.exe: Add stub for IoGetAttachedDeviceReference. @@ -10,10 +10,10 @@ Subject: ntoskrnl.exe: Add stub for IoGetAttachedDeviceReference. 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c -index cdc5305..edd83de 100644 +index e8ae795..1ad44ba 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c -@@ -837,6 +837,15 @@ NTSTATUS WINAPI IofCallDriver( DEVICE_OBJECT *device, IRP *irp ) +@@ -810,6 +810,15 @@ NTSTATUS WINAPI IofCallDriver( DEVICE_OBJECT *device, IRP *irp ) return IoCallDriver( device, irp ); } @@ -30,7 +30,7 @@ index cdc5305..edd83de 100644 /*********************************************************************** * IoGetRelatedDeviceObject (NTOSKRNL.EXE.@) diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec -index 11d1c62..52c7fbf 100644 +index d7adf66..98992c5 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -374,7 +374,7 @@ @@ -43,17 +43,17 @@ index 11d1c62..52c7fbf 100644 @ stub IoGetBootDiskInformation @ stdcall IoGetConfigurationInformation() diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h -index e4f693a..121ca45 100644 +index c234375..9c67478 100644 --- a/include/ddk/wdm.h +++ b/include/ddk/wdm.h -@@ -1208,6 +1208,7 @@ void WINAPI IoDeleteDevice(DEVICE_OBJECT*); - void WINAPI IoDeleteDriver(DRIVER_OBJECT*); +@@ -1211,6 +1211,7 @@ void WINAPI IoDeleteDriver(DRIVER_OBJECT*); NTSTATUS WINAPI IoDeleteSymbolicLink(UNICODE_STRING*); void WINAPI IoFreeIrp(IRP*); + void WINAPI IoFreeMdl(MDL*); +PDEVICE_OBJECT WINAPI IoGetAttachedDeviceReference(PDEVICE_OBJECT); PEPROCESS WINAPI IoGetCurrentProcess(void); NTSTATUS WINAPI IoGetDeviceInterfaces(const GUID*,PDEVICE_OBJECT,ULONG,PWSTR*); NTSTATUS WINAPI IoGetDeviceObjectPointer(UNICODE_STRING*,ACCESS_MASK,PFILE_OBJECT*,PDEVICE_OBJECT*); -- -2.2.2 +2.3.0 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 582c8798..af8988b3 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -193,12 +193,10 @@ patch_enable_all () enable_user32_WndProc="$1" enable_vcomp_Stub_Functions="$1" enable_version_VersionInfoEx="$1" - enable_windowscodecs_TGA_Decoder="$1" enable_windowscodecs_TIFF_Decoder="$1" enable_wine_inf_Performance="$1" enable_wineboot_HKEY_DYN_DATA="$1" enable_winebuild_LinkerVersion="$1" - enable_winecfg_Libraries="$1" enable_winecfg_Staging="$1" enable_wined3d_CSMT_Helper="$1" enable_wined3d_CSMT_Main="$1" @@ -621,9 +619,6 @@ patch_enable () version-VersionInfoEx) enable_version_VersionInfoEx="$2" ;; - windowscodecs-TGA_Decoder) - enable_windowscodecs_TGA_Decoder="$2" - ;; windowscodecs-TIFF_Decoder) enable_windowscodecs_TIFF_Decoder="$2" ;; @@ -636,9 +631,6 @@ patch_enable () winebuild-LinkerVersion) enable_winebuild_LinkerVersion="$2" ;; - winecfg-Libraries) - enable_winecfg_Libraries="$2" - ;; winecfg-Staging) enable_winecfg_Staging="$2" ;; @@ -3915,18 +3907,6 @@ if test "$enable_version_VersionInfoEx" -eq 1; then ) >> "$patchlist" fi -# Patchset windowscodecs-TGA_Decoder -# | -# | Modified files: -# | * dlls/windowscodecs/tgaformat.c -# | -if test "$enable_windowscodecs_TGA_Decoder" -eq 1; then - patch_apply windowscodecs-TGA_Decoder/0001-windowscodecs-Fix-init-of-LONGLONG-variable-with-a-n.patch - ( - echo '+ { "Christian Costa", "windowscodecs: Fix init of LONGLONG variable with a negative value in TGA decoder.", 1 },'; - ) >> "$patchlist" -fi - # Patchset windowscodecs-TIFF_Decoder # | # | This patchset fixes the following Wine bugs: @@ -3987,21 +3967,6 @@ if test "$enable_winebuild_LinkerVersion" -eq 1; then ) >> "$patchlist" fi -# Patchset winecfg-Libraries -# | -# | This patchset fixes the following Wine bugs: -# | * [#12804] Add library override instead of closing winecfg when pressing ENTER over the combobox -# | -# | Modified files: -# | * programs/winecfg/libraries.c -# | -if test "$enable_winecfg_Libraries" -eq 1; then - patch_apply winecfg-Libraries/0001-winecfg-Add-library-override-instead-of-closing-wine.patch - ( - echo '+ { "Sebastian Lackner", "winecfg: Add library override instead of closing winecfg when pressing ENTER.", 1 },'; - ) >> "$patchlist" -fi - # Patchset winedevice-Fix_Relocation # | # | This patchset fixes the following Wine bugs: diff --git a/patches/windowscodecs-TGA_Decoder/0001-windowscodecs-Fix-init-of-LONGLONG-variable-with-a-n.patch b/patches/windowscodecs-TGA_Decoder/0001-windowscodecs-Fix-init-of-LONGLONG-variable-with-a-n.patch deleted file mode 100644 index 0078ef92..00000000 --- a/patches/windowscodecs-TGA_Decoder/0001-windowscodecs-Fix-init-of-LONGLONG-variable-with-a-n.patch +++ /dev/null @@ -1,28 +0,0 @@ -From be030703b8d36d47a7cfcad5268c983fa8fdf3ea Mon Sep 17 00:00:00 2001 -From: Christian Costa -Date: Thu, 15 Jan 2015 09:57:18 +0100 -Subject: windowscodecs: Fix init of LONGLONG variable with a negative value in - TGA decoder. - -sizeof() is unsigned and thus -sizeof() too which leads to the signed bit not propagated when converted to LONGLONG. -This bug prevented the footage header to be found which contains the TGA spec 2.0 extension. ---- - dlls/windowscodecs/tgaformat.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dlls/windowscodecs/tgaformat.c b/dlls/windowscodecs/tgaformat.c -index f2a867a..2b8cb1a 100644 ---- a/dlls/windowscodecs/tgaformat.c -+++ b/dlls/windowscodecs/tgaformat.c -@@ -292,7 +292,7 @@ static HRESULT WINAPI TgaDecoder_Initialize(IWICBitmapDecoder *iface, IStream *p - This->image_offset = This->colormap_offset + This->colormap_length; - - /* Read footer if there is one */ -- seek.QuadPart = -sizeof(tga_footer); -+ seek.QuadPart = -(LONGLONG)sizeof(tga_footer); - hr = IStream_Seek(pIStream, seek, STREAM_SEEK_END, NULL); - - if (SUCCEEDED(hr)) { --- -2.2.1 - diff --git a/patches/windowscodecs-TGA_Decoder/definition b/patches/windowscodecs-TGA_Decoder/definition deleted file mode 100644 index f828dfff..00000000 --- a/patches/windowscodecs-TGA_Decoder/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: Fix init of LONGLONG variable with a negative value in TGA decoder diff --git a/patches/winecfg-Libraries/0001-winecfg-Add-library-override-instead-of-closing-wine.patch b/patches/winecfg-Libraries/0001-winecfg-Add-library-override-instead-of-closing-wine.patch deleted file mode 100644 index dda44846..00000000 --- a/patches/winecfg-Libraries/0001-winecfg-Add-library-override-instead-of-closing-wine.patch +++ /dev/null @@ -1,74 +0,0 @@ -From fa8d8f6dba0b772b2e820360dae34f994b5e78ea Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Sat, 7 Feb 2015 08:00:34 +0100 -Subject: winecfg: Add library override instead of closing winecfg when - pressing ENTER. - -Based on a patch by Hugh McMaster. ---- - programs/winecfg/libraries.c | 31 +++++++++++++++++++------------ - 1 file changed, 19 insertions(+), 12 deletions(-) - -diff --git a/programs/winecfg/libraries.c b/programs/winecfg/libraries.c -index 660737b..a9889e5 100644 ---- a/programs/winecfg/libraries.c -+++ b/programs/winecfg/libraries.c -@@ -421,9 +421,15 @@ static void on_add_combo_change(HWND dialog) - len=SendDlgItemMessageW(dialog, IDC_DLLCOMBO, CB_GETLBTEXTLEN, sel, 0); - - if (buffer[0] || len>0) -+ { - enable(IDC_DLLS_ADDDLL) -+ SendMessageW(GetParent(dialog), DM_SETDEFID, IDC_DLLS_ADDDLL, 0); -+ } - else -+ { - disable(IDC_DLLS_ADDDLL); -+ SendMessageW(GetParent(dialog), DM_SETDEFID, IDOK, 0); -+ } - } - - static void set_dllmode(HWND dialog, DWORD id) -@@ -492,7 +498,8 @@ static void on_add_click(HWND dialog) - - SendDlgItemMessageW(dialog, IDC_DLLCOMBO, WM_SETTEXT, 0, (LPARAM)emptyW); - disable(IDC_DLLS_ADDDLL); -- -+ SendMessageW(GetParent(dialog), DM_SETDEFID, IDOK, 0); -+ - WINE_TRACE("Adding %s as native, builtin\n", buffer); - - SendMessageW(GetParent(dialog), PSM_CHANGED, 0, 0); -@@ -605,18 +612,18 @@ LibrariesDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) - break; - case WM_COMMAND: - switch(HIWORD(wParam)) { -- -- /* FIXME: when the user hits enter in the DLL combo box we should invoke the add -- * add button, rather than the propsheet OK button. But I don't know how to do that! -- */ -- - case CBN_EDITCHANGE: -- if(LOWORD(wParam) == IDC_DLLCOMBO) -- { -- on_add_combo_change(hDlg); -- break; -- } -- -+ if (LOWORD(wParam) == IDC_DLLCOMBO) -+ on_add_combo_change(hDlg); -+ break; -+ case CBN_SETFOCUS: -+ if (LOWORD(wParam) == IDC_DLLCOMBO) -+ on_add_combo_change(hDlg); -+ break; -+ case CBN_KILLFOCUS: -+ if (LOWORD(wParam) == IDC_DLLCOMBO) -+ SendMessageW(GetParent(hDlg), DM_SETDEFID, IDOK, 0); -+ break; - case BN_CLICKED: - switch(LOWORD(wParam)) { - case IDC_DLLS_ADDDLL: --- -2.2.2 - diff --git a/patches/winecfg-Libraries/definition b/patches/winecfg-Libraries/definition deleted file mode 100644 index 73bfd80e..00000000 --- a/patches/winecfg-Libraries/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [12804] Add library override instead of closing winecfg when pressing ENTER over the combobox diff --git a/patches/wined3d-CSMT_Main/9999-IfDefined.patch b/patches/wined3d-CSMT_Main/9999-IfDefined.patch index c3f4f02c..901db81e 100644 --- a/patches/wined3d-CSMT_Main/9999-IfDefined.patch +++ b/patches/wined3d-CSMT_Main/9999-IfDefined.patch @@ -1678,7 +1678,7 @@ diff --git a/dlls/wined3d/stateblock.c b/dlls/wined3d/stateblock.c diff --git a/dlls/d3d9/tests/visual.c b/dlls/d3d9/tests/visual.c --- a/dlls/d3d9/tests/visual.c +++ b/dlls/d3d9/tests/visual.c -@@ -16488,7 +16488,11 @@ +@@ -16491,7 +16491,11 @@ fill_surface(surface_managed, 0x0000ff00, D3DLOCK_NO_DIRTY_UPDATE); add_dirty_rect_test_draw(device); color = getPixelColor(device, 320, 240);