[PATCH] taskschd/tests: Fix some memory leaks (Valgrind).

Sven Baars sven.wine at gmail.com
Tue Jan 15 06:56:51 CST 2019


Signed-off-by: Sven Baars <sven.wine at gmail.com>
---
 dlls/taskschd/tests/scheduler.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index 5fc3aab595..60546c30b2 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -153,11 +153,13 @@ static void test_GetFolder(void)
     hr = ITaskService_GetFolder(service, slash, &folder);
 todo_wine
     ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME), "expected ERROR_INVALID_NAME, got %#x\n", hr);
+    if (hr == S_OK) ITaskFolder_Release(folder);
 
     hr = ITaskService_GetFolder(service, dot, &folder);
 todo_wine
     ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME) || hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND) /* win7 */,
        "expected ERROR_INVALID_NAME, got %#x\n", hr);
+    if (hr == S_OK) ITaskFolder_Release(folder);
 
     hr = ITaskService_GetFolder(service, bslash, &folder);
     ok(hr == S_OK, "GetFolder error %#x\n", hr);
@@ -544,6 +546,7 @@ static void test_FolderCollection(void)
             ok(!lstrcmpW(bstr, Folder1), "expected Folder1, got %s\n", wine_dbgstr_w(bstr));
         else
             ok(!lstrcmpW(bstr, Folder2), "expected Folder2, got %s\n", wine_dbgstr_w(bstr));
+        SysFreeString(bstr);
 
         ITaskFolder_Release(subfolder);
     }
@@ -571,6 +574,7 @@ static void test_FolderCollection(void)
 
     hr = IUnknown_QueryInterface(unknown, &IID_IUnknown, (void **)&enumvar);
     ok(hr == S_OK, "QueryInterface error %#x\n", hr);
+    IUnknown_Release(unknown);
 
     hr = IEnumVARIANT_Skip(enumvar, 0);
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
@@ -605,6 +609,7 @@ static void test_FolderCollection(void)
         ok(!lstrcmpW(bstr, Folder1), "expected Folder1, got %s\n", wine_dbgstr_w(bstr));
     else
         ok(!lstrcmpW(bstr, Folder2), "expected Folder2, got %s\n", wine_dbgstr_w(bstr));
+    SysFreeString(bstr);
     IDispatch_Release(V_DISPATCH(&var[0]));
 
     memset(var, 0, sizeof(var));
@@ -650,6 +655,7 @@ static void test_FolderCollection(void)
             ok(!lstrcmpW(bstr, Folder1), "expected Folder1, got %s\n", wine_dbgstr_w(bstr));
         else
             ok(!lstrcmpW(bstr, Folder2), "expected Folder2, got %s\n", wine_dbgstr_w(bstr));
+        SysFreeString(bstr);
 
         ITaskFolder_Release(subfolder);
     }
@@ -1049,7 +1055,10 @@ static void test_settings_v1(ITaskDefinition *taskdef, struct settings *test, st
     if (!test->execution_time_limit[0])
         ok(bstr == NULL, "expected NULL, got %s\n", wine_dbgstr_w(bstr));
     else
+    {
         ok(!lstrcmpW(bstr, test->execution_time_limit), "expected %s, got %s\n", wine_dbgstr_w(test->execution_time_limit), wine_dbgstr_w(bstr));
+        SysFreeString(bstr);
+    }
 
     hr = ITaskSettings_get_Enabled(set, &vbool);
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
-- 
2.17.1




More information about the wine-devel mailing list