The tests intermittently crash on 2008 with RPC_S_SERVER_TOO_BUSY. I suspect this is due to the server spawned in run_server having a call limit of 20 but being expected to service 32 threads. Use the default parameter in an attempt to prevent this failure.
Signed-off-by: Zebediah Figura z.figura12@gmail.com --- I can reproduce the crash reliably on a VM if I turn down the call limit to 2.
dlls/rpcrt4/tests/server.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/rpcrt4/tests/server.c b/dlls/rpcrt4/tests/server.c index a07e2f1787f..0a76c96d589 100644 --- a/dlls/rpcrt4/tests/server.c +++ b/dlls/rpcrt4/tests/server.c @@ -2049,7 +2049,7 @@ server(void) ok(status == RPC_S_OK, "RpcServerRegisterIf failed with status %d\n", status); } test_is_server_listening(NULL, RPC_S_NOT_LISTENING); - status = RpcServerListen(1, 20, TRUE); + status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, TRUE); ok(status == RPC_S_OK, "RpcServerListen failed with status %d\n", status); test_is_server_listening(NULL, RPC_S_OK); stop_event = CreateEventW(NULL, FALSE, FALSE, NULL); @@ -2146,7 +2146,7 @@ static void test_stop_wait_for_call(unsigned char *binding) RPC_STATUS status; DWORD ret;
- status = RpcServerListen(1, 20, TRUE); + status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, TRUE); ok(status == RPC_S_OK, "RpcServerListen failed with status %d\n", status); test_is_server_listening(NULL, RPC_S_OK);
@@ -2202,11 +2202,11 @@ static void test_server_listening(void) ok(status == RPC_S_OK, "RpcServerRegisterIf failed with status %d\n", status);
test_is_server_listening(NULL, RPC_S_NOT_LISTENING); - status = RpcServerListen(1, 20, TRUE); + status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, TRUE); ok(status == RPC_S_OK, "RpcServerListen failed with status %d\n", status); test_is_server_listening(NULL, RPC_S_OK);
- status = RpcServerListen(1, 20, TRUE); + status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, TRUE); ok(status == RPC_S_ALREADY_LISTENING, "RpcServerListen failed with status %d\n", status);
status = RpcMgmtStopServerListening(NULL); @@ -2281,7 +2281,7 @@ static void run_server(HANDLE ready_event) ok(status == RPC_S_OK, "RpcServerRegisterIf failed with status %d\n", status);
test_is_server_listening(NULL, RPC_S_NOT_LISTENING); - status = RpcServerListen(1, 20, TRUE); + status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, TRUE); ok(status == RPC_S_OK, "RpcServerListen failed with status %d\n", status);
stop_event = CreateEventW(NULL, FALSE, FALSE, NULL);