projects
/
idzebra-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
WIN32 update (this version is known not to work on Windows).
[idzebra-moved-to-github.git]
/
util
/
zebra-lock.c
diff --git
a/util/zebra-lock.c
b/util/zebra-lock.c
index
47b2424
..
769de1b
100644
(file)
--- a/
util/zebra-lock.c
+++ b/
util/zebra-lock.c
@@
-8,6
+8,9
@@
int zebra_mutex_init (Zebra_mutex *p)
#if HAVE_PTHREAD_H
pthread_mutex_init (&p->mutex, 0);
#endif
#if HAVE_PTHREAD_H
pthread_mutex_init (&p->mutex, 0);
#endif
+#ifdef WIN32
+ InitializeCriticalSection (&p->mutex);
+#endif
return 0;
}
return 0;
}
@@
-16,6
+19,9
@@
int zebra_mutex_destroy (Zebra_mutex *p)
#if HAVE_PTHREAD_H
pthread_mutex_destroy (&p->mutex);
#endif
#if HAVE_PTHREAD_H
pthread_mutex_destroy (&p->mutex);
#endif
+#ifdef WIN32
+ DeleteCriticalSection (&p->mutex);
+#endif
return 0;
}
return 0;
}
@@
-24,6
+30,9
@@
int zebra_mutex_lock (Zebra_mutex *p)
#if HAVE_PTHREAD_H
pthread_mutex_lock (&p->mutex);
#endif
#if HAVE_PTHREAD_H
pthread_mutex_lock (&p->mutex);
#endif
+#ifdef WIN32
+ EnterCriticalSection (&p->mutex);
+#endif
return 0;
}
return 0;
}
@@
-32,6
+41,9
@@
int zebra_mutex_unlock (Zebra_mutex *p)
#if HAVE_PTHREAD_H
pthread_mutex_unlock (&p->mutex);
#endif
#if HAVE_PTHREAD_H
pthread_mutex_unlock (&p->mutex);
#endif
+#ifdef WIN32
+ LeaveCriticalSection (&p->mutex);
+#endif
return 0;
}
return 0;
}