Fix error returned when exceeding allowed instances.

oldstable
Vitaliy Margolen 2005-11-01 21:37:30 +00:00 committed by Alexandre Julliard
parent ac6c7a9a10
commit ecca104869
2 changed files with 3 additions and 3 deletions

View File

@ -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);

View File

@ -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 );