[PATCH 4/5] xmllite/tests: Add basic test structure for IXmlReader

Reece Dunn msclrhd at googlemail.com
Thu Jan 21 11:54:48 CST 2010


2010/1/21 Nikolay Sivov <bunglehead at gmail.com>:
> On 1/21/2010 20:41, Reece Dunn wrote:
>>
>> 2010/1/21 Nikolay Sivov<bunglehead at gmail.com>:
>>
>>>
>>> On 1/21/2010 19:49, Paul Vriens wrote:
>>>
>>>>
>>>> On 21 jan 2010, at 17:26, Nikolay Sivov<bunglehead at gmail.com>  wrote:
>>>>
>>>>
>>>>>
>>>>> On 1/21/2010 19:19, Paul Vriens wrote:
>>>>>
>>>>>>
>>>>>> On 01/18/2010 10:28 PM, Nikolay Sivov wrote:
>>>>>>
>>>>>>>
>>>>>>> Add basic test structure for IXmlReader
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Hi Nikolay,
>>>>>>
>>>>>> This one crashes on Vista without a servicepack at:
>>>>>>
>>>>>> +    IXmlReader_Release(reader);
>>>>>> +}
>>>>>>
>>>>>> All the calls before that one look ok (they produce the expected
>>>>>> output).
>>>>>>
>>>>>> I guess "vista without an SP" can be considered broken(), but how do
>>>>>> deal with that?
>>>>>>
>>>>>>
>>>>>
>>>>> That's a bit strange. Could you test for reader pointer around this:
>>>>> ---
>>>>>   hr = pCreateXmlReader(&IID_IXmlReader, (LPVOID*)&reader, NULL);
>>>>>   ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
>>>>> ---
>>>>> Add reader = 0xdeadbeef; and test what is reader after a call.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> See https://winetestbot.geldorp.nl/JobDetails.pl?Key=386
>>>>
>>>
>>> Hm. So it's created ok, at least looks so.
>>>
>>> I don't see how to fix this. We could remove this _Release of course, but
>>> will leak.
>>>
>>
>> Can't you do something like:
>>
>>    ULONG count;
>>    count = IXmlReader_AddRef(reader);
>>    ok (count == 2, "Expected AddRef to return 2, got: %d\n", count)
>>    while (count>  0)
>>       count = IXmlReader_Release(reader);
>>
>
> Maybe. It's ugly of course, cause it's not clear at all why refcount could
> be zero just after creation
> with success code and not zero pointer.
> Btw, could you try it?

I don't have access to a Windows test machine to try it out, and don't
have access to my home Linux dev box, so can't create a patch for the
test bot at the moment.

- Reece



More information about the wine-devel mailing list