From a5728dd37fd61284516c36164231f75c5369a079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Fri, 16 Nov 2007 13:16:43 +0000 Subject: [PATCH] Fix race condition svn path=/trunk/; revision=30501 --- reactos/dll/win32/advapi32/sec/misc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/reactos/dll/win32/advapi32/sec/misc.c b/reactos/dll/win32/advapi32/sec/misc.c index bee74716d49..cac8d84d842 100644 --- a/reactos/dll/win32/advapi32/sec/misc.c +++ b/reactos/dll/win32/advapi32/sec/misc.c @@ -69,7 +69,9 @@ CheckNtMartaPresent(VOID) { DWORD ErrorCode; - if (NtMarta == NULL) + if (InterlockedCompareExchangePointer(&NtMarta, + NULL, + NULL) == NULL) { /* we're the first one trying to use ntmarta, initialize it and change the pointer after initialization */