This fixes bug #38913. https://bugs.winehq.org/show_bug.cgi?id=38913On Wed, Jul 15, 2015 at 5:23 PM, Aaryaman Vasishta <jem456.vasishta@gmail.com> wrote:---
dlls/d3drm/tests/d3drm.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/dlls/d3drm/tests/d3drm.c b/dlls/d3drm/tests/d3drm.c
index 1816214..8c1c9d6 100644
--- a/dlls/d3drm/tests/d3drm.c
+++ b/dlls/d3drm/tests/d3drm.c
@@ -1999,10 +1999,14 @@ static void test_create_device_from_clipper(void)
hr = IDirect3DRM2_CreateDeviceFromClipper(d3drm2, clipper, &driver, 0, 0, &device2);
todo_wine ok(hr == D3DRMERR_BADVALUE, "Expected hr == D3DRMERR_BADVALUE, got %x.\n", hr);
+ if (FAILED(hr))
+ IDirect3DRMDevice2_Release(device2);
/* If NULL is passed for clipper, CreateDeviceFromClipper returns D3DRMERR_BADVALUE */
hr = IDirect3DRM2_CreateDeviceFromClipper(d3drm2, NULL, &driver, 0, 0, &device2);
todo_wine ok(hr == D3DRMERR_BADVALUE, "Expected hr == D3DRMERR_BADVALUE, got %x.\n", hr);
+ if (FAILED(hr))
+ IDirect3DRMDevice2_Release(device2);
hr = IDirect3DRM2_CreateDeviceFromClipper(d3drm2, clipper, &driver, 300, 200, &device2);
ok(hr == D3DRM_OK, "Cannot create IDirect3DRMDevice2 interface (hr = %x).\n", hr);
--
2.3.2 (Apple Git-55)