server: Fix error returned when exceeding allowed instances
Vitaliy Margolen
wine-patch at kievinfo.com
Tue Nov 1 10:43:56 CST 2005
Vitaliy Margolen
changelog:
server:
- Fix error returned when exceeding allowed instances
-------------- next part --------------
Index: server/named_pipe.c
===================================================================
RCS file: /home/wine/wine/server/named_pipe.c,v
retrieving revision 1.50
diff -u -p -r1.50 named_pipe.c
--- server/named_pipe.c 29 Oct 2005 12:38:23 -0000 1.50
+++ server/named_pipe.c 1 Nov 2005 16:35:27 -0000
@@ -562,10 +562,9 @@ DECL_HANDLER(create_named_pipe)
}
else
{
- set_error( 0 ); /* clear the name collision */
if (pipe->maxinstances <= pipe->instances)
{
- set_error( STATUS_PIPE_BUSY );
+ set_error( STATUS_INSTANCE_NOT_AVAILABLE );
release_object( pipe );
return;
}
@@ -577,6 +576,7 @@ DECL_HANDLER(create_named_pipe)
release_object( pipe );
return;
}
+ set_error( 0 ); /* clear the name collision */
}
server = create_pipe_server( pipe, req->options );
Index: dlls/ntdll/tests/om.c
===================================================================
RCS file: /home/wine/wine/dlls/ntdll/tests/om.c,v
retrieving revision 1.2
diff -u -p -r1.2 om.c
--- dlls/ntdll/tests/om.c 1 Nov 2005 10:22:38 -0000 1.2
+++ dlls/ntdll/tests/om.c 1 Nov 2005 16:38:44 -0000
@@ -109,7 +109,7 @@ void test_namespace_pipe(void)
status = pNtCreateNamedPipeFile(&pipe, GENERIC_READ|GENERIC_WRITE, &attr, &iosb, FILE_SHARE_READ|FILE_SHARE_WRITE,
FILE_CREATE, FILE_PIPE_FULL_DUPLEX, FALSE, FALSE, FALSE, 1, 256, 256, &timeout);
- todo_wine ok(status == STATUS_INSTANCE_NOT_AVAILABLE,
+ ok(status == STATUS_INSTANCE_NOT_AVAILABLE,
"NtCreateNamedPipeFile should have failed with STATUS_INSTANCE_NOT_AVAILABLE got(%08lx)\n", status);
pRtlInitUnicodeString(&str, buffer2);
More information about the wine-patches
mailing list