Module: wine Branch: master Commit: 7615ec070055951a4bda237e54d59c8b28b0d627 URL: http://source.winehq.org/git/wine.git/?a=commit;h=7615ec070055951a4bda237e54...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Tue Jan 5 22:35:18 2010 +0100
mmdevapi: Fix reference leak in tests.
Reported by Dan Kegel
---
dlls/mmdevapi/tests/mmdevenum.c | 20 ++++++++++++-------- 1 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/dlls/mmdevapi/tests/mmdevenum.c b/dlls/mmdevapi/tests/mmdevenum.c index 9e8e55c..35e0152 100644 --- a/dlls/mmdevapi/tests/mmdevenum.c +++ b/dlls/mmdevapi/tests/mmdevenum.c @@ -82,14 +82,18 @@ static void test_collection(IMMDeviceEnumerator *mme, IMMDeviceCollection *col) ok(hr == E_INVALIDARG, "Asking for too high device returned 0x%08x\n", hr); ok(dev == NULL, "Returned non-null device\n");
- if (!numdev) return; - hr = IMMDeviceCollection_Item(col, 0, NULL); - ok(hr == E_POINTER, "Query with null pointer returned 0x%08x\n", hr); - - hr = IMMDeviceCollection_Item(col, 0, &dev); - ok(hr == S_OK, "Valid Item returned 0x%08x\n", hr); - ok(dev != NULL, "Device is null!\n"); - if (dev) IUnknown_Release(dev); + if (numdev) + { + hr = IMMDeviceCollection_Item(col, 0, NULL); + ok(hr == E_POINTER, "Query with null pointer returned 0x%08x\n", hr); + + hr = IMMDeviceCollection_Item(col, 0, &dev); + ok(hr == S_OK, "Valid Item returned 0x%08x\n", hr); + ok(dev != NULL, "Device is null!\n"); + if (dev) + IUnknown_Release(dev); + } + IUnknown_Release(col); }
/* Only do parameter tests here, the actual MMDevice testing should be a separate test */