diff --git a/patches/mountmgr-DosDevices/0001-mountmgr.sys-Write-usable-device-paths-into-HKLM-SYS.patch b/patches/mountmgr-DosDevices/0001-mountmgr.sys-Write-usable-device-paths-into-HKLM-SYS.patch index d2eddd52..d701a63e 100644 --- a/patches/mountmgr-DosDevices/0001-mountmgr.sys-Write-usable-device-paths-into-HKLM-SYS.patch +++ b/patches/mountmgr-DosDevices/0001-mountmgr.sys-Write-usable-device-paths-into-HKLM-SYS.patch @@ -1,4 +1,4 @@ -From e6e95fe8edfaa85796f533f3f7a485bc721fe930 Mon Sep 17 00:00:00 2001 +From 13f6a02494570aea6cda94cb479052bbf3d9bd72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Mon, 30 Mar 2015 04:01:51 +0200 Subject: [PATCH] mountmgr.sys: Write usable device paths into @@ -15,10 +15,10 @@ Based on a patch by Bernhard Übelacker. 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/dlls/mountmgr.sys/device.c b/dlls/mountmgr.sys/device.c -index fc32b57cf70..4d837315311 100644 +index 6b2187c0991..b15a8ea8cf7 100644 --- a/dlls/mountmgr.sys/device.c +++ b/dlls/mountmgr.sys/device.c -@@ -1083,8 +1083,8 @@ static NTSTATUS set_volume_info( struct volume *volume, struct dos_drive *drive, +@@ -1063,8 +1063,8 @@ static NTSTATUS set_volume_info( struct volume *volume, struct dos_drive *drive, id = disk_device->unix_mount; id_len = strlen( disk_device->unix_mount ) + 1; } @@ -30,12 +30,12 @@ index fc32b57cf70..4d837315311 100644 return STATUS_SUCCESS; } diff --git a/dlls/mountmgr.sys/mountmgr.c b/dlls/mountmgr.sys/mountmgr.c -index 2e3ff80c36a..6898bb98c62 100644 +index b67082229f6..47a71e90325 100644 --- a/dlls/mountmgr.sys/mountmgr.c +++ b/dlls/mountmgr.sys/mountmgr.c -@@ -52,14 +52,21 @@ static HKEY mount_key; - - unixlib_handle_t mountmgr_handle = 0; +@@ -46,14 +46,21 @@ struct mount_point + static struct list mount_points_list = LIST_INIT(mount_points_list); + static HKEY mount_key; -void set_mount_point_id( struct mount_point *mount, const void *id, unsigned int id_len ) +void set_mount_point_id( struct mount_point *mount, const void *id, unsigned int id_len, int drive ) @@ -58,10 +58,10 @@ index 2e3ff80c36a..6898bb98c62 100644 else mount->id_len = 0; } diff --git a/dlls/mountmgr.sys/mountmgr.h b/dlls/mountmgr.sys/mountmgr.h -index 0297f6f11fe..b347a9cef6a 100644 +index 143401e3b9b..bad875dd9bc 100644 --- a/dlls/mountmgr.sys/mountmgr.h +++ b/dlls/mountmgr.sys/mountmgr.h -@@ -110,6 +110,7 @@ extern struct mount_point *add_dosdev_mount_point( DEVICE_OBJECT *device, UNICOD +@@ -108,6 +108,7 @@ extern struct mount_point *add_dosdev_mount_point( DEVICE_OBJECT *device, UNICOD extern struct mount_point *add_volume_mount_point( DEVICE_OBJECT *device, UNICODE_STRING *device_name, const GUID *guid ) DECLSPEC_HIDDEN; extern void delete_mount_point( struct mount_point *mount ) DECLSPEC_HIDDEN; @@ -71,5 +71,5 @@ index 0297f6f11fe..b347a9cef6a 100644 #endif /* __WINE_MOUNTMGR_H */ -- -2.33.0 +2.38.1 diff --git a/patches/ntdll-CriticalSection/0003-ntdll-Use-fast-CS-functions-for-heap-locking.patch b/patches/ntdll-CriticalSection/0003-ntdll-Use-fast-CS-functions-for-heap-locking.patch index 38f3c936..db7a80d7 100644 --- a/patches/ntdll-CriticalSection/0003-ntdll-Use-fast-CS-functions-for-heap-locking.patch +++ b/patches/ntdll-CriticalSection/0003-ntdll-Use-fast-CS-functions-for-heap-locking.patch @@ -1,4 +1,4 @@ -From 6fbc3bae354dec9fdd4a9a4e3e3a76340b66fd3f Mon Sep 17 00:00:00 2001 +From 85e5938c50ad5a1eebc7ec21d6c01ea7f4faf49d Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 5 Aug 2017 03:39:23 +0200 Subject: [PATCH] ntdll: Use fast CS functions for heap locking. @@ -8,26 +8,26 @@ Subject: [PATCH] ntdll: Use fast CS functions for heap locking. 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dlls/ntdll/heap.c b/dlls/ntdll/heap.c -index 40c317417ce..60185aac2c6 100644 +index cb1ff12c679..757e0246925 100644 --- a/dlls/ntdll/heap.c +++ b/dlls/ntdll/heap.c -@@ -469,13 +469,13 @@ static inline ULONG heap_get_flags( const struct heap *heap, ULONG flags ) - static void heap_lock( struct heap *heap, ULONG flags ) +@@ -476,13 +476,13 @@ static inline ULONG heap_get_flags( const struct heap *heap, ULONG flags ) + static inline void heap_lock( struct heap *heap, ULONG flags ) { - if (heap_get_flags( heap, flags ) & HEAP_NO_SERIALIZE) return; + if (flags & HEAP_NO_SERIALIZE) return; - RtlEnterCriticalSection( &heap->cs ); + enter_critical_section( &heap->cs ); } - static void heap_unlock( struct heap *heap, ULONG flags ) + static inline void heap_unlock( struct heap *heap, ULONG flags ) { - if (heap_get_flags( heap, flags ) & HEAP_NO_SERIALIZE) return; + if (flags & HEAP_NO_SERIALIZE) return; - RtlLeaveCriticalSection( &heap->cs ); + leave_critical_section( &heap->cs ); } static void heap_set_status( const struct heap *heap, ULONG flags, NTSTATUS status ) -@@ -1383,9 +1383,9 @@ HANDLE WINAPI RtlCreateHeap( ULONG flags, PVOID addr, SIZE_T totalSize, SIZE_T c +@@ -1392,9 +1392,9 @@ HANDLE WINAPI RtlCreateHeap( ULONG flags, PVOID addr, SIZE_T totalSize, SIZE_T c /* link it into the per-process heap list */ if (process_heap) { @@ -39,7 +39,7 @@ index 40c317417ce..60185aac2c6 100644 } else if (!addr) { -@@ -1441,9 +1441,9 @@ HANDLE WINAPI RtlDestroyHeap( HANDLE handle ) +@@ -1451,9 +1451,9 @@ HANDLE WINAPI RtlDestroyHeap( HANDLE handle ) if (heap == process_heap) return handle; /* cannot delete the main process heap */ /* remove it from the per-process list */ @@ -51,7 +51,7 @@ index 40c317417ce..60185aac2c6 100644 heap->cs.DebugInfo->Spare[0] = 0; RtlDeleteCriticalSection( &heap->cs ); -@@ -1938,7 +1938,7 @@ ULONG WINAPI RtlGetProcessHeaps( ULONG count, HANDLE *heaps ) +@@ -1968,7 +1968,7 @@ ULONG WINAPI RtlGetProcessHeaps( ULONG count, HANDLE *heaps ) ULONG total = 1; /* main heap */ struct list *ptr; @@ -60,7 +60,7 @@ index 40c317417ce..60185aac2c6 100644 LIST_FOR_EACH( ptr, &process_heap->entry ) total++; if (total <= count) { -@@ -1946,7 +1946,7 @@ ULONG WINAPI RtlGetProcessHeaps( ULONG count, HANDLE *heaps ) +@@ -1976,7 +1976,7 @@ ULONG WINAPI RtlGetProcessHeaps( ULONG count, HANDLE *heaps ) LIST_FOR_EACH( ptr, &process_heap->entry ) *heaps++ = LIST_ENTRY( ptr, struct heap, entry ); } @@ -70,5 +70,5 @@ index 40c317417ce..60185aac2c6 100644 } -- -2.35.1 +2.38.1 diff --git a/patches/ntdll-Junction_Points/0012-kernel32-Advertise-reparse-point-support.patch b/patches/ntdll-Junction_Points/0012-kernel32-Advertise-reparse-point-support.patch index afa018c7..c0ea9444 100644 --- a/patches/ntdll-Junction_Points/0012-kernel32-Advertise-reparse-point-support.patch +++ b/patches/ntdll-Junction_Points/0012-kernel32-Advertise-reparse-point-support.patch @@ -1,4 +1,4 @@ -From c232ecbb9cda964d9e279f16127b1e112f62ce55 Mon Sep 17 00:00:00 2001 +From eb6cc70e5e7fe6f9500b7fc632064aa71bc64fe3 Mon Sep 17 00:00:00 2001 From: "Erich E. Hoover" Date: Sat, 12 Dec 2020 17:28:31 -0700 Subject: [PATCH] kernel32: Advertise reparse point support. @@ -182,7 +182,7 @@ index 0332f6f6018..93ec6f266c5 100644 + get_volume_filesystem, }; diff --git a/dlls/mountmgr.sys/unixlib.h b/dlls/mountmgr.sys/unixlib.h -index ef5b10732f6..6d3902173b4 100644 +index 56b460862fa..01993b3baec 100644 --- a/dlls/mountmgr.sys/unixlib.h +++ b/dlls/mountmgr.sys/unixlib.h @@ -107,6 +107,13 @@ struct read_volume_file_params @@ -206,7 +206,7 @@ index ef5b10732f6..6d3902173b4 100644 + unix_get_volume_filesystem, }; - extern unixlib_handle_t mountmgr_handle; + #define MOUNTMGR_CALL( func, params ) WINE_UNIX_CALL( unix_ ## func, params ) -- -2.35.1 +2.38.1 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index e5a4d06f..904aa133 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "fbf23011777e2ff308ccbc09a07b81917f08796d" + echo "81a6c8c882e9d00a3f459983d8281327f25e333a" } # Show version information diff --git a/staging/upstream-commit b/staging/upstream-commit index d374bf47..077cf933 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -fbf23011777e2ff308ccbc09a07b81917f08796d +81a6c8c882e9d00a3f459983d8281327f25e333a