From 82118b0d678b421d217875d286a534fe334799b1 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Fri, 6 Aug 2021 09:23:27 +1000 Subject: [PATCH] Rebase against 3f2850aeaa159270384764843cdb1dc3cbe902c6. --- ...tated-Arc-ArcTo-Chord-and-Pie-drawin.patch | 10 ++--- ...storing-DOS-attributes-in-NtSetInfor.patch | 38 +++++++++-------- ...storing-DOS-attributes-in-NtCreateFi.patch | 36 ++++++++-------- ...t-for-FileFsFullSizeInformation-clas.patch | 21 +++++----- ...btaining-information-about-a-symlink.patch | 42 +++++++++---------- patches/patchinstall.sh | 2 +- .../0002-dxgkrnl.sys-Add-stub-driver.patch | 10 ++--- .../0003-dxgmms1.sys-Add-stub-driver.patch | 10 ++--- staging/upstream-commit | 2 +- 9 files changed, 87 insertions(+), 84 deletions(-) diff --git a/patches/gdi32-rotation/0001-gdi32-fix-for-rotated-Arc-ArcTo-Chord-and-Pie-drawin.patch b/patches/gdi32-rotation/0001-gdi32-fix-for-rotated-Arc-ArcTo-Chord-and-Pie-drawin.patch index ef31bdc3..14640b5b 100644 --- a/patches/gdi32-rotation/0001-gdi32-fix-for-rotated-Arc-ArcTo-Chord-and-Pie-drawin.patch +++ b/patches/gdi32-rotation/0001-gdi32-fix-for-rotated-Arc-ArcTo-Chord-and-Pie-drawin.patch @@ -1,4 +1,4 @@ -From b034a39ba4e554aad252745996dacd9bf02d5d53 Mon Sep 17 00:00:00 2001 +From bd090a3f2ad10406f2e5172f87c3e64d3122298a Mon Sep 17 00:00:00 2001 From: Daniel Wendt Date: Fri, 15 Nov 2013 12:52:37 +0100 Subject: [PATCH] gdi32: fix for rotated Arc, ArcTo, Chord and Pie drawing @@ -11,7 +11,7 @@ Wine-Bug: http://bugs.winehq.org/show_bug.cgi?id=34579 2 files changed, 83 insertions(+) diff --git a/dlls/gdi32/dibdrv/graphics.c b/dlls/gdi32/dibdrv/graphics.c -index e4e2de8f99f..af82d63e15b 100644 +index c6f11ae6a69..e4a5f7bab8b 100644 --- a/dlls/gdi32/dibdrv/graphics.c +++ b/dlls/gdi32/dibdrv/graphics.c @@ -312,6 +312,60 @@ static int get_arc_points( int arc_dir, const RECT *rect, POINT start, POINT end @@ -116,12 +116,12 @@ index e4e2de8f99f..af82d63e15b 100644 { HeapFree( GetProcessHeap(), 0, points ); diff --git a/dlls/gdi32/gdi_private.h b/dlls/gdi32/gdi_private.h -index 105d72b23f0..6624a4f7cb7 100644 +index 53a4ba267d4..5938f047eb7 100644 --- a/dlls/gdi32/gdi_private.h +++ b/dlls/gdi32/gdi_private.h -@@ -122,4 +122,7 @@ extern BOOL EMFDC_SetROP2( DC_ATTR *dc_attr, INT rop ) DECLSPEC_HIDDEN; - extern BOOL EMFDC_SetStretchBltMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDEN; +@@ -148,4 +148,7 @@ extern BOOL EMFDC_SetStretchBltMode( DC_ATTR *dc_attr, INT mode ) DECLSPEC_HIDDE extern BOOL EMFDC_SetTextAlign( DC_ATTR *dc_attr, UINT align ) DECLSPEC_HIDDEN; + extern BOOL EMFDC_SetTextJustification( DC_ATTR *dc_attr, INT extra, INT breaks ) DECLSPEC_HIDDEN; +BOOL xform_has_rotate_and_uniform_scale_and_shear( const XFORM *xform ) DECLSPEC_HIDDEN; +BOOL xform_decompose_rotation_and_translation( XFORM *xform, XFORM *rotation_and_translation ) DECLSPEC_HIDDEN; diff --git a/patches/ntdll-DOS_Attributes/0003-ntdll-Implement-storing-DOS-attributes-in-NtSetInfor.patch b/patches/ntdll-DOS_Attributes/0003-ntdll-Implement-storing-DOS-attributes-in-NtSetInfor.patch index 577babdf..e3cfc936 100644 --- a/patches/ntdll-DOS_Attributes/0003-ntdll-Implement-storing-DOS-attributes-in-NtSetInfor.patch +++ b/patches/ntdll-DOS_Attributes/0003-ntdll-Implement-storing-DOS-attributes-in-NtSetInfor.patch @@ -1,4 +1,4 @@ -From 6bbf7676b4b7887a54f47b43929b8f3f1d7e77ae Mon Sep 17 00:00:00 2001 +From 06af804bd6e75332dd2be2005b443e285bc4f2dc Mon Sep 17 00:00:00 2001 From: "Erich E. Hoover" Date: Wed, 20 Aug 2014 00:08:52 -0600 Subject: [PATCH] ntdll: Implement storing DOS attributes in @@ -6,14 +6,14 @@ Subject: [PATCH] ntdll: Implement storing DOS attributes in --- dlls/ntdll/tests/file.c | 8 ++--- - dlls/ntdll/unix/file.c | 74 ++++++++++++++++++++++++++++++----------- - 2 files changed, 58 insertions(+), 24 deletions(-) + dlls/ntdll/unix/file.c | 76 +++++++++++++++++++++++++++++------------ + 2 files changed, 59 insertions(+), 25 deletions(-) diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c -index 8b9ec4f624d..6d2c8d2fc94 100644 +index 19ae5f2ac21..cb578ceee9e 100644 --- a/dlls/ntdll/tests/file.c +++ b/dlls/ntdll/tests/file.c -@@ -1389,7 +1389,7 @@ static void test_file_basic_information(void) +@@ -1400,7 +1400,7 @@ static void test_file_basic_information(void) memset(&fbi, 0, sizeof(fbi)); res = pNtQueryInformationFile(h, &io, &fbi, sizeof fbi, FileBasicInformation); ok ( res == STATUS_SUCCESS, "can't get attributes\n"); @@ -22,7 +22,7 @@ index 8b9ec4f624d..6d2c8d2fc94 100644 /* Then HIDDEN */ memset(&fbi, 0, sizeof(fbi)); -@@ -1402,7 +1402,7 @@ static void test_file_basic_information(void) +@@ -1413,7 +1413,7 @@ static void test_file_basic_information(void) memset(&fbi, 0, sizeof(fbi)); res = pNtQueryInformationFile(h, &io, &fbi, sizeof fbi, FileBasicInformation); ok ( res == STATUS_SUCCESS, "can't get attributes\n"); @@ -31,7 +31,7 @@ index 8b9ec4f624d..6d2c8d2fc94 100644 /* Check NORMAL last of all (to make sure we can clear attributes) */ memset(&fbi, 0, sizeof(fbi)); -@@ -1459,7 +1459,7 @@ static void test_file_all_information(void) +@@ -1470,7 +1470,7 @@ static void test_file_all_information(void) memset(&fai_buf.fai, 0, sizeof(fai_buf.fai)); res = pNtQueryInformationFile(h, &io, &fai_buf.fai, sizeof fai_buf, FileAllInformation); ok ( res == STATUS_SUCCESS, "can't get attributes, res %x\n", res); @@ -40,7 +40,7 @@ index 8b9ec4f624d..6d2c8d2fc94 100644 /* Then HIDDEN */ memset(&fai_buf.fai.BasicInformation, 0, sizeof(fai_buf.fai.BasicInformation)); -@@ -1472,7 +1472,7 @@ static void test_file_all_information(void) +@@ -1483,7 +1483,7 @@ static void test_file_all_information(void) memset(&fai_buf.fai, 0, sizeof(fai_buf.fai)); res = pNtQueryInformationFile(h, &io, &fai_buf.fai, sizeof fai_buf, FileAllInformation); ok ( res == STATUS_SUCCESS, "can't get attributes\n"); @@ -50,10 +50,10 @@ index 8b9ec4f624d..6d2c8d2fc94 100644 /* Check NORMAL last of all (to make sure we can clear attributes) */ memset(&fai_buf.fai.BasicInformation, 0, sizeof(fai_buf.fai.BasicInformation)); diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c -index da8f65af7b3..0a326a7a1bd 100644 +index a2cae9708db..9a1bd50c695 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c -@@ -376,6 +376,26 @@ NTSTATUS errno_to_status( int err ) +@@ -374,6 +374,26 @@ NTSTATUS errno_to_status( int err ) #define XATTR_USER_PREFIX "user." #endif @@ -120,7 +120,7 @@ index da8f65af7b3..0a326a7a1bd 100644 /* get the stat info and file attributes for a file (by name) */ static int get_file_info( const char *path, struct stat *st, ULONG *attr ) { -@@ -4139,7 +4192,6 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, +@@ -4356,7 +4409,6 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, case FileBasicInformation: if (len >= sizeof(FILE_BASIC_INFORMATION)) { @@ -128,12 +128,13 @@ index da8f65af7b3..0a326a7a1bd 100644 const FILE_BASIC_INFORMATION *info = ptr; LARGE_INTEGER mtime, atime; -@@ -4153,25 +4205,7 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, - io->u.Status = set_file_times( fd, &mtime, &atime ); +@@ -4369,26 +4421,8 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, + if (atime.QuadPart || mtime.QuadPart) + status = set_file_times( fd, &mtime, &atime ); - if (io->u.Status == STATUS_SUCCESS && info->FileAttributes) +- if (status == STATUS_SUCCESS && info->FileAttributes) - { -- if (fstat( fd, &st ) == -1) io->u.Status = errno_to_status( errno ); +- if (fstat( fd, &st ) == -1) status = errno_to_status( errno ); - else - { - if (info->FileAttributes & FILE_ATTRIBUTE_READONLY) @@ -148,13 +149,14 @@ index da8f65af7b3..0a326a7a1bd 100644 - /* add write permission only where we already have read permission */ - st.st_mode |= (0600 | ((st.st_mode & 044) >> 1)) & (~start_umask); - } -- if (fchmod( fd, st.st_mode ) == -1) io->u.Status = errno_to_status( errno ); +- if (fchmod( fd, st.st_mode ) == -1) status = errno_to_status( errno ); - } - } -+ io->u.Status = fd_set_file_info( fd, info->FileAttributes ); ++ if (status == STATUS_SUCCESS && info->FileAttributes) ++ status = fd_set_file_info( fd, info->FileAttributes ); if (needs_close) close( fd ); } -- -2.28.0 +2.30.2 diff --git a/patches/ntdll-DOS_Attributes/0004-ntdll-Implement-storing-DOS-attributes-in-NtCreateFi.patch b/patches/ntdll-DOS_Attributes/0004-ntdll-Implement-storing-DOS-attributes-in-NtCreateFi.patch index 4624d1d6..c9dde1ab 100644 --- a/patches/ntdll-DOS_Attributes/0004-ntdll-Implement-storing-DOS-attributes-in-NtCreateFi.patch +++ b/patches/ntdll-DOS_Attributes/0004-ntdll-Implement-storing-DOS-attributes-in-NtCreateFi.patch @@ -1,4 +1,4 @@ -From 02050df2d792e003c28a302d23e7a464573c113c Mon Sep 17 00:00:00 2001 +From 494342c8f911f827783f1aed9717d793c4e6a8c0 Mon Sep 17 00:00:00 2001 From: "Erich E. Hoover" Date: Wed, 20 Aug 2014 15:28:00 -0600 Subject: [PATCH] ntdll: Implement storing DOS attributes in NtCreateFile. @@ -58,10 +58,10 @@ index 6a423174664..fccd48f23e5 100644 } testfiles[i].nfound++; diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c -index b2494d0343a..ad39732fd29 100644 +index 9a1bd50c695..9b3735dd917 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c -@@ -407,6 +407,26 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si +@@ -404,6 +404,26 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si #endif } @@ -88,7 +88,7 @@ index b2494d0343a..ad39732fd29 100644 /* get space from the current directory data buffer, allocating a new one if necessary */ static void *get_dir_data_space( struct dir_data *data, unsigned int size ) { -@@ -3760,6 +3780,20 @@ static NTSTATUS unmount_device( HANDLE handle ) +@@ -3783,6 +3803,20 @@ static NTSTATUS unmount_device( HANDLE handle ) return status; } @@ -109,27 +109,27 @@ index b2494d0343a..ad39732fd29 100644 /****************************************************************************** * open_unix_file -@@ -3854,13 +3888,14 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU - io->u.Status = STATUS_SUCCESS; +@@ -3868,13 +3902,14 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU + status = STATUS_SUCCESS; } -- if (io->u.Status == STATUS_SUCCESS) -+ if (io->u.Status != STATUS_SUCCESS) +- if (status == STATUS_SUCCESS) ++ if (status != STATUS_SUCCESS) { -- io->u.Status = open_unix_file( handle, unix_name, access, &new_attr, attributes, -- sharing, disposition, options, ea_buffer, ea_length ); +- status = open_unix_file( handle, unix_name, access, &new_attr, attributes, +- sharing, disposition, options, ea_buffer, ea_length ); - free( unix_name ); + WARN( "%s not found (%x)\n", debugstr_us(attr->ObjectName), io->u.Status ); -+ return io->u.Status; ++ return status; } -- else WARN( "%s not found (%x)\n", debugstr_us(attr->ObjectName), io->u.Status ); +- else WARN( "%s not found (%x)\n", debugstr_us(attr->ObjectName), status ); + -+ io->u.Status = open_unix_file( handle, unix_name, access, &new_attr, attributes, ++ status = open_unix_file( handle, unix_name, access, &new_attr, attributes, + sharing, disposition, options, ea_buffer, ea_length ); - if (io->u.Status == STATUS_SUCCESS) + if (status == STATUS_SUCCESS) { -@@ -3882,6 +3917,11 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU +@@ -3896,6 +3931,11 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU io->Information = FILE_OVERWRITTEN; break; } @@ -139,14 +139,14 @@ index b2494d0343a..ad39732fd29 100644 + set_file_info( unix_name, attributes ); + } } - else if (io->u.Status == STATUS_TOO_MANY_OPENED_FILES) + else if (status == STATUS_TOO_MANY_OPENED_FILES) { -@@ -3890,6 +3930,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU +@@ -3904,6 +3944,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU } free( nt_name.Buffer ); + free( unix_name ); - return io->u.Status; + return io->u.Status = status; } -- diff --git a/patches/ntdll-FileFsFullSizeInformation/0001-ntdll-Add-support-for-FileFsFullSizeInformation-clas.patch b/patches/ntdll-FileFsFullSizeInformation/0001-ntdll-Add-support-for-FileFsFullSizeInformation-clas.patch index 3b4e6f7b..2e10588d 100644 --- a/patches/ntdll-FileFsFullSizeInformation/0001-ntdll-Add-support-for-FileFsFullSizeInformation-clas.patch +++ b/patches/ntdll-FileFsFullSizeInformation/0001-ntdll-Add-support-for-FileFsFullSizeInformation-clas.patch @@ -1,4 +1,4 @@ -From f4f37eddd1eb809cf491ae3a0029f3850021d69d Mon Sep 17 00:00:00 2001 +From 9b99e441e86ac54a15dc54802db7c739ae729bb8 Mon Sep 17 00:00:00 2001 From: Jianqiu Zhang Date: Fri, 17 Apr 2015 14:33:41 +0800 Subject: [PATCH] ntdll: Add support for FileFsFullSizeInformation class in @@ -6,14 +6,14 @@ Subject: [PATCH] ntdll: Add support for FileFsFullSizeInformation class in --- dlls/ntdll/tests/file.c | 8 +----- - dlls/ntdll/unix/file.c | 54 ++++++++++++++++++++++++++++++++++++++++- - 2 files changed, 54 insertions(+), 8 deletions(-) + dlls/ntdll/unix/file.c | 55 +++++++++++++++++++++++++++++++++++++++-- + 2 files changed, 54 insertions(+), 9 deletions(-) diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c -index 184b7cdad59..2ef8b451457 100644 +index bff3b18ce83..5dcb7a2729a 100644 --- a/dlls/ntdll/tests/file.c +++ b/dlls/ntdll/tests/file.c -@@ -1265,7 +1265,7 @@ static void test_file_full_size_information(void) +@@ -1291,7 +1291,7 @@ static void test_file_full_size_information(void) /* Assume No Quota Settings configured on Wine Testbot */ res = pNtQueryVolumeInformationFile(h, &io, &ffsi, sizeof ffsi, FileFsFullSizeInformation); @@ -22,7 +22,7 @@ index 184b7cdad59..2ef8b451457 100644 res = pNtQueryVolumeInformationFile(h, &io, &fsi, sizeof fsi, FileFsSizeInformation); ok(res == STATUS_SUCCESS, "cannot get attributes, res %x\n", res); -@@ -1281,8 +1281,6 @@ static void test_file_full_size_information(void) +@@ -1307,8 +1307,6 @@ static void test_file_full_size_information(void) ok(fsi.BytesPerSector == 512, "[fsi] BytesPerSector expected 512, got %d\n",fsi.BytesPerSector); ok(fsi.SectorsPerAllocationUnit == 8, "[fsi] SectorsPerAllocationUnit expected 8, got %d\n",fsi.SectorsPerAllocationUnit); @@ -31,7 +31,7 @@ index 184b7cdad59..2ef8b451457 100644 ok(ffsi.TotalAllocationUnits.QuadPart > 0, "[ffsi] TotalAllocationUnits expected positive, got negative value 0x%s\n", wine_dbgstr_longlong(ffsi.TotalAllocationUnits.QuadPart)); -@@ -1300,14 +1298,10 @@ static void test_file_full_size_information(void) +@@ -1326,14 +1324,10 @@ static void test_file_full_size_information(void) "[ffsi] CallerAvailableAllocationUnits error fsi:0x%s, ffsi: 0x%s\n", wine_dbgstr_longlong(fsi.AvailableAllocationUnits.QuadPart), wine_dbgstr_longlong(ffsi.CallerAvailableAllocationUnits.QuadPart)); @@ -47,14 +47,15 @@ index 184b7cdad59..2ef8b451457 100644 CloseHandle( h ); } diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c -index ca6899b50f5..389470804ee 100644 +index 5f7ed799c53..d7f91b41324 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c -@@ -6271,7 +6271,59 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, IO_STATUS_BLOCK *io +@@ -7518,8 +7518,59 @@ NTSTATUS WINAPI NtQueryVolumeInformationFile( HANDLE handle, IO_STATUS_BLOCK *io break; case FileFsFullSizeInformation: - FIXME( "%p: full size info not supported\n", handle ); +- status = STATUS_NOT_IMPLEMENTED; + if(length < sizeof(FILE_FS_FULL_SIZE_INFORMATION)) + io->u.Status = STATUS_BUFFER_TOO_SMALL; + else @@ -112,5 +113,5 @@ index ca6899b50f5..389470804ee 100644 case FileFsObjectIdInformation: -- -2.27.0 +2.30.2 diff --git a/patches/ntdll-Junction_Points/0023-server-Fix-obtaining-information-about-a-symlink.patch b/patches/ntdll-Junction_Points/0023-server-Fix-obtaining-information-about-a-symlink.patch index 50e5fea6..e979c78f 100644 --- a/patches/ntdll-Junction_Points/0023-server-Fix-obtaining-information-about-a-symlink.patch +++ b/patches/ntdll-Junction_Points/0023-server-Fix-obtaining-information-about-a-symlink.patch @@ -1,4 +1,4 @@ -From 8f44306c926d3e72fea2b5ffcd8c0b5b8c32f8b0 Mon Sep 17 00:00:00 2001 +From 42f756e849366ece3e83a7add81f7ddfbddcd0df Mon Sep 17 00:00:00 2001 From: "Erich E. Hoover" Date: Sat, 18 Jul 2020 09:13:29 -0600 Subject: [PATCH] server: Fix obtaining information about a symlink. @@ -11,10 +11,10 @@ Signed-off-by: Erich E. Hoover 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c -index c4efbc40878..4c0e864a011 100644 +index c6a02995e99..9e27f848e90 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c -@@ -1989,7 +1989,7 @@ static NTSTATUS fill_file_info( const struct stat *st, ULONG attr, void *ptr, +@@ -1986,7 +1986,7 @@ static NTSTATUS fill_file_info( const struct stat *st, ULONG attr, void *ptr, } @@ -23,7 +23,7 @@ index c4efbc40878..4c0e864a011 100644 { data_size_t size = 1024; NTSTATUS ret; -@@ -2002,6 +2002,7 @@ static NTSTATUS server_get_unix_name( HANDLE handle, char **unix_name ) +@@ -1999,6 +1999,7 @@ static NTSTATUS server_get_unix_name( HANDLE handle, char **unix_name ) SERVER_START_REQ( get_handle_unix_name ) { req->handle = wine_server_obj_handle( handle ); @@ -31,7 +31,7 @@ index c4efbc40878..4c0e864a011 100644 wine_server_set_reply( req, name, size ); ret = wine_server_call( req ); size = reply->name_len; -@@ -2197,7 +2198,7 @@ static NTSTATUS get_mountmgr_fs_info( HANDLE handle, int fd, struct mountmgr_uni +@@ -2194,7 +2195,7 @@ static NTSTATUS get_mountmgr_fs_info( HANDLE handle, int fd, struct mountmgr_uni NTSTATUS status; int letter; @@ -40,34 +40,34 @@ index c4efbc40878..4c0e864a011 100644 letter = find_dos_device( unix_name ); free( unix_name ); -@@ -4415,7 +4416,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, - if (fd_get_file_info( fd, options, &st, &attr ) == -1) io->u.Status = errno_to_status( errno ); +@@ -4413,7 +4414,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, + if (fd_get_file_info( fd, options, &st, &attr ) == -1) status = errno_to_status( errno ); else if (!S_ISREG(st.st_mode) && !S_ISDIR(st.st_mode)) - io->u.Status = STATUS_INVALID_INFO_CLASS; -- else if (!(io->u.Status = server_get_unix_name( handle, &unix_name ))) -+ else if (!(io->u.Status = server_get_unix_name( handle, &unix_name, FALSE ))) + status = STATUS_INVALID_INFO_CLASS; +- else if (!(status = server_get_unix_name( handle, &unix_name ))) ++ else if (!(status = server_get_unix_name( handle, &unix_name, FALSE ))) { LONG name_len = len - FIELD_OFFSET(FILE_ALL_INFORMATION, NameInformation.FileName); -@@ -4476,7 +4477,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, +@@ -4474,7 +4475,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, FILE_NAME_INFORMATION *info = ptr; char *unix_name; -- if (!(io->u.Status = server_get_unix_name( handle, &unix_name ))) -+ if (!(io->u.Status = server_get_unix_name( handle, &unix_name, FALSE ))) +- if (!(status = server_get_unix_name( handle, &unix_name ))) ++ if (!(status = server_get_unix_name( handle, &unix_name, FALSE ))) { LONG name_len = len - FIELD_OFFSET(FILE_NAME_INFORMATION, FileName); - io->u.Status = fill_name_info( unix_name, info, &name_len ); -@@ -4490,7 +4491,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, + status = fill_name_info( unix_name, info, &name_len ); +@@ -4488,7 +4489,7 @@ NTSTATUS WINAPI NtQueryInformationFile( HANDLE handle, IO_STATUS_BLOCK *io, FILE_NETWORK_OPEN_INFORMATION *info = ptr; char *unix_name; -- if (!(io->u.Status = server_get_unix_name( handle, &unix_name ))) -+ if (!(io->u.Status = server_get_unix_name( handle, &unix_name, FALSE ))) +- if (!(status = server_get_unix_name( handle, &unix_name ))) ++ if (!(status = server_get_unix_name( handle, &unix_name, FALSE ))) { ULONG attributes; struct stat st; -@@ -6058,7 +6059,7 @@ NTSTATUS create_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer) +@@ -6038,7 +6039,7 @@ NTSTATUS create_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer) if ((status = server_get_unix_fd( handle, FILE_SPECIAL_ACCESS, &dest_fd, &needs_close, NULL, NULL ))) return status; @@ -76,7 +76,7 @@ index c4efbc40878..4c0e864a011 100644 goto cleanup; src_allocated = TRUE; if (flags == SYMLINK_FLAG_RELATIVE) -@@ -6339,7 +6340,7 @@ NTSTATUS get_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer, ULONG out +@@ -6319,7 +6320,7 @@ NTSTATUS get_reparse_point(HANDLE handle, REPARSE_DATA_BUFFER *buffer, ULONG out if ((status = server_get_unix_fd( handle, FILE_ANY_ACCESS, &dest_fd, &needs_close, NULL, NULL ))) return status; @@ -85,7 +85,7 @@ index c4efbc40878..4c0e864a011 100644 goto cleanup; if ((status = get_symlink_properties( unix_src, unix_dest, &unix_dest_len, &buffer->ReparseTag, -@@ -6457,7 +6458,7 @@ NTSTATUS remove_reparse_point(HANDLE handle, REPARSE_GUID_DATA_BUFFER *buffer) +@@ -6437,7 +6438,7 @@ NTSTATUS remove_reparse_point(HANDLE handle, REPARSE_GUID_DATA_BUFFER *buffer) if ((status = server_get_unix_fd( handle, FILE_SPECIAL_ACCESS, &dest_fd, &needs_close, NULL, NULL ))) return status; @@ -94,7 +94,7 @@ index c4efbc40878..4c0e864a011 100644 goto cleanup; TRACE( "Deleting symlink %s\n", unix_name ); -@@ -7564,7 +7565,7 @@ NTSTATUS WINAPI NtQueryObject( HANDLE handle, OBJECT_INFORMATION_CLASS info_clas +@@ -7548,7 +7549,7 @@ NTSTATUS WINAPI NtQueryObject( HANDLE handle, OBJECT_INFORMATION_CLASS info_clas /* first try as a file object */ diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 16bab27a..63eab60d 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "ccbb0eef7bcaae672e9f7f69d3a9cdce62574177" + echo "3f2850aeaa159270384764843cdb1dc3cbe902c6" } # Show version information diff --git a/patches/winedevice-Default_Drivers/0002-dxgkrnl.sys-Add-stub-driver.patch b/patches/winedevice-Default_Drivers/0002-dxgkrnl.sys-Add-stub-driver.patch index 11f41d68..c92d3c11 100644 --- a/patches/winedevice-Default_Drivers/0002-dxgkrnl.sys-Add-stub-driver.patch +++ b/patches/winedevice-Default_Drivers/0002-dxgkrnl.sys-Add-stub-driver.patch @@ -1,4 +1,4 @@ -From fb48a8c56b8d7007f4dfc2771c142efc72c432c7 Mon Sep 17 00:00:00 2001 +From c2482d111b828a7613e50db405d7071b54507ff8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Thu, 8 Jun 2017 23:41:02 +0200 Subject: [PATCH] dxgkrnl.sys: Add stub driver. @@ -14,17 +14,17 @@ Subject: [PATCH] dxgkrnl.sys: Add stub driver. create mode 100644 dlls/dxgkrnl.sys/main.c diff --git a/configure.ac b/configure.ac -index f52cfc1e2b6..4eff254d273 100644 +index 29ff8923ec8..7a27ac4a11d 100644 --- a/configure.ac +++ b/configure.ac -@@ -3271,6 +3271,7 @@ WINE_CONFIG_MAKEFILE(dlls/dxerr8) +@@ -3256,6 +3256,7 @@ WINE_CONFIG_MAKEFILE(dlls/dxerr8) WINE_CONFIG_MAKEFILE(dlls/dxerr9) WINE_CONFIG_MAKEFILE(dlls/dxgi) WINE_CONFIG_MAKEFILE(dlls/dxgi/tests) +WINE_CONFIG_MAKEFILE(dlls/dxgkrnl.sys) WINE_CONFIG_MAKEFILE(dlls/dxguid) + WINE_CONFIG_MAKEFILE(dlls/dxtrans) WINE_CONFIG_MAKEFILE(dlls/dxva2) - WINE_CONFIG_MAKEFILE(dlls/dxva2/tests) diff --git a/dlls/dxgkrnl.sys/Makefile.in b/dlls/dxgkrnl.sys/Makefile.in new file mode 100644 index 00000000000..50390fbbb1e @@ -115,5 +115,5 @@ index 00000000000..c5639c237c8 + return STATUS_SUCCESS; +} -- -2.30.1 +2.30.2 diff --git a/patches/winedevice-Default_Drivers/0003-dxgmms1.sys-Add-stub-driver.patch b/patches/winedevice-Default_Drivers/0003-dxgmms1.sys-Add-stub-driver.patch index bd41cc39..85e0098a 100644 --- a/patches/winedevice-Default_Drivers/0003-dxgmms1.sys-Add-stub-driver.patch +++ b/patches/winedevice-Default_Drivers/0003-dxgmms1.sys-Add-stub-driver.patch @@ -1,4 +1,4 @@ -From dc0b6c029501ccaaaf558136280de80fd846b762 Mon Sep 17 00:00:00 2001 +From 1c65bd50c4e154444a025a2ebd135c16eb4f18c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Thu, 8 Jun 2017 23:42:32 +0200 Subject: [PATCH] dxgmms1.sys: Add stub driver. @@ -14,17 +14,17 @@ Subject: [PATCH] dxgmms1.sys: Add stub driver. create mode 100644 dlls/dxgmms1.sys/main.c diff --git a/configure.ac b/configure.ac -index 4eff254d273..0a3a89e7720 100644 +index 7a27ac4a11d..c446446d4a2 100644 --- a/configure.ac +++ b/configure.ac -@@ -3272,6 +3272,7 @@ WINE_CONFIG_MAKEFILE(dlls/dxerr9) +@@ -3257,6 +3257,7 @@ WINE_CONFIG_MAKEFILE(dlls/dxerr9) WINE_CONFIG_MAKEFILE(dlls/dxgi) WINE_CONFIG_MAKEFILE(dlls/dxgi/tests) WINE_CONFIG_MAKEFILE(dlls/dxgkrnl.sys) +WINE_CONFIG_MAKEFILE(dlls/dxgmms1.sys) WINE_CONFIG_MAKEFILE(dlls/dxguid) + WINE_CONFIG_MAKEFILE(dlls/dxtrans) WINE_CONFIG_MAKEFILE(dlls/dxva2) - WINE_CONFIG_MAKEFILE(dlls/dxva2/tests) diff --git a/dlls/dxgmms1.sys/Makefile.in b/dlls/dxgmms1.sys/Makefile.in new file mode 100644 index 00000000000..3ecc3ee5a3e @@ -91,5 +91,5 @@ index 00000000000..686493d3296 + return STATUS_SUCCESS; +} -- -2.30.1 +2.30.2 diff --git a/staging/upstream-commit b/staging/upstream-commit index f7ecc760..1d81d0b8 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -ccbb0eef7bcaae672e9f7f69d3a9cdce62574177 +3f2850aeaa159270384764843cdb1dc3cbe902c6