riched20: ITextDocument stubs for ITextServices (retry)
Jacek Caban
jacek at codeweavers.com
Mon Jul 29 05:04:07 CDT 2013
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
More information about the wine-devel
mailing list