d3d9 : do not proceed reset or release from another thread than the one which created the device.

Jérôme Gardou jerome.gardou at gmail.com
Sun Dec 7 06:52:03 CST 2008


Jérôme Gardou a écrit :
> Henri Verbeet a écrit :
>   
>> 2008/12/6 Jérôme Gardou <jerome.gardou at gmail.com>:
>>   
>>     
>>> According to d3d9_private.h , ref is a LONG.
>>>
>>>     
>>>       
>> ref is not defined in d3d9_private.h.
>>   
>>     
> Taken from d3d9_private.h :
>
> typedef struct IDirect3DDevice9Impl
> {
>     /* IUnknown fields */
>     const IDirect3DDevice9ExVtbl   *lpVtbl;
>     LONG                          ref;
> ...
>
> That's why the compiler did not complained... But release actually 
> returns a ULONG, and the IUnknown ref is an ULONG anyway...
> I guess this should be changed for consistency.
>
>
>   
Oh dear... I upgraded my winXP VM to SP3 yesterday, and the tests I 
wrote now crash... seems like d3d9 does not care about threads anymore...



More information about the wine-devel mailing list