[6/6] vcomp: Use RtlIsCriticalSectionLockedByThread to check lock owner.
Sebastian Lackner
sebastian at fds-team.de
Fri Oct 9 22:40:56 CDT 2015
Signed-off-by: Sebastian Lackner <sebastian at fds-team.de>
---
dlls/vcomp/main.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/dlls/vcomp/main.c b/dlls/vcomp/main.c
index 5aa0343..12fd2a5 100644
--- a/dlls/vcomp/main.c
+++ b/dlls/vcomp/main.c
@@ -29,6 +29,7 @@
#include "windef.h"
#include "winbase.h"
+#include "winternl.h"
#include "wine/debug.h"
#include "wine/list.h"
@@ -1051,12 +1052,6 @@ static void destroy_critsect(CRITICAL_SECTION *critsect)
HeapFree(GetProcessHeap(), 0, critsect);
}
-static BOOL critsect_is_locked(CRITICAL_SECTION *critsect)
-{
- return critsect->OwningThread == ULongToHandle(GetCurrentThreadId()) &&
- critsect->RecursionCount;
-}
-
void CDECL omp_init_lock(omp_lock_t *lock)
{
TRACE("(%p)\n", lock);
@@ -1073,7 +1068,7 @@ void CDECL omp_set_lock(omp_lock_t *lock)
{
TRACE("(%p)\n", lock);
- if (critsect_is_locked(*lock))
+ if (RtlIsCriticalSectionLockedByThread(*lock))
{
ERR("omp_set_lock called while holding lock %p\n", *lock);
ExitProcess(1);
@@ -1092,7 +1087,7 @@ int CDECL omp_test_lock(omp_lock_t *lock)
{
TRACE("(%p)\n", lock);
- if (critsect_is_locked(*lock))
+ if (RtlIsCriticalSectionLockedByThread(*lock))
return 0;
return TryEnterCriticalSection(*lock);
--
2.6.0
More information about the wine-patches
mailing list