WINED3DUSAGE_MASK?

Misha Koshelev misha680 at gmail.com
Thu Jul 8 20:21:28 CDT 2010


Dear All:

Sorry to bother - I just ran into something quite curious in terms of a
Wine-specific feature that is certainly not matched in Windows XP and
was wondering what its purpose was...

Also, should I use todo_wine to test for this, or is there a better way
since this seems something that obviously we're not trying to "make
conform" in Wine but rather something that seems to be an intended
feature (please correct me if I am incorrect).

Specifically, this is a usage flag for index buffer creation that seems
to have been introduced here:

commit 3529560cd7a4f752596e80d4084e9527b348eb22
Author: Stefan Dösinger <stefandoesinger at gmx.at>
Date:   Thu Oct 5 17:56:54 2006 +0200

    wined3d: Add WINED3DUSAGE_OVERLAY.

diff --git a/dlls/d3d9/indexbuffer.c b/dlls/d3d9/indexbuffer.c
index fc85357..269552a 100644
--- a/dlls/d3d9/indexbuffer.c
+++ b/dlls/d3d9/indexbuffer.c
@@ -175,7 +175,7 @@ HRESULT WINAPI
IDirect3DDevice9Impl_CreateIndexBuffer(LPDIRECT3DDEVICE9 iface,
     object->lpVtbl = &Direct3DIndexBuffer9_Vtbl;
     object->ref = 1;
     TRACE("Calling wined3d create index buffer\n");
-    hrc = IWineD3DDevice_CreateIndexBuffer(This->WineD3DDevice, Length,
Usage, Format, (WINED3DPOOL) Pool, &object->wineD3DIndexBuffer,
pSharedHandle, (IUnknown *)object);
+    hrc = IWineD3DDevice_CreateIndexBuffer(This->WineD3DDevice, Length,
Usage & WINED3DUSAGE_MASK, Format, (WINED3DPOOL) Pool,
&object->wineD3DIndexBuffer, pSharedHandle, (IUnknown *)object);
     if (hrc != D3D_OK) {
 
         /* free up object */

Thank you
Misha





More information about the wine-devel mailing list