msctf: Add ITfComponentMgr to documentmgr.
diff --git a/dlls/msctf/documentmgr.c b/dlls/msctf/documentmgr.c
index 7fd354a..3d4dbe9 100644
--- a/dlls/msctf/documentmgr.c
+++ b/dlls/msctf/documentmgr.c
@@ -45,6 +45,9 @@
const ITfSourceVtbl *SourceVtbl;
LONG refCount;
+ /* Aggregation */
+ ITfCompartmentMgr *CompartmentMgr;
+
ITfContext* contextStack[2]; /* limit of 2 contexts */
ITfThreadMgrEventSink* ThreadMgrSink;
} DocumentMgr;
@@ -61,6 +64,7 @@
ITfContext_Release(This->contextStack[0]);
if (This->contextStack[1])
ITfContext_Release(This->contextStack[1]);
+ CompartmentMgr_Destructor(This->CompartmentMgr);
HeapFree(GetProcessHeap(),0,This);
}
@@ -77,6 +81,10 @@
{
*ppvOut = &This->SourceVtbl;
}
+ else if (IsEqualIID(iid, &IID_ITfCompartmentMgr))
+ {
+ *ppvOut = This->CompartmentMgr;
+ }
if (*ppvOut)
{
@@ -303,6 +311,8 @@
This->refCount = 1;
This->ThreadMgrSink = ThreadMgrSink;
+ CompartmentMgr_Constructor((IUnknown*)This, &IID_IUnknown, (IUnknown**)&This->CompartmentMgr);
+
TRACE("returning %p\n", This);
*ppOut = (ITfDocumentMgr*)This;
return S_OK;