Module: wine Branch: master Commit: fd8cb3f9c25d13428e1ff65c65b54b3cc0e84342 URL: http://source.winehq.org/git/wine.git/?a=commit;h=fd8cb3f9c25d13428e1ff65c65...
Author: Rob Shearman robertshearman@gmail.com Date: Sat Jun 14 16:42:32 2008 +0100
rpcrt4: Reduce the timeout of waiting on the stop event in the server test to one second.
The stop event should already be signaled by the time we get to that point since we wait until the child processes terminate in the server process and the stop event is signaled in the context of one of the child processes.
Don't call RpcMgmtWaitServerListening if the call to WaitForSingleObject failed since it is likely that s_stop() hasn't been called and therefore the call to RpcMgmtWaitServerListening won't ever return.
---
dlls/rpcrt4/tests/server.c | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/dlls/rpcrt4/tests/server.c b/dlls/rpcrt4/tests/server.c index 5f6da37..6c0527f 100644 --- a/dlls/rpcrt4/tests/server.c +++ b/dlls/rpcrt4/tests/server.c @@ -1242,6 +1242,7 @@ server(void) RPC_STATUS status, iptcp_status, np_status; RPC_STATUS (RPC_ENTRY *pRpcServerRegisterIfEx)(RPC_IF_HANDLE,UUID*, RPC_MGR_EPV*, unsigned int,unsigned int,RPC_IF_CALLBACK_FN*); + DWORD ret;
iptcp_status = RpcServerUseProtseqEp(iptcp, 20, port, NULL); ok(iptcp_status == RPC_S_OK, "RpcServerUseProtseqEp(ncacn_ip_tcp) failed with status %ld\n", iptcp_status); @@ -1278,10 +1279,16 @@ server(void) return; }
- ok(WAIT_OBJECT_0 == WaitForSingleObject(stop_event, 60000), "WaitForSingleObject\n"); - status = RpcMgmtWaitServerListen(); - todo_wine { - ok(status == RPC_S_OK, "RpcMgmtWaitServerListening failed with status %ld\n", status); + ret = WaitForSingleObject(stop_event, 1000); + ok(WAIT_OBJECT_0 == ret, "WaitForSingleObject\n"); + /* if the stop event didn't fire then RpcMgmtWaitServerListen will wait + * forever, so don't bother calling it in this case */ + if (ret == WAIT_OBJECT_0) + { + status = RpcMgmtWaitServerListen(); + todo_wine { + ok(status == RPC_S_OK, "RpcMgmtWaitServerListening failed with status %ld\n", status); + } } }