win32: return error if SleepConditionVariableCS fails
PATCH 1/1 win32: return error if SleepConditionVariableCS fails
From: AZero13 <[email protected]>
If it fails, return an error.
---
win32: return error if SleepConditionVariableCS fails
If it fails, return an error.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2104%2FAZero13%2Fsleep-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2104/AZero13/sleep-v1
Pull-Request: https://github.com/git/git/pull/2104
compat/win32/pthread.c | 7 +++++++ compat/win32/pthread.h | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-)
compat/win32/pthread.c +7 -0
@@ -59,3 +59,10 @@ pthread_t pthread_self(void) t.tid =GetCurrentThreadId ();return t; } + +int pthread_cond_wait (pthread_cond_t *cond,pthread_mutex_t *mutex) +{ +if (SleepConditionVariableCS (cond, mutex,INFINITE ) ==0 ) +return err_win_to_posix (GetLastError ()); +return 0 ; +}
compat/win32/pthread.h +2 -1
@@ -36,7 +36,6 @@ typedef int pthread_mutexattr_t;#define pthread_cond_init (a,b) InitializeConditionVariable((a))#define pthread_cond_destroy (a) do {} while (0) -#define pthread_cond_wait (a,b) return_0(SleepConditionVariableCS((a), (b), INFINITE))#define pthread_cond_signal WakeConditionVariable#define pthread_cond_broadcast WakeAllConditionVariable
@@ -64,6 +63,8 @@ int win32_pthread_join(pthread_t *thread, void **value_ptr);#define pthread_equal (t1, t2) ((t1).tid == (t2).tid)pthread_t pthread_self (void ); +int pthread_cond_wait (pthread_cond_t *cond,pthread_mutex_t *mutex); + static inline void NORETURN pthread_exit(void *ret) {_endthreadex ((unsigned )(uintptr_t )ret);
base-commit: 9a2fb147f2c61d0cab52c883e7e26f5b7948e3ed
Signature · 1 line
gitgitgadget
PATCH v2 1/1 win32: return error if SleepConditionVariableCS fails
From: Greg Funni <[email protected]>
If it fails, return an error.
---
win32: return error if SleepConditionVariableCS fails
If it fails, return an error.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2104%2FAZero13%2Fsleep-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2104/AZero13/sleep-v2
Pull-Request: https://github.com/git/git/pull/2104
Range-diff vs v1:
1: 35384a6aa3 ! 1: 7bdcd55664 win32: return error if SleepConditionVariableCS fails
@@
## Metadata ##
-Author: AZero13 <[email protected]>
+Author: Greg Funni <[email protected]>
## Commit message ##
win32: return error if SleepConditionVariableCS fails
compat/win32/pthread.c | 7 +++++++ compat/win32/pthread.h | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-)
compat/win32/pthread.c +7 -0
@@ -59,3 +59,10 @@ pthread_t pthread_self(void) t.tid =GetCurrentThreadId ();return t; } + +int pthread_cond_wait (pthread_cond_t *cond,pthread_mutex_t *mutex) +{ +if (SleepConditionVariableCS (cond, mutex,INFINITE ) ==0 ) +return err_win_to_posix (GetLastError ()); +return 0 ; +}
compat/win32/pthread.h +2 -1
@@ -36,7 +36,6 @@ typedef int pthread_mutexattr_t;#define pthread_cond_init (a,b) InitializeConditionVariable((a))#define pthread_cond_destroy (a) do {} while (0) -#define pthread_cond_wait (a,b) return_0(SleepConditionVariableCS((a), (b), INFINITE))#define pthread_cond_signal WakeConditionVariable#define pthread_cond_broadcast WakeAllConditionVariable
@@ -64,6 +63,8 @@ int win32_pthread_join(pthread_t *thread, void **value_ptr);#define pthread_equal (t1, t2) ((t1).tid == (t2).tid)pthread_t pthread_self (void ); +int pthread_cond_wait (pthread_cond_t *cond,pthread_mutex_t *mutex); + static inline void NORETURN pthread_exit(void *ret) {_endthreadex ((unsigned )(uintptr_t )ret);
base-commit: 9a2fb147f2c61d0cab52c883e7e26f5b7948e3ed
Signature · 1 line
gitgitgadget