mirror of
https://github.com/nodejs/node.git
synced 2026-10-10 18:59:49 -04:00
deps: backport bd1777fd from libuv upstream
Original commit message:
unix, win: consolidate mutex trylock errors
Fold EAGAIN into EBUSY, and make it the only acceptable error.
PR-URL: https://github.com/libuv/libuv/pull/535
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
PR-URL: https://github.com/nodejs/node-private/pull/54
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
This commit is contained in:
1 parent
9207a00f8e
commit
da8501edf6
2 files changed
+7
-7
No files matched your search
Vendored
+6
-6
@@ -124,14 +124,14 @@ void uv_mutex_lock(uv_mutex_t* mutex) {
|
||||
int uv_mutex_trylock(uv_mutex_t* mutex) {
|
||||
int err;
|
||||
|
||||
/* FIXME(bnoordhuis) EAGAIN means recursive lock limit reached. Arguably
|
||||
* a bug, should probably abort rather than return -EAGAIN.
|
||||
*/
|
||||
err = pthread_mutex_trylock(mutex);
|
||||
if (err && err != EBUSY && err != EAGAIN)
|
||||
abort();
|
||||
if (err) {
|
||||
if (err != EBUSY && err != EAGAIN)
|
||||
abort();
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
return -err;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -211,7 +211,7 @@ int uv_mutex_trylock(uv_mutex_t* mutex) {
|
||||
if (TryEnterCriticalSection(mutex))
|
||||
return 0;
|
||||
else
|
||||
return UV_EAGAIN;
|
||||
return UV_EBUSY;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user