From 4f2536a94df40fcd0d30605fb809507939de1a8b Mon Sep 17 00:00:00 2001 From: Aram Drevekenin Date: Thu, 26 Nov 2020 11:15:35 +0100 Subject: [PATCH] fix(tests): improve atomic data access --- src/tests/fakes.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tests/fakes.rs b/src/tests/fakes.rs index c920d4d4..0afba192 100644 --- a/src/tests/fakes.rs +++ b/src/tests/fakes.rs @@ -46,7 +46,7 @@ impl FakeStdinReader { impl Read for FakeStdinReader { fn read(&mut self, buf: &mut [u8]) -> Result { loop { - if self.started_reading_from_pty.load(Ordering::SeqCst) == false { + if self.started_reading_from_pty.load(Ordering::Acquire) == false { ::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS); } else { let last_snapshot_time = { *self.last_snapshot_time.lock().unwrap() }; @@ -213,7 +213,7 @@ impl OsApi for FakeInputOutput { // them fail ::std::thread::sleep(::std::time::Duration::from_millis(25)); } else if attempts_left == 0 { - self.started_reading_from_pty.store(true, Ordering::SeqCst); + self.started_reading_from_pty.store(true, Ordering::Release); return Ok(0); } let mut read_buffers = self.read_buffers.lock().unwrap(); @@ -227,7 +227,7 @@ impl OsApi for FakeInputOutput { if bytes_read > bytes.read_position { bytes.set_read_position(bytes_read); } - self.started_reading_from_pty.store(true, Ordering::SeqCst); + self.started_reading_from_pty.store(true, Ordering::Release); return Ok(bytes_read); } None => {