about summary refs log tree commit diff
path: root/src/rt
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-02-02 18:25:49 -0800
committerBrian Anderson <banderson@mozilla.com>2012-02-02 18:25:49 -0800
commit9c33f2c561c77567738ee949d0c39122daec063b (patch)
tree5df233be5a6991b68b99b3e7a8322b68ed1fbf03 /src/rt
parentcd774fc5fab0791c3463ab192de9e0900904b460 (diff)
downloadrust-9c33f2c561c77567738ee949d0c39122daec063b.tar.gz
rust-9c33f2c561c77567738ee949d0c39122daec063b.zip
rt: Remove lock_and_signal::timed_wait
Diffstat (limited to 'src/rt')
-rw-r--r--src/rt/sync/lock_and_signal.cpp37
-rw-r--r--src/rt/sync/lock_and_signal.h1
2 files changed, 2 insertions, 36 deletions
diff --git a/src/rt/sync/lock_and_signal.cpp b/src/rt/sync/lock_and_signal.cpp
index b678530e5a4..a18bc0ea027 100644
--- a/src/rt/sync/lock_and_signal.cpp
+++ b/src/rt/sync/lock_and_signal.cpp
@@ -68,50 +68,17 @@ void lock_and_signal::unlock() {
  * Wait indefinitely until condition is signaled.
  */
 void lock_and_signal::wait() {
-    timed_wait(0);
-}
-
-bool lock_and_signal::timed_wait(size_t timeout_in_ms) {
     assert(lock_held_by_current_thread());
     _holding_thread = INVALID_THREAD;
-    bool rv = true;
 #if defined(__WIN32__)
     LeaveCriticalSection(&_cs);
-    DWORD timeout = timeout_in_ms == 0 ? INFINITE : timeout_in_ms;
-    rv = WaitForSingleObject(_event, timeout) != WAIT_TIMEOUT;
+    WaitForSingleObject(_event, INFINITE);
     EnterCriticalSection(&_cs);
     _holding_thread = GetCurrentThreadId();
 #else
-    if (timeout_in_ms == 0) {
-        CHECKED(pthread_cond_wait(&_cond, &_mutex));
-    } else {
-        timeval time_val;
-        gettimeofday(&time_val, NULL);
-        timespec time_spec;
-        time_spec.tv_sec = time_val.tv_sec + 0;
-        time_spec.tv_nsec = time_val.tv_usec * 1000 + timeout_in_ms * 1000000;
-        if(time_spec.tv_nsec >= 1000000000) {
-            time_spec.tv_sec++;
-            time_spec.tv_nsec -= 1000000000;
-        }
-        int cond_wait_status
-            = pthread_cond_timedwait(&_cond, &_mutex, &time_spec);
-        switch(cond_wait_status) {
-        case 0:
-            // successfully grabbed the lock.
-            break;
-        case ETIMEDOUT:
-            // Oops, we timed out.
-            rv = false;
-            break;
-        default:
-            // Error
-            CHECKED(cond_wait_status);
-        }
-    }
+    CHECKED(pthread_cond_wait(&_cond, &_mutex));
     _holding_thread = pthread_self();
 #endif
-    return rv;
 }
 
 /**
diff --git a/src/rt/sync/lock_and_signal.h b/src/rt/sync/lock_and_signal.h
index f5137ca0073..654731269f1 100644
--- a/src/rt/sync/lock_and_signal.h
+++ b/src/rt/sync/lock_and_signal.h
@@ -21,7 +21,6 @@ public:
     void lock();
     void unlock();
     void wait();
-    bool timed_wait(size_t timeout_in_ns);
     void signal();
     void signal_all();