Return status from futex_wake().

This commit is contained in:
Mara Bos 2022-04-06 16:30:49 +02:00
parent 8cd6080f6c
commit f1a40410ec

View File

@ -69,14 +69,14 @@ fn emscripten_futex_wait(
} }
#[cfg(any(target_os = "linux", target_os = "android"))] #[cfg(any(target_os = "linux", target_os = "android"))]
pub fn futex_wake(futex: &AtomicI32) { pub fn futex_wake(futex: &AtomicI32) -> bool {
unsafe { unsafe {
libc::syscall( libc::syscall(
libc::SYS_futex, libc::SYS_futex,
futex as *const AtomicI32, futex as *const AtomicI32,
libc::FUTEX_WAKE | libc::FUTEX_PRIVATE_FLAG, libc::FUTEX_WAKE | libc::FUTEX_PRIVATE_FLAG,
1, 1,
); ) > 0
} }
} }
@ -93,12 +93,10 @@ pub fn futex_wake_all(futex: &AtomicI32) {
} }
#[cfg(target_os = "emscripten")] #[cfg(target_os = "emscripten")]
pub fn futex_wake(futex: &AtomicI32) { pub fn futex_wake(futex: &AtomicI32) -> bool {
extern "C" { extern "C" {
fn emscripten_futex_wake(addr: *const AtomicI32, count: libc::c_int) -> libc::c_int; fn emscripten_futex_wake(addr: *const AtomicI32, count: libc::c_int) -> libc::c_int;
} }
unsafe { unsafe { emscripten_futex_wake(futex as *const AtomicI32, 1) > 0 }
emscripten_futex_wake(futex as *const AtomicI32, 1);
}
} }