Return status from futex_wake().
This commit is contained in:
parent
8cd6080f6c
commit
f1a40410ec
@ -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);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user