Jacek Caban : wininet: Fixed memory leak in tests (valgrind).
Alexandre Julliard
julliard at winehq.org
Thu Jan 13 11:49:00 CST 2011
Module: wine
Branch: master
Commit: 2f4968b5979c9cc83d79825a442b3172b7a1cd2a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2f4968b5979c9cc83d79825a442b3172b7a1cd2a
Author: Jacek Caban <jacek at codeweavers.com>
Date: Thu Jan 13 13:54:38 2011 +0100
wininet: Fixed memory leak in tests (valgrind).
---
dlls/wininet/tests/http.c | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/dlls/wininet/tests/http.c b/dlls/wininet/tests/http.c
index 16a29ce..2b0092a 100644
--- a/dlls/wininet/tests/http.c
+++ b/dlls/wininet/tests/http.c
@@ -2592,6 +2592,15 @@ static void test_http_connection(void)
CloseHandle(hThread);
}
+static void release_cert_info(INTERNET_CERTIFICATE_INFOA *info)
+{
+ LocalFree(info->lpszSubjectInfo);
+ LocalFree(info->lpszIssuerInfo);
+ LocalFree(info->lpszProtocolName);
+ LocalFree(info->lpszSignatureAlgName);
+ LocalFree(info->lpszEncryptionAlgName);
+}
+
static void test_secure_connection(void)
{
static const WCHAR gizmo5[] = {'G','i','z','m','o','5',0};
@@ -2627,6 +2636,7 @@ static void test_secure_connection(void)
ret = InternetQueryOptionA(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
NULL, &size);
ok(ret || GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InternetQueryOption failed: %d\n", GetLastError());
+ ok(size == sizeof(INTERNET_CERTIFICATE_INFOA), "size = %d\n", size);
certificate_structA = HeapAlloc(GetProcessHeap(), 0, size);
ret = InternetQueryOption(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
certificate_structA, &size);
@@ -2646,6 +2656,7 @@ static void test_secure_connection(void)
ok(!certificate_structA->lpszProtocolName,
"unexpected protocol name\n");
ok(certificate_structA->dwKeySize, "expected a non-zero key size\n");
+ release_cert_info(certificate_structA);
}
HeapFree(GetProcessHeap(), 0, certificate_structA);
@@ -2656,6 +2667,7 @@ static void test_secure_connection(void)
ret = InternetQueryOptionW(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
NULL, &size);
ok(ret || GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InternetQueryOption failed: %d\n", GetLastError());
+ ok(size == sizeof(INTERNET_CERTIFICATE_INFOW), "size = %d\n", size);
certificate_structW = HeapAlloc(GetProcessHeap(), 0, size);
ret = InternetQueryOption(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
certificate_structW, &size);
@@ -2676,6 +2688,7 @@ static void test_secure_connection(void)
ok(!certificate_structA->lpszProtocolName,
"unexpected protocol name\n");
ok(certificate_structA->dwKeySize, "expected a non-zero key size\n");
+ release_cert_info(certificate_structA);
}
HeapFree(GetProcessHeap(), 0, certificate_structW);
@@ -2707,6 +2720,7 @@ static void test_secure_connection(void)
ret = InternetQueryOptionA(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
NULL, &size);
ok(ret || GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InternetQueryOption failed: %d\n", GetLastError());
+ ok(size == sizeof(INTERNET_CERTIFICATE_INFOA), "size = %d\n", size);
certificate_structA = HeapAlloc(GetProcessHeap(), 0, size);
ret = InternetQueryOptionW(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
certificate_structA, &size);
@@ -2726,6 +2740,7 @@ static void test_secure_connection(void)
ok(!certificate_structA->lpszProtocolName,
"unexpected protocol name\n");
ok(certificate_structA->dwKeySize, "expected a non-zero key size\n");
+ release_cert_info(certificate_structA);
}
HeapFree(GetProcessHeap(), 0, certificate_structA);
@@ -2736,6 +2751,7 @@ static void test_secure_connection(void)
ret = InternetQueryOptionW(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
NULL, &size);
ok(ret || GetLastError() == ERROR_INSUFFICIENT_BUFFER, "InternetQueryOption failed: %d\n", GetLastError());
+ ok(size == sizeof(INTERNET_CERTIFICATE_INFOW), "size = %d\n", size);
certificate_structW = HeapAlloc(GetProcessHeap(), 0, size);
ret = InternetQueryOptionW(req, INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT,
certificate_structW, &size);
@@ -2756,6 +2772,7 @@ static void test_secure_connection(void)
ok(!certificate_structA->lpszProtocolName,
"unexpected protocol name\n");
ok(certificate_structA->dwKeySize, "expected a non-zero key size\n");
+ release_cert_info(certificate_structA);
}
HeapFree(GetProcessHeap(), 0, certificate_structW);
More information about the wine-cvs
mailing list