From 45d69ec48b4a5a462630d2fcf385ef7044f92dc9 Mon Sep 17 00:00:00 2001 From: Paul Gofman Date: Fri, 13 Dec 2019 02:37:28 +0300 Subject: [PATCH] Rebase against 750d382f54e494771128c6b331122be2bc747484 --- ...-ntdll-Improve-stub-of-NtQueryEaFile.patch | 22 +++++------ ...parse-unicode-property-storage-dicti.patch | 37 ------------------- patches/ole32-STGPROP/definition | 1 - patches/patchinstall.sh | 21 +---------- 4 files changed, 12 insertions(+), 69 deletions(-) delete mode 100644 patches/ole32-STGPROP/0001-ole32-Correctly-parse-unicode-property-storage-dicti.patch delete mode 100644 patches/ole32-STGPROP/definition diff --git a/patches/ntdll-NtQueryEaFile/0001-ntdll-Improve-stub-of-NtQueryEaFile.patch b/patches/ntdll-NtQueryEaFile/0001-ntdll-Improve-stub-of-NtQueryEaFile.patch index 5c0227e7..a50a4bec 100644 --- a/patches/ntdll-NtQueryEaFile/0001-ntdll-Improve-stub-of-NtQueryEaFile.patch +++ b/patches/ntdll-NtQueryEaFile/0001-ntdll-Improve-stub-of-NtQueryEaFile.patch @@ -1,20 +1,20 @@ -From db086c104124f1e6d06c5a492823f5e99c9095fe Mon Sep 17 00:00:00 2001 +From 1111d9a53405b19b57a4385f7e2815b9c62238fa Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 6 Jun 2015 07:03:33 +0800 Subject: [PATCH] ntdll: Improve stub of NtQueryEaFile. Based on a patch by Qian Hong. --- - dlls/ntdll/file.c | 19 ++++++++--- - dlls/ntdll/tests/file.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++++ + dlls/ntdll/file.c | 19 ++++++++-- + dlls/ntdll/tests/file.c | 83 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+), 4 deletions(-) diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c -index 956c98a..c529b70 100644 +index 2269ae311a..bed55c6fe7 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c -@@ -3936,14 +3936,25 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, PIO_STATUS_BLOCK io - * Success: 0. Atrributes read into buffer +@@ -3962,14 +3962,25 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, PIO_STATUS_BLOCK io + * Success: 0. Attributes read into buffer * Failure: An NTSTATUS error code describing the error. */ -NTSTATUS WINAPI NtQueryEaFile( HANDLE hFile, PIO_STATUS_BLOCK iosb, PVOID buffer, ULONG length, @@ -44,7 +44,7 @@ index 956c98a..c529b70 100644 diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c -index a3513e2..79ba790 100644 +index 1c3d0bc9a9..e210cbe9f2 100644 --- a/dlls/ntdll/tests/file.c +++ b/dlls/ntdll/tests/file.c @@ -85,6 +85,7 @@ static NTSTATUS (WINAPI *pNtQueryDirectoryFile)(HANDLE,HANDLE,PIO_APC_ROUTINE,PV @@ -55,7 +55,7 @@ index a3513e2..79ba790 100644 static WCHAR fooW[] = {'f','o','o',0}; -@@ -4925,6 +4926,86 @@ static void test_flush_buffers_file(void) +@@ -4994,6 +4995,86 @@ static void test_flush_buffers_file(void) DeleteFileA(buffer); } @@ -142,7 +142,7 @@ index a3513e2..79ba790 100644 static void test_file_readonly_access(void) { static const DWORD default_sharing = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE; -@@ -5376,6 +5457,7 @@ START_TEST(file) +@@ -5483,6 +5564,7 @@ START_TEST(file) pNtQueryVolumeInformationFile = (void *)GetProcAddress(hntdll, "NtQueryVolumeInformationFile"); pNtQueryFullAttributesFile = (void *)GetProcAddress(hntdll, "NtQueryFullAttributesFile"); pNtFlushBuffersFile = (void *)GetProcAddress(hntdll, "NtFlushBuffersFile"); @@ -150,7 +150,7 @@ index a3513e2..79ba790 100644 test_read_write(); test_NtCreateFile(); -@@ -5405,6 +5487,7 @@ START_TEST(file) +@@ -5513,6 +5595,7 @@ START_TEST(file) test_query_volume_information_file(); test_query_attribute_information_file(); test_ioctl(); @@ -159,5 +159,5 @@ index a3513e2..79ba790 100644 test_reparse_points(); } -- -1.9.1 +2.23.0 diff --git a/patches/ole32-STGPROP/0001-ole32-Correctly-parse-unicode-property-storage-dicti.patch b/patches/ole32-STGPROP/0001-ole32-Correctly-parse-unicode-property-storage-dicti.patch deleted file mode 100644 index ecae05cd..00000000 --- a/patches/ole32-STGPROP/0001-ole32-Correctly-parse-unicode-property-storage-dicti.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 9a73838c005c3bdb74a449bb7afb269112d6ae34 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Fri, 20 Jan 2017 01:35:05 +0100 -Subject: ole32: Correctly parse unicode property storage dictionaries. - ---- - dlls/ole32/stg_prop.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/dlls/ole32/stg_prop.c b/dlls/ole32/stg_prop.c -index a2598832bf1..f952704c7cd 100644 ---- a/dlls/ole32/stg_prop.c -+++ b/dlls/ole32/stg_prop.c -@@ -1020,15 +1020,18 @@ static HRESULT PropertyStorage_ReadDictionary(PropertyStorage_impl *This, - if (This->codePage != CP_UNICODE) - ptr[cbEntry - 1] = '\0'; - else -- *((LPWSTR)ptr + cbEntry / sizeof(WCHAR)) = '\0'; -+ ((LPWSTR)ptr)[cbEntry - 1] = 0; - hr = PropertyStorage_StoreNameWithId(This, (char*)ptr, This->codePage, propid); - if (This->codePage == CP_UNICODE) - { -+ /* cbEntry is the number of characters */ -+ cbEntry *= 2; -+ - /* Unicode entries are padded to DWORD boundaries */ - if (cbEntry % sizeof(DWORD)) - ptr += sizeof(DWORD) - (cbEntry % sizeof(DWORD)); - } -- ptr += sizeof(DWORD) + cbEntry; -+ ptr += cbEntry; - } - return hr; - } --- -2.11.0 - diff --git a/patches/ole32-STGPROP/definition b/patches/ole32-STGPROP/definition deleted file mode 100644 index 6f388456..00000000 --- a/patches/ole32-STGPROP/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [42046] Multiple fixes for ole32 property storage diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index c2cb2909..6d3c9aee 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "5f0b5d350566a46f0f999e4cff7ad9e280fcfa05" + echo "750d382f54e494771128c6b331122be2bc747484" } # Show version information @@ -236,7 +236,6 @@ patch_enable_all () enable_nvcuvid_CUDA_Video_Support="$1" enable_nvencodeapi_Video_Encoder="$1" enable_ole32_HGLOBALStream="$1" - enable_ole32_STGPROP="$1" enable_oleaut32_CreateTypeLib="$1" enable_oleaut32_Load_Save_EMF="$1" enable_oleaut32_OLEPictureImpl_SaveAsFile="$1" @@ -833,9 +832,6 @@ patch_enable () ole32-HGLOBALStream) enable_ole32_HGLOBALStream="$2" ;; - ole32-STGPROP) - enable_ole32_STGPROP="$2" - ;; oleaut32-CreateTypeLib) enable_oleaut32_CreateTypeLib="$2" ;; @@ -5298,21 +5294,6 @@ if test "$enable_ole32_HGLOBALStream" -eq 1; then ) >> "$patchlist" fi -# Patchset ole32-STGPROP -# | -# | This patchset fixes the following Wine bugs: -# | * [#42046] Multiple fixes for ole32 property storage -# | -# | Modified files: -# | * dlls/ole32/stg_prop.c -# | -if test "$enable_ole32_STGPROP" -eq 1; then - patch_apply ole32-STGPROP/0001-ole32-Correctly-parse-unicode-property-storage-dicti.patch - ( - printf '%s\n' '+ { "Michael Müller", "ole32: Correctly parse unicode property storage dictionaries.", 1 },'; - ) >> "$patchlist" -fi - # Patchset oleaut32-CreateTypeLib # | # | This patchset fixes the following Wine bugs: