[EFL][WKTR] platformRunUntil() should keep the main loop running
authorchristophe.dumez@intel.com <christophe.dumez@intel.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 21 Jan 2013 13:55:36 +0000 (13:55 +0000)
committerchristophe.dumez@intel.com <christophe.dumez@intel.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 21 Jan 2013 13:55:36 +0000 (13:55 +0000)
https://bugs.webkit.org/show_bug.cgi?id=107442

Reviewed by Noam Rosenthal.

EFL's implementation of platformRunUntil() should keep the main loop
running and avoid calling sleep() between calls to
ecore_main_loop_iterate(). This call to sleep seems to be a source
of deadlocks (see Bug 106884).

* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::platformRunUntil):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@140327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/WebKitTestRunner/efl/TestControllerEfl.cpp

index 1911881..5bb2b6e 100644 (file)
@@ -1,3 +1,18 @@
+2013-01-21  Christophe Dumez  <christophe.dumez@intel.com>
+
+        [EFL][WKTR] platformRunUntil() should keep the main loop running
+        https://bugs.webkit.org/show_bug.cgi?id=107442
+
+        Reviewed by Noam Rosenthal.
+
+        EFL's implementation of platformRunUntil() should keep the main loop
+        running and avoid calling sleep() between calls to
+        ecore_main_loop_iterate(). This call to sleep seems to be a source
+        of deadlocks (see Bug 106884).
+
+        * WebKitTestRunner/efl/TestControllerEfl.cpp:
+        (WTR::TestController::platformRunUntil):
+
 2013-01-21  Vivek Galatage  <vivek.vg@samsung.com>
 
         QtTestBrowser should provide way to clear selected elements
index 6f514ff..c69b3c9 100644 (file)
@@ -65,10 +65,9 @@ void TestController::platformRunUntil(bool& condition, double timeout)
 {
     if (timeout == m_noTimeout) {
         // Never timeout if we are debugging or not meant to timeout.
-        while (!condition) {
+        while (!condition)
             ecore_main_loop_iterate();
-            sleep(1);
-        }
+
         return;
     }
     timer = ecore_timer_loop_add(timeout, timerFired, 0);