about summary refs log tree commit diff
path: root/library/std/src
diff options
context:
space:
mode:
authorchansuke <chansuke@georepublic.de>2020-10-24 18:14:17 +0900
committerchansuke <chansuke@georepublic.de>2020-10-24 18:14:17 +0900
commitd147f78e367386bf63ccb03d453e151e37cfdd81 (patch)
treefb29b4983e2dc75ac47ad17a782970ee6fe96bf7 /library/std/src
parentde87ae79610925502f45ec07cf24bac51e037ed1 (diff)
downloadrust-d147f78e367386bf63ccb03d453e151e37cfdd81.tar.gz
rust-d147f78e367386bf63ccb03d453e151e37cfdd81.zip
Fix unsafe operation of wasm32::memory_atomic_notify
Diffstat (limited to 'library/std/src')
-rw-r--r--library/std/src/sys/wasm/condvar_atomics.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/library/std/src/sys/wasm/condvar_atomics.rs b/library/std/src/sys/wasm/condvar_atomics.rs
index b9133e9fb7d..c2c47910582 100644
--- a/library/std/src/sys/wasm/condvar_atomics.rs
+++ b/library/std/src/sys/wasm/condvar_atomics.rs
@@ -52,8 +52,9 @@ impl Condvar {
 
     #[inline]
     pub unsafe fn notify_all(&self) {
+        self.cnt.fetch_add(1, SeqCst);
+        // SAFETY: memory_atomic_notify()is always valid
         unsafe {
-            self.cnt.fetch_add(1, SeqCst);
             wasm32::memory_atomic_notify(self.ptr(), u32::MAX); // -1 == "wake everyone"
         }
     }