• Kevin Puetz's avatar
    rpcrt4: Add a refcount owned by MIDL_STUB_MESSAGE. · a7be4256
    Kevin Puetz authored
    In cases where this could have been use-after-free, exceptions were
    caught/hidden by RpcTryFinally, but still lead to leaks since
    NdrProxyFreeBuffer wasn't able to call IRPCChannelBuffer::FreeBuffer.
    
    StdProxy_GetChannel() now AddRef() on its return value (used to set
    __proxy_frame::_StubMsg::pRpcChannelBuffer), and NdrProxyFreeBuffer()
    calls the corresponding Release() and clears the now-weak pointer.
    This makes the behavior of these function match the observed test
    results, and fixes the crash/leak when a proxy is released mid-Invoke.
    a7be4256
Name
Last commit
Last update
..
Makefile.in Loading commit data...
cstub.c Loading commit data...
cstub.idl Loading commit data...
generated.c Loading commit data...
ndr_marshall.c Loading commit data...
rpc.c Loading commit data...
rpc_async.c Loading commit data...
server.c Loading commit data...
server.idl Loading commit data...
server_defines.h Loading commit data...
server_interp.idl Loading commit data...