Bug 119822 - [Windows] DumpRenderTree is not using the same preferences as the Mac build.
Summary: [Windows] DumpRenderTree is not using the same preferences as the Mac build.
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Brent Fulgham
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-08-14 15:54 PDT by Brent Fulgham
Modified: 2013-08-16 12:07 PDT (History)
0 users

See Also:


Attachments
Patch (4.39 KB, patch)
2013-08-14 16:58 PDT, Brent Fulgham
no flags Details | Formatted Diff | Diff
Patch (4.10 KB, patch)
2013-08-16 11:48 PDT, Brent Fulgham
no flags Details | Formatted Diff | Diff
Patch (3.93 KB, patch)
2013-08-16 11:51 PDT, Brent Fulgham
no flags Details | Formatted Diff | Diff
Patch (3.83 KB, patch)
2013-08-16 12:05 PDT, Brent Fulgham
thorton: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Brent Fulgham 2013-08-14 15:54:23 PDT
We should be consistent in our DRT test settings between the Mac and Windows ports, at least where such options exist.

This patch adds some missing preferences to the Windows DRT setup.
Comment 1 Brent Fulgham 2013-08-14 16:58:00 PDT
Created attachment 208773 [details]
Patch
Comment 2 Brent Fulgham 2013-08-16 11:48:30 PDT
Created attachment 208939 [details]
Patch
Comment 3 Brent Fulgham 2013-08-16 11:51:34 PDT
Created attachment 208940 [details]
Patch
Comment 4 Brent Fulgham 2013-08-16 12:03:50 PDT
Using a dedicated CFRunLoop in DRT did not work as I expected, resulting in hanging at exit. This is because we reuse the WebView repeatedly to execute different tests, and the main message loop does not receive the expected WM_QUIT message used to terminate the runloop.

Instead, we wait until the message queue is empty (since DRT is pumping messages into it manually), and use that to end the current test iteration.

So, instead of letting CFRunLoopRun() handle processing, I reverted to the original manual message loop, and just call CFRunLoopRunInMode with a 0 argument to invoke one block/dispatch call before returning to process any Windows calls.
Comment 5 Brent Fulgham 2013-08-16 12:05:00 PDT
Created attachment 208942 [details]
Patch
Comment 6 Brent Fulgham 2013-08-16 12:07:49 PDT
Committed r154198: <http://trac.webkit.org/changeset/154198>