From 3ac6ee8ce777210202fb25f178be97afb2eeaec5 Mon Sep 17 00:00:00 2001
From: Yoni Fogel <yoni@tokutek.com>
Date: Tue, 16 Apr 2013 23:57:32 -0400
Subject: [PATCH] Closes #1338 windows pthread mutexes now require real
 initialization before use

git-svn-id: file:///svn/toku/tokudb.1032b@8400 c7de825b-a66e-492c-adef-691d508d4ae1
---
 windows/toku_pthread.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/windows/toku_pthread.c b/windows/toku_pthread.c
index 09283238c9..00cc2a9214 100644
--- a/windows/toku_pthread.c
+++ b/windows/toku_pthread.c
@@ -6,7 +6,7 @@
 int
 toku_pthread_mutex_init(toku_pthread_mutex_t *mutex, const toku_pthread_mutexattr_t *attr) {
     assert(attr == NULL);
-    // assert(!mutex->initialized);
+    assert(!mutex->initialized);
     InitializeCriticalSection(&mutex->section);
     mutex->initialized = TRUE;
     return 0;
@@ -22,10 +22,6 @@ toku_pthread_mutex_destroy(toku_pthread_mutex_t *mutex) {
 
 int
 toku_pthread_mutex_lock(toku_pthread_mutex_t *mutex) {
-    if (!mutex->initialized) {
-        int r = toku_pthread_mutex_init(mutex, NULL);
-        assert(r==0);
-    }
     assert(mutex->initialized);
     EnterCriticalSection(&mutex->section);
     return 0;
@@ -34,6 +30,7 @@ toku_pthread_mutex_lock(toku_pthread_mutex_t *mutex) {
 #if 0
 int
 toku_pthread_mutex_trylock(toku_pthread_mutex_t *mutex) {
+    assert(mutex->initialized);
     int r = 0;
     if (!TryEnterCriticalSection(&mutex->section))
         r = EBUSY;
-- 
2.30.9