RFC: More tests for riched20 ITextServices
Maarten Lankhorst
m.b.lankhorst at gmail.com
Fri Jul 4 01:58:37 CDT 2008
Hi Austin,
2008/7/3 Austin Lund <austin.lund at gmail.com>:
> 2008/7/4 Dan Hipschman <dsh at linux.ucla.edu>:
>> On Thu, Jul 03, 2008 at 05:32:32PM +1000, Austin Lund wrote:
>>> I have run these with the native dll in wine and it works fine, but
>>> would like someone to test them on windows platforms.
>>
>> I couldn't get these to compile within a few minutes due to not being
>> familiar with what headers were needed, but I can comment on a few
>> things to get the ball rolling.
>
> What were the compile errors? At the moment I can only test it under
> the wine source. Perhaps this is related to the mangling done for the
> thiscall function calls.
>
>>> +#include "config.h"
>>> +#include "wine/port.h"
>>
>> These should not be included in tests.
>
> This is related to the __ASM_GLOBAL_FUNC and __ASM_NAME used in the
> section where the thiscall to standard call conversion is done. This
> is also done in dlls/riched20/txtsrv.c.
>
>> Go easy on the trace calls in tests.
>
> Will do. Done that.
>
>>> + *ppvObject = NULL;
>>> +
>>> + if (IsEqualIID(riid, &IID_IUnknown))
>>> + *ppvObject = (LPVOID)This;
>>> + else if (IsEqualIID(riid, &IID_ITextHost))
>>> + *ppvObject = (LPVOID)This;
>>> + else
>>> + return E_NOINTERFACE;
>>> +
>>> + trace("ppvObject now %p\n",ppvObject);
>>> + if (*ppvObject)
>>> + {
>>> + ITextHost_AddRef((ITextHost *)(*ppvObject));
>>> + return S_OK;
>>> + }
>>> +
>>> + return E_NOINTERFACE;
>>
>> This could be easily cleaned up.
>
> I'm not sure what else can be done. I got rid of the "else if" part.
The second 'return E_NOINTERFACE' will never be reached.
Cheers,
Maarten.
More information about the wine-devel
mailing list