advapi32/tests: Fix memory leaks (found by Smatch).

This commit is contained in:
Lionel Debroux 2007-10-02 08:59:02 +02:00 committed by Alexandre Julliard
parent d053049fd5
commit 40c66b8977
1 changed files with 13 additions and 2 deletions

View File

@ -719,6 +719,7 @@ static void test_AccessCheck(void)
if(!res && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED) if(!res && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
{ {
skip("ACLs not implemented - skipping tests\n"); skip("ACLs not implemented - skipping tests\n");
HeapFree(GetProcessHeap(), 0, Acl);
return; return;
} }
ok(res, "InitializeAcl failed with error %d\n", GetLastError()); ok(res, "InitializeAcl failed with error %d\n", GetLastError());
@ -1540,6 +1541,7 @@ static void test_process_security(void)
if (!res && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED) if (!res && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
{ {
skip("ACLs not implemented - skipping tests\n"); skip("ACLs not implemented - skipping tests\n");
HeapFree(GetProcessHeap(), 0, Acl);
return; return;
} }
ok(res, "InitializeAcl failed with error %d\n", GetLastError()); ok(res, "InitializeAcl failed with error %d\n", GetLastError());
@ -1547,7 +1549,11 @@ static void test_process_security(void)
/* get owner from the token we might be running as a user not admin */ /* get owner from the token we might be running as a user not admin */
res = OpenProcessToken( GetCurrentProcess(), MAXIMUM_ALLOWED, &token ); res = OpenProcessToken( GetCurrentProcess(), MAXIMUM_ALLOWED, &token );
ok(res, "OpenProcessToken failed with error %d\n", GetLastError()); ok(res, "OpenProcessToken failed with error %d\n", GetLastError());
if (!res) return; if (!res)
{
HeapFree(GetProcessHeap(), 0, Acl);
return;
}
res = GetTokenInformation( token, TokenOwner, owner, sizeof(owner), &tmp ); res = GetTokenInformation( token, TokenOwner, owner, sizeof(owner), &tmp );
ok(res, "GetTokenInformation failed with error %d\n", GetLastError()); ok(res, "GetTokenInformation failed with error %d\n", GetLastError());
@ -1557,7 +1563,11 @@ static void test_process_security(void)
UsersSid = ((TOKEN_PRIMARY_GROUP*)group)->PrimaryGroup; UsersSid = ((TOKEN_PRIMARY_GROUP*)group)->PrimaryGroup;
CloseHandle( token ); CloseHandle( token );
if (!res) return; if (!res)
{
HeapFree(GetProcessHeap(), 0, Acl);
return;
}
res = AddAccessDeniedAce(Acl, ACL_REVISION, PROCESS_VM_READ, AdminSid); res = AddAccessDeniedAce(Acl, ACL_REVISION, PROCESS_VM_READ, AdminSid);
ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError()); ok(res, "AddAccessDeniedAce failed with error %d\n", GetLastError());
@ -2100,6 +2110,7 @@ static void test_PrivateObjectSecurity(void)
ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected error ERROR_INSUFFICIENT_BUFFER, got %u\n", GetLastError()); ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Expected error ERROR_INSUFFICIENT_BUFFER, got %u\n", GetLastError());
LocalFree(sec); LocalFree(sec);
HeapFree(GetProcessHeap(), 0, buf);
} }
#undef CHECK_RESULT_AND_FREE #undef CHECK_RESULT_AND_FREE