Michael Stefaniuc : secur32: Missing LeaveCriticalSection on error paths.
Module: wine Branch: refs/heads/master Commit: 968ad51d2a77750cd6b371a57b5b6bd809d89914 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=968ad51d2a77750cd6b371a5... Author: Michael Stefaniuc <mstefani(a)redhat.de> Date: Mon May 1 15:56:53 2006 +0200 secur32: Missing LeaveCriticalSection on error paths. --- dlls/secur32/secur32.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/dlls/secur32/secur32.c b/dlls/secur32/secur32.c index 4757782..ebe7e2e 100644 --- a/dlls/secur32/secur32.c +++ b/dlls/secur32/secur32.c @@ -396,14 +396,20 @@ SecureProvider *SECUR32_addProvider(cons { providerTable = HeapAlloc(GetProcessHeap(), 0, sizeof(SecureProviderTable)); if (!providerTable) + { + LeaveCriticalSection(&cs); return NULL; + } list_init(&providerTable->table); } ret = HeapAlloc(GetProcessHeap(), 0, sizeof(SecureProvider)); if (!ret) + { + LeaveCriticalSection(&cs); return NULL; + } list_add_tail(&providerTable->table, &ret->entry); ret->lib = NULL; @@ -439,7 +445,10 @@ void SECUR32_addPackages(SecureProvider { packageTable = HeapAlloc(GetProcessHeap(), 0, sizeof(SecurePackageTable)); if (!packageTable) + { + LeaveCriticalSection(&cs); return; + } packageTable->numPackages = 0; list_init(&packageTable->table);
participants (1)
-
Alexandre Julliard