From c22fed9424a907beab53f6c6cd54afeff039f1b3 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Sat, 28 Dec 2013 19:44:52 -0800 Subject: Convert relevant static mutexes to Once --- src/libstd/rt/local_ptr.rs | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'src/libstd/rt') diff --git a/src/libstd/rt/local_ptr.rs b/src/libstd/rt/local_ptr.rs index 42cce272e44..f13691a7bfe 100644 --- a/src/libstd/rt/local_ptr.rs +++ b/src/libstd/rt/local_ptr.rs @@ -160,30 +160,20 @@ pub mod native { use option::{Option, Some, None}; use ptr; use tls = rt::thread_local_storage; - use unstable::mutex::{Mutex, MUTEX_INIT}; - static mut LOCK: Mutex = MUTEX_INIT; - static mut INITIALIZED: bool = false; static mut RT_TLS_KEY: tls::Key = -1; /// Initialize the TLS key. Other ops will fail if this isn't executed /// first. pub fn init() { unsafe { - LOCK.lock(); - if !INITIALIZED { - tls::create(&mut RT_TLS_KEY); - INITIALIZED = true; - } - LOCK.unlock(); + tls::create(&mut RT_TLS_KEY); } } pub unsafe fn cleanup() { - rtassert!(INITIALIZED); + rtassert!(RT_TLS_KEY != -1); tls::destroy(RT_TLS_KEY); - LOCK.destroy(); - INITIALIZED = false; } /// Give a pointer to thread-local storage. -- cgit 1.4.1-3-g733a5