diff options
author | Bert Belder <bertbelder@gmail.com> | 2013-08-29 15:04:27 +0200 |
---|---|---|
committer | Bert Belder <bertbelder@gmail.com> | 2013-08-29 15:38:32 +0200 |
commit | e83a0cd016ef03d3ec3b491325b347be886c1476 (patch) | |
tree | f9c61bd589f91c07f2dbaec25e09cc8f34d5745f /deps/uv/src/win/thread.c | |
parent | a9eb96d0201fa7d13c898a154e81fd9531358d2f (diff) | |
download | android-node-v8-e83a0cd016ef03d3ec3b491325b347be886c1476.tar.gz android-node-v8-e83a0cd016ef03d3ec3b491325b347be886c1476.tar.bz2 android-node-v8-e83a0cd016ef03d3ec3b491325b347be886c1476.zip |
uv: upgrade to v0.11.11
Diffstat (limited to 'deps/uv/src/win/thread.c')
-rw-r--r-- | deps/uv/src/win/thread.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/deps/uv/src/win/thread.c b/deps/uv/src/win/thread.c index e5eb70186d..0631da5aff 100644 --- a/deps/uv/src/win/thread.c +++ b/deps/uv/src/win/thread.c @@ -680,3 +680,36 @@ void uv_barrier_wait(uv_barrier_t* barrier) { uv_sem_wait(&barrier->turnstile2); uv_sem_post(&barrier->turnstile2); } + + +int uv_key_create(uv_key_t* key) { + key->tls_index = TlsAlloc(); + if (key->tls_index == TLS_OUT_OF_INDEXES) + return UV_ENOMEM; + return 0; +} + + +void uv_key_delete(uv_key_t* key) { + if (TlsFree(key->tls_index) == FALSE) + abort(); + key->tls_index = TLS_OUT_OF_INDEXES; +} + + +void* uv_key_get(uv_key_t* key) { + void* value; + + value = TlsGetValue(key->tls_index); + if (value == NULL) + if (GetLastError() != ERROR_SUCCESS) + abort(); + + return value; +} + + +void uv_key_set(uv_key_t* key, void* value) { + if (TlsSetValue(key->tls_index, value) == FALSE) + abort(); +} |