[PATCH] initialize pVertexBuffer
Marcus Meissner
marcus at jet.franken.de
Mon Dec 24 08:01:18 CST 2007
Coverity spotted a potential uninitalized usage
in the cleanup: location.
I also added handling of the case where pVertexBuffer
getting fails.
Ciao, Marcus
---
dlls/d3d9/tests/device.c | 38 +++++++++++++++++++-------------------
1 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c
index a5a2f06..9405673 100644
--- a/dlls/d3d9/tests/device.c
+++ b/dlls/d3d9/tests/device.c
@@ -1662,7 +1662,7 @@ static void test_set_stream_source(void)
IDirect3D9 *d3d9;
HWND hwnd;
HRESULT hr;
- IDirect3DVertexBuffer9 *pVertexBuffer;
+ IDirect3DVertexBuffer9 *pVertexBuffer = NULL;
d3d9 = pDirect3DCreate9( D3D_SDK_VERSION );
ok(d3d9 != NULL, "Failed to create IDirect3D9 object\n");
@@ -1692,23 +1692,23 @@ static void test_set_stream_source(void)
hr = IDirect3DDevice9_CreateVertexBuffer( device, 512, 0, 0, D3DPOOL_DEFAULT, &pVertexBuffer, NULL );
ok(hr == D3D_OK, "Failed to create a vertex buffer, hr = %s\n", DXGetErrorString9(hr));
-
- hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 0, 32);
- ok(hr == D3D_OK, "Failed to set the stream source, offset 0, hr = %s\n",
- DXGetErrorString9(hr));
- hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 1, 32);
- ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 1, hr = %s\n",
- DXGetErrorString9(hr));
- hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 2, 32);
- ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 2, hr = %s\n",
- DXGetErrorString9(hr));
- hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 3, 32);
- ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 3, hr = %s\n",
- DXGetErrorString9(hr));
- hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 4, 32);
- ok(hr == D3D_OK, "Failed to set the stream source, offset 4, hr = %s\n",
- DXGetErrorString9(hr));
-
+ if (SUCCEEDED(hr)) {
+ hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 0, 32);
+ ok(hr == D3D_OK, "Failed to set the stream source, offset 0, hr = %s\n",
+ DXGetErrorString9(hr));
+ hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 1, 32);
+ ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 1, hr = %s\n",
+ DXGetErrorString9(hr));
+ hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 2, 32);
+ ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 2, hr = %s\n",
+ DXGetErrorString9(hr));
+ hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 3, 32);
+ ok(hr == D3DERR_INVALIDCALL, "Unexpected result when setting the stream source, offset 3, hr = %s\n",
+ DXGetErrorString9(hr));
+ hr = IDirect3DDevice9_SetStreamSource(device, 0, pVertexBuffer, 4, 32);
+ ok(hr == D3D_OK, "Failed to set the stream source, offset 4, hr = %s\n",
+ DXGetErrorString9(hr));
+ }
/* Try to set the NULL buffer with an offset and stride 0 */
hr = IDirect3DDevice9_SetStreamSource(device, 0, NULL, 0, 0);
ok(hr == D3D_OK, "Failed to set the stream source, offset 0, hr = %s\n",
@@ -1729,8 +1729,8 @@ static void test_set_stream_source(void)
hr = IDirect3DDevice9_SetStreamSource(device, 0, NULL, 0, 0);
ok(hr == D3D_OK, "Failed to set the stream source, offset 4, hr = %s\n", DXGetErrorString9(hr));
- cleanup:
if(pVertexBuffer) IDirect3DDevice9_Release(pVertexBuffer);
+cleanup:
if(device) IDirect3DDevice9_Release(device);
if(d3d9) IDirect3D9_Release(d3d9);
}
--
1.5.2.4
More information about the wine-patches
mailing list