Hi Caibin,
On 07/29/13 01:52, Caibin Chen wrote:
Hi,
It has been 2 weeks since I sent this patch[1]. It's still new status in the patches list. I'm working on following patches based on it. I appreciate your reviews and will work on the patch to get it submitted.
You sent the patch during code freeze, when it couldn't be committed, so it probably didn't get enough attention. Now is the right time to resubmit.
+ /* COM aggregation on ITextDocument */ + hr = IUnknown_QueryInterface(unk_obj.inner_unk, &IID_ITextDocument, (void**)&textdoc); + ok(hr == S_OK, "QueryInterface for IID_ITextDocument failed: %08x\n", hr); + refcount = ITextDocument_AddRef(textdoc); + ok(refcount == unk_obj.ref, "CreateTextServices just pretends to support COM aggregation\n"); + refcount = ITextDocument_Release(textdoc); + ok(refcount == unk_obj.ref, "CreateTextServices just pretends to support COM aggregation\n"); + refcount = ITextDocument_Release(textdoc);
It doesn't really make sense to test COM aggregation on every interface implemented by an object. The valuable part of the test is that ITextDocument should be supported, but there is probably a better place to put this test.
+ +struct tagReTxtDoc { + IUnknown *outerObj; + ME_TextEditor *editor; + ITextDocument iTextDocumentIface; +};
Do you really need a separated structure for that? Wouldn't adding ITextDocument implementation to ITextServicesImpl be enough?
Thanks, Jacek