Title: [204514] trunk/Tools
- Revision
- 204514
- Author
- [email protected]
- Date
- 2016-08-16 11:03:38 -0700 (Tue, 16 Aug 2016)
Log Message
False crashes in fast/text/emoji-gender-* tests
https://bugs.webkit.org/show_bug.cgi?id=160779
Patch by Jonathan Bedard <[email protected]> on 2016-08-16
Reviewed by Alexey Proskuryakov.
Fix from <rdar://problem/27786762>, where timed out tests falsely report as crashed.
* Scripts/webkitpy/port/driver.py:
(Driver._check_for_driver_crash_or_unresponsiveness): Change call to ‘write’ to disable crash flag.
* Scripts/webkitpy/port/driver_unittest.py: Added 3 variable to test version of ‘write.’
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.write): Allow caller to disable crash flag on exception.
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (204513 => 204514)
--- trunk/Tools/ChangeLog 2016-08-16 17:26:16 UTC (rev 204513)
+++ trunk/Tools/ChangeLog 2016-08-16 18:03:38 UTC (rev 204514)
@@ -1,3 +1,18 @@
+2016-08-16 Jonathan Bedard <[email protected]>
+
+ False crashes in fast/text/emoji-gender-* tests
+ https://bugs.webkit.org/show_bug.cgi?id=160779
+
+ Reviewed by Alexey Proskuryakov.
+
+ Fix from <rdar://problem/27786762>, where timed out tests falsely report as crashed.
+
+ * Scripts/webkitpy/port/driver.py:
+ (Driver._check_for_driver_crash_or_unresponsiveness): Change call to ‘write’ to disable crash flag.
+ * Scripts/webkitpy/port/driver_unittest.py: Added 3 variable to test version of ‘write.’
+ * Scripts/webkitpy/port/server_process.py:
+ (ServerProcess.write): Allow caller to disable crash flag on exception.
+
2016-08-15 Simon Fraser <[email protected]>
webkitpy error in TestRunResults.merge()
Modified: trunk/Tools/Scripts/webkitpy/port/driver.py (204513 => 204514)
--- trunk/Tools/Scripts/webkitpy/port/driver.py 2016-08-16 17:26:16 UTC (rev 204513)
+++ trunk/Tools/Scripts/webkitpy/port/driver.py 2016-08-16 18:03:38 UTC (rev 204514)
@@ -447,7 +447,7 @@
if child_process_pid:
self._port.sample_process(child_process_name, child_process_pid)
self.error_from_test += error_line
- self._server_process.write('#SAMPLE FINISHED\n')
+ self._server_process.write('#SAMPLE FINISHED\n', True) # Must be able to ignore a broken pipe here, target process may already be closed.
return True
return self.has_crashed()
Modified: trunk/Tools/Scripts/webkitpy/port/driver_unittest.py (204513 => 204514)
--- trunk/Tools/Scripts/webkitpy/port/driver_unittest.py 2016-08-16 17:26:16 UTC (rev 204513)
+++ trunk/Tools/Scripts/webkitpy/port/driver_unittest.py 2016-08-16 18:03:38 UTC (rev 204514)
@@ -206,7 +206,7 @@
def stop(self, timeout):
pass
- def write(self, str):
+ def write(self, bytes, ignore_crash=False):
pass
def assert_crash(driver, error_line, crashed, name, pid, unresponsive=False):
Modified: trunk/Tools/Scripts/webkitpy/port/server_process.py (204513 => 204514)
--- trunk/Tools/Scripts/webkitpy/port/server_process.py 2016-08-16 17:26:16 UTC (rev 204513)
+++ trunk/Tools/Scripts/webkitpy/port/server_process.py 2016-08-16 18:03:38 UTC (rev 204514)
@@ -144,7 +144,7 @@
return self._proc.poll()
return None
- def write(self, bytes):
+ def write(self, bytes, ignore_crash=False):
"""Write a request to the subprocess. The subprocess is (re-)start()'ed
if is not already running."""
if not self._proc:
@@ -153,8 +153,10 @@
self._proc.stdin.write(bytes)
except IOError, e:
self.stop(0.0)
- # stop() calls _reset(), so we have to set crashed to True after calling stop().
- self._crashed = True
+ # stop() calls _reset(), so we have to set crashed to True after calling stop()
+ # unless we already know that this is a timeout.
+ if not ignore_crash:
+ self._crashed = True
def _pop_stdout_line_if_ready(self):
index_after_newline = self._output.find('\n') + 1
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes