[PATCH] advapi32: avoid memory leaks (Coverity)
Marcus Meissner
marcus at jet.franken.de
Wed Oct 3 09:58:10 CDT 2012
CID 713326
free pszProvName in 2 exit paths.
Ciao, Marcus
---
dlls/advapi32/tests/crypt.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/advapi32/tests/crypt.c b/dlls/advapi32/tests/crypt.c
index 7abf90b..779d573 100644
--- a/dlls/advapi32/tests/crypt.c
+++ b/dlls/advapi32/tests/crypt.c
@@ -530,8 +530,10 @@ static void test_enum_providers(void)
/* alloc provider to half the size required
* cbName holds the size required */
providerLen = cbName / 2;
- if (!(provider = LocalAlloc(LMEM_ZEROINIT, providerLen)))
+ if (!(provider = LocalAlloc(LMEM_ZEROINIT, providerLen))) {
+ LocalFree(pszProvName);
return;
+ }
result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, provider, &providerLen);
ok(!result && GetLastError()==ERROR_MORE_DATA, "expected %i, got %d\n",
@@ -558,8 +560,10 @@ static void test_enum_providers(void)
/* check expected versus actual values returned */
result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, NULL, &providerLen);
ok(result && providerLen==cbName, "expected %i, got %i\n", (int)cbName, (int)providerLen);
- if (!(provider = LocalAlloc(LMEM_ZEROINIT, providerLen)))
+ if (!(provider = LocalAlloc(LMEM_ZEROINIT, providerLen))) {
+ LocalFree(pszProvName);
return;
+ }
providerLen = 0xdeadbeef;
result = pCryptEnumProvidersA(dwIndex, NULL, 0, &type, provider, &providerLen);
--
1.7.3.4
More information about the wine-patches
mailing list