Updated ntoskrnl-safedisc-2 patchset

Fix kernel32 pipe tests and crash in GTAV launcher.
This commit is contained in:
Paul Gofman
2019-12-19 12:33:25 +03:00
parent 108662b1cc
commit c8e3795e69
2 changed files with 1 additions and 60 deletions

View File

@@ -1,56 +0,0 @@
From d60f2de8b419618674457e5539b081421c110f1e Mon Sep 17 00:00:00 2001
From: Chip Davis <cdavis@codeweavers.com>
Date: Sat, 14 Dec 2019 01:58:26 -0600
Subject: [PATCH 4/4] server: Return the driver's 'Information' from ioctl.
This actually shouldn't matter for driver modules, since those always
call out to another process, but it seems more correct.
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
---
dlls/ntdll/file.c | 2 +-
server/fd.c | 2 +-
server/protocol.def | 1 +
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 26acc066cd..087a92cda2 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1536,7 +1536,7 @@ static NTSTATUS server_ioctl_file( HANDLE handle, HANDLE event,
if (wait_handle && status != STATUS_PENDING)
{
io->u.Status = status;
- io->Information = wine_server_reply_size( reply );
+ io->Information = reply->size;
}
}
SERVER_END_REQ;
diff --git a/server/fd.c b/server/fd.c
index 5d80e218b9..dbfb65abd0 100644
--- a/server/fd.c
+++ b/server/fd.c
@@ -2579,7 +2579,7 @@ DECL_HANDLER(ioctl)
if ((async = create_request_async( fd, fd->comp_flags, &req->async )))
{
- reply->wait = async_handoff( async, fd->fd_ops->ioctl( fd, req->code, async ), NULL, 0 );
+ reply->wait = async_handoff( async, fd->fd_ops->ioctl( fd, req->code, async ), &reply->size, 0 );
reply->options = fd->options;
release_object( async );
}
diff --git a/server/protocol.def b/server/protocol.def
index 6c44b2b43f..f1f694bf96 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -2484,6 +2484,7 @@ enum message_type
@REPLY
obj_handle_t wait; /* handle to wait on for blocking ioctl */
unsigned int options; /* device open options */
+ data_size_t size; /* result size */
VARARG(out_data,bytes); /* ioctl output data */
@END
--
2.17.1