diff options
| author | Chris Denton <christophersdenton@gmail.com> | 2022-08-18 18:34:19 +0100 |
|---|---|---|
| committer | Chris Denton <christophersdenton@gmail.com> | 2022-08-20 04:15:46 +0100 |
| commit | efd305e0ec1c1f973a5e3d610f268036640d9613 (patch) | |
| tree | c2a54025ea3a153445fd6e080483acfa55a75521 | |
| parent | b631ca0c2fbc69ce7718b50ff34a7c238f28c05f (diff) | |
| download | rust-efd305e0ec1c1f973a5e3d610f268036640d9613.tar.gz rust-efd305e0ec1c1f973a5e3d610f268036640d9613.zip | |
Simplify load/store
| -rw-r--r-- | library/std/src/sys/windows/compat.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/library/std/src/sys/windows/compat.rs b/library/std/src/sys/windows/compat.rs index 60cc705cef2..e2d5e1e881a 100644 --- a/library/std/src/sys/windows/compat.rs +++ b/library/std/src/sys/windows/compat.rs @@ -214,11 +214,8 @@ pub(super) fn load_synch_functions() { Some(()) } - // Shortcut if we've already tried (and failed) to load the library. + // Try to load the module but skip loading if a previous attempt failed. static LOAD_MODULE: AtomicBool = AtomicBool::new(true); - if LOAD_MODULE.load(Ordering::Acquire) { - if try_load().is_none() { - LOAD_MODULE.store(false, Ordering::Release); - } - } + let module_loaded = LOAD_MODULE.load(Ordering::Acquire) && try_load().is_some(); + LOAD_MODULE.store(module_loaded, Ordering::Release) } |
