From e298538459acf2d5c96f762a1f863f286b375891 Mon Sep 17 00:00:00 2001 From: Robert Shearman Date: Tue, 10 Jan 2006 19:59:26 +0100 Subject: [PATCH] rpcrt4: Don't release the interface pointer on failure. Don't release the interface pointer on failure since we are not the ones that allocated it. It is the caller's responsability to call NdrInterfacePointerFree, where the freeing is supposed to happen. --- dlls/rpcrt4/ndr_ole.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/dlls/rpcrt4/ndr_ole.c b/dlls/rpcrt4/ndr_ole.c index 0919f9fdd96..5d7cccf8444 100644 --- a/dlls/rpcrt4/ndr_ole.c +++ b/dlls/rpcrt4/ndr_ole.c @@ -261,10 +261,8 @@ unsigned char * WINAPI NdrInterfacePointerMarshall(PMIDL_STUB_MESSAGE pStubMsg, pStubMsg->dwDestContext, pStubMsg->pvDestContext, MSHLFLAGS_NORMAL); IStream_Release(stream); - if (FAILED(hr)) { - IUnknown_Release((LPUNKNOWN)pMemory); + if (FAILED(hr)) RpcRaiseException(hr); - } } } return NULL;