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

Reece Dunn msclrhd at googlemail.com
Thu Jan 21 11:41:49 CST 2010


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);

?

- Reece



More information about the wine-devel mailing list