rpcrt4: Call NdrCorrelationInitialize and NdrCorrelationFree from NdrClientCall2 if new correlation descriptors have been specified.
This commit is contained in:
parent
23c9b6c161
commit
807a203f77
|
@ -562,6 +562,8 @@ LONG_PTR WINAPIV NdrClientCall2(PMIDL_STUB_DESC pStubDesc, PFORMAT_STRING pForma
|
||||||
/* the pointer to the object when in OLE mode */
|
/* the pointer to the object when in OLE mode */
|
||||||
void * This = NULL;
|
void * This = NULL;
|
||||||
PFORMAT_STRING pHandleFormat;
|
PFORMAT_STRING pHandleFormat;
|
||||||
|
/* correlation cache */
|
||||||
|
unsigned long NdrCorrCache[256];
|
||||||
|
|
||||||
TRACE("pStubDesc %p, pFormat %p, ...\n", pStubDesc, pFormat);
|
TRACE("pStubDesc %p, pFormat %p, ...\n", pStubDesc, pFormat);
|
||||||
|
|
||||||
|
@ -663,8 +665,7 @@ LONG_PTR WINAPIV NdrClientCall2(PMIDL_STUB_DESC pStubDesc, PFORMAT_STRING pForma
|
||||||
if (ext_flags.HasNewCorrDesc)
|
if (ext_flags.HasNewCorrDesc)
|
||||||
{
|
{
|
||||||
/* initialize extra correlation package */
|
/* initialize extra correlation package */
|
||||||
FIXME("new correlation description not implemented\n");
|
NdrCorrelationInitialize(&stubMsg, NdrCorrCache, sizeof(NdrCorrCache), 0);
|
||||||
stubMsg.fHasNewCorrDesc = TRUE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* order of phases:
|
/* order of phases:
|
||||||
|
@ -744,7 +745,7 @@ LONG_PTR WINAPIV NdrClientCall2(PMIDL_STUB_DESC pStubDesc, PFORMAT_STRING pForma
|
||||||
if (ext_flags.HasNewCorrDesc)
|
if (ext_flags.HasNewCorrDesc)
|
||||||
{
|
{
|
||||||
/* free extra correlation package */
|
/* free extra correlation package */
|
||||||
/* NdrCorrelationFree(&stubMsg); */
|
NdrCorrelationFree(&stubMsg);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Oif_flags.HasPipes)
|
if (Oif_flags.HasPipes)
|
||||||
|
|
Loading…
Reference in New Issue