• Robert Shearman's avatar
    oleaut32: Fix circular reference count in Typelib marshaler. · b0218db9
    Robert Shearman authored
    The current method of handling typelib-marshaled interfaces that derive
    from IDispatch is to query for an IDispatch pointer from the proxy, but
    this causes a circular reference count.
    Fix the reference counting by loading using the IRpcProxyBuffer of
    IDispatch without an outer unknown, so that the lifetime is controlled
    by the typelib-marshaled interface's proxy. The IDispatch proxy now
    shares the same channel as the typelib-marshaled interface, so fix up
    the stub side to handle this.
    b0218db9
Name
Last commit
Last update
..
tests Loading commit data...
.gitignore Loading commit data...
Makefile.in Loading commit data...
connpt.c Loading commit data...
connpt.h Loading commit data...
dispatch.c Loading commit data...
hash.c Loading commit data...
oaidl_p.c Loading commit data...
ole2disp.c Loading commit data...
ole2disp.h Loading commit data...
ole2disp.spec Loading commit data...
oleaut.c Loading commit data...
oleaut32.rc Loading commit data...
oleaut32.spec Loading commit data...
oleaut32_Bg.rc Loading commit data...
oleaut32_Cz.rc Loading commit data...
oleaut32_De.rc Loading commit data...
oleaut32_Dk.rc Loading commit data...
oleaut32_En.rc Loading commit data...
oleaut32_Es.rc Loading commit data...
oleaut32_Fr.rc Loading commit data...
oleaut32_Hu.rc Loading commit data...
oleaut32_It.rc Loading commit data...
oleaut32_Ko.rc Loading commit data...
oleaut32_Nl.rc Loading commit data...
oleaut32_No.rc Loading commit data...
oleaut32_Pl.rc Loading commit data...
oleaut32_Pt.rc Loading commit data...
oleaut32_Ru.rc Loading commit data...
oleaut32_Sv.rc Loading commit data...
oleaut32_Th.rc Loading commit data...
oleaut32_Tr.rc Loading commit data...
olefont.c Loading commit data...
olepicture.c Loading commit data...
recinfo.c Loading commit data...
regsvr.c Loading commit data...
resource.h Loading commit data...
safearray.c Loading commit data...
stubs.c Loading commit data...
tmarshal.c Loading commit data...
typelib.c Loading commit data...
typelib.h Loading commit data...
typelib.spec Loading commit data...
typelib16.c Loading commit data...
typelib2.c Loading commit data...
usrmarshal.c Loading commit data...
varformat.c Loading commit data...
variant.c Loading commit data...
variant.h Loading commit data...
vartype.c Loading commit data...
version.rc Loading commit data...