aboutsummaryrefslogtreecommitdiff
path: root/src/threading.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2023-01-06 12:09:44 +0000
committerGitHub <noreply@github.com>2023-01-06 12:09:44 +0000
commite8e7d3ea3128aa5c10b2a8e5c4e80e484b818224 (patch)
tree780317d4b8c26ac1b4cc55a619477dcc553f1068 /src/threading.cpp
parent782f1b4718d32a485c8901e6709e69f10109e950 (diff)
parenta58650728e3ee2ee8b9652f1947ee3ee406fc795 (diff)
Merge pull request #2293 from colrdavidson/fix_futexes
fix futex error handling
Diffstat (limited to 'src/threading.cpp')
-rw-r--r--src/threading.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/threading.cpp b/src/threading.cpp
index 493e57c91..7a7d1a299 100644
--- a/src/threading.cpp
+++ b/src/threading.cpp
@@ -562,6 +562,7 @@ gb_internal void tpool_wake_addr(Futex *addr) {
if (ret >= 0) {
return;
}
+ ret = -ret;
if (ret == EINTR || ret == EFAULT) {
continue;
}
@@ -581,6 +582,7 @@ gb_internal void tpool_wait_on_addr(Futex *addr, Footex val) {
}
continue;
}
+ ret = -ret;
if (ret == EINTR || ret == EFAULT) {
continue;
}