From 776f81b3beb24cd9f36620722872f8ee5909502e Mon Sep 17 00:00:00 2001 From: Rob Shearman Date: Tue, 2 Jan 2007 15:39:54 +0000 Subject: [PATCH] rpcrt4: A NULL IfSpec in RpcServerUnregisterIf should remove all interfaces, not crash. --- dlls/rpcrt4/rpc_server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/rpcrt4/rpc_server.c b/dlls/rpcrt4/rpc_server.c index 50549ea5736..285ef094a64 100644 --- a/dlls/rpcrt4/rpc_server.c +++ b/dlls/rpcrt4/rpc_server.c @@ -831,7 +831,7 @@ RPC_STATUS WINAPI RpcServerUnregisterIf( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid EnterCriticalSection(&server_cs); LIST_FOR_EACH_ENTRY(cif, &server_interfaces, RpcServerInterface, entry) { - if (!memcmp(&If->InterfaceId, &cif->If->InterfaceId, sizeof(RPC_SYNTAX_IDENTIFIER)) && + if ((!IfSpec || !memcmp(&If->InterfaceId, &cif->If->InterfaceId, sizeof(RPC_SYNTAX_IDENTIFIER))) && UuidEqual(MgrTypeUuid, &cif->MgrTypeUuid, &status)) { list_remove(&cif->entry); if (cif->CurrentCalls) {