diff --git a/reactos/dll/win32/ws2_32/misc/handle.c b/reactos/dll/win32/ws2_32/misc/handle.c index f22b5e415f6..2e5e49b0624 100644 --- a/reactos/dll/win32/ws2_32/misc/handle.c +++ b/reactos/dll/win32/ws2_32/misc/handle.c @@ -251,11 +251,12 @@ CloseProviderHandle(HANDLE Handle) Provider = DeleteProviderHandle(ProviderHandleTable, Handle); - if (!Provider) - return FALSE; LeaveCriticalSection(&ProviderHandleTableLock); + if (!Provider) + return FALSE; + DereferenceProviderByPointer(Provider); return TRUE;