NRWT cutting off the output from LayoutTest run under Valgrind
https://bugs.webkit.org/show_bug.cgi?id=94011

Reviewed by Ojan Vafai.

Make NRWT work with valgrind again ... I needed to rework the
driver infrastructure so that we could get the stderr written
between a test completing and a process being stopped and
associate it with the DriverOutput for the test; this meant that
run_test() needed to stop the driver at the end of the test
directly if/when appropriate. This also entailed reworking
run_test() so that we would gather stderr and stdout
consistently regardless of whether this was a normal test, or
stop_when_done, or a crash or timeout.

Also, I had to rework the process_stop_time() (and renamed it to
driver_stop_timeout) so that it would be longer if --time-out-ms
was long as well (so that valgrind would get enough time to
run), and I reworked driver.stop(kill_directly=True) to just
driver.stop(timeout=0.0).

Lastly, adding the new stop_when_done parameter entailed
touching a lot of test mock functions :(.

This change appeared to be well-covered by existing tests.

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._run_test):
(Worker._run_test_with_timeout):
(Worker._run_test_in_another_thread):
(Worker._run_test_in_another_thread.SingleTestThread.run):
(Worker._run_test_in_this_thread):
(Worker._run_single_test):
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(run_single_test):
(SingleTestRunner.__init__):
(SingleTestRunner._run_compare_test):
(SingleTestRunner._run_rebaseline):
(SingleTestRunner._run_reftest):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.driver_stop_timeout):
(Port.variable.default_configuration):
* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.driver_stop_timeout):
(ChromiumAndroidDriver.stop):
* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver.run_test):
(Driver.stop):
(DriverProxy.run_test):
* Scripts/webkitpy/layout_tests/port/driver_unittest.py:
(DriverTest.test_check_for_driver_crash.FakeServerProcess.stop):
* Scripts/webkitpy/layout_tests/port/server_process.py:
(ServerProcess.write):
(ServerProcess._wait_for_data_and_update_buffers_using_select):
(ServerProcess.stop):
(ServerProcess.kill):
(ServerProcess):
(ServerProcess._kill):
* Scripts/webkitpy/layout_tests/port/server_process_unittest.py:
(TrivialMockPort.__init__):
(MockProc.wait):
(TestServerProcess.test_basic):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestDriver.run_test):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(get_tests_run.RecordingTestDriver.run_test):
* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest.run_single):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPageLoadingPerfTest.MockDriver.run_test):
(TestReplayPerfTest.ReplayTestPort.__init__.ReplayTestDriver.run_test):
(TestReplayPerfTest.test_run_single.run_test):
(TestReplayPerfTest.test_run_single_fails_when_output_has_error.run_test):
(TestReplayPerfTest.test_prepare.run_test):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(MainTest.TestDriver.run_test):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125812 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix test added in r125635. The test failed on non-chromium ports due
to the column sizing 1px differently. I'm not really sure what was going on,
but this was a fix for a crash anyways. Just marking the test dumpAsText.

* fast/overflow/line-clamp-and-columns-expected.html: Removed.
* fast/overflow/line-clamp-and-columns-expected.txt: Added.
* fast/overflow/line-clamp-and-columns.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125813 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed gardening. Update expectations.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125814 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Null checks of m_frame->document()->domWindow() aren't needed
https://bugs.webkit.org/show_bug.cgi?id=94052

Reviewed by Eric Seidel.

If a document is attached to a frame, then its DOMWindow is necessarily
non-0. Checking for 0 is needless.

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::checkLoadComplete):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::didOpenURL):
(WebCore::FrameLoader::prepareForCachedPageRestore):


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