bug #9575 - better this time - testcase help needed

Paul Vriens paul.vriens.wine at gmail.com
Sat Sep 12 10:31:12 CDT 2009


On 09/12/2009 04:56 PM, Markus Stockhausen wrote:
> Am Samstag, den 12.09.2009, 16:50 +0200 schrieb Paul Vriens:
>> On 09/12/2009 04:13 PM, Markus Stockhausen wrote:
>>> Am Samstag, den 12.09.2009, 15:52 +0200 schrieb Markus Stockhausen:
>>>> Hi,
>>>>
>>>> hopefully the right explanation for the error can be found here
>>>> http://bugs.winehq.org/show_bug.cgi?id=9575 . Once again I need someone
>>>> with a Windows machine who can provide the following:
>>>>
>>>> ...
>>>> HRESULT = StgOpenStorage( 'testfile.txt', ... , ppstgOpen1 );
>>>> HRESULT = StgOpenStorage( 'testfile.txt', ... , ppstgOpen2 );
>>>>
>>>> I expect *ppstgOpen2 not to be NULL in Windows while being NULL under
>>>> Wine.
>>>>
>>>> Best regards.
>>>>
>>>> Markus
>>>
>>> Uh, too fast when sending. Additionally the result code of HRESULT is
>>> needed to get a clearer picture.
>>>
>>> Best regards.
>>>
>>>
>>>
>> Hi Markus,
>>
>>       /* create the file */
>>       SetLastError(0xdeadbeef);
>>       r = StgCreateDocfile( filename, 0x11012, 0,&stg);
>>       trace("r : %08x\n", r);
>>       trace("GLE : %d/%08x\n", GetLastError(), GetLastError());
>>       IStorage_Release(stg);
>>
>>       SetLastError(0xdeadbeef);
>>       r= StgOpenStorage( filename, NULL, 0x10012, NULL, 0,&stg);
>>       trace("r : %08x\n", r);
>>       trace("GLE : %d/%08x\n", GetLastError(), GetLastError());
>>
>>       SetLastError(0xdeadbeef);
>>       r= StgOpenStorage( filename, NULL, 0x10012, NULL, 0,&stg);
>>       trace("r : %08x\n", r);
>>       trace("GLE : %d/%08x\n", GetLastError(), GetLastError());
>>
>> Output on W2K3:
>>
>> storage32.c:1498: r : 00000000
>> storage32.c:1499: GLE : 0/00000000
>> storage32.c:1504: r : 00000000
>> storage32.c:1505: GLE : 0/00000000
>> storage32.c:1509: r : 80030020
>> storage32.c:1510: GLE : 32/00000020
>>
>> Wine:
>>
>> storage32.c:1498: r : 00000000
>> storage32.c:1499: GLE : 0/00000000
>> storage32.c:1504: r : 00000000
>> storage32.c:1505: GLE : 0/00000000
>> storage32.c:1509: r : 80030020
>> storage32.c:1510: GLE : 32/00000020
>>
>> So I get STG_E_SHAREVIOLATION and a GLE of ERROR_SHARING_VIOLATION on
>> both W2K3 and Wine for the second call.
>>
>> The grfMode is taken from the trace of running the application.
>>
>
> So I guess *ppstgOpen pointing to NULL in Wine can be the culprit.
>
>
>
Is also NULL on W2K3.

-- 
Cheers,

Paul.



More information about the wine-devel mailing list