Title: [161165] trunk/Source/WebKit2
Revision
161165
Author
[email protected]
Date
2013-12-30 18:14:18 -0800 (Mon, 30 Dec 2013)

Log Message

Try to fix the test failures seen on the bots.

Restore the BinarySemaphore behavior that existed in the old binary semaphore.

* Platform/IPC/Connection.cpp:
(IPC::BinarySemaphore::wait):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (161164 => 161165)


--- trunk/Source/WebKit2/ChangeLog	2013-12-31 02:05:38 UTC (rev 161164)
+++ trunk/Source/WebKit2/ChangeLog	2013-12-31 02:14:18 UTC (rev 161165)
@@ -1,5 +1,14 @@
 2013-12-30  Anders Carlsson  <[email protected]>
 
+        Try to fix the test failures seen on the bots.
+
+        Restore the BinarySemaphore behavior that existed in the old binary semaphore.
+
+        * Platform/IPC/Connection.cpp:
+        (IPC::BinarySemaphore::wait):
+
+2013-12-30  Anders Carlsson  <[email protected]>
+
         Fix.
 
         * WebProcess/WebProcess.cpp:

Modified: trunk/Source/WebKit2/Platform/IPC/Connection.cpp (161164 => 161165)


--- trunk/Source/WebKit2/Platform/IPC/Connection.cpp	2013-12-31 02:05:38 UTC (rev 161164)
+++ trunk/Source/WebKit2/Platform/IPC/Connection.cpp	2013-12-31 02:14:18 UTC (rev 161165)
@@ -57,9 +57,16 @@
     {
         std::unique_lock<std::mutex> lock(m_mutex);
     
-        bool value = m_conditionVariable.wait_until(lock, absoluteTime, [this] { return m_isSet; });
+        while (!m_isSet) {
+            std::cv_status status = m_conditionVariable.wait_until(lock, absoluteTime);
+            if (status == std::cv_status::timeout)
+                return false;
+        }
         
-        return value;
+        // Reset the semaphore.
+        m_isSet = false;
+
+        return true;
     }
 
 private:
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to