Module: wine Branch: master Commit: b0d57e5f911553d812235a33124da30b422ee200 URL: https://gitlab.winehq.org/wine/wine/-/commit/b0d57e5f911553d812235a33124da30...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Feb 28 09:47:41 2023 +0100
ntdll: Update the IOSB status in NtCreateNamedPipeFile().
---
dlls/ntdll/tests/om.c | 4 ++++ dlls/ntdll/unix/file.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/tests/om.c b/dlls/ntdll/tests/om.c index fb6deb19fa9..d663ebcb00f 100644 --- a/dlls/ntdll/tests/om.c +++ b/dlls/ntdll/tests/om.c @@ -379,6 +379,7 @@ static void test_name_collisions(void) FILE_OPEN_IF, FILE_PIPE_FULL_DUPLEX, FALSE, FALSE, FALSE, 10, 256, 256, &timeout ); ok(status == STATUS_SUCCESS, "failed to create pipe %08lx\n", status); + ok( iosb.Status == STATUS_SUCCESS, "wrong status %08lx\n", status); ok( iosb.Information == FILE_CREATED, "wrong info %Ix\n", iosb.Information ); pNtClose( h );
@@ -388,6 +389,7 @@ static void test_name_collisions(void) FILE_CREATE, FILE_PIPE_FULL_DUPLEX, FALSE, FALSE, FALSE, 10, 256, 256, &timeout ); ok(status == STATUS_SUCCESS, "failed to create pipe %08lx\n", status); + ok( iosb.Status == STATUS_SUCCESS, "wrong status %08lx\n", status); ok( iosb.Information == FILE_CREATED, "wrong info %Ix\n", iosb.Information );
memset( &iosb, 0xcc, sizeof(iosb) ); @@ -396,6 +398,7 @@ static void test_name_collisions(void) FILE_OPEN, FILE_PIPE_FULL_DUPLEX, FALSE, FALSE, FALSE, 10, 256, 256, &timeout ); ok(status == STATUS_SUCCESS, "failed to create pipe %08lx\n", status); + ok( iosb.Status == STATUS_SUCCESS, "wrong status %08lx\n", status); ok( iosb.Information == FILE_OPENED, "wrong info %Ix\n", iosb.Information ); pNtClose(h1);
@@ -405,6 +408,7 @@ static void test_name_collisions(void) FILE_OPEN_IF, FILE_PIPE_FULL_DUPLEX, FALSE, FALSE, FALSE, 10, 256, 256, &timeout ); ok(status == STATUS_SUCCESS, "failed to create pipe %08lx\n", status); + ok( iosb.Status == STATUS_SUCCESS, "wrong status %08lx\n", status); ok( iosb.Information == FILE_OPENED, "wrong info %Ix\n", iosb.Information ); pNtClose(h1);
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c index 4daf1a5335c..7a724c87025 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c @@ -4153,7 +4153,7 @@ NTSTATUS WINAPI NtCreateNamedPipeFile( HANDLE *handle, ULONG access, OBJECT_ATTR SERVER_END_REQ;
free( objattr ); - return status; + return io->u.Status = status; }