2011-09-23  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68719
        
        Push through multiple regions when an object doesn't fit in any of them. Unlike with pages and
        columns, when regions have a non-uniform height, we may need to push through multiple regions
        in order to find one that fits.
        
        Added an optimization for quickly noticing if regions do have a uniform height so that we can
        treat them like columns and pages if so.

        Also fixed the end line matchup to properly null out endLine when no next line box exists. The new
        layout tests I wrote to cover this feature exposed this crasher, so fixing it in order to land
        the new tests.

        Reviewed by Anders Carlsson.

        * fast/regions/webkit-flow-float-pushed-to-last-region.html: Added.
        * fast/regions/webkit-flow-float-unable-to-push.html: Added.
        * platform/mac/fast/regions/webkit-flow-float-pushed-to-last-region-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-float-pushed-to-last-region-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-float-unable-to-push-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-float-unable-to-push-expected.txt: Added.

2011-09-23  Konstantin Scheglov  <scheglov@google.com>

        Redrawing dirty parts of a large table is very slow
        https://bugs.webkit.org/show_bug.cgi?id=64546

        Reviewed by David Hyatt.

        Tests for invalidating collapsed borders cache.

        * fast/table/border-collapsing/cached-cell-append-expected.png: Added.
        * fast/table/border-collapsing/cached-cell-append-expected.txt: Added.
        * fast/table/border-collapsing/cached-cell-append.html: Added.
        * fast/table/border-collapsing/cached-cell-remove-expected.png: Added.
        * fast/table/border-collapsing/cached-cell-remove-expected.txt: Added.
        * fast/table/border-collapsing/cached-cell-remove.html: Added.
        * fast/table/border-collapsing/cached-change-cell-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-cell-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-cell-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-cell-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-cell-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-cell-border-width.html: Added.
        * fast/table/border-collapsing/cached-change-col-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-col-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-col-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-col-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-col-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-col-border-width.html: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-colgroup-border-width.html: Added.
        * fast/table/border-collapsing/cached-change-row-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-row-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-row-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-row-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-row-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-row-border-width.html: Added.
        * fast/table/border-collapsing/cached-change-table-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-table-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-table-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-table-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-table-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-table-border-width.html: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-color-expected.png: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-color.html: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-width-expected.png: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt: Added.
        * fast/table/border-collapsing/cached-change-tbody-border-width.html: Added.

2011-09-23  Jochen Eisinger  <jochen@chromium.org>

        Clarify wording in cross origin XSL tests and enable on all platforms
        https://bugs.webkit.org/show_bug.cgi?id=68683

        The condition for passing the test should be more clear now. Also, since the redirect case works on all platforms, the regular case should also work on all platforms.

        Reviewed by Alexey Proskuryakov.

        * http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * http/tests/security/cross-origin-xsl-BLOCKED.html:
        * http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * http/tests/security/cross-origin-xsl-redirect-BLOCKED.html:
        * platform/chromium-cg-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/chromium-cg-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/chromium-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/chromium-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/chromium-win/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/chromium-win/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/gtk/Skipped:
        * platform/gtk/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/gtk/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/mac-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/mac-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/qt-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/qt-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/win-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
        * platform/win-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/wk2/Skipped:

2011-09-23  Mihai Parparita  <mihaip@chromium.org>

        Mark two more tests as flaky.

        * platform/chromium/test_expectations.txt:

2011-09-23  Mihai Parparita  <mihaip@chromium.org>

        Mark a test as flaky.

        * platform/chromium/test_expectations.txt:

2011-09-23  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Normalize test names.

        * inspector/performance/resources/first-open-elements.html:
        * inspector/performance/resources/first-open-resources.html:

2011-09-23  Yael Aharon  <yael.aharon@nokia.com>

        Fix typo in file name from http://trac.webkit.org/changeset/95813.

        Unreviewed.

        * platform/gtk/media/video-playing-and-pause-actual.txt: Removed.
        * platform/gtk/media/video-playing-and-pause-expected.txt: Copied from LayoutTests/platform/gtk/media/video-playing-and-pause-actual.txt.

2011-09-23  Yael Aharon  <yael.aharon@nokia.com>

        Rebaseline after http://trac.webkit.org/changeset/95799

        Unreviewed.

        * platform/mac-wk2/media/video-playing-and-pause-expected.txt: Added.
        * platform/mac/media/video-playing-and-pause-expected.txt: Added.

2011-09-23  Yael Aharon  <yael.aharon@nokia.com>

        Rebaseline after http://trac.webkit.org/changeset/95799

        Unreviewed.

        * platform/gtk/media/video-playing-and-pause-actual.txt: Added.

2011-09-23  Xan Lopez  <xlopez@igalia.com>

        [GTK] Skip crashing test fast/workers/storage/interrupt-database.html
        https://bugs.webkit.org/show_bug.cgi?id=68700

        Unreviewed.

        * platform/gtk/Skipped:

2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: InspectorStyleSheet should use stylesheet's original url, not final one.
        https://bugs.webkit.org/show_bug.cgi?id=68631

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.getElementStylePropertyTreeItem):
        (initialize_ElementTest.InspectorTest.getMatchedStylePropertyTreeItem):
        (initialize_ElementTest.InspectorTest.getFirstPropertyTreeItemForSection):
        * http/tests/inspector/styles/resources/styles-redirected-css.css: Added.
        (div):
        * http/tests/inspector/styles/resources/styles-redirected-css.php: Added.
        * http/tests/inspector/styles/styles-redirected-css-expected.txt: Added.
        * http/tests/inspector/styles/styles-redirected-css.html: Added.

2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: XHRs requests with the same url as main resource should have correct category.
        https://bugs.webkit.org/show_bug.cgi?id=68646

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/network/network-xhr-same-url-as-main-resource-expected.txt: Added.
        * http/tests/inspector/network/network-xhr-same-url-as-main-resource.html: Added.

2011-09-23  Marcus Bulach  <bulach@chromium.org>

        [chromium] Update expectation for pservers-grad-14-b.svg on snowleopard
        https://bugs.webkit.org/show_bug.cgi?id=68697

        Unreviewed rebaseline.

        * platform/chromium/test_expectations.txt:

2011-09-23  Yael Aharon  <yael.aharon@nokia.com>

        [Qt][Gtk] Wrong state when pausing a video in the "playing" event handler
        https://bugs.webkit.org/show_bug.cgi?id=68589

        Reviewed by Philippe Normand.

        * media/video-playing-and-pause.html: Added.
        * media/video-paint-test.js:
        * platform/qt/media/video-playing-and-pause-expected.txt: Added.
        * platform/qt/media/video-playing-and-pause-expected.png: Added.

2011-09-23  Marcus Bulach  <bulach@chromium.org>

        [chromium, gtk, qt] Rebaseline following r95726
        https://bugs.webkit.org/show_bug.cgi?id=68694

        Unreviewed rebaseline.

        * css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Renamed from LayoutTests/platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt.
        * css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Renamed from LayoutTests/platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt.
        * platform/chromium/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/chromium/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Removed.
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Removed.

2011-09-15  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: skip overlapping scripts when displaying concatenated content.
        https://bugs.webkit.org/show_bug.cgi?id=68144

        Reviewed by Pavel Feldman.

        * inspector/debugger/content-providers-expected.txt:
        * inspector/debugger/content-providers.html:

2011-09-23  Xan Lopez  <xlopez@igalia.com>

        [GTK] Rebaseline following r95745, r95725

        Unreviewed rebaseline.

        * platform/gtk/editing/deleting/merge-whitespace-pre-expected.txt:

2011-09-23  Marcus Bulach  <bulach@chromium.org>

        [chromium] Rebaseline following r95745, r95725
        https://bugs.webkit.org/show_bug.cgi?id=68685

        Unreviewed rebaseline.

        * platform/chromium-cg-mac-leopard/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-linux/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-mac/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-09-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: UI performance test for Scripts panel first open experience.
        https://bugs.webkit.org/show_bug.cgi?id=68541

        The test's body has dummy scripts section copied from inspector-test.jss

        Reviewed by Yury Semikhatsky.

        * inspector/performance/resources/first-open-scripts.html:

2011-09-23  Rob Buis  <rbuis@rim.com>

        use after free in WebCore::SVGTRefElement::updateReferencedText
        https://bugs.webkit.org/show_bug.cgi?id=67555

        Reviewed by Nikolas Zimmermann.

        Test that cloned tref does not cause a crash.

        * svg/custom/tref-clone-crash-expected.txt: Added.
        * svg/custom/tref-clone-crash.html: Added.

2011-09-23  Xan Lopez  <xlopez@igalia.com>

        Crash on editing/pasteboard/drag-drop-input-in-svg.svg
        https://bugs.webkit.org/show_bug.cgi?id=68686

        Unreviewed, skip crashing test.

        * platform/gtk/Skipped:

2011-09-23  Balazs Kelemen  <kbalazs@webkit.org>

        plugins/mouse-click-iframe-to-plugin.html should not use flash plugin
        https://bugs.webkit.org/show_bug.cgi?id=68601

        Use the test plugin that we always have.

        * platform/qt-wk2/Skipped: Unskip the test.
        * plugins/mouse-click-iframe-to-plugin.html:

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening, update expected file after r95745.

        * platform/qt/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/qt/editing/deleting/merge-whitespace-pre-expected.txt:

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed fix after r95764, update expected fail to expected pass.

        * ietestcenter/Javascript/15.3.4.5-0-2-expected.txt:

2011-09-22  Tony Chang  <tony@chromium.org>

        implement -webkit-flex-order
        https://bugs.webkit.org/show_bug.cgi?id=67432

        Reviewed by Ojan Vafai.

        * css3/flexbox/flex-order-expected.png: Added.
        * css3/flexbox/flex-order-expected.txt: Added.
        * css3/flexbox/flex-order.html: Added.

2011-09-22  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia) part 6
        https://bugs.webkit.org/show_bug.cgi?id=68671

        Reviewed by James Robinson.

        * platform/chromium-linux/tables/mozilla/marvin/: 9 changes
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/: 14 changes
        * platform/chromium-linux/transforms/svg-vs-css-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/: 9 changes
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/: 14 changes
        * platform/chromium-win/transforms/svg-vs-css-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-22  Anna Cavender  <annacc@chromium.org>

        Adding testTracks() function to video-test.js
        https://bugs.webkit.org/show_bug.cgi?id=68643

        Reviewed by Eric Carlson.

        * media/video-test.js:
        (testTracks):

2011-09-22  Tom Sepez  <tsepez@chromium.org>

        Make XSSAuditor extract meaningful snippet from script blocks for comparison
        against the URL when checking for reflection.  Avoids getting caugh up in
        trailing comments.
        https://bugs.webkit.org/show_bug.cgi?id=68094

        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/resources/echo-intertag.pl:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment2-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment2.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment3-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment3.html: Added.

2011-09-22  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia) part 5
        https://bugs.webkit.org/show_bug.cgi?id=68608

        Reviewed by James Robinson.

        * platform/chromium-linux/css2.1/: 14 changes
        * platform/chromium-linux/editing/execCommand/5138441-expected.png:
        * platform/chromium-linux/editing/inserting/editing-empty-divs-expected.png:
        * platform/chromium-linux/editing/selection/transformed-selection-rects-expected.png:
        * platform/chromium-linux/fast/: 9 changes
        * platform/chromium-win/css2.1/: 14 changes
        * platform/chromium-win/editing/execCommand/5138441-expected.png:
        * platform/chromium-win/editing/inserting/editing-empty-divs-expected.png:
        * platform/chromium-win/editing/selection/transformed-selection-rects-expected.png:
        * platform/chromium-win/fast/: 10 changes
        * platform/chromium/test_expectations.txt:
        * platform/win-xp/editing/selection/transformed-selection-rects-expected.txt: Renamed from LayoutTests/platform/win-wk2/editing/selection/transformed-selection-rects-expected.txt.
        * platform/win/editing/selection/transformed-selection-rects-expected.txt: Renamed from LayoutTests/platform/chromium-win/editing/selection/transformed-selection-rects-expected.txt.

2011-09-22  Dmitry Lomov  <dslomov@google.com>

        Updated expectations and filed WK68674. 

        * platform/chromium/test_expectations.txt:

2011-09-22  Gavin Barraclough  <barraclough@apple.com>

        Incorrect this value passed to callbacks.
        https://bugs.webkit.org/show_bug.cgi?id=68668

        Reviewed by Oliver Hunt.

        From Array/String prototype function.  Should be undefined, but
        global object is passed instead (this is visible for strict callbacks).

        * fast/js/array-prototype-properties-expected.txt:
        * fast/js/script-tests/strict-callback-this.js: Added.
        (strictThrowThisString):
        (nonstrictThrowThisString):
        (testArrayPrototypeSort):
        (testArrayPrototypeFilter):
        (testArrayPrototypeMap):
        (testArrayPrototypeEvery):
        (testArrayPrototypeForEach):
        (testArrayPrototypeSome):
        (testStringPrototypeReplace):
        * fast/js/strict-callback-this-expected.txt: Added.
        * fast/js/strict-callback-this.html: Added.
        * ietestcenter/Javascript/15.3.4.5-0-2-expected.txt:

2011-09-22  Gavin Barraclough  <barraclough@apple.com>

        Function.prototype.bind.length shoudl be 1.

        Rubber stamped by Olier Hunt.

        * fast/js/function-bind-expected.txt:
        * fast/js/script-tests/function-bind.js:

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac]Unreviewed gardening.

        New Qt specific results were added by r95723, but they fail on Qt-Mac platform

        * platform/qt-mac/Skipped: Skip css3/selectors3 tests.


2011-09-22  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68658

        Make matchedEndLine smart enough to not match lines that have moved to new
        regions with different available content logical widths. When this happens, we go ahead and treat
        the line as failing to match.

        Reviewed by Anders Carlsson.

        * fast/regions/webkit-flow-inlines-dynamic.html: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Added.

2011-09-22  Adam Barth  <abarth@webkit.org>

        Skip test that need new baselines.

        * platform/mac/Skipped:

2011-09-22  Gavin Barraclough  <barraclough@apple.com>

        Implement Function.prototype.bind
        https://bugs.webkit.org/show_bug.cgi?id=26382

        Reviewed by Sam Weinig.

        We now pass Function.bind tests.

        * fast/js/Object-getOwnPropertyNames-expected.txt:
        * fast/js/basic-strict-mode-expected.txt:
        * fast/js/function-bind-expected.txt: Added.
        * fast/js/function-bind.html: Added.
        * fast/js/mozilla/strict/15.3.4.5-expected.txt:
        * fast/js/script-tests/function-bind.js: Added.
        * ietestcenter/Javascript/15.2.3.3-4-38-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-0-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-0-2-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-13.b-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-13.b-2-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-13.b-3-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-13.b-4-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-13.b-5-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-15-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-15-2-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-16-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-2-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-3-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-4-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-5-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-6-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-7-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-8-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-2-9-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-8-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-8-2-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-9-1-expected.txt:
        * ietestcenter/Javascript/15.3.4.5-9-2-expected.txt:

2011-09-22  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68650
        
        Make determineStartPosition smart enough to not skip over clean lines that have moved to a new
        region with a different available content logical width. When this happens, we go ahead and treat
        the line as dirty.

        Reviewed by Sam Weinig.

        * platform/mac/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.png:
        * platform/mac/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt:
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.png:
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt:

2011-09-22  Robert Hogan  <robert@webkit.org>

        Platform-specific results for test introduced by r95726

        * platform/gtk/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.
        * platform/mac/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.
        * platform/qt/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.

2011-09-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95335 and r95645.
        http://trac.webkit.org/changeset/95335
        http://trac.webkit.org/changeset/95645
        https://bugs.webkit.org/show_bug.cgi?id=68649

        Wrong fix (Requested by rniwa on #webkit).

        * editing/deleting/merge-paragraph-from-address-expected.txt: Removed.
        * editing/deleting/merge-paragraph-from-address.html: Removed.
        * editing/deleting/merge-paragraph-from-h6-expected.txt: Removed.
        * editing/deleting/merge-paragraph-from-h6-with-style-expected.txt: Removed.
        * editing/deleting/merge-paragraph-from-h6-with-style.html: Removed.
        * editing/deleting/merge-paragraph-from-h6.html: Removed.
        * editing/deleting/merge-paragraph-from-listing-expected.txt: Removed.
        * editing/deleting/merge-paragraph-from-listing.html: Removed.
        * editing/deleting/merge-paragraph-from-p-with-style-expected.txt: Removed.
        * editing/deleting/merge-paragraph-from-p-with-style.html: Removed.
        * editing/deleting/merge-paragraph-into-h1-expected.txt: Removed.
        * editing/deleting/merge-paragraph-into-h1-style-expected.txt: Removed.
        * editing/deleting/merge-paragraph-into-h1-with-style-expected.txt: Removed.
        * editing/deleting/merge-paragraph-into-h1-with-style.html: Removed.
        * editing/deleting/merge-paragraph-into-h1.html: Removed.
        * editing/deleting/merge-paragraph-into-pre-expected.txt: Removed.
        * editing/deleting/merge-paragraph-into-pre.html: Removed.
        * platform/mac/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/mac/editing/deleting/merge-whitespace-pre-expected.txt:

2011-09-22  Robert Hogan  <robert@webkit.org>

        Unreviewed, update expected results after r95726

        * platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png:
        * platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-expected.png:
        * platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt:
        * platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt:
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt:
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt:

2011-09-22  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68645
        
        Fix the layout test fast/regions directory. Remove platform-specific results that were
        incorrectly checked in to cross-platform locations and add missing pixel test results.

        Reviewed by Beth Dakin.

        * fast/regions/content-flowed-into-regions-dynamically-inserted-expected.txt: Removed.
        * fast/regions/flows-dependency-dynamic-remove-expected.txt: Removed.
        * fast/regions/flows-dependency-same-flow-expected.txt: Removed.
        * fast/regions/render-region-renderer-expected.txt: Removed.
        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt: Removed.
        * fast/regions/webkit-flow-renderer-expected.txt: Removed.
        * fast/regions/webkit-flow-renderer-layer-expected.txt: Removed.
        * fast/regions/webkit-flow-renderer-nested-expected.txt: Removed.
        * platform/mac/fast/regions/content-flowed-into-regions-dynamically-added-expected.png: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-dynamically-inserted-expected.txt: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-dynamically-removed-expected.png: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-expected.png: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-with-dyn-index-expected.png: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-with-index-dom-expected.png: Added.
        * platform/mac/fast/regions/content-flowed-into-regions-with-index-expected.png: Added.
        * platform/mac/fast/regions/flows-dependency-dynamic-remove-expected.png: Added.
        * platform/mac/fast/regions/flows-dependency-dynamic-remove-expected.txt: Added.
        * platform/mac/fast/regions/flows-dependency-same-flow-expected.png: Added.
        * platform/mac/fast/regions/flows-dependency-same-flow-expected.txt: Added.
        * platform/mac/fast/regions/no-split-line-box-expected.png: Added.
        * platform/mac/fast/regions/render-region-renderer-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.png: Added.
        * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-renderer-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-renderer-layer-expected.txt: Added.
        * platform/mac/fast/regions/webkit-flow-renderer-nested-expected.txt: Added.

2011-09-22  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Use same DPI for application font as rest of app in DRT and WTR

        QApplication will initialize the default application font based
        on the application DPI at construction time, but we then override
        the application DPI using QX11Info (hard-coding it to 96 for
        consistency). This hard-coding is not reflected in the application
        font, so we explicitly have update the font ourselves.

        The 6 test results that are updated were originally produced with
        a DPI of 75, as this is the default fallback DPI when a QFont is
        constructed before QApplication. This was wrong, and the results
        are updated to match a DPI of 96.

        Reviewed by Csaba Osztrogonác.

        * platform/qt-4.8/css1/text_properties/letter_spacing-expected.png:
        * platform/qt-4.8/css1/text_properties/letter_spacing-expected.txt:
        * platform/qt-4.8/fast/css/word-space-extra-expected.png:
        * platform/qt-4.8/fast/css/word-space-extra-expected.txt:
        * platform/qt-4.8/svg/batik/text/textPosition-expected.png:
        * platform/qt-4.8/svg/batik/text/textPosition-expected.txt:
        * platform/qt-4.8/svg/batik/text/textPosition2-expected.png:
        * platform/qt-4.8/svg/batik/text/textPosition2-expected.txt:
        * platform/qt/css1/text_properties/letter_spacing-expected.txt:
        * platform/qt/fast/css/word-space-extra-expected.png:
        * platform/qt/fast/css/word-space-extra-expected.txt:
        * platform/qt/fast/inline/absolute-positioned-inline-in-centred-block-expected.png:
        * platform/qt/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt:
        * platform/qt/fast/text/text-letter-spacing-expected.png:
        * platform/qt/fast/text/text-letter-spacing-expected.txt:
        * platform/qt/svg/batik/text/textPosition-expected.png:
        * platform/qt/svg/batik/text/textPosition-expected.txt:
        * platform/qt/svg/batik/text/textPosition2-expected.png:
        * platform/qt/svg/batik/text/textPosition2-expected.txt:

2011-09-22  Sergey Glazunov  <serg.glazunov@gmail.com>

        Ref protect shaders in V8WebGLRenderingContext::getAttachedShadersCallback
        https://bugs.webkit.org/show_bug.cgi?id=68630

        Reviewed by Adam Barth.

        * fast/canvas/webgl/shader-deleted-by-accessor-expected.txt: Added.
        * fast/canvas/webgl/shader-deleted-by-accessor.html: Added.

2011-09-22  Robert Hogan  <robert@webkit.org>

        Unreviewed, platform-specific results for r95721. 

        * platform/mac/fast/css/outline-narrowLine-expected.txt: Added.
        * platform/gtk/fast/css/outline-narrowLine-expected.txt: Added.

2011-09-05  Robert Hogan  <robert@webkit.org>

        CSS 2.1 failure: abspos-non-replaced-width-margin-000, abspos-replaced-width-margin-000
        https://bugs.webkit.org/show_bug.cgi?id=47148

        Reviewed by David Hyatt.

        * platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png:
        * platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-expected.png:
          New results for CSS 2.1 reference tests. These match exactly the reference test results.

        * fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks.html: Added.
        * platform/chromium-linux/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.png: Added.
        * platform/chromium-linux/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.
          New test for left,right and center alignment of inline LTR and RTL blocks. FF and Opera don't pass this test.

        * fast/block/positioning/absolute-position-direction-strict.html: Removed.
        * fast/block/positioning/absolute-position-direction.html: Renamed from LayoutTests/fast/block/positioning/absolute-position-direction-quirk.html.
        * platform/chromium-linux/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/chromium-linux/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/chromium-linux/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/chromium-win/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/chromium-win/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/chromium-win/fast/block/positioning/absolute-position-direction-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/block/positioning/absolute-position-direction-quirk-expected.txt.
        * platform/chromium-win/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/chromium-win/fast/block/positioning/absolute-position-direction-strict-expected.txt: Removed.
        * platform/gtk/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/gtk/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/gtk/fast/block/positioning/absolute-position-direction-expected.txt: Renamed from LayoutTests/platform/gtk/fast/block/positioning/absolute-position-direction-quirk-expected.txt.
        * platform/gtk/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/gtk/fast/block/positioning/absolute-position-direction-strict-expected.txt: Removed.
        * platform/mac-leopard/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/mac-leopard/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/mac-leopard/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt:
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt:
        * platform/mac/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/mac/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/mac/fast/block/positioning/absolute-position-direction-expected.txt: Renamed from LayoutTests/platform/mac/fast/block/positioning/absolute-position-direction-quirk-expected.txt.
        * platform/mac/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/mac/fast/block/positioning/absolute-position-direction-strict-expected.txt: Removed.
        * platform/qt/fast/block/positioning/absolute-position-direction-expected.png: Renamed from LayoutTests/platform/qt/fast/block/positioning/absolute-position-direction-quirk-expected.png.
        * platform/qt/fast/block/positioning/absolute-position-direction-expected.txt: Renamed from LayoutTests/platform/qt/fast/block/positioning/absolute-position-direction-quirk-expected.txt.
        * platform/qt/fast/block/positioning/absolute-position-direction-strict-expected.png: Removed.
        * platform/qt/fast/block/positioning/absolute-position-direction-strict-expected.txt: Removed.
          These tests are superseded by abspos-non-replaced-width-margin-000.htm. Using the parent() block's
          direction to compute static distance is now a strict requirement for CSS 2.1, rather than an IE quirk.

2011-09-21  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68590
        
        Floats pushed to next page, column or region don't reposition properly if the amount of
        available logical width at the new position changes. Refactor the code so that we can
        run the float placement algorithm again when this happens.

        Reviewed by Adam Roben.

        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt:

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Add Qt specific expected results for css3/selectors3 tests.
        All of them pass, they are compared to mac png results manually.

        * platform/qt/Skipped:
        * platform/qt/css3/selectors3/ [...]: Added.

2011-09-22  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Testing text events triggered by speech input.
        https://bugs.webkit.org/show_bug.cgi?id=60451

        Reviewed by Ryosuke Niwa.

        * fast/speech/input-ontextinput-event-expected.txt: Added.
        * fast/speech/input-ontextinput-event.html: Added.
        * fast/speech/input-text-speechstart.html:

2011-09-20  Jason Liu  <jason.liu@torchmobile.com.cn>

        Reviewed by Simon Fraser.

        CSS outline property on a narrow element has rabbit ear artifacts
        https://bugs.webkit.org/show_bug.cgi?id=36793

        Patch by Jason Liu  <jason.liu@torchmobile.com.cn>
        Patch updated by Robert Hogan <robert@webkit.org>

        * fast/css/outline-narrowLine.html: Added.
        * platform/qt/fast/css/outline-narrowLine-expected.txt: Added.
        * platform/qt/fast/css/outline-narrowLine-expected.png: Added.
        * platform/chromium-linux/fast/css/outline-narrowLine-expected.txt: Added.
        * platform/chromium-linux/fast/css/outline-narrowLine-expected.png: Added.

2011-09-22  Marcus Bulach  <bulach@chromium.org>

        [chromium] Rebaseline following r95715
        https://bugs.webkit.org/show_bug.cgi?id=68619

        Unreviewed, rebaseline.

        * platform/chromium-cg-mac/fast/events/scale-and-scroll-iframe-body-expected.png: Added.
        * platform/chromium-cg-mac/fast/events/scale-and-scroll-iframe-window-expected.png: Added.
        * platform/chromium-mac/fast/events/scale-and-scroll-iframe-body-expected.png: Added.
        * platform/chromium-mac/fast/events/scale-and-scroll-iframe-window-expected.png: Added.

2011-09-22  Alpha Lam  <hclam@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=68081
        Add layout test for page scale and scrolling.

        Reviewed by Simon Fraser.

        Add tests to cover the following cases:
        1. Scale and scroll window
        2. Scale and scroll document.body
        3. Scale and scroll iframe's contentWindow
        4. Scale and scroll iframe's contentDocument.body

        * fast/events/scale-and-scroll-body-expected.png: Added.
        * fast/events/scale-and-scroll-body-expected.txt: Added.
        * fast/events/scale-and-scroll-body.html: Added.
        * fast/events/scale-and-scroll-iframe-body-expected.png: Added.
        * fast/events/scale-and-scroll-iframe-body-expected.txt: Added.
        * fast/events/scale-and-scroll-iframe-body.html: Added.
        * fast/events/scale-and-scroll-iframe-window-expected.png: Added.
        * fast/events/scale-and-scroll-iframe-window-expected.txt: Added.
        * fast/events/scale-and-scroll-iframe-window.html: Added.
        * fast/events/scale-and-scroll-window-expected.png: Added.
        * fast/events/scale-and-scroll-window-expected.txt: Added.
        * fast/events/scale-and-scroll-window.html: Added.

2011-09-22  Andreas Kling  <kling@webkit.org>

        CSS: Implement 'font' property in CSSComputedStyle.
        https://bugs.webkit.org/show_bug.cgi?id=66666

        Reviewed by Antti Koivisto.

        * fast/css/getComputedStyle/computed-style-font-expected.txt: Added.
        * fast/css/getComputedStyle/computed-style-font.html: Added.
        * fast/css/getComputedStyle/script-tests/computed-style-font.js: Added.
        (computedFont):
        (computedFontCSSValue):

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Unreivewed gardening.

        * platform/qt-wk2/Skipped: Skip new failing test introduced in r95645.

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 69 tests failing after http://trac.webkit.org/changeset/92375
        https://bugs.webkit.org/show_bug.cgi?id=65721

        Unreviewed gardening. Update Qt 4.8 specific expected files after r95706.

        * platform/qt-4.8/ [...]: Updated.

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add Qt specific expected files for new test introduced in r95671.

        * platform/qt/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/qt/fast/table/quote-text-around-iframe-expected.txt: Added.

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 69 tests failing after http://trac.webkit.org/changeset/92375
        https://bugs.webkit.org/show_bug.cgi?id=65721

        Unreviewed gardening. Update Qt specific expected files.

2011-09-22  Marcus Bulach  <bulach@chromium.org>

        [chromium] Update test expectation following r95685
        https://bugs.webkit.org/show_bug.cgi?id=68604

        Unreviewed, update test expectation.

        * platform/chromium/test_expectations.txt:

2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 11 tests failed after r95671 because the tests are updated.
        https://bugs.webkit.org/show_bug.cgi?id=68596

        Update Qt specific expected files.

        * platform/qt/fast/css-generated-content/table-cell-before-content-expected.png:
        * platform/qt/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/qt/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/qt/fast/table/table-cell-before-after-content-around-table-block-expected.txt:
        * platform/qt/fast/table/table-cell-before-after-content-around-table-expected.txt:
        * platform/qt/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/qt/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/qt/fast/table/table-row-before-after-content-around-block-expected.txt:
        * platform/qt/fast/table/table-row-before-after-content-around-table-expected.txt:
        * platform/qt/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/qt/fast/table/table-row-style-not-updated-with-after-content-expected.png: Added.
        * platform/qt/fast/table/table-row-style-not-updated-with-after-content-expected.txt:

2011-09-22  Oliver Varga  <voliver@inf.u-szeged.hu>

        [Qt] 11 tests failed after r95671 because the tests are updated.
        https://bugs.webkit.org/show_bug.cgi?id=68596

        Unreviewed gardening. Typo fixes.

        * platform/qt/Skipped:

2011-09-22  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r95671.

        * platform/gtk/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/gtk/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/gtk/fast/table/quote-text-around-iframe-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-block-expected.txt:
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-expected.txt:
        * platform/gtk/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-before-after-content-around-block-expected.txt:
        * platform/gtk/fast/table/table-row-before-after-content-around-table-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-style-not-updated-with-after-content-expected.txt:

2011-09-22  Oliver Varga  <voliver@inf.u-szeged.hu>

        [Qt] 11 tests failed after r95671.
        https://bugs.webkit.org/show_bug.cgi?id=68596

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-09-21  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium rebaselines for r95671.        

        * platform/chromium-linux/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/chromium-mac/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/chromium-win/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/chromium-win/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/chromium-win/fast/table/quote-text-around-iframe-expected.txt: Added.
        * platform/chromium-win/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/chromium-win/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/chromium-win/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/chromium-win/fast/table/table-row-before-child-in-block-expected.txt:

2011-09-21  Sameer Patil  <mkrp87@motorola.com>

        :hover selector fails when hovering over a child select element with size attribute
        https://bugs.webkit.org/show_bug.cgi?id=67594

        Reviewed by Darin Adler.

        * fast/css/hover-affects-ancestor-expected.txt: Added.
        * fast/css/hover-affects-ancestor.html: Added.

2011-09-21  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia) part 4
        https://bugs.webkit.org/show_bug.cgi?id=68339

        Reviewed by James Robinson.

        * platform/chromium-linux/css1/box_properties/border_style-expected.png:
        * platform/chromium-linux/css1/box_properties/border_style_inline-expected.png:
        * platform/chromium-linux/css2.1/: 14 changes
        * platform/chromium-linux/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/chromium-linux/fast/borders/border-styles-split-expected.png: Added.
        * platform/chromium-linux/fast/writing-mode/border-styles-vertical-lr-expected.png: Added.
        * platform/chromium-linux/fast/writing-mode/border-styles-vertical-rl-expected.png: Added.
        * platform/chromium-win/css1/box_properties/border_style-expected.png:
        * platform/chromium-win/css1/box_properties/border_style_inline-expected.png:
        * platform/chromium-win/css2.1/: 14 changes
        * platform/chromium-win/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/chromium-win/fast/borders/border-radius-inset-outset-expected.txt: Added.
        * platform/chromium-win/fast/borders/border-styles-split-expected.png: Added.
        * platform/chromium-win/fast/borders/border-styles-split-expected.txt: Added.
        * platform/chromium-win/fast/writing-mode/border-styles-vertical-lr-expected.png: Added.
        * platform/chromium-win/fast/writing-mode/border-styles-vertical-lr-expected.txt: Added.
        * platform/chromium-win/fast/writing-mode/border-styles-vertical-rl-expected.png: Added.
        * platform/chromium-win/fast/writing-mode/border-styles-vertical-rl-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>

        [Chromium] Protect message ports from being deleted in V8MessageEvent::portsAccessorGetter
        https://bugs.webkit.org/show_bug.cgi?id=68584

        Reviewed by Adam Barth.

        * fast/dom/message-port-deleted-by-accessor-expected.txt: Added.
        * fast/dom/message-port-deleted-by-accessor.html: Added.

2011-09-21  David Levin  <levin@chromium.org>

        [chromium] Rebaselines for passing tests and expectation updates/narrowing.

        * platform/chromium-cg-mac-leopard/editing/inserting/editable-inline-element-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/t090204-display-change-01-b-ao-expected.png: Added.
        * platform/chromium-mac-leopard/editing/inserting/editable-inline-element-expected.png: Added.
        * platform/chromium-mac/css2.1/t090204-display-change-01-b-ao-expected.png:
        * platform/chromium-mac/css2.1/t090204-display-change-01-b-ao-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-09-21  Julien Chaffraix  <jchaffraix@webkit.org>

        Crash in RenderBox::paintMaskImages when GraphicsContext's painting is disabled
        https://bugs.webkit.org/show_bug.cgi?id=68133

        Reviewed by Darin Adler.

        Those tests checks that we do not crash when calling internals.paintControlTints.

        * platform/mac/Skipped: Skipped 2 tests as they are hitting an ASSERT unrelated to
        this change on Mac.

        * fast/css/webkit-mask-crash-fieldset-legend-expected.txt: Added.
        * fast/css/webkit-mask-crash-fieldset-legend.html: Added.
        * fast/css/webkit-mask-crash-figure-expected.txt: Added.
        * fast/css/webkit-mask-crash-figure.html: Added.
        * fast/css/webkit-mask-crash-table-expected.txt: Added.
        * fast/css/webkit-mask-crash-table.html: Added.
        * fast/css/webkit-mask-crash-td-2-expected.txt: Added.
        * fast/css/webkit-mask-crash-td-2.html: Added.
        * fast/css/webkit-mask-crash-td-expected.txt: Added.
        * fast/css/webkit-mask-crash-td.html: Added.

2011-09-21  Abhishek Arya  <inferno@chromium.org>

        Not use anonymousContainer on beforeChild calculation
        and let later code handle it.
        https://bugs.webkit.org/show_bug.cgi?id=67656

        Reviewed by David Hyatt.

        * fast/table/quote-text-around-iframe.html: Added.
        * fast/table/table-row-style-not-updated-with-after-content-expected.txt:
        * platform/mac/fast/table/quote-text-around-iframe-expected.png: Added.
        * platform/mac/fast/table/quote-text-around-iframe-expected.txt: Added.
        and lot of style propagation rebaselines.

2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>

        [Chromium] Protect the Frame in V8HTMLDocument::openCallback
        https://bugs.webkit.org/show_bug.cgi?id=68555

        Reviewed by Nate Chapin.

        * fast/dom/frame-deleted-in-document-open-expected.txt: Added.
        * fast/dom/frame-deleted-in-document-open.html: Added.

2011-09-21  Adam Klein  <adamk@chromium.org>

        Clean up CSS Counter code
        https://bugs.webkit.org/show_bug.cgi?id=68492

        Reviewed by Tony Chang.

        Added tests for setting the list style to "none"
        as well as tests for getCounterValue.

        * fast/css/counters/counter-cssText-expected.txt:
        * fast/css/counters/counter-cssText.html:
        * fast/css/counters/getCounterValue-expected.txt: Added.
        * fast/css/counters/getCounterValue.html: Added.

2011-09-21  Chang Shu  <cshu@webkit.org>

        [WK2] [Mac] Implement a more-complete MouseDown/MouseUp/MouseMoveTo functions for WebKit2 EventSender
        https://bugs.webkit.org/show_bug.cgi?id=68108

        This patch implements the event sender mouse events through WebKit2 UIProcess which is
        closer to the real simulation than a WebProcess-only approach. The patch only supports Mac
        platform as the first step so the existing code is still kept for other platforms.

        Unskip the passed tests.

        Reviewed by Darin Adler.

        * platform/mac-wk2/Skipped:
        * platform/wk2/Skipped:

2011-09-21  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
        https://bugs.webkit.org/show_bug.cgi?id=68550

        Reviewed by Darin Adler.

        * fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow-expected.txt: Added.
        * fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html: Added.

2011-09-21  Dmitry Lomov  <dslomov@google.com>

        Fixed bug number in test expectations. 

        * platform/chromium/test_expectations.txt:

2011-09-21  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: clear resource agent resource cache upon resource agent's disable.
        https://bugs.webkit.org/show_bug.cgi?id=67995

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-disabling-check-no-memory-leak-expected.txt: Added.
        * http/tests/inspector/network/network-disabling-check-no-memory-leak.html: Added.

2011-09-21  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68543
        
        Make sure that when regions change dimensions we recompute pagination slices.

        Reviewed by Simon Fraser.

        * fast/regions/text-region-split-after-resize-expected.txt: Added.
        * fast/regions/text-region-split-after-resize.html: Added.
        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt:

2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>

        Span element gets produced using backspace/delete to merge header with paragraph
        https://bugs.webkit.org/show_bug.cgi?id=68413

        Reviewed by Darin Adler.

        Add a test to remove the line break before a p element. WebKit should not preserve
        the font color from the style rule but should preserve the font style from inline style declaration.

        Also fix merge-paragraph-from-h6* to actually h6 instead of h1.

        * editing/deleting/merge-paragraph-from-h6-expected.txt:
        * editing/deleting/merge-paragraph-from-h6-with-style-expected.txt:
        * editing/deleting/merge-paragraph-from-h6-with-style.html:
        * editing/deleting/merge-paragraph-from-h6.html:
        * editing/deleting/merge-paragraph-from-p-with-style-expected.txt: Added.
        * editing/deleting/merge-paragraph-from-p-with-style.html: Added.

2011-09-21  Ojan Vafai  <ojan@chromium.org>

        [flexbox] rename classnames and methods in the tests to not assume horizontal
        https://bugs.webkit.org/show_bug.cgi?id=68498

        Reviewed by Tony Chang.

        * css3/flexbox/001.html:
        * css3/flexbox/002.html:
        * css3/flexbox/003.html:
        * css3/flexbox/004.html:
        * css3/flexbox/resources/flexbox.js:
        (checkFlexBoxen):
        * css3/flexbox/writing-modes.html:
        * platform/mac/Skipped:

2011-09-21  Mike Reed  <reed@google.com>

        need rebaseline for gradient speedup in skia
        https://bugs.webkit.org/show_bug.cgi?id=68531

        Reviewed by Stephen White.

        * platform/chromium/test_expectations.txt:

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, move today's skipped flaky tests to test_expectations
        as suggested by mrobinson.

        * platform/gtk/Skipped:
        * platform/gtk/test_expectations.txt:

2011-09-21  Alice Boxhall  <aboxhall@chromium.org>

        Report AXValueChanged when value changes in element with role=textbox.
        https://bugs.webkit.org/show_bug.cgi?id=68201

        Reviewed by Chris Fleizach.

        * platform/mac/accessibility/textbox-role-reports-notifications-expected.txt: Added.
        * platform/mac/accessibility/textbox-role-reports-notifications.html: Added.

2011-09-21  Anna Cavender  <annacc@chromium.org>

        New layout tests for the JS bindings related to <track>:
            e.g. TextTrack, TextTrackCue, TextTrackCueList, MutableTextTrack.
        https://bugs.webkit.org/show_bug.cgi?id=68194

        Reviewed by Eric Carlson.

        * media/track/track-mutable-expected.txt: Added.
        * media/track/track-mutable.html: Added.
        * media/track/track-text-track-cue-list-expected.txt: Added.
        * media/track/track-text-track-cue-list.html: Added.
        * media/track/track-text-track-expected.txt: Added.
        * media/track/track-text-track.html: Added.

2011-09-21  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] plugins/mouse-click-iframe-to-plugin.html fails since enabled in r95626
        https://bugs.webkit.org/show_bug.cgi?id=68539

        Unreviewed gardening.

        * platform/qt-wk2/Skipped: skip the test.

2011-09-21  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)

        This separates test failures that are specific to CG Mac from failures
        for Skia on Mac. Most of these changes are specific to Leopard, but a
        handful add new fail flavors for all Mac variations.

        * LayoutTests/platform/chromium/test_expectations.txt:

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for
        cross-origin-xsl-redirect-BLOCKED.html which were removed by mistake.

        * platform/gtk/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt: Added.

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip flaky media test on GTK.

        * platform/gtk/Skipped: Skip media/media-blocked-by-beforeload.html

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Syntax error in media/audio-delete-while-step-button-clicked.html
        https://bugs.webkit.org/show_bug.cgi?id=68507

        Reviewed by Eric Carlson.

        * media/audio-delete-while-step-button-clicked.html: Some curly
        braces were missing in a try/catch statement.

2011-09-21  Chang Shu  <cshu@webkit.org>

        [Qt] Implement KeyDown function for WebKit2 EventSender.
        https://bugs.webkit.org/show_bug.cgi?id=56485

        Unskip passed tests.

        Reviewed by Andreas Kling.

        * platform/qt-wk2/Skipped:

2011-09-21  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: UI performance test for Resource panel first open experience.
        https://bugs.webkit.org/show_bug.cgi?id=68527

        Reviewed by Pavel Feldman.

        * inspector/performance/resources/first-open-resources.html: Added.

2011-09-21  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: extend UI perf tests coverage. Elements panel opens first time.
        https://bugs.webkit.org/show_bug.cgi?id=68432

        Reviewed by Pavel Feldman.

        * inspector/performance/resources/first-open-elements.html: Added.
        * inspector/performance/resources/performance-test.js:

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip some more flaky SVG tests on GTK.

        * platform/gtk/Skipped:

2011-09-21  Jochen Eisinger  <jochen@chromium.org>

        Unreviewed, fix baselines for cross-origin-xsl-redirect-BLOCKED

        * http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/chromium-cg-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/chromium-mac/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/chromium-win/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/gtk/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt: Removed
        * platform/mac-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * platform/qt/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.png: Removed
        * platform/qt/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt: Removed
        * platform/win-wk2/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:

2011-09-21  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline caused by r95567

        * platform/chromium-cg-mac-leopard/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/chromium-mac-leopard: Added.
        * platform/chromium-mac-leopard/fast: Added.
        * platform/chromium-mac-leopard/fast/clip: Added.
        * platform/chromium-mac-leopard/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.

2011-09-21  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline caused by r95599

        * fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.
        * platform/chromium-mac-leopard: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.png: Added.
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.png: Added.
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Removed.

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 GTK flaky tests.

        * platform/gtk/Skipped: Skip
        http/tests/websocket/tests/hixie76/error-detect.html and
        svg/zoom/page/zoom-svg-through-object-with-auto-size.html

2011-09-21  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt][WK2] Unskip some cookies related layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=68484

        Reviewed by Csaba Osztrogonác.

        Unskip some cookies related layout tests as they seems to work fine with
        --iterations 1000.

        * platform/qt-wk2/Skipped:

2011-09-21  Gabor Rapcsanyi  <rgabor@webkit.org>

        [Qt][Mac] Unreviewed gardening after r95601.

        * platform/qt-mac/Skipped: Paint the Qt-Mac bot green.

2011-09-21  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95608.
        http://trac.webkit.org/changeset/95608
        https://bugs.webkit.org/show_bug.cgi?id=68521

        breaks GTK and Windows builds. Please check EWS next time.
        (Requested by philn-tp on #webkit).

        * fast/events/scale-and-scroll-body-expected.png: Removed.
        * fast/events/scale-and-scroll-body-expected.txt: Removed.
        * fast/events/scale-and-scroll-body.html: Removed.
        * fast/events/scale-and-scroll-iframe-body-expected.png: Removed.
        * fast/events/scale-and-scroll-iframe-body-expected.txt: Removed.
        * fast/events/scale-and-scroll-iframe-body.html: Removed.
        * fast/events/scale-and-scroll-iframe-window-expected.png: Removed.
        * fast/events/scale-and-scroll-iframe-window-expected.txt: Removed.
        * fast/events/scale-and-scroll-iframe-window.html: Removed.
        * fast/events/scale-and-scroll-window-expected.png: Removed.
        * fast/events/scale-and-scroll-window-expected.txt: Removed.
        * fast/events/scale-and-scroll-window.html: Removed.

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baseslines for 2 new tests and skip a flaky svg test.

        * platform/gtk/Skipped: Skip svg/W3C-SVG-1.1-SE/filters-image-05-f.svg
        * platform/gtk/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/gtk/fast/clip/overflow-border-radius-fixed-position-expected.txt: Added.
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.png: Added.
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.

2011-09-21  Gabor Rapcsanyi  <rgabor@webkit.org>

        [Qt][WK2] http/tests/security/cross-origin-xsl-redirect-BLOCKED.html fails
        https://bugs.webkit.org/show_bug.cgi?id=68515

        * platform/qt-wk2/Skipped: Skip http/tests/security/cross-origin-xsl-redirect-BLOCKED.html.

2011-09-20  Alpha Lam  <hclam@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=68081
        Add layout test for page scale and scrolling.

        Reviewed by Simon Fraser.

        Add tests to cover the following cases:
        1. Scale and scroll window
        2. Scale and scroll document.body
        3. Scale and scroll iframe's contentWindow
        4. Scale and scroll iframe's contentDocument.body

        * fast/events/scale-and-scroll-body-expected.png: Added.
        * fast/events/scale-and-scroll-body-expected.txt: Added.
        * fast/events/scale-and-scroll-body.html: Added.
        * fast/events/scale-and-scroll-iframe-body-expected.png: Added.
        * fast/events/scale-and-scroll-iframe-body-expected.txt: Added.
        * fast/events/scale-and-scroll-iframe-body.html: Added.
        * fast/events/scale-and-scroll-iframe-window-expected.png: Added.
        * fast/events/scale-and-scroll-iframe-window-expected.txt: Added.
        * fast/events/scale-and-scroll-iframe-window.html: Added.
        * fast/events/scale-and-scroll-window-expected.png: Added.
        * fast/events/scale-and-scroll-window-expected.txt: Added.
        * fast/events/scale-and-scroll-window.html: Added.

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline, skip some flaky worker tests and 2
        failing http tests.

        * platform/gtk/Skipped:
        * platform/gtk/editing/deleting/regional-indicators-expected.txt:
        * platform/gtk/fast/text/justify-ideograph-complex-expected.txt:

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline and skip and a11y failing test.

        * platform/gtk/Skipped: Skip accessibility/aria-hidden-updates-alldescendants.html
        * platform/gtk/editing/deleting/merge-whitespace-pre-expected.txt:
        Rebaseline after r95335.
        * platform/gtk/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt: Added.

2011-09-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r95566.

        * platform/gtk/mathml/xHeight-expected.txt:

2011-09-21  MORITA Hajime  <morrita@google.com>

        Unreviewed Skipped list update for meter-element-repaint-on-update-value.html,
        which needs windows

        * platform/win/Skipped:

2011-09-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/qt/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/qt/fast/clip/overflow-border-radius-fixed-position-expected.txt: Added.
        * platform/qt/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.png: Added.
        * platform/qt/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.
        * platform/qt/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.png: Added.
        * platform/qt/http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt: Added.

2011-09-20  MORITA Hajime  <morrita@google.com>

        <meter> doesn't update rendering when its value is changed.
        https://bugs.webkit.org/show_bug.cgi?id=67614

        Reviewed by Dimitri Glazkov.

        * fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.png: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.
        * platform/mac/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html: Added.

2011-09-20  Keishi Hattori  <keishi@webkit.org>

        [chromium] changed test expectations for zoom-svg-through-object-with-auto-size.html:wq

        * platform/chromium/test_expectations.txt:

2011-09-20  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline caused by r95567

        * platform/chromium-cg-mac/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/chromium-linux-x86/fast/clip: Removed.
        * platform/chromium-linux/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/chromium-mac/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-fixed-position-expected.txt: Added.

2011-09-20  John Gregg  <johnnyg@google.com>

        Directory Upload: parent path can truncate first char of the correct path
        https://bugs.webkit.org/show_bug.cgi?id=66695

        Add a test case for when the parent path is '/'.

        Reviewed by Darin Fisher.

        * fast/forms/input-file-directory-upload.html:

2011-09-20  Jochen Eisinger  <jochen@chromium.org>

        Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
        https://bugs.webkit.org/show_bug.cgi?id=68279

        Reviewed by Adam Barth.

        * http/tests/security/resources/cross-origin-xsl-redirect.xml:
        * http/tests/security/cross-origin-xsl-redirect-BLOCKED-expected.txt:
        * http/tests/security/cross-origin-xsl-redirect-BLOCKED.html:
        * platform/chromium/http/tests/permissionclient/image-permissions-expected.txt:
        * platform/chromium/http/tests/permissionclient/image-permissions.html:

2011-09-18  Ojan Vafai  <ojan@chromium.org>

        change RenderFlexibleBox to act on logical coordinates
        https://bugs.webkit.org/show_bug.cgi?id=68129

        Reviewed by David Hyatt.

        * css3/flexbox/resources/flexbox.js:
        * css3/flexbox/writing-modes-expected.txt: Added.
        * css3/flexbox/writing-modes.html: Added.

2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>

        Hit testing on margins of body and head elements doesn't recur
        https://bugs.webkit.org/show_bug.cgi?id=40753

        Reviewed by Darin Adler.

        Add tests to click on margins of head and body elements. WebKit should not
        (attempt to) place the caret after or before head and body elements.

        * editing/selection/click-on-body-margin-expected.txt: Added.
        * editing/selection/click-on-body-margin.html: Added.
        * editing/selection/click-on-head-margin-expected.txt: Added.
        * editing/selection/click-on-head-margin.html: Added.

2011-09-20  Alan Stearns  <stearns@adobe.com>

        [CSSRegions] Need test case for 66198 (sliced line box rendering)
        https://bugs.webkit.org/show_bug.cgi?id=68257

        Reviewed by David Hyatt.

        * fast/regions/resources/helper.js:
        (assertTopLeftMatch):
        (sameTopLeft):
        * fast/regions/no-split-line-box-expected.txt: Added.
        * fast/regions/no-split-line-box.html: Added.

2011-09-20  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68314
        
        Added some more clipping tests for overflow to make sure the right things happen
        when border-radius is specified.

        Reviewed by Simon Fraser and Darin Adler.

        * fast/clip/overflow-border-radius-fixed-position.html: Added.
        * platform/mac/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
        * platform/mac/fast/clip/overflow-border-radius-fixed-position-expected.txt: Added.

2011-09-20  Dan Bernstein  <mitz@apple.com>

        MathML renderers do not override RenderObject::renderName()
        https://bugs.webkit.org/show_bug.cgi?id=68461

        Reviewed by Darin Adler.

        * platform/mac/mathml/presentation/attributes-expected.txt:
        * platform/mac/mathml/presentation/fenced-expected.txt:
        * platform/mac/mathml/presentation/fenced-mi-expected.txt:
        * platform/mac/mathml/presentation/fractions-expected.txt:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
        * platform/mac/mathml/presentation/mo-expected.txt:
        * platform/mac/mathml/presentation/msub-base-changed-expected.txt:
        * platform/mac/mathml/presentation/msub-sub-changed-expected.txt:
        * platform/mac/mathml/presentation/msubsup-base-changed-expected.txt:
        * platform/mac/mathml/presentation/msubsup-sub-changed-expected.txt:
        * platform/mac/mathml/presentation/msubsup-sup-changed-expected.txt:
        * platform/mac/mathml/presentation/msup-base-changed-expected.txt:
        * platform/mac/mathml/presentation/msup-sup-changed-expected.txt:
        * platform/mac/mathml/presentation/over-expected.txt:
        * platform/mac/mathml/presentation/roots-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/row-expected.txt:
        * platform/mac/mathml/presentation/style-expected.txt:
        * platform/mac/mathml/presentation/sub-expected.txt:
        * platform/mac/mathml/presentation/subsup-expected.txt:
        * platform/mac/mathml/presentation/sup-expected.txt:
        * platform/mac/mathml/presentation/tables-expected.txt:
        * platform/mac/mathml/presentation/tokenElements-expected.txt:
        * platform/mac/mathml/presentation/under-expected.txt:
        * platform/mac/mathml/presentation/underover-expected.txt:
        * platform/mac/mathml/xHeight-expected.txt:

2011-09-20  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)

        This separates test failures that are specific to CG Mac from failures
        for Skia on Mac. Most of these changes are specific to Leopard, but a
        handful add new fail flavors for all Mac variations.

        * LayoutTests/platform/chromium/test_expectations.txt:

2011-09-20  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: one line inspector's script-formatter.html fix.

        * inspector/debugger/script-formatter.html:

2011-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95509.
        http://trac.webkit.org/changeset/95509
        https://bugs.webkit.org/show_bug.cgi?id=68446

        crashes chromium fast/repaint/japanese-rl-selection-repaint-
        in-regions.html on Win and Linux (Requested by dslomov on
        #webkit).

        * editing/selection/click-on-body-margin-expected.txt: Removed.
        * editing/selection/click-on-body-margin.html: Removed.
        * editing/selection/click-on-head-margin-expected.txt: Removed.
        * editing/selection/click-on-head-margin.html: Removed.

2011-09-20  Jarred Nicholls  <jarred@sencha.com>

        [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
        https://bugs.webkit.org/show_bug.cgi?id=51159

        Permit any URL with a local scheme to set a user style sheet. Allow qrc
        resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().

        New platform layout test since user style sheet is testable from DRT.

        Reviewed by Kenneth Rohde Christiansen.

        * platform/qt/fast/loader/user-stylesheet-qrc-path-expected.txt: Added.
        * platform/qt/fast/loader/user-stylesheet-qrc-path.html: Added.

2011-09-20  Dmitry Lomov  <dslomov@google.com>

        [Chromium] Rebaseline expectationd and file WK68445.

        * platform/chromium/test_expectations.txt:

2011-09-20  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * platform/chromium-mac/fast/ruby/overhang-horizontal-expected.png: Removed.
        * platform/chromium-mac/fast/box-shadow/box-shadow-clipped-slices-expected.png:

2011-09-19  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
        https://bugs.webkit.org/show_bug.cgi?id=68363

        Migrates from poorly documented "details" object to explicit parameters
        containing break type and data.

        Reviewed by Tony Gentilcore.

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):

2011-09-15  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio.
        https://bugs.webkit.org/show_bug.cgi?id=68155

        Reviewed by Tony Gentilcore.

        * inspector/console/console-dir.html:

2011-09-19  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: streamline Console's MessageType and MessageSource semantics.
        https://bugs.webkit.org/show_bug.cgi?id=68342

        This change fixes semantics of the MessageSource and MessageType:
        MessageSource is now the source of the message (be it Network, HTML
        parser or Console API). MessageType is only defined for the Console API
        messages and contains the name of the API call (log, dir, dirxml, etc.).
        Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
        private to the inspector.

        Reviewed by Tony Gentilcore.

        * inspector/protocol/console-agent-expected.txt:
        * platform/chromium/http/tests/inspector/console-resource-errors-expected.txt: Added.

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/css3/bdi-element-expected.png: Added.
        * platform/gtk/css3/bdi-element-expected.txt: Added.
        * platform/gtk/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/gtk/css3/unicode-bidi-isolate-aharon-expected.txt: Added.
        * platform/gtk/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/gtk/css3/unicode-bidi-isolate-basic-expected.txt: Added.
        * platform/gtk/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
        * platform/gtk/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-longhand-expected.png: Added.
        * platform/gtk/fast/borders/border-image-longhand-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-massive-scale-expected.png: Added.
        * platform/gtk/fast/borders/border-image-massive-scale-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-outset-expected.png: Added.
        * platform/gtk/fast/borders/border-image-outset-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
        * platform/gtk/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-outset-split-inline-expected.png: Added.
        * platform/gtk/fast/borders/border-image-outset-split-inline-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
        * platform/gtk/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-repeat-expected.png: Added.
        * platform/gtk/fast/borders/border-image-repeat-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-scaled-expected.png: Added.
        * platform/gtk/fast/borders/border-image-scaled-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * platform/gtk/fast/borders/border-image-scaled-gradient-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/gtk/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-side-reduction-expected.png: Added.
        * platform/gtk/fast/borders/border-image-side-reduction-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-slices-expected.png: Added.
        * platform/gtk/fast/borders/border-image-slices-expected.txt: Added.
        * platform/gtk/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
        * platform/gtk/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
        * platform/gtk/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
        * platform/gtk/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
        * platform/gtk/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/gtk/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
        * platform/gtk/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/gtk/fast/clip/overflow-border-radius-composited-expected.txt: Added.
        * platform/gtk/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/gtk/fast/clip/overflow-border-radius-transformed-expected.txt: Added.
        * platform/gtk/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/gtk/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.
        * platform/gtk/fast/css/line-after-floating-div-expected.png: Added.
        * platform/gtk/fast/css/line-after-floating-div-expected.txt: Added.
        * platform/gtk/fast/parser/innerhtml-with-prefixed-elements-expected.png: Added.
        * platform/gtk/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.
        * platform/gtk/fast/reflections/reflection-masks-outset-expected.png: Added.
        * platform/gtk/fast/reflections/reflection-masks-outset-expected.txt: Added.
        * platform/gtk/fast/text/fallback-traits-fixup-expected.png: Added.
        * platform/gtk/fast/text/fallback-traits-fixup-expected.txt: Added.
        * platform/gtk/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/gtk/fast/text/hyphenate-limit-lines-expected.txt: Added.
        * platform/gtk/svg/custom/pattern-rotate-gaps-expected.png: Added.
        * platform/gtk/svg/custom/pattern-rotate-gaps-expected.txt: Added.
        * platform/gtk/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/gtk/svg/custom/simple-text-double-shadow-expected.txt: Added.

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for tests added in r95489 and r95488.

        * platform/gtk/http/tests/security/document-all-expected.txt: Added.
        * platform/gtk/http/tests/security/window-named-proto-expected.txt: Added.

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for tests added in r95461.

        * platform/gtk/fast/table/table-cell-before-after-content-around-table-block-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-row-expected.txt: Added.
        * platform/gtk/fast/table/table-row-before-after-content-around-block-expected.txt: Added.
        * platform/gtk/fast/table/table-row-before-after-content-around-table-expected.txt: Added.

2011-09-20  Renata Hodovan  <reni@webkit.org>

        [Qt] Rebase and unskip tests introduced in r95489 and r95488.

        Unreviewed gardening.

        * platform/qt/Skipped:
        * platform/qt/http/tests/security/document-all-expected.txt: Added.
        * platform/qt/http/tests/security/window-named-proto-expected.txt: Added.

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing fast/files/create-blob-url-crash.html on
        GTK because of bug 66045.

        * platform/gtk/Skipped:

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r95178 and r95362.

        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/call-a-constructor-as-a-function-expected.txt:
        * platform/gtk/fast/js/global-constructors-expected.txt:

2011-09-09  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: implement reverse mapping for compiler source maps.
        https://bugs.webkit.org/show_bug.cgi?id=67850

        Reviewed by Pavel Feldman.

        * inspector/debugger/compiler-source-mapping.html:

2011-09-20  Renata Hodovan  <reni@webkit.org>

        [Qt] Add Qt specific expecteds to new tests introduced in r95461.

        Unreviewed gardening.

        * platform/qt/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
        * platform/qt/fast/table/table-cell-before-after-content-around-table-block-expected.txt: Added.
        * platform/qt/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
        * platform/qt/fast/table/table-cell-before-after-content-around-table-expected.txt: Added.
        * platform/qt/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
        * platform/qt/fast/table/table-cell-before-after-content-around-table-row-expected.txt: Added.
        * platform/qt/fast/table/table-row-before-after-content-around-block-expected.png: Added.
        * platform/qt/fast/table/table-row-before-after-content-around-block-expected.txt: Added.
        * platform/qt/fast/table/table-row-before-after-content-around-table-expected.png: Added.
        * platform/qt/fast/table/table-row-before-after-content-around-table-expected.txt: Added.

2011-09-20  Renata Hodovan  <reni@webkit.org>

        [Qt] Two tests fail after r95488 & r95489
        https://bugs.webkit.org/show_bug.cgi?id=68428

        Skip the failing tests.

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-09-19  Ryosuke Niwa  <rniwa@webkit.org>

        Hit testing on margins of body and head elements doesn't recur
        https://bugs.webkit.org/show_bug.cgi?id=40753

        Reviewed by Darin Adler.

        Add tests to click on margins of head and body elements. WebKit should not
        (attempt to) place the caret after or before head and body elements.

        * editing/selection/click-on-body-margin-expected.txt: Added.
        * editing/selection/click-on-body-margin.html: Added.
        * editing/selection/click-on-head-margin-expected.txt: Added.
        * editing/selection/click-on-head-margin.html: Added.

2011-09-19  Gavin Barraclough  <barraclough@apple.com>

        String#split is buggy
        https://bugs.webkit.org/show_bug.cgi?id=68348

        Reviewed by Sam Weinig.

        * fast/js/script-tests/string-split-conformance.js: Added.
        * fast/js/string-split-conformance-expected.txt: Added.
        * fast/js/string-split-conformance.html: Added.
            - Added new Layout test based on:
                http://stevenlevithan.com/demo/split.cfm
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T6-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T7-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T8-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T9-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A2_T7-expected.txt:
            - Check in failing results for these 5 tests; they are all wrong
              (see https://bugs.ecmascript.org/show_bug.cgi?id=61).

2011-09-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95482.
        http://trac.webkit.org/changeset/95482
        https://bugs.webkit.org/show_bug.cgi?id=68410

        Broke chromium webkit-tests (Requested by dslomov on #webkit).

        * fast/canvas/webgl/premultiplyalpha-test-expected.txt:
        * fast/canvas/webgl/premultiplyalpha-test.html:

2011-09-19  Adam Barth  <abarth@webkit.org>

        [V8] document.all gets confused about its prototype chain
        https://bugs.webkit.org/show_bug.cgi?id=68393

        Reviewed by Eric Seidel.

        Test how document.all behaves when you change its prototype chain.

        * http/tests/security/document-all-expected.txt: Added.
        * http/tests/security/document-all.html: Added.

2011-09-19  Adam Barth  <abarth@webkit.org>

        Named property confusion with __proto__
        https://bugs.webkit.org/show_bug.cgi?id=68221

        Reviewed by Eric Seidel.

        * http/tests/security/resources/innocent-victim-with-iframe.html: Added.
        * http/tests/security/window-named-proto-expected.txt: Added.
        * http/tests/security/window-named-proto.html: Added.

2011-09-19  John Bauman  <jbauman@chromium.org>

        Fix nonpremultiplied webgl toDataURL to jpeg
        https://bugs.webkit.org/show_bug.cgi?id=68366

        Update the premultiplyalpha-test from the WebGL conformance tests.

        Reviewed by Kenneth Russell.

        * fast/canvas/webgl/premultiplyalpha-test-expected.txt:
        * fast/canvas/webgl/premultiplyalpha-test.html:

2011-09-19  Ryosuke Niwa  <rniwa@webkit.org>

        Incorrect selection with absolutely positioned div
        https://bugs.webkit.org/show_bug.cgi?id=39503

        Reviewed by Kenneth Rohde Christiansen.

        Added a regression test for placing the caret inside a block with multiple logical lines
        with an absolutely positioned last child. WebKit should place the caret on the left of the first line
        (instead of after the last line) when the user clicks on the left of the first line.

        * editing/selection/block-with-positioned-lastchild-expected.txt: Added.
        * editing/selection/block-with-positioned-lastchild.html: Added.

2011-09-19  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium Rebaselines for r95461.

        * platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-before-after-content-around-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-before-after-content-around-table-expected.png: Added.
        * platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
        * platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
        * platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
        * platform/chromium-mac/fast/table/table-row-before-after-content-around-block-expected.png: Added.
        * platform/chromium-mac/fast/table/table-row-before-after-content-around-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-before-after-content-around-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-before-after-content-around-table-expected.png: Added.

2011-09-19  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
        https://bugs.webkit.org/show_bug.cgi?id=68267
        Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.

        Reviewed by Adam Barth.

        * fast/frames/iframe-reparenting-embed-elements-expected.txt: Added.
        * fast/frames/iframe-reparenting-embed-elements.html: Added.
        * fast/frames/resources/iframe-reparenting-embed-frame1.html: Added.
        * fast/frames/resources/iframe-reparenting-embed-iframe.html: Added.

2011-09-19  Abhishek Arya  <inferno@chromium.org>

        Issues with merging ruby bases.
        https://bugs.webkit.org/show_bug.cgi?id=67240        

        Reviewed by James Robinson.

        ASSERTION FAILED: !needsLayout() in RenderRubyRun::getOverhang.

        * fast/ruby/ruby-overhang-crash-expected.txt: Added.
        * fast/ruby/ruby-overhang-crash.html: Added.

2011-09-16  Abhishek Arya  <inferno@chromium.org>

        Child not placed correctly when beforeChild (table part)
        has both :before, :after content.
        https://bugs.webkit.org/show_bug.cgi?id=67656

        Reviewed by James Robinson.

        * fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
        * fast/table/table-cell-before-after-content-around-table-block-expected.txt: Added.
        * fast/table/table-cell-before-after-content-around-table-block.html: Added.
        * fast/table/table-cell-before-after-content-around-table-expected.png: Added.
        * fast/table/table-cell-before-after-content-around-table-expected.txt: Added.
        * fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
        * fast/table/table-cell-before-after-content-around-table-row-expected.txt: Added.
        * fast/table/table-cell-before-after-content-around-table-row.html: Added.
        * fast/table/table-cell-before-after-content-around-table.html: Added.
        * fast/table/table-row-before-after-content-around-block-expected.png: Added.
        * fast/table/table-row-before-after-content-around-block-expected.txt: Added.
        * fast/table/table-row-before-after-content-around-block.html: Added.
        * fast/table/table-row-before-after-content-around-table-expected.png: Added.
        * fast/table/table-row-before-after-content-around-table-expected.txt: Added.
        * fast/table/table-row-before-after-content-around-table.html: Added.

2011-09-19  Tom Sepez  <tsepez@chromium.org>

        Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
        and the HTMLParser interact more closely with each other.  HTMLParser should be
        setting the end range for the token itself to account for buffering that the
        HTMLSourceTracker can't know about, but there are a lot of paths that would need
        updating. First step is to cover this one path.
        https://bugs.webkit.org/show_bug.cgi?id=68281

        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/resources/echo-intertag.pl:
        * http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html: Added.

2011-09-19  Dmitry Lomov  <dslomov@google.com>

        [Chromium] Rebaseline expectations and file WK68372. 

        * platform/chromium/test_expectations.txt:

2011-09-19  Dmitry Lomov  <dslomov@google.com>

	[Chromium] Rebaseline expectations due to r95402.

        * platform/chromium-win-vista/fast/dom/navigator-detached-no-crash-expected.txt: Removed.

2011-09-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed skip inspector/timeline/timeline-animation-frame.html on win platform.

        * platform/win/Skipped:

2011-09-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed fix for flaky tests.

        * inspector/timeline/timeline-dom-content-loaded-event-expected.txt:
        * inspector/timeline/timeline-dom-content-loaded-event.html:
        * inspector/timeline/timeline-load-event-expected.txt:
        * inspector/timeline/timeline-load-event.html:
        * platform/qt/Skipped:

2011-09-19  Zsolt Fehér  <feherzs@inf.u-szeged.hu>

        Unreviewed Qt gardening.
        https://bugs.webkit.org/show_bug.cgi?id=68360

        * platform/qt/Skipped:

2011-09-19  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] Add some pixel baselines.

        Unreviewed expectation update.

        These baselines was produced in the same environment where the
        Szeged WK2 bot runs. The validity of the results had been checked manually.

        * platform/qt-wk2/css1/box_properties/float_on_text_elements-expected.png: Added.
        * platform/qt-wk2/css2.1/t051202-c24-first-lttr-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t051202-c26-psudo-nest-00-c-expected.png: Added.
        * platform/qt-wk2/css2.1/t060401-c32-cascading-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t080301-c411-vt-mrgn-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5512-brdr-rw-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5514-brdr-lw-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5515-brdr-w-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5516-brdr-c-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5516-ibrdr-c-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5517-brdr-s-00-c-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5518-brdr-t-01-e-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5518-ibrdr-t-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5519-brdr-r-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5519-brdr-r-02-e-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5519-ibrdr-r-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5520-brdr-b-01-e-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5520-ibrdr-b-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5521-brdr-l-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5521-brdr-l-02-e-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5521-ibrdr-l-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5522-brdr-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t0805-c5522-ibrdr-00-a-expected.png: Added.
        * platform/qt-wk2/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.png: Added.
        * platform/qt-wk2/css2.1/t0905-c5525-fltmult-00-d-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t0905-c5525-fltwrap-00-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-00-d-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-01-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-ln-00-d-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-ln-01-d-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-ln-02-d-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c414-flt-ln-03-d-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c5525-flt-l-00-b-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t090501-c5525-flt-r-00-b-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t1002-c5523-width-02-b-g-expected.png: Added.
        * platform/qt-wk2/css2.1/t100801-c544-valgn-00-a-ag-expected.png: Added.
        * platform/qt-wk2/css2.1/t100801-c544-valgn-02-d-agi-expected.png: Added.
        * platform/qt-wk2/css2.1/t100801-c544-valgn-03-d-agi-expected.png: Added.
        * platform/qt-wk2/css2.1/t100801-c544-valgn-04-d-agi-expected.png: Added.
        * platform/qt-wk2/css2.1/t1202-counter-08-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t1202-counters-08-b-expected.png: Added.
        * platform/qt-wk2/css2.1/t1601-c547-indent-01-d-expected.png: Added.
        * platform/qt-wk2/css2.1/t1602-c546-txt-align-00-b-expected.png: Added.
        * platform/qt-wk2/css3/css3-modsel-33-expected.png: Added.
        * platform/qt-wk2/css3/css3-modsel-35-expected.png: Added.
        * platform/qt-wk2/fast/backgrounds/size/backgroundSize15-expected.png: Added.
        * platform/qt-wk2/fast/backgrounds/size/backgroundSize16-expected.png: Added.
        * platform/qt-wk2/fast/block/basic/014-expected.png: Added.
        * platform/qt-wk2/fast/block/basic/016-expected.png: Added.
        * platform/qt-wk2/fast/block/basic/white-space-pre-wraps-expected.png: Added.
        * platform/qt-wk2/fast/block/float/003-expected.png: Added.
        * platform/qt-wk2/fast/block/float/020-expected.png: Added.
        * platform/qt-wk2/fast/block/float/021-expected.png: Added.
        * platform/qt-wk2/fast/block/float/avoidance-percent-width-strict-expected.png: Added.
        * platform/qt-wk2/fast/block/float/nopaint-after-layer-destruction2-expected.png: Added.
        * platform/qt-wk2/fast/block/float/width-update-after-clear-expected.png: Added.
        * platform/qt-wk2/fast/block/margin-collapse/empty-clear-blocks-expected.png: Added.
        * platform/qt-wk2/fast/block/positioning/auto-height-with-top-and-bottom-expected.png: Added.
        * platform/qt-wk2/fast/block/positioning/auto/005-expected.png: Added.
        * platform/qt-wk2/fast/borders/block-mask-overlay-image-expected.png: Added.
        * platform/qt-wk2/fast/borders/border-fit-expected.png: Added.
        * platform/qt-wk2/fast/borders/border-image-scale-transform-expected.png: Added.
        * platform/qt-wk2/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/qt-wk2/fast/borders/rtl-border-01-expected.png: Added.
        * platform/qt-wk2/fast/borders/rtl-border-02-expected.png: Added.
        * platform/qt-wk2/fast/borders/rtl-border-03-expected.png: Added.
        * platform/qt-wk2/fast/box-shadow/basic-shadows-expected.png: Added.
        * platform/qt-wk2/fast/canvas/arc360-expected.png: Added.
        * platform/qt-wk2/fast/canvas/canvas-before-css-expected.png: Added.
        * platform/qt-wk2/fast/canvas/canvas-text-alignment-expected.png: Added.
        * platform/qt-wk2/fast/canvas/canvas-zoom-expected.png: Added.
        * platform/qt-wk2/fast/canvas/canvasDrawingIntoSelf-expected.png: Added.
        * platform/qt-wk2/fast/canvas/drawImage-expected.png: Added.
        * platform/qt-wk2/fast/canvas/drawImage-with-globalAlpha-expected.png: Added.
        * platform/qt-wk2/fast/canvas/fillrect-gradient-zero-stops-expected.png: Added.
        * platform/qt-wk2/fast/canvas/fillrect_gradient-expected.png: Added.
        * platform/qt-wk2/fast/canvas/image-object-in-canvas-expected.png: Added.
        * platform/qt-wk2/fast/canvas/patternfill-repeat-expected.png: Added.
        * platform/qt-wk2/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-1-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-2-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-3-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-4-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-5-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-6-expected.png: Added.
        * platform/qt-wk2/fast/canvas/shadow-offset-7-expected.png: Added.
        * platform/qt-wk2/fast/css-generated-content/012-expected.png: Added.
        * platform/qt-wk2/fast/css-generated-content/013-expected.png: Added.
        * platform/qt-wk2/fast/css-generated-content/after-duplicated-after-split-expected.png: Added.
        * platform/qt-wk2/fast/css-generated-content/after-order-expected.png: Added.
        * platform/qt-wk2/fast/css-generated-content/hover-style-change-expected.png: Added.
        * platform/qt-wk2/fast/css/004-expected.png: Added.
        * platform/qt-wk2/fast/css/005-expected.png: Added.
        * platform/qt-wk2/fast/css/MarqueeLayoutTest-expected.png: Added.
        * platform/qt-wk2/fast/css/ZeroOpacityLayers-expected.png: Added.
        * platform/qt-wk2/fast/css/ZeroOpacityLayers2-expected.png: Added.
        * platform/qt-wk2/fast/css/absolute-poition-in-rtl-parent-expected.png: Added.
        * platform/qt-wk2/fast/css/begin-end-contain-selector-empty-value-expected.png: Added.
        * platform/qt-wk2/fast/css/css1_forward_compatible_parsing-expected.png: Added.
        * platform/qt-wk2/fast/css/css3-modsel-22-expected.png: Added.
        * platform/qt-wk2/fast/css/css3-nth-child-expected.png: Added.
        * platform/qt-wk2/fast/css/first-letter-detach-expected.png: Added.
        * platform/qt-wk2/fast/css/first-letter-hover-expected.png: Added.
        * platform/qt-wk2/fast/css/font-face-implicit-local-font-expected.png: Added.
        * platform/qt-wk2/fast/css/hsl-color-expected.png: Added.
        * platform/qt-wk2/fast/css/inline-properties-important-expected.png: Added.
        * platform/qt-wk2/fast/css/invalidation-errors-2-expected.png: Added.
        * platform/qt-wk2/fast/css/invalidation-errors-expected.png: Added.
        * platform/qt-wk2/fast/css/non-standard-checkbox-size-expected.png: Added.
        * platform/qt-wk2/fast/css/outline-auto-location-expected.png: Added.
        * platform/qt-wk2/fast/css/selector-set-attribute-expected.png: Added.
        * platform/qt-wk2/fast/css/text-align-expected.png: Added.
        * platform/qt-wk2/fast/css/textCapitalizeEdgeCases-expected.png: Added.
        * platform/qt-wk2/fast/css/zoom-font-size-expected.png: Added.
        * platform/qt-wk2/fast/dom/HTMLHeadElement/head-link-style-href-check-expected.png: Added.
        * platform/qt-wk2/fast/dom/HTMLTableElement/colSpan-expected.png: Added.
        * platform/qt-wk2/fast/dom/HTMLTableElement/createCaption-expected.png: Added.
        * platform/qt-wk2/fast/dom/children-nodes-expected.png: Added.
        * platform/qt-wk2/fast/dom/clone-node-dynamic-style-expected.png: Added.
        * platform/qt-wk2/fast/dom/css-rule-functions-expected.png: Added.
        * platform/qt-wk2/fast/dynamic/insert-before-table-part-in-continuation-expected.png: Added.
        * platform/qt-wk2/fast/dynamic/selection-highlight-adjust-expected.png: Added.
        * platform/qt-wk2/fast/dynamic/staticY-marking-parents-regression-expected.png: Added.
        * platform/qt-wk2/fast/forms/basic-selects-expected.png: Added.
        * platform/qt-wk2/fast/forms/basic-textareas-quirks-expected.png: Added.
        * platform/qt-wk2/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/qt-wk2/fast/forms/minWidthPercent-expected.png: Added.
        * platform/qt-wk2/fast/frames/frame-scrolling-attribute-expected.png: Added.
        * platform/qt-wk2/fast/gradients/radial-centered-expected.png: Added.
        * platform/qt-wk2/fast/html/details-writing-mode-expected.png: Added.
        * platform/qt-wk2/fast/inline/continuation-outlines-expected.png: Added.
        * platform/qt-wk2/fast/inline/continuation-outlines-with-layers-expected.png: Added.
        * platform/qt-wk2/fast/lists/001-vertical-expected.png: Added.
        * platform/qt-wk2/fast/lists/007-vertical-expected.png: Added.
        * platform/qt-wk2/fast/lists/008-vertical-expected.png: Added.
        * platform/qt-wk2/fast/media/mq-relative-constraints-08-expected.png: Added.
        * platform/qt-wk2/fast/multicol/client-rects-expected.png: Added.
        * platform/qt-wk2/fast/multicol/column-break-with-balancing-expected.png: Added.
        * platform/qt-wk2/fast/multicol/float-multicol-expected.png: Added.
        * platform/qt-wk2/fast/multicol/float-paginate-complex-expected.png: Added.
        * platform/qt-wk2/fast/multicol/float-paginate-expected.png: Added.
        * platform/qt-wk2/fast/multicol/layers-split-across-columns-expected.png: Added.
        * platform/qt-wk2/fast/multicol/margin-collapse-expected.png: Added.
        * platform/qt-wk2/fast/multicol/max-height-columns-block-expected.png: Added.
        * platform/qt-wk2/fast/multicol/nested-columns-expected.png: Added.
        * platform/qt-wk2/fast/multicol/paginate-block-replaced-expected.png: Added.
        * platform/qt-wk2/fast/multicol/positioned-with-constrained-height-expected.png: Added.
        * platform/qt-wk2/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/anonymous-before-child-parent-crash-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/anonymous-style-inheritance-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-child-generated-content-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-child-property-removal-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-columns-child-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-as-nested-columns-child-expected.png: Added.
        * platform/qt-wk2/fast/multicol/span/span-margin-collapsing-expected.png: Added.
        * platform/qt-wk2/fast/multicol/table-margin-collapse-expected.png: Added.
        * platform/qt-wk2/fast/multicol/table-vertical-align-expected.png: Added.
        * platform/qt-wk2/fast/multicol/unsplittable-inline-block-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/column-break-with-balancing-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/column-rules-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/float-avoidance-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/float-multicol-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/float-paginate-complex-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/float-paginate-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/nested-columns-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-lr/unsplittable-inline-block-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/column-break-with-balancing-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/column-rules-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/float-avoidance-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/float-multicol-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/float-paginate-complex-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/float-paginate-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/nested-columns-expected.png: Added.
        * platform/qt-wk2/fast/multicol/vertical-rl/unsplittable-inline-block-expected.png: Added.
        * platform/qt-wk2/fast/overflow/line-clamp-expected.png: Added.
        * platform/qt-wk2/fast/overflow/overflow-rtl-vertical-expected.png: Added.
        * platform/qt-wk2/fast/overflow/table-overflow-float-expected.png: Added.
        * platform/qt-wk2/fast/reflections/opacity-reflection-transform-expected.png: Added.
        * platform/qt-wk2/fast/repaint/bugzilla-6278-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-1-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-10-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-2-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-3-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-4-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-5-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-6-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-7-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-8-expected.png: Added.
        * platform/qt-wk2/fast/repaint/line-flow-with-floats-9-expected.png: Added.
        * platform/qt-wk2/fast/repaint/multicol-repaint-expected.png: Added.
        * platform/qt-wk2/fast/repaint/outline-repaint-glitch-expected.png: Added.
        * platform/qt-wk2/fast/repaint/selected-replaced-expected.png: Added.
        * platform/qt-wk2/fast/repaint/selection-gap-overflow-scroll-2-expected.png: Added.
        * platform/qt-wk2/fast/repaint/stacked-diacritics-expected.png: Added.
        * platform/qt-wk2/fast/repaint/text-append-dirty-lines-expected.png: Added.
        * platform/qt-wk2/fast/replaced/001-expected.png: Added.
        * platform/qt-wk2/fast/replaced/002-expected.png: Added.
        * platform/qt-wk2/fast/replaced/003-expected.png: Added.
        * platform/qt-wk2/fast/replaced/005-expected.png: Added.
        * platform/qt-wk2/fast/replaced/absolute-image-sizing-expected.png: Added.

2011-09-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: extend UI perf tests coverage. Elements Panel.
        https://bugs.webkit.org/show_bug.cgi?id=68263

        Reviewed by Pavel Feldman.

        * inspector/performance/resources/show-panel-elements.html: Added.

2011-09-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
        https://bugs.webkit.org/show_bug.cgi?id=67528

        Reviewed by Pavel Feldman.

        * inspector/timeline/timeline-animation-frame.html:
        * inspector/timeline/timeline-dom-content-loaded-event-expected.txt: Added.
        * inspector/timeline/timeline-dom-content-loaded-event.html: Added.
        * inspector/timeline/timeline-load-event-expected.txt: Added.
        * inspector/timeline/timeline-load-event.html: Added.
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.waitForRecordType.addRecord):
        (initialize_Timeline.InspectorTest.waitForRecordType):

2011-09-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt: Updated.
        * platform/qt-mac/Skipped: Skip new failing tests to paint the bot green.

2011-09-19  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>

        [Qt] [ARMv5] fast/events/media-element-focus-tab.html fast/spatial-navigation/snav-media-elements.html fail
        https://bugs.webkit.org/show_bug.cgi?id=68341

        * platform/qt-arm/Skipped: Skip the failing tests

2011-09-18  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
        https://bugs.webkit.org/show_bug.cgi?id=67986

        Reviewed by Pavel Feldman.

        * inspector/timeline/timeline-animation-frame-expected.txt: Added.
        * inspector/timeline/timeline-animation-frame.html: Added.
        * inspector/timeline/timeline-enum-stability-expected.txt:
        * platform/chromium/inspector/timeline/timeline-enum-stability-expected.txt:
        * platform/qt/Skipped: inspector/timeline/timeline-animation-frame.html was added to the skip list.
        * inspector/timeline/timeline-test.js:

2011-09-18  James Kozianski  <koz@chromium.org>

        Rebaseline navigator test for chromium-win-vista.
        https://bugs.webkit.org/show_bug.cgi?id=68334

        Unreviewed. Rebaseline for navigator-detached-no-crash.

        * platform/chromium-win-vista/fast/dom/navigator-detached-no-crash-expected.txt: Added.

2011-09-18  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
        https://bugs.webkit.org/show_bug.cgi?id=68287

        Reviewed by Dave Hyatt.

        * platform/mac/fast/text/combining-character-sequence-fallback.html: Added.
        * platform/mac/platform/mac/fast/text/combining-character-sequence-fallback-expected.png: Added.
        * platform/mac/platform/mac/fast/text/combining-character-sequence-fallback-expected.txt: Added.

2011-09-18  Dan Bernstein  <mitz@apple.com>

        Updated expected results for two tests after r95362.

        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:

2011-09-17  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68307
        
        Crash in border image cssText. Make sure to null check all the components, since they're all
        optional now.

        Reviewed by Sam Weinig.

        * fast/borders/border-image-slice-omission.html: Added.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] fast/events/media-element-focus-tab.html fails
        https://bugs.webkit.org/show_bug.cgi?id=68315

        * platform/qt-wk2/Skipped: Skip fast/events/media-element-focus-tab.html until fix.

2011-09-17  Deepak Sherveghar  <bpwv64@motorola.com>

        Override supportsFocus() for HTMLMediaElement.
        https://bugs.webkit.org/show_bug.cgi?id=67190

        Reviewed by Antonio Gomes.

        For media elements be able to receive focus without tabindex if
        control attribute is present, hence changed
        tabindex-focus-blur-all.js and tabindex-focus-blur-all-expected.txt.

        * fast/events/media-element-focus-tab-expected.txt: Added.
        * fast/events/media-element-focus-tab.html: Added.
        * fast/events/resources/tabindex-focus-blur-all.js:
        (test):
        * fast/events/tabindex-focus-blur-all-expected.txt:
        * fast/spatial-navigation/snav-media-elements-expected.txt: Added.
        * fast/spatial-navigation/snav-media-elements.html: Added.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-4.8/editing/deleting/merge-whitespace-pre-expected.txt: Update after r95335.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Unreviewed gardening after r95337.

        * platform/qt-wk2/Skipped: Skip one more test.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] fast/forms/submit-to-blank-multiple-times.html fails
        https://bugs.webkit.org/show_bug.cgi?id=68309

        * platform/qt-wk2/Skipped: Skip fast/forms/submit-to-blank-multiple-times.html.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Unreviewed gardening after r95335.

        * platform/qt-wk2/Skipped: Skip new failing tests.

2011-09-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Skip plugins/fullscreen-plugins-dont-reload.html, because ENABLE(FULLSCREEN_API) is disabled on Qt.
        * platform/qt/fast/dom/Window/window-properties-expected.png: Updated after r95362.
        * platform/qt/fast/dom/Window/window-properties-expected.txt: Updated after r95362.
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.png: Updated after r95362.
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt: Updated after r95362.

2011-09-16  Jeremy Apthorp <jeremya@chromium.org> and James Kozianski  <koz@chromium.org>

        Don't detach elements from the render tree when entering fullscreen mode
        https://bugs.webkit.org/show_bug.cgi?id=66531

        Test that the plugin is not reloaded when entering fullscreen.

        Reviewed by James Robinson.

        * plugins/fullscreen-plugins-dont-reload-expected.txt: Added.
        * plugins/fullscreen-plugins-dont-reload.html: Added.

2011-09-16  Jochen Eisinger  <jochen@chromium.org>

        Add tests for FrameLoaderClient::allowImage.
        https://bugs.webkit.org/show_bug.cgi?id=68071

        Reviewed by Adam Barth.

        * http/tests/permissionclient/resources/bostin.gif:
        * http/tests/permissionclient/resources/redir.php:
        * platform/chromium/permissionclient/image-permissions-expected.txt:
        * platform/chromium/permissionclient/image-permissions.html:
        * platform/http/tests/permissionclient/image-permissions-expected.txt:
        * platform/http/tests/permissionclient/image-permissions.html:

2011-09-16  Tom Sepez  <tsepez@chromium.org>

        Make XSSAuditor truncate inline snippets at a reasonable length before comparison
        respecting boundaries of multiply urlencoded sequences.
        https://bugs.webkit.org/show_bug.cgi?id=68092
        
        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/property-escape-long-expected.txt: Added.
        * http/tests/security/xssAuditor/property-escape-long.html: Added.

2011-09-16  Dmitry Lomov  <dslomov@google.com>

        https://bugs.webkit.org/show_bug.cgi?id=66714
        Add webkitPostMessage to allow for adding transferable support.
        This adds webkitPostMessage, currently identical to postMessage, which 
        would later be a vehicle for adding transferable support for messaging.
        The tests ensure that webkitPostMessage and postMessage behave identically.

        Based on patch by Luke Zarko.

        Reviewed by David Levin.

        * fast/dom/Window/window-postmessage-args-expected.txt:
        * fast/dom/Window/window-postmessage-args.html:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/events/message-port-expected.txt:
        * fast/events/message-port.html:
        * fast/workers/resources/worker-call.js:
        * fast/workers/worker-call-expected.txt:
        * platform/chromium/fast/dom/Window/window-postmessage-args-expected.txt:

2011-09-16  Alexei Svitkine  <asvitkine@chromium.org>

        Chromium: Fix repaint of rubber-band overhang area under composited path
        https://bugs.webkit.org/show_bug.cgi?id=68246

        I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969

        Reviewed by James Robinson.

        Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html

        * platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change-expected.png: Added.
        * platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change-expected.txt: Added.
        * platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html: Added.

2011-09-16  Tony Chang  <tony@chromium.org>

        Rename flex-align values to match the spec
        https://bugs.webkit.org/show_bug.cgi?id=67741

        Reviewed by Ojan Vafai.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/script-tests/css-properties.js:

2011-09-16  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium pixel test rebaseline for r95335.

        * platform/chromium-cg-mac-leopard/editing/deleting/merge-whitespace-pre-expected.png: Added.
        * platform/chromium-linux/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-mac/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium-win-vista/editing: Removed.
        * platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-16  Kentaro Hara  <haraken@chromium.org>

        Implement an ErrorEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=68148

        Reviewed by Sam Weinig.

        error-event-constructor.html checks the behavior of the ErrorEvent constructor.

        * fast/dom/constructed-objects-prototypes-expected.txt: Now window has ErrorEvent.
        * fast/events/constructors/error-event-constructor-expected.txt: Added.
        * fast/events/constructors/error-event-constructor.html: Added.
        * platform/chromium/test_expectations.txt: Skipped error-event-constructor.html, since V8 does not yet have the ErrorEvent constructor.

2011-09-16  Adam Barth  <abarth@webkit.org>

        CORS images viewed from different domains fail security checks
        https://bugs.webkit.org/show_bug.cgi?id=68011

        Reviewed by Darin Adler.

        I am unable to reproduce the bug, but the test I wrote in the process
        might be worth having anyway.

        * http/tests/security/canvas-cors-with-two-hosts-expected.txt: Added.
        * http/tests/security/canvas-cors-with-two-hosts.html: Added.
        * http/tests/security/resources/canvas-cors-subtest.html: Added.

2011-09-16  Kentaro Hara  <haraken@google.com>

        Overhangs a ruby by no more than half the width of the neighboring text.
        https://bugs.webkit.org/show_bug.cgi?id=62684

        Reviewed by Dan Bernstein.

        Assume two rubies between which a narrow text exists, like
        "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
        In order to avoid the two rubies overlapping with each other,
        this patch overhangs the ruby by no more than half the ruby font
        size and no more than half the width of the neighboring text.

        * fast/ruby/overhang-horizontal-no-overlap1-expected.png: Added.
        * fast/ruby/overhang-horizontal-no-overlap1-expected.txt: Added.
        * fast/ruby/overhang-horizontal-no-overlap1.html: Added. Tests if two rubies do not overlap with each other when a narrow text exists between the two rubies. Split into two test files in order to fit each test result within one page.
        * fast/ruby/overhang-horizontal-no-overlap2-expected.png: Added.
        * fast/ruby/overhang-horizontal-no-overlap2-expected.txt: Added.
        * fast/ruby/overhang-horizontal-no-overlap2.html: Added. Tests if two rubies do not overlap with each other when a narrow text exists between the two rubies. Split into two test files in order to fit each test result within one page.
        * fast/ruby/overhang-vertical-no-overlap1-expected.png: Added.
        * fast/ruby/overhang-vertical-no-overlap1-expected.txt: Added.
        * fast/ruby/overhang-vertical-no-overlap1.html: Added. Tests if two rubies do not overlap with each other when a narrow text exists between the two rubies. Split into two test files in order to fit each test result within one page.
        * fast/ruby/overhang-vertical-no-overlap2-expected.png: Added.
        * fast/ruby/overhang-vertical-no-overlap2-expected.txt: Added.
        * fast/ruby/overhang-vertical-no-overlap2.html: Added. Tests if two rubies do not overlap with each other when a narrow text exists between the two rubies. Split into two test files in order to fit each test result within one page.
        * platform/chromium-linux/fast/ruby/overhang-vertical-expected.png: Removed.
        * platform/chromium-win/fast/ruby/overhang-horizontal-expected.png: Removed.
        * platform/chromium/test_expectations.txt: Skips overhang-horizontal.html.  We will update the result image as a rebase line.

2011-09-16  Ben Wells  <benwells@chromium.org>

        Large canvas fills should not crash or create unnecessarily large image buffers
        https://bugs.webkit.org/show_bug.cgi?id=67988

        Reviewed by Darin Adler.

        * fast/canvas/canvas-large-fills-expected.txt: Added.
        * fast/canvas/canvas-large-fills.html: Added.

2011-09-16  Ryosuke Niwa  <rniwa@webkit.org>

        Fix the rebaseline in r95325 and also rebaseline for r95335.

        * inspector/styles/styles-update-from-js-expected.txt:
        * platform/chromium/test_expectations.txt
        * platform/chromium-win/editing/deleting/merge-whitespace-pre-expected.txt:
        * platform/qt/editing/deleting/merge-whitespace-pre-expected.txt:

2011-09-16  Gavin Barraclough  <barraclough@apple.com>

        Unsigned bit shift fails under certain conditions in 32 bit builds
        https://bugs.webkit.org/show_bug.cgi?id=68166

        Reviewed by Geoff Garen.

        Added layout test.

        * fast/js/floating-point-truncate-rshift-expected.txt:
        * fast/js/floating-point-truncate-rshift.html:

2011-09-16  Ryosuke Niwa  <rniwa@webkit.org>

        Add the forgotten test, also suppress a test in Chromium as it needs a rebaseline.

        * platform/chromium/test_expectations.txt:
        * editing/deleting/merge-paragraph-into-blockquote-expected.txt: Added.
        * editing/deleting/merge-paragraph-into-blockquote.html: Added.

2011-09-14  Ryosuke Niwa  <rniwa@webkit.org>

        Deleting line break before h1 converts h1 to span
        https://bugs.webkit.org/show_bug.cgi?id=45784

        Reviewed by Kenneth Rohde Christiansen.

        Added a bunch of tests to ensure WebKit does not keep block elements' style when merging paragraphs.
        When removing line breaks between <h1>hello</h1>world and hello<pre>world</pre> for example,
        we should not be overriding and preserving styles from h1 in the merge paragraph respectively.

        * editing/deleting/merge-paragraph-from-address-expected.txt: Added.
        * editing/deleting/merge-paragraph-from-address.html: Added.
        * editing/deleting/merge-paragraph-from-h6-expected.txt: Added.
        * editing/deleting/merge-paragraph-from-h6-with-style-expected.txt: Added.
        * editing/deleting/merge-paragraph-from-h6-with-style.html: Added.
        * editing/deleting/merge-paragraph-from-h6.html: Added.
        * editing/deleting/merge-paragraph-from-listing-expected.txt: Added.
        * editing/deleting/merge-paragraph-from-listing.html: Added.
        * editing/deleting/merge-paragraph-into-h1-expected.txt: Added.
        * editing/deleting/merge-paragraph-into-h1-style-expected.txt: Added.
        * editing/deleting/merge-paragraph-into-h1-with-style-expected.txt: Added.
        * editing/deleting/merge-paragraph-into-h1-with-style.html: Added.
        * editing/deleting/merge-paragraph-into-h1.html: Added.
        * editing/deleting/merge-paragraph-into-pre-expected.txt: Added.
        * editing/deleting/merge-paragraph-into-pre.html: Added.
        * platform/mac/editing/deleting/merge-whitespace-pre-expected.png:
        * platform/mac/editing/deleting/merge-whitespace-pre-expected.txt:

2011-09-16  David Levin  <levin@chromium.org>

       [chromium] Rebaseline fix up due to r95239.

        Add back in a baseline that was removed in my last change.

        * platform/chromium-cg-mac-leopard/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-09-16  David Levin  <levin@chromium.org>

       [chromium] Rebaseline fix up due to r95239.

       Expectation removal due to r95322 and r95325.

        * platform/chromium-cg-mac-leopard/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/chromium-cg-mac/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/chromium-cg-mac/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/chromium-cg-mac/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-linux/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/chromium-linux/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/chromium-linux/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/chromium-linux/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-mac/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/chromium-mac/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/chromium-mac/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/chromium-mac/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-win/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-composited-expected.txt: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/chromium-win/fast/clip/overflow-border-radius-transformed-expected.txt: Added.
        * platform/chromium-win/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-16  Geoffrey Garen  <ggaren@apple.com>

        Removed undetectable style.filter.

        Reviewed by Sam Weinig.
        
        This feature was added in http://trac.webkit.org/changeset/15557 to
        support housingmaps.com. But housingmaps.com no longer needs this hack,
        we don't know of other websites that need it, and we don't know of
        any other browsers that have implemented this feature.

        * fast/dom/undetectable-style-filter-expected.txt: Removed.
        * fast/dom/undetectable-style-filter.html: Removed.

2011-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95317.
        http://trac.webkit.org/changeset/95317
        https://bugs.webkit.org/show_bug.cgi?id=68282

        Remove newly added overlapping test expectations. (Requested
        by dave_levin on #webkit).

        * platform/chromium/test_expectations.txt:

2011-09-16  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaseline after r95242.

        * inspector/styles/styles-update-from-js-expected.txt:

2011-09-16  Sam Weinig  <sam@webkit.org>

        Replace use of access to nodeList using call, with array style notation.

        * editing/pasteboard/paste-noscript.html:

2011-09-16  Mihai Parparita  <mihaip@chromium.org>

        http/tests/history/back-with-fragment-change.php fails on non-Chromium bots
        https://bugs.webkit.org/show_bug.cgi?id=68242

        Skip test on ports on which it fails. Move comment to be inside
        <?php> block so that HTTP headers can be set on all platforms (there
        must not be any whitespace before the <?php> block).

        * http/tests/history/back-with-fragment-change.php:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:

2011-09-16  Cary Clark  <caryclark@google.com>
        Unreviewed; new expectations (Skia on Mac)
        
        This separates test failures that are specific to CG Mac from failures
        for Skia on Mac (Leopard only).

        * LayoutTests/platform/chromium/test_expectations.txt:

2011-09-16  James Simonsen  <simonjam@chromium.org>

        Fix HTML5 parser's adoption agency algorithm to reparent correctly
        https://bugs.webkit.org/show_bug.cgi?id=68147

        Reviewed by Eric Seidel.

        * html5lib/resources/webkit02.dat:

2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION(r95091) It made many tests flakey
        https://bugs.webkit.org/show_bug.cgi?id=68232

        Unreviewed rolling out r95091 and followup patches.

        * inspector/timeline/timeline-animation-frame-expected.txt: Removed.
        * inspector/timeline/timeline-animation-frame.html: Removed.
        * inspector/timeline/timeline-enum-stability-expected.txt:
        * inspector/timeline/timeline-test.js:
        * platform/chromium/inspector/timeline/timeline-animation-frame-expected.txt: Removed.
        * platform/qt/Skipped:
        * platform/qt/test_expectations.txt:

2011-09-16  Abhishek Arya  <inferno@chromium.org>

        cachedFont not getting updated for inline SVG text.
        https://bugs.webkit.org/show_bug.cgi?id=68060

        Reviewed by Nikolas Zimmermann.

        * svg/text/text-style-recalc-crash-expected.txt: Added.
        * svg/text/text-style-recalc-crash.html: Added.

2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed rolling out r95277.

        * platform/qt/Skipped:

2011-09-16  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: UI performance tests are required.
        https://bugs.webkit.org/show_bug.cgi?id=68234

        The idea is to create a set of tests which cover frequently used UI actions
        and print the average time of these actions.
        There are two pilot tests. The common part was extracted into performance-test helper.

        Reviewed by Pavel Feldman.

        * inspector/performance/resources/network-append-30-requests.html: Added.
        * inspector/performance/resources/performance-test.js: Added.
        (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer):
        (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.start):
        (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.finish):
        (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype.done):
        (initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._runTest):
        * inspector/performance/resources/show-panel-network.html: Added.

2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Skip a flakey test.

        * platform/qt/Skipped:

2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add Qt specific expexted results for new tests introduced in r95239.

        * platform/qt/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/qt/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
        * platform/qt/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/qt/fast/clip/overflow-border-radius-composited-expected.txt: Added.
        * platform/qt/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/qt/fast/clip/overflow-border-radius-transformed-expected.txt: Added.

2011-09-16  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed test fix for r95287.

        * inspector/debugger/debugger-expand-scope.html:

2011-09-16  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: change WebInspector.currentPanel getter/setter to functions.
        https://bugs.webkit.org/show_bug.cgi?id=68242

        This is necessary for the panel switching performance tests.

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resource-tree/resource-tree-test.js:
        (initialize_ResourceTreeTest.InspectorTest.dumpResourcesTree):
        * inspector/debugger/debugger-expand-scope.html:
        * inspector/debugger/debugger-proto-property.html:
        * inspector/storage-panel-dom-storage.html:

2011-09-16  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] bot lucks mobility
        https://bugs.webkit.org/show_bug.cgi?id=68243

        Unreviwed test skipping.

        * platform/qt-wk2/Skipped:

2011-09-15  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
        https://bugs.webkit.org/show_bug.cgi?id=68165

        Reviewed by Yury Semikhatsky.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-09-16  Keishi Hattori  <keishi@webkit.org>

        [chromium] Rebaselines due to r95203 and r95207.

        * platform/chromium-cg-mac-leopard/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-16  Renata Hodovan  <reni@webkit.org>

        [Qt] Update expecteds of failing tests after r95260 and r95242.

        Unreviewed gardening.

        * editing/style/non-inheritable-styles-expected.txt: after r95242.
        * fast/dom/constructed-objects-prototypes-expected.txt: after r95260.
        * inspector/styles/styles-new-API-expected.txt: after r95242.
        * inspector/styles/styles-source-lines-expected.txt: after r95242.

2011-09-16  Renata Hodovan  <reni@webkit.org>

        [Qt] One test failed after r95203
        https://bugs.webkit.org/show_bug.cgi?id=68233

        Unreviewed gardening.

        * platform/qt/Skipped: failed test is skipped.

2011-09-16  Renata Hodovan  <reni@webkit.org>

        [Qt] One test runs out of time after r95091
        https://bugs.webkit.org/show_bug.cgi?id=68232

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-09-16  Renata Hodovan  <reni@webkit.org>

        [Qt] Two tests fail after r95201
        https://bugs.webkit.org/show_bug.cgi?id=68230

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-09-16  Leo Yang  <leo.yang@torchmobile.com.cn>

        [Qt] Crash when dragging google maps.
        https://bugs.webkit.org/show_bug.cgi?id=68223

        Test case to use an unready custom cursor.

        Reviewed by Adam Barth.

        * fast/css/crash-on-custom-cursor-when-loading-expected.txt: Added.
        * fast/css/crash-on-custom-cursor-when-loading.html: Added.

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] Add slow to calculate-percentage.html

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] add timeout to test expectation of styles-source-lines.html

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] add timeout to test expectation of styles-new-API.html

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95264

        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] added fail expectation for back-with-fragment-change.php

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] adding text_expectation for zoom-svg-through-object-with-percentage-size.xhtml

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] adding fail to test_expectations due to r95188

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] add crash to test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-09-15  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] Regions should not slice line box rendering
        https://bugs.webkit.org/show_bug.cgi?id=66198

        Also updated the results for some older tests that now work correctly.

        Reviewed by David Hyatt.

        * fast/regions/resources/helper.js:
        (isDebugEnabled):
        (assertEqualRects):
        (testBoundingRects):
        (assertRectContains):
        (addPageLevelDebugBox):
        (testContentToRegionsMapping):
        * fast/regions/text-region-breaks-expected.txt: Added.
        * fast/regions/text-region-breaks.html: Added.
        * fast/regions/text-region-split-expected.txt: Added.
        * fast/regions/text-region-split-horizontal-bt-expected.txt: Added.
        * fast/regions/text-region-split-horizontal-bt.html: Added.
        * fast/regions/text-region-split-vertical-expected.txt: Added.
        * fast/regions/text-region-split-vertical-rl-expected.txt: Added.
        * fast/regions/text-region-split-vertical-rl.html: Added.
        * fast/regions/text-region-split-vertical.html: Added.
        * fast/regions/text-region-split.html: Added.
        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt:
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt:
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt:
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt:
        * fast/repaint/japanese-rl-selection-repaint-in-regions.html:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95239

        * platform/chromium-cg-mac-leopard/fast/forms/menulist-option-wrap-expected.png:
        * platform/chromium-cg-mac/fast/forms/menulist-option-wrap-expected.png:
        * platform/chromium-mac/fast/forms/menulist-option-wrap-expected.png:

2011-09-15  Kentaro Hara  <haraken@google.com>

        Implement a PopStateEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=67977

        Reviewed by Sam Weinig.

        pop-state-event-constructor.html checks the behavior of the PopStateEvent constructor.

        * fast/events/constructors/pop-state-event-constructor-expected.txt: Added.
        * fast/events/constructors/pop-state-event-constructor.html: Added.
        * platform/chromium/test_expectations.txt: Skipped pop-state-event-constructor.html, since V8 does not yet have the PopStateEvent constructor.

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] remove duplicate entries in test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-09-15  Mihai Parparita  <mihaip@chromium.org>

        Fragment navigations should interrupt a provisional load of a different document
        https://bugs.webkit.org/show_bug.cgi?id=64556

        Reviewed by Adam Barth.

        Required page-dismissal-modal-dialogs-iframe.html to be updated since
        the dummy <a href="#"> link was clicked after the provisional load was
        kicked off, thus causing it to to be aborted.

        * fast/loader/page-dismissal-modal-dialogs.html:
        * fast/loader/resources/page-dismissal-modal-dialogs-iframe.html:
        * http/tests/history/back-with-fragment-change-expected.txt: Added.
        * http/tests/history/back-with-fragment-change.php: Added.
        * http/tests/history/resources/back-with-fragment-change-target.html: Added.
        * http/tests/navigation/navigation-interrupted-by-fragment-expected.txt: Added.
        * http/tests/navigation/navigation-interrupted-by-fragment.html: Added.

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] skipping tests due to r95188

        * platform/chromium/test_expectations.txt:

2011-09-15  Kentaro Hara  <haraken@google.com>

        A single line must not be split into two pages.
        https://bugs.webkit.org/show_bug.cgi?id=65005

        Reviewed by David Hyatt.

        When the document width of a page is overflowed, the last line of the page can be
        split into the next page. This is the regression caused by r88737. r88737 tried to
        fix rounding errors in rendering calculations by expanding and shrinking a page
        using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
        a document width gets overflowed.

        The added test checks if the last line does not split across pages.

        * platform/chromium/test_expectations.txt: Skipped the added test since setPrinting() is not yet implemented.
        * platform/gtk/Skipped: Ditto.
        * platform/mac/printing/single-line-must-not-be-split-into-two-pages-expected.txt: Added.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.
        * platform/wk2/Skipped: Ditto.
        * printing/single-line-must-not-be-split-into-two-pages.html: Added.

2011-09-15  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=27579
        
        Make sure that the border shorthand also resets border-image.

        Reviewed by Beth Dakin.

        * fast/borders/border-image-reset-by-border-shorthand-expected.txt: Added.
        * fast/borders/border-image-reset-by-border-shorthand.html: Added.
        * fast/borders/border-image-scaled-gradient.html:

2011-09-15  David Levin  <levin@chromium.org>

        [chromium] Rebaselines due to r95203 and r95207.

        Also misc test_expectations additions.

        * platform/chromium-cg-mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
        * platform/chromium-linux/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
        * platform/chromium-win/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
        * platform/chromium/fast/dom/NodeList/nodelist-item-call-as-function-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-15  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=50072
        
        Make overflow clipping to border-radius work across layers. This patch makes painting
        work but does not attempt to fix hit testing. It also doesn't work when a composited
        layer is clipped by a non-composited ancestor.

        Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
        a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
        as also being clipped by a radius, then we walk up the layer tree and push those inner border
        rounded rect clips for any overflow areas in the containing block chain.

        Reviewed by Beth Dakin.

        * fast/clip/overflow-border-radius-combinations.html: Added.
        * fast/clip/overflow-border-radius-composited.html: Added.
        * fast/clip/overflow-border-radius-transformed.html: Added.
        * platform/mac/fast/clip/overflow-border-radius-combinations-expected.png: Added.
        * platform/mac/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
        * platform/mac/fast/clip/overflow-border-radius-composited-expected.png: Added.
        * platform/mac/fast/clip/overflow-border-radius-composited-expected.txt: Added.
        * platform/mac/fast/clip/overflow-border-radius-transformed-expected.png: Added.
        * platform/mac/fast/clip/overflow-border-radius-transformed-expected.txt: Added.

2011-09-15  Julien Chaffraix  <jchaffraix@webkit.org>

        Test for: Crash in RenderBox::paintMaskImages due to a mask without an associated image
        https://bugs.webkit.org/show_bug.cgi?id=50151

        Reviewed by Simon Fraser.

        * fast/css/empty-webkit-mask-crash-expected.png: Added.
        * fast/css/empty-webkit-mask-crash-expected.txt: Added.
        * fast/css/empty-webkit-mask-crash.html: Added.

2011-09-15  Andy Estes  <aestes@apple.com>

        Having an empty listener to beforeload events changes the behavior of other scripts
        https://bugs.webkit.org/show_bug.cgi?id=45586

        Reviewed by Darin Adler.

        * fast/dom/beforeload/cached-image-before-load-expected.txt: Added.
        * fast/dom/beforeload/cached-image-before-load.html: Added.

2011-09-15  Jon Lee  <jonlee@apple.com>

        Submitting a form with target=_blank works only once
        https://bugs.webkit.org/show_bug.cgi?id=28633
        <rdar://problem/7357787>

        Reviewed by Andy Estes.

        New test that simulates mouse clicking submit button twice (which didn't work), as well as using the keyboard twice (which did work).

        * fast/forms/resources/submit-to-blank-multiple-times-form-action.html: Added.
        * fast/forms/submit-to-blank-multiple-times-expected.txt: Added.
        * fast/forms/submit-to-blank-multiple-times.html: Added.

2011-09-15  David Levin  <levin@chromium.org>

        [chromium] Add missing GPU-CG to one of the expectations.

        * platform/chromium/test_expectations.txt:

2011-09-15  Peter Rybin  <peter.rybin@gmail.com>

        XMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
        https://bugs.webkit.org/show_bug.cgi?id=63540

        Bug is fixed, incorrect test expectations are properly fixed (line
        number '0' is reported no more).

        Reviewed by Adam Barth.

        * fast/parser/changing-attrbutes-crash-expected.txt:
        * html5lib/runner-expected.txt:
        * platform/chromium/html5lib/runner-expected.txt:
        * svg/custom/invalid-length-units-expected.txt:
        * svg/custom/poly-parsing-error-expected.txt:
        * svg/custom/svg-parse-overflow-1-expected.txt:
        * svg/custom/svg-parse-overflow-2-expected.txt:
        * svg/custom/svg-parse-overflow-3-expected.txt:
        * svg/custom/svg-parse-overflow-4-expected.txt:
        * svg/custom/svg-parse-overflow-5-expected.txt:
        * svg/dom/fuzz-path-parser-expected.txt:
        * svg/dom/path-parser-expected.txt:
        * svg/dom/points-parser-expected.txt:

2011-09-15  Matthew Delaney  <mdelaney@apple.com>

        REGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
        https://bugs.webkit.org/show_bug.cgi?id=68041

        Reviewed by Dan Bernstein.

        * fast/box-shadow/no-blur-multiple-offsets-expected.txt: Added.
        * fast/box-shadow/no-blur-multiple-offsets.html: Added.
        * platform/mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.

2011-09-15  James Simonsen  <simonjam@chromium.org>

        Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
        https://bugs.webkit.org/show_bug.cgi?id=68014

        Reviewed by Adam Barth.

        * plugins/destroy-during-npp-new-object-with-fallback-content-expected.txt: Added.
        * plugins/destroy-during-npp-new-object-with-fallback-content.html: Added. Derivative of destroy-during-npp-new.html.

2011-09-14  Sam Weinig  <sam@webkit.org>

        Experiment with removing ability to call a collection (except document.all)
        https://bugs.webkit.org/show_bug.cgi?id=67579

        Reviewed by Anders Carlsson.

        * fast/dom/Element/id-in-formcollection-expected.txt:
        * fast/dom/Element/id-in-formcollection.html:
        * fast/dom/HTMLOptionElement/collection-setter-getter-expected.txt:
        * fast/dom/HTMLOptionElement/collection-setter-getter.html:
        Don't use call syntax for tests that aren't explicitly testing it.

        * fast/dom/NodeList/nodelist-item-call-as-function-expected.txt:
        * fast/dom/NodeList/script-tests/nodelist-item-call-as-function.js:
        Update test to show that we throw on call.

        * fast/profiler/call-nodelist-as-function-expected.txt: Removed.
        * fast/profiler/call-nodelist-as-function.html: Removed.
        Remove test of removed feature.

2011-09-15  David Levin  <levin@chromium.org>

        [chromium] Add temporary exception while bots catch up to r95203.

        * platform/chromium/test_expectations.txt:

2011-09-15  David Levin  <levin@chromium.org>

        [chromium] Add expectation for flaky tests.

        * platform/chromium/test_expectations.txt:

2011-09-15  Cary Clark  <caryclark@google.com>
        Unreviewed; new expectations (Skia on Mac)
        
        This separates test failures that are specific to CG Mac from failures
        for Skia on Mac.

        * LayoutTests/platform/chromium/test_expectations.txt:

2011-09-15  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-relative-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-overflow-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-expected.txt: Removed.
        * LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-overflow-expected.txt: Removed.

2011-09-15  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95186.
        http://trac.webkit.org/changeset/95186
        https://bugs.webkit.org/show_bug.cgi?id=68159

        Invalid rebaseline. (Requested by dave_levin on #webkit).

        * http/tests/loading/307-after-303-after-post-expected.txt:
        * http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt:
        * http/tests/security/mixedContent/insecure-script-in-iframe-expected.txt:

2011-09-15  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-side-reduction-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-massive-scale-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/broken-ideographic-font-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-rl-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-lr-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-horizontal-bt-expected.png: Added.

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95180

        * http/tests/loading/307-after-303-after-post-expected.txt:
        * http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt:
        * http/tests/security/mixedContent/insecure-script-in-iframe-expected.txt:

2011-09-15  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-side-reduction-expected.png:
        * LayoutTests/platform/chromium-mac/fast/borders/border-image-massive-scale-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/broken-ideographic-font-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-rl-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-lr-expected.png: Added.
        * LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-horizontal-bt-expected.png: Added.

2011-09-15  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * platform/chromium-mac/fast/borders/border-image-border-radius-expected.png:
        * platform/chromium-mac/fast/borders/border-image-01-expected.png:
        * platform/chromium-mac/fast/borders/border-image-slices-expected.png:
        * platform/chromium-mac/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-image-scale-transform-expected.png:
        * platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
        * platform/chromium-mac/fast/borders/border-image-repeat-expected.png:
        * platform/chromium-mac/fast/borders/border-image-scaled-expected.png:
        * platform/chromium-mac/fast/borders/border-image-source-expected.png:
        * platform/chromium-mac/fast/borders/border-image-longhand-expected.png:
        * platform/chromium-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Removed.

2011-09-15  Gabor Loki  <loki@webkit.org>

        [Qt][ARMv5] Two timeline tests of inspector fail
        https://bugs.webkit.org/show_bug.cgi?id=68151

        Unreviewed gardening, adding timeout tests to skip list.

        * platform/qt-arm/Skipped:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] Add slow to debug version of repeat-cached-vm-reentry.html and sandboxed-iframe-navigation-parent.html.

        * platform/chromium/test_expectations.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95096, r95121, and r95129

        * platform/chromium-cg-mac-leopard/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
        * platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Removed.
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.png:
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
        * platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:
        * platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:

2011-09-15  Zoltan Herczeg  <zherczeg@webkit.org>

        [Qt] Unreviewed gardening. Adding new test expectations.

        * platform/qt/fast/borders/border-image-massive-scale-expected.txt: Added.
        * platform/qt/fast/borders/border-image-scaled-gradient-expected.txt: Added.
        * platform/qt/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/qt/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.

2011-09-15  Zoltan Herczeg  <zherczeg@webkit.org>

        Renaming PeerConnection to webkitPeerConnection affects all ports,
        not just chromium. Updating layout test after r95151.

        Unreviewed gardening.

        * fast/dom/call-a-constructor-as-a-function-expected.txt:

2011-09-15  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95121

        * platform/chromium-cg-mac-leopard/svg/as-border-image/svg-as-border-image-expected.txt: Added.
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.png:
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Added.
        * platform/chromium-win-xp/svg/as-border-image/svg-as-border-image-expected.txt: Removed.

2011-09-14  Keishi Hattori  <keishi@webkit.org>

        [chromium] rebaseline expectations due to r95096, r95121, and r95129

        * platform/chromium-cg-mac-leopard/fast/borders/block-mask-overlay-image-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/borders/border-color-inherit-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/borders/inline-mask-overlay-image-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-cg-mac-leopard/svg/css/getComputedStyle-basic-expected.txt: Removed.
        * platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
        * platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
        * platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.

2011-09-14  Jeffrey Pfau  <jeffrey@endrift.com>

        libxml2 fragment parser loses prefix namespaces
        https://bugs.webkit.org/show_bug.cgi?id=66423

        Added a test to ensure that elements inserted when the prefix is already declared are inserted properly.

        Reviewed by Eric Seidel.

        * fast/parser/innerhtml-with-prefixed-elements.xhtml: Added.
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.png: Added.
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.

2011-09-14  Keishi Hattori  <keishi@webkit.org>

        [chromium] Add slow to debug version of styles-source-lines.html.

        * platform/chromium/test_expectations.txt:

2011-09-14  Tom Sepez  <tsepez@chromium.org>

        Fix tests made trivial by the bugfix to 27895, by removing leading punctuation
        which would cause early truncation of the page snippet.
        
        https://bugs.webkit.org/show_bug.cgi?id=27895

        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char.html:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event.html:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL.html:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location.html:
        * http/tests/security/xssAuditor/dom-write-URL.html:
        * http/tests/security/xssAuditor/dom-write-innerHTML-expected.txt:
        * http/tests/security/xssAuditor/dom-write-innerHTML.html:
        * http/tests/security/xssAuditor/dom-write-location-inline-event.html:
        * http/tests/security/xssAuditor/dom-write-location-javascript-URL.html:
        * http/tests/security/xssAuditor/dom-write-location.html:
        * http/tests/security/xssAuditor/full-block-get-from-iframe.html:
        * http/tests/security/xssAuditor/full-block-javascript-link.html:
        * http/tests/security/xssAuditor/full-block-link-onclick.html:
        * http/tests/security/xssAuditor/full-block-post-from-iframe.html:
        * http/tests/security/xssAuditor/full-block-script-tag.html:
        * http/tests/security/xssAuditor/get-from-iframe.html:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode.html:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2.html:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3.html:
        * http/tests/security/xssAuditor/img-onerror-tricky.html:
        * http/tests/security/xssAuditor/javascript-link-null-char.html:
        * http/tests/security/xssAuditor/javascript-link-one-plus-one.html:
        * http/tests/security/xssAuditor/javascript-link.html:
        * http/tests/security/xssAuditor/link-onclick-ampersand.html:
        * http/tests/security/xssAuditor/link-onclick-control-char.html:
        * http/tests/security/xssAuditor/link-onclick-entities.html:
        * http/tests/security/xssAuditor/link-onclick-null-char.html:
        * http/tests/security/xssAuditor/link-onclick.html:
        * http/tests/security/xssAuditor/link-opens-new-window.html:
        * http/tests/security/xssAuditor/malformed-xss-protection-header.html:
        * http/tests/security/xssAuditor/open-attribute-body.html:
        * http/tests/security/xssAuditor/open-event-handler-iframe.html:
        * http/tests/security/xssAuditor/post-from-iframe.html:
        * http/tests/security/xssAuditor/property-escape-comment.html:
        * http/tests/security/xssAuditor/property-escape-entity.html:
        * http/tests/security/xssAuditor/property-escape-noquotes-expected.txt:
        * http/tests/security/xssAuditor/property-escape-noquotes-tab-slash-chars-expected.txt:
        * http/tests/security/xssAuditor/property-escape-noquotes-tab-slash-chars.html:
        * http/tests/security/xssAuditor/property-escape-noquotes.html:
        * http/tests/security/xssAuditor/property-escape-quote.html:
        * http/tests/security/xssAuditor/property-escape.html:
        * http/tests/security/xssAuditor/property-inject-expected.txt:
        * http/tests/security/xssAuditor/property-inject.html:
        * http/tests/security/xssAuditor/script-tag-addslashes-backslash.html:
        * http/tests/security/xssAuditor/script-tag-addslashes-double-quote.html:
        * http/tests/security/xssAuditor/script-tag-addslashes-null-char.html:
        * http/tests/security/xssAuditor/script-tag-addslashes-single-quote.html:
        * http/tests/security/xssAuditor/script-tag-control-char.html:
        * http/tests/security/xssAuditor/script-tag-entities.html:
        * http/tests/security/xssAuditor/script-tag-null-char.html:
        * http/tests/security/xssAuditor/script-tag-open-redirect.html:
        * http/tests/security/xssAuditor/script-tag-post-control-char.html:
        * http/tests/security/xssAuditor/script-tag-post-null-char.html:
        * http/tests/security/xssAuditor/script-tag-post.html:
        * http/tests/security/xssAuditor/script-tag-redirect.html:
        * http/tests/security/xssAuditor/script-tag-with-fancy-unicode.html:
        * http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding.html:
        * http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode.html:
        * http/tests/security/xssAuditor/script-tag.html:
        * http/tests/security/xssAuditor/xss-protection-parsing-01.html:

2011-09-14  Henrik Grunell  <grunell@google.com>

        MediaStream API: Change PeerConnection constructor name to webkitPeerConnection
        https://bugs.webkit.org/show_bug.cgi?id=67843

        Reviewed by Tony Gentilcore.

        Tests for the MediaStream API will be provided by the bug 56587, pending enough landed code.

        * fast/dom/call-a-constructor-as-a-function.html:
        * platform/chromium/fast/dom/call-a-constructor-as-a-function-expected.txt:

2011-09-14  David Levin  <levin@chromium.org>

        [chromium] rebaselines due to r95096, and r95121.

        * platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt: Renamed from LayoutTests/platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Renamed from LayoutTests/platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-cg-mac-leopard/svg/css/getComputedStyle-basic-expected.txt: Renamed from LayoutTests/platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
        * platform/chromium-win-xp/svg/as-border-image/svg-as-border-image-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.txt.
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.txt:

2011-09-14  David Levin  <levin@chromium.org>

        [chromium] rebaselines due to r95096, r95121, and r95129.

        * platform/chromium-cg-mac-leopard/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * platform/chromium-cg-mac-leopard/svg/as-border-image/svg-as-border-image-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.png: Added.
        * platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Added.
        * platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium-linux/fast/borders/border-image-border-radius-expected.png:
        * platform/chromium-linux/fast/borders/border-image-massive-scale-expected.png: Added.
        * platform/chromium-linux/fast/borders/border-image-scale-transform-expected.png:
        * platform/chromium-linux/fast/borders/border-image-scaled-expected.png:
        * platform/chromium-linux/svg/as-border-image/svg-as-border-image-expected.png:
        * platform/chromium-win/fast/borders/border-image-01-expected.png:
        * platform/chromium-win/fast/borders/border-image-border-radius-expected.png:
        * platform/chromium-win/fast/borders/border-image-longhand-expected.png:
        * platform/chromium-win/fast/borders/border-image-massive-scale-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-massive-scale-expected.txt: Added.
        * platform/chromium-win/fast/borders/border-image-repeat-expected.png:
        * platform/chromium-win/fast/borders/border-image-scale-transform-expected.png:
        * platform/chromium-win/fast/borders/border-image-scaled-expected.png:
        * platform/chromium-win/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-side-reduction-expected.png:
        * platform/chromium-win/fast/borders/border-image-slices-expected.png:
        * platform/chromium-win/fast/borders/border-image-source-expected.png:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.png:
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.txt:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:

2011-09-14  David Levin  <levin@chromium.org>

        [chromium] rebaselines due to r95121, r95070, and r95099.

        * platform/chromium-cg-mac-leopard/fast/borders/border-image-border-radius-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/borders/border-image-rotate-transform-expected.png:
        * platform/chromium-cg-mac-leopard/fast/borders/border-image-scaled-expected.png:
        * platform/chromium-cg-mac-leopard/fast/borders/border-image-side-reduction-expected.png:
        * platform/chromium-cg-mac/fast/borders/bidi-002-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/bidi-009a-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/bidi-012-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/block-mask-overlay-image-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-color-inherit-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-image-border-radius-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-image-massive-scale-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-image-rotate-transform-expected.png:
        * platform/chromium-cg-mac/fast/borders/border-image-scale-transform-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-image-scaled-expected.png:
        * platform/chromium-cg-mac/fast/borders/border-image-side-reduction-expected.png:
        * platform/chromium-cg-mac/fast/borders/inline-mask-overlay-image-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/outline-alpha-block-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/outline-alpha-inline-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/rtl-border-01-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/rtl-border-02-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/rtl-border-03-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/rtl-border-04-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/rtl-border-05-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/border-image-horizontal-bt-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/border-image-vertical-lr-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/border-image-vertical-rl-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.txt: Removed.
        * platform/chromium-linux-x86/fast/borders/border-image-scrambled-expected.png: Removed.
        * platform/chromium-linux/fast/borders/border-image-scrambled-expected.png: Removed.
        * platform/chromium-linux/fast/borders/border-image-scrambled-expected.txt: Removed.
        * platform/chromium-win-vista/fast/borders/border-image-scrambled-expected.png: Removed.
        * platform/chromium-win-vista/fast/borders/border-image-scrambled-expected.txt: Removed.
        * platform/chromium-win-xp/fast/borders/border-image-scrambled-expected.png: Removed.
        * platform/chromium-win-xp/fast/borders/border-image-scrambled-expected.txt: Removed.
        * platform/chromium-win/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-scrambled-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/borders/border-image-scrambled-expected.txt.

2011-09-14  Eric Carlson  <eric.carlson@apple.com>

        Media element tests should look up controller element locations.
        https://bugs.webkit.org/show_bug.cgi?id=68038

        Get the position of controller elements from the shadow DOM.

        Reviewed by Darin Adler.

        * media/audio-delete-while-slider-thumb-clicked.html:
        * media/audio-delete-while-step-button-clicked.html:
        * media/controls-drag-timebar.html:
        * media/controls-right-click-on-timebar.html:
        * media/video-controls-transformed.html:
        * media/video-controls-visible-audio-only.html:
        * media/video-controls-zoomed.html:
        * media/video-volume-slider.html:

2011-09-14  David Levin  <levin@chromium.org>

        [chromium] Update baselines due to r95070 and r95099.

        * platform/chromium-cg-mac-leopard/fast/writing-mode/broken-ideographic-font-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/broken-ideographic-font-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Added.
        * platform/chromium-cg-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.txt: Added.
        * platform/chromium-linux-x86/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/chromium-linux/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-linux/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/chromium-win-vista/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-win-vista/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/chromium-win-xp/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/chromium-win-xp/fast/borders/border-image-scrambled-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-14  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=52736

        Tiles were not being properly centered within border image sides for the "repeat"
        keyword. This patch fixes the buggy math behind the pattern tiling to actually get
        the initial phases correct.

        Reviewed by Sam Weinig.

        * fast/borders/border-image-massive-scale.html: Added.
        * fast/borders/border-image-scaled-gradient.html: Added.
        * platform/mac/fast/borders/border-image-massive-scale-expected.png: Added.
        * platform/mac/fast/borders/border-image-massive-scale-expected.txt: Added.
        * platform/mac/fast/borders/border-image-outset-expected.png:
        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.png:
        * platform/mac/fast/borders/border-image-outset-split-inline-expected.png:
        * platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png:
        * platform/mac/fast/borders/border-image-scaled-gradient-expected.png: Added.
        * platform/mac/fast/borders/border-image-scaled-gradient-expected.txt: Added.
        * platform/mac/fast/borders/border-image-side-reduction-expected.png:

2011-09-14  Jeremy Apthorp  <jeremya@chromium.org>

        Change mousedown events to keydown events, since eventSender.mouseDown
        wasn't firing onmousedown events on Mac.
        https://bugs.webkit.org/show_bug.cgi?id=67960

        Reviewed by Adam Barth.

        * fullscreen/full-screen-remove-ancestor-during-transition.html:

2011-09-14  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68103
        
        Centered portions of border images don't render correctly. Make the tile scale factor have to be
        explicitly passed in and modify paintNinePieceImage to compute it for all sides. The attempts to
        implicitly compute the scale for the pattern based off the source and destination rects just don't
        work, since the center image rects don't provide the right information to be able to infer the
        scale factor.

        Reviewed by Sam Weinig.

        Reset all the existing fast/borders pixel results to Lion for these changes.

        * platform/mac/fast/borders/bidi-002-expected.png:
        * platform/mac/fast/borders/bidi-009a-expected.png:
        * platform/mac/fast/borders/bidi-012-expected.png:
        * platform/mac/fast/borders/block-mask-overlay-image-expected.png:
        * platform/mac/fast/borders/border-antialiasing-expected.png:
        * platform/mac/fast/borders/border-color-inherit-expected.png:
        * platform/mac/fast/borders/border-fit-expected.png:
        * platform/mac/fast/borders/border-image-01-expected.png:
        * platform/mac/fast/borders/border-image-border-radius-expected.png:
        * platform/mac/fast/borders/border-image-longhand-expected.png:
        * platform/mac/fast/borders/border-image-omit-right-slice-expected.png:
        * platform/mac/fast/borders/border-image-outset-expected.png:
        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.png:
        * platform/mac/fast/borders/border-image-repeat-expected.png:
        * platform/mac/fast/borders/border-image-rotate-transform-expected.png:
        * platform/mac/fast/borders/border-image-scale-transform-expected.png:
        * platform/mac/fast/borders/border-image-scaled-expected.png:
        * platform/mac/fast/borders/border-image-scrambled-expected.png:
        * platform/mac/fast/borders/border-image-slices-expected.png:
        * platform/mac/fast/borders/border-image-source-expected.png:
        * platform/mac/fast/borders/border-radius-circle-expected.png:
        * platform/mac/fast/borders/border-radius-constraints-expected.png:
        * platform/mac/fast/borders/border-radius-different-width-001-expected.png:
        * platform/mac/fast/borders/border-radius-groove-01-expected.png:
        * platform/mac/fast/borders/border-radius-groove-02-expected.png:
        * platform/mac/fast/borders/border-radius-groove-03-expected.png:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.png:
        * platform/mac/fast/borders/border-radius-inline-flow-expected.png:
        * platform/mac/fast/borders/border-radius-inset-outset-expected.png:
        * platform/mac/fast/borders/border-radius-split-inline-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-01-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-02-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.png:
        * platform/mac/fast/borders/border-styles-split-expected.png:
        * platform/mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/mac/fast/borders/borderRadiusArcs01-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed01-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed02-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed03-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed04-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed05-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed06-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted01-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted02-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted03-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted04-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted05-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble01-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble02-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble03-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble04-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble05-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble07-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble08-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble09-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove01-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove02-expected.png:
        * platform/mac/fast/borders/borderRadiusInset01-expected.png:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/mac/fast/borders/borderRadiusOutset01-expected.png:
        * platform/mac/fast/borders/borderRadiusRidge01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid04-expected.png:
        * platform/mac/fast/borders/different-color-borders-expected.png:
        * platform/mac/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/mac/fast/borders/inline-mask-overlay-image-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.png:
        * platform/mac/fast/borders/outline-alpha-block-expected.png:
        * platform/mac/fast/borders/outline-alpha-inline-expected.png:
        * platform/mac/fast/borders/outline-offset-min-assert-expected.png:
        * platform/mac/fast/borders/rtl-border-01-expected.png:
        * platform/mac/fast/borders/rtl-border-02-expected.png:
        * platform/mac/fast/borders/rtl-border-03-expected.png:
        * platform/mac/fast/borders/rtl-border-04-expected.png:
        * platform/mac/fast/borders/rtl-border-05-expected.png:
        * platform/mac/fast/borders/table-borders-expected.png:
        * platform/mac/fast/borders/webkit-border-radius-expected.png:

2011-09-14  Eric Carlson  <eric.carlson@apple.com>

        Update media-controls.js so it can find the timeline slider
        https://bugs.webkit.org/show_bug.cgi?id=68034

        Don't assume that all elements in the media controller shadow DOM pseudo
        elements are siblings.

        Reviewed by Darin Adler.

        * media/media-controls.js:
        (mediaConrolsElement):
        (mediaControlsButtonCoordinates):

2011-09-14  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images (missed this one on the prior land)

       * platform/chromium-mac/svg/custom/simple-text-double-shadow-expected.png: Added.

2011-09-14  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

       * platform/chromium-mac/fast/writing-mode/broken-ideographic-font-expected.png: Removed.
       * platform/chromium-mac/svg/custom/simple-text-double-shadow-expected.png: Added.

2011-09-14  Eric Carlson  <eric.carlson@apple.com>

        video-error-abort.html shouldn't be in Mac skipped list
        https://bugs.webkit.org/show_bug.cgi?id=68053
        <rdar://problem/6710625> Test media/video-error-abort.html doesn't work

        Reviewed by Darin Adler.

        * platform/mac/Skipped: Remove http/tests/media/video-error-abort.html from the mac
            skipped list.

2011-09-14  Stephen White  <senorblanco@chromium.org>

        [chromium] Unreviewed gardening.

        Removing fast/canvas/setWidthResetAfterForcedRender.html from
        test_expectations, since it has been passing on the Mesa bots 
        (last failure was at r94962).

2011-09-14  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68040
        
        Make sure border image sub-properties can be specified in any order.

        Reviewed by Beth Dakin.

        * fast/borders/border-image-scrambled.html: Added.
        * platform/mac/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/mac/fast/borders/border-image-scrambled-expected.txt: Added.

2011-09-13  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68050
        
        Regressions in some layout tests from making border/mask/reflection nine-piece-image
        parsing match the spec, which allows any of the pieces to be omitted and to also be
        specifiable in any order.
        
        When the higher level code suddenly allowed the image slices to be omitted, the fixup
        for legacy compatibility for reflections and masks in the parseBorderImageSlice function
        no longer happened because that function no longer got called.
        
        The fix is to properly set the defaults to include the "fill" keyword, so the fixup is
        applied to the NinePieceImages you create before you ever map anything in from the rules.
        
        This also has the side effect of fixing -webkit-max-box-image-slice to actually dump as
        "0 fill" instead of just "0", which is the correct initial value for this property.

        Reviewed by Adam Roben.

        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-14  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. timeline-animation-frame.html was marked as TEXT.

        * platform/qt/test_expectations.txt:

2011-09-14  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. timeline-animation-frame.html was marked as TIMEOUT.

        * platform/qt/test_expectations.txt:

2011-09-14  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
        https://bugs.webkit.org/show_bug.cgi?id=67986

        Reviewed by Pavel Feldman.

        * inspector/timeline/timeline-animation-frame-expected.txt: Added.
        * inspector/timeline/timeline-animation-frame.html: Added.
        * inspector/timeline/timeline-enum-stability-expected.txt:
        * platform/chromium/inspector/timeline/timeline-enum-stability-expected.txt:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.performActions.step2):
        (initialize_Timeline.InspectorTest.performActions):
        (initialize_Timeline.InspectorTest.performActionsAndPrint):

2011-09-14  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: fix lint-test-files error

2011-09-14  Kentaro Hara  <haraken@google.com>

        page-transition-event-constructor-expected.txt is missing
        https://bugs.webkit.org/show_bug.cgi?id=68069

        Reviewed by Hajime Morita.

        * fast/events/constructors/page-transition-event-constructor-expected.txt: Added.

2011-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95080.
        http://trac.webkit.org/changeset/95080
        https://bugs.webkit.org/show_bug.cgi?id=68070

        It caused some 2d.composite.uncovered tests fail (Requested by
        rgabor on #webkit).

        * fast/canvas/canvas-large-fills-expected.txt: Removed.
        * fast/canvas/canvas-large-fills.html: Removed.

2011-09-13  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: [v8] building call frame info for location-less internal script function crashes.
        https://bugs.webkit.org/show_bug.cgi?id=67991

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/debugger-pause-in-internal-expected.txt: Added.
        * inspector/debugger/debugger-pause-in-internal.html: Added.
        * inspector/debugger/debugger-pause-on-exception-crash-expected.txt: Added.
        * platform/chromium/inspector/debugger/debugger-pause-in-internal-expected.txt: Added.

2011-09-14  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expecations.

        * platform/chromium/test_expectations.txt:
          - remove failure by r95058, which was reverted by r95077.
          - add failures by r95070

2011-09-14  Gabor Rapcsanyi  <rgabor@webkit.org>

        [Qt] Unreviewed, update test expectations for
        svg/custom/dynamic-svg-document-creation.svg after r95030

        * platform/qt/svg/custom/dynamic-svg-document-creation-expected.png:
        * platform/qt/svg/custom/dynamic-svg-document-creation-expected.txt:

2011-09-14  Ben Wells  <benwells@chromium.org>

        Large canvas fills should not crash or create unnecessarily large image buffers
        https://bugs.webkit.org/show_bug.cgi?id=67988

        Reviewed by Stephen White.

        * fast/canvas/canvas-large-fills-expected.txt: Added.
        * fast/canvas/canvas-large-fills.html: Added.

2011-09-14  Kentaro Hara  <haraken@google.com>

        Implement a PageTransitionEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=68048

        Reviewed by Sam Weinig.

        page-transition-event-constructor.html checks the behavior of the PageTransitionEvent constructor.

        * fast/dom/constructed-objects-prototypes-expected.txt: Added PageTransitionEvent.
        * fast/events/constructors/page-transition-event-constructor-expected.txt: Added.
        * fast/events/constructors/page-transition-event-constructor.html: Added.
        * platform/chromium/test_expectations.txt: Skipped page-transition-event-constructor.html, since V8 does not yet have the PageTransitionEvent constructor.

2011-09-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95058.
        http://trac.webkit.org/changeset/95058
        https://bugs.webkit.org/show_bug.cgi?id=68058

        It made css3/calc/regression-62276.html crash (Requested by
        Ossy on #webkit).

        * fast/borders/border-image-scrambled.html: Removed.
        * platform/mac/fast/borders/border-image-scrambled-expected.png: Removed.
        * platform/mac/fast/borders/border-image-scrambled-expected.txt: Removed.

2011-09-13  Abhishek Arya  <inferno@chromium.org>

        Crash in RenderScrollbarPart::imageChanged.
        https://bugs.webkit.org/show_bug.cgi?id=68009

        Reviewed by Simon Fraser.

        * scrollbars/scrollbar-part-created-with-no-parent-crash-expected.txt: Added.
        * scrollbars/scrollbar-part-created-with-no-parent-crash.html: Added.

2011-09-13  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: failures on GPU starting from r95058

2011-09-13  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: failures starting from r95058

2011-09-13  Adam Klein  <adamk@chromium.org>

        Fix cssText property of counter-valued CSSPrimitiveValue and avoid uninitialized read
        https://bugs.webkit.org/show_bug.cgi?id=68021

        Reviewed by Tony Chang.

        * fast/css/counters/counter-cssText-expected.txt: Added.
        * fast/css/counters/counter-cssText.html: Added.

2011-09-13  Kenichi Ishibashi  <bashi@chromium.org>

        WebFont followed tiny monospace text displays weird
        https://bugs.webkit.org/show_bug.cgi?id=67996

        Reviewed by Darin Adler.

        This test ensures that webfont followed tiny monospace text is displayed correctly.

        * platform/mac/fast/text/webfont-after-tiny-monospace-text-expected.png: Added.
        * platform/mac/fast/text/webfont-after-tiny-monospace-text-expected.txt: Added.
        * platform/mac/fast/text/webfont-after-tiny-monospace-text.html: Added.

2011-09-13  Tom Sepez  <tsepez@chromium.org>

        Fix XSS auditor bypass when inline handlers contain comments.
        https://bugs.webkit.org/show_bug.cgi?id=27895

        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/malformed-HTML-expected.txt:
        * http/tests/security/xssAuditor/open-attribute-body-expected.txt:
        * http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt:
        * http/tests/security/xssAuditor/property-escape-comment-expected.txt: Added.
        * http/tests/security/xssAuditor/property-escape-comment.html: Added.
        * http/tests/security/xssAuditor/property-escape-entity-expected.txt: Added.
        * http/tests/security/xssAuditor/property-escape-entity.html: Added.
        * http/tests/security/xssAuditor/property-escape-quote-expected.txt: Added.
        * http/tests/security/xssAuditor/property-escape-quote.html: Added.
        * http/tests/security/xssAuditor/resources/echo-property.pl:

2011-09-13  Fumitoshi Ukai  <ukai@chromium.org>

        Update chromium-mac test expectations
        https://bugs.webkit.org/show_bug.cgi?id=67917

        Reviewed by Darin Adler.

        * platform/chromium-cg-mac-leopard/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-09-13  Kentaro Hara  <haraken@google.com>

        Implement a HashChangeEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=67969

        Reviewed by Nate Chapin.

        Enabled hash-change-event-constructor.html, since now V8 has a HashChangeEvent constructor.

        * platform/chromium/test_expectations.txt:

2011-09-13  Jeremy Apthorp  <jeremya@google.com>

        Removing an iframe from the document during a transition to fullscreen
        should not crash.
        https://bugs.webkit.org/show_bug.cgi?id=67960

        Reviewed by Adam Barth.

        * fullscreen/full-screen-remove-ancestor-during-transition-expected.txt: Added.
        * fullscreen/full-screen-remove-ancestor-during-transition.html: Added.

2011-09-13  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68040
        
        Make sure border image sub-properties can be specified in any order.

        Reviewed by Beth Dakin.

        * fast/borders/border-image-scrambled.html: Added.
        * platform/mac/fast/borders/border-image-scrambled-expected.png: Added.
        * platform/mac/fast/borders/border-image-scrambled-expected.txt: Added.

2011-09-12  Jon Honeycutt  <jhoneycutt@apple.com>

        MSAA: WebKit reports the document state as disabled
        https://bugs.webkit.org/show_bug.cgi?id=67974
        <rdar://problem/10095898>

        Reviewed by Brian Weinstein.

        * platform/win/accessibility/document-enabled-state-expected.txt: Added.
        * platform/win/accessibility/document-enabled-state.html: Added.

2011-08-11  Cris Neckar  <cdn@chromium.org>

        Test for crash when reparenting table elements with associated counters outside the table.
        https://bugs.webkit.org/show_bug.cgi?id=65996

        Reviewed by Eric Seidel.

        * fast/css/counters/counter-reparent-table-children-crash-expected.txt: Added.
        * fast/css/counters/counter-reparent-table-children-crash.html: Added.

2011-09-13  Kiyoto Tamura  <owenestea@gmail.com>

        For compatibility, execCommand should support deprecated 'useCSS' alias for 'styleWithCSS'
        https://bugs.webkit.org/show_bug.cgi?id=36683

        Reviewed by Ryosuke Niwa.

        Testing useCSS, the command previously unsupported by WebKit. Also, we are testing
        styleWithCSS accepts anything that is not the boolean false or the string "false" as true.
        Furthermore, we test that queryCommandValue/State('useCSS') return boolean false and
        queryCommandValue/State('useStyleWithCSS') returns booleans (as opposed to 'true'/'false'
        strings)

        * editing/execCommand/style-with-css-expected.txt: Added.
        * editing/execCommand/style-with-css.html: Added.
        * editing/execCommand/use-css-expected.txt: Added.
        * editing/execCommand/use-css.html: Added.

2011-09-13  Tim Horton  <timothy_horton@apple.com>

        REGRESSION (64275): Shape pattern-image fill turns black
        https://bugs.webkit.org/show_bug.cgi?id=51061
        <rdar://problem/8504705>

        Reviewed by Simon Fraser.

        Add a test ensuring that replacing a SVG pattern without changing
        the id causes the clients to be updated properly.

        * svg/custom/pending-resource-after-removal-expected.png: Added.
        * svg/custom/pending-resource-after-removal-expected.txt: Added.
        * svg/custom/pending-resource-after-removal.xhtml: Added.

2011-09-13  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images.

        * platform/chromium-gpu-mac/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/overflow/overflow-positioning-expected.png: Added.

2011-09-13  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac)
        Updated reference images, text.

        * platform/chromium-mac/http/tests/eventsource/existent-eventsource-status-error-iframe-crash-expected.txt: Removed.
        * platform/chromium-mac/platform/chromium/fast/repaint: Added.
        * platform/chromium-mac/platform/chromium/fast/repaint/fixed-layout-360x240-expected.png: Added.
        * platform/chromium-mac/fast/lists/list-marker-before-content-table-expected.png: Added.
        * platform/chromium-mac/fast/runin/runin-generated-before-content-expected.png: Added.
        * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug85016-expected.png: Added.
        * platform/chromium-mac/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/chromium-mac/css3/unicode-bidi-isolate-basic-expected.png: Added.

2011-09-13  Chang Shu  <cshu@webkit.org>

        [WK2] [Mac] Implement KeyDown function for WebKit2 EventSender.
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Unskip passed tests for Mac.

        Reviewed by Darin Adler.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/win-wk2/Skipped:
        * platform/wk2/Skipped:

2011-09-13  Joseph Pecoraro  <joepeck@webkit.org>

        CRASH under WebCore::ArchiveResourceCollection::addAllResources loading WebArchive
        https://bugs.webkit.org/show_bug.cgi?id=67983

        Reviewed by Darin Adler.

        Test a WebArchive that has been constructed to have a null
        mimetype for a subresource.

        * webarchive/loading/test-loading-archive-subresource-null-mimetype-expected.txt: Added.
        * webarchive/loading/test-loading-archive-subresource-null-mimetype.html: Added.
        * webarchive/loading/resources/subresource-null-mimetype.webarchive: Added.

2011-09-13  Ryosuke Niwa  <rniwa@webkit.org>

        Update chromium test expectation since fast/borders/border-image-omit-right-slice.html no longer hits an assertion.

        * platform/chromium/test_expectations.txt:

2011-09-13  Xianzhu Wang  <wangxianzhu@chromium.org>

        Reviewed by Darin Adler.

        Webkit wraps between hyphen-minus and numeric characters
        https://bugs.webkit.org/show_bug.cgi?id=20677

        Disallow wrapping between a hyphen-minus and a digit if the hyphen-minus
        is not directly after a digit or a letter.

        * fast/text/line-breaks-after-hyphen-before-number-expected.txt: Added.
        * fast/text/line-breaks-after-hyphen-before-number.html: Added.

2011-09-12  Sam Weinig  <sam@webkit.org>

        Object.getPrototypeOf should use JSValue::get()
        https://bugs.webkit.org/show_bug.cgi?id=67973

        Reviewed by Darin Adler.

        * http/tests/security/cross-frame-access-object-getPrototypeOf-expected.txt: Added.
        * http/tests/security/cross-frame-access-object-getPrototypeOf.html: Added.
        * http/tests/security/resources/cross-frame-iframe-for-object-getPrototypeOf-test.html: Added.

2011-09-13  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations

        * platform/chromium/test_expectations.txt: fast/borders/border-image-omit-right-slice.html fails on release

2011-09-13  Renata Hodovan  <reni@webkit.org>

        eventSender.keyDown is unimplemented (WKTR)
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Unreviewed gardening.

        * platform/qt-wk2/Skipped:

2011-09-12  Shinya Kawanaka  <shinyak@google.com>

        [chromium] fast/js/parseInt.html does not fail any more.
        https://bugs.webkit.org/show_bug.cgi?id=65366

        parseInt bug was fixed in v8 version 3.6.0.

        Reviewed by Eric Seidel.

        * platform/chromium/test_expectations.txt:

2011-09-12  Dominic Mazzoni  <dmazzoni@google.com>

        Add a test that ensures that the accessibility tree
        does not contain duplicate child nodes.
        https://bugs.webkit.org/show_bug.cgi?id=58930

        This test failed when the bug was originally filed, but was
        fixed in: https://bugs.webkit.org/show_bug.cgi?id=61805
        so no code changes are accompanying this new layout test.

        Reviewed by Chris Fleizach.

        * accessibility/duplicate-child-nodes-expected.txt: Added.
        * accessibility/duplicate-child-nodes.html: Added.

2011-09-12  Shinya Kawanaka  <shinyak@google.com>

        Crashes in WebCore::InsertListCommand::unlistifyParagraph.
        https://bugs.webkit.org/show_bug.cgi?id=67918

        Reviewed by Ryosuke Niwa.

        Added tests.

        * editing/execCommand/insert-list-in-noneditable-list-parent-expected.txt: Added.
        * editing/execCommand/insert-list-in-noneditable-list-parent.html: Added.

2011-09-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94975.
        http://trac.webkit.org/changeset/94975
        https://bugs.webkit.org/show_bug.cgi?id=67984

        crash in PrerenderBrowserTest.PrerenderHTML5VideoJs (Requested
        by ukai on #webkit).

        * platform/chromium/compositing/lost-compositor-context-with-rendersurface-expected.png: Removed.
        * platform/chromium/compositing/lost-compositor-context-with-rendersurface-expected.txt: Removed.
        * platform/chromium/compositing/lost-compositor-context-with-rendersurface.html: Removed.

2011-09-12  Sam Weinig  <sam@webkit.org>

        Don't allow setting __proto__ to be a getter or setter
        https://bugs.webkit.org/show_bug.cgi?id=67982

        Reviewed by Gavin Barraclough.

        * fast/js/prototypes-expected.txt:
        * fast/js/script-tests/prototypes.js:
        Add test that we disallow setting a getter or setter on __proto__.

2011-09-12  Jacky Jiang  <zhajiang@rim.com>

        Setting document.title doesn't affect contents of title tag of XHTML documents
        https://bugs.webkit.org/show_bug.cgi?id=57537

        Reviewed by Alexey Proskuryakov.

        * fast/dom/title-content-set-innerText-get-expected.txt: Added.
        * fast/dom/title-content-set-innerText-get.xhtml: Added.

2011-09-12  Dominic Mazzoni  <dmazzoni@google.com>

        Add GTK & Win expectations for two recently added
        accessibility layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=67948

        Reviewed by Chris Fleizach.

        * platform/gtk/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.
        * platform/gtk/accessibility/div-within-anchors-causes-crash-expected.txt: Added.
        * platform/win/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.
        * platform/win/accessibility/div-within-anchors-causes-crash-expected.txt: Added.

2011-09-12  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Eric Seidel.

        convert editing/deleting/5390681-2.html to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=63293

        Renamed editing/deleting/5390681* to editing/deleting/smart-delete-across-editable-boundaries,
        Added doctype/html/body to both tests, and converted smart-delete-across-editable-boundaries-2
        to dump-as-markup test in the same style as the first. Also updated results.

        * editing/deleting/5390681.html: Removed.
        * editing/deleting/5390681-expected.txt: Removed.
        * editing/deleting/5390681-2.html: Removed.
        * editing/deleting/smart-delete-across-editable-boundaries.html: Added.
        * editing/deleting/smart-delete-across-editable-boundaries-expected.txt: Added.
        * editing/deleting/smart-delete-across-editable-boundaries-2.html: Added.
        * editing/deleting/smart-delete-across-editable-boundaries-2-expected.txt: Added.
        * platform/chromium-linux/editing/deleting/5390681-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5390681-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5390681-2-expected.txt: Removed.
        * platform/gtk/editing/deleting/5390681-2-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5390681-2-expected.png: Removed.
        * platform/mac/editing/deleting/5390681-2-expected.png: Removed.
        * platform/mac/editing/deleting/5390681-2-expected.txt: Removed.
        * platform/qt/editing/deleting/5390681-2-expected.png: Removed.
        * platform/qt/editing/deleting/5390681-2-expected.txt: Removed.
        * platform/qt/editing/deleting/5390681-expected.png: Removed.

2011-09-12  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: fast/borders/border-image-omit-right-slice.html crash on debug

2011-09-12  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewred, update chromium test expectations.

        * platform/chromium/test_expectations.txt: fast/events/constructors/progress-event-constructor.html on mac

2011-09-12  James Robinson  <jamesr@chromium.org>

        [chromium] Remove bad expectation that was causing us to run a compositing/ test on Leopard.  Tsk tsk, Mike
        Reed!

        * platform/chromium/test_expectations.txt:

2011-09-12  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10054615> Floats in ruby text intrude into the base

        Reviewed by Darin Adler.

        * fast/ruby/float-overhang-from-ruby-text-expected.png: Added.
        * fast/ruby/float-overhang-from-ruby-text-expected.txt: Added.
        * fast/ruby/float-overhang-from-ruby-text.html: Added.

2011-09-12  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION: Moving up doesn't work in some cases
        https://bugs.webkit.org/show_bug.cgi?id=67522

        Reviewed by Eric Seidel.

        Add a test to move caret upwards from an empty line below wrapped lines.

        WebKit used to skip wrapped lines and placed caret at the beginning of the first of those wrapped lines
        instead of before the last.

        * editing/selection/move-up-into-wrapped-line-expected.txt: Added.
        * editing/selection/move-up-into-wrapped-line.html: Added.

2011-09-12  Beth Dakin  <bdakin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67898
        REGRESSION(r94900): fast/images/support-broken-image-delegate.html fails on Mac

        Reviewed by Simon Fraser.

        * platform/mac/Skipped:

2011-09-12  Ryosuke Niwa  <rniwa@webkit.org>

        Fix a test added by r94966 to work on Mac.

        * fast/events/selectstart-by-arrow-keys.html:
        * platform/chromium/test_expectations.txt:

2011-09-12  Nate Chapin  <japhet@chromium.org>

        Fix up duplicate expectations and add expected failure
        for selectstart-by-arrow-keys.html for chromium mac.

        * platform/chromium/test_expectations.txt:

2011-09-12  David Reveman  <reveman@chromium.org>

        Rebaseline for r94703.
        https://bugs.webkit.org/show_bug.cgi?id=67945

        Reviewed by James Robinson.

        * platform/chromium-gpu-cg-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/flat-with-transformed-child-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-cg-mac/compositing/scaling/tiled-layer-recursion-expected.png:
        * platform/chromium-gpu-cg-mac/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-cg-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/flat-with-transformed-child-expected.png:
        * platform/chromium-gpu-win/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-win/compositing/scaling/tiled-layer-recursion-expected.png:
        * platform/chromium-gpu-win/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-win/media/video-transformed-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/mac-snowleopard/media/video-layer-crash-expected.txt: Removed.

2011-09-12  Eric Seidel  <eric@webkit.org>

        Implement a HashChangeEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=67924

        Unreviewed.  Updating results which were forgotten.

        * fast/dom/constructed-objects-prototypes-expected.txt:

2011-09-12  Chris Rogers  <crogers@google.com>

        DelayNode delay buffer is not correctly wrapping around
        https://bugs.webkit.org/show_bug.cgi?id=67872

        Reviewed by Kenneth Russell.

        * webaudio/delaynode-expected.txt: Added.
        * webaudio/delaynode.html: Added.

2011-09-12  Arko Saha  <arko@motorola.com>

        Selectstart is not fired when selection was created by arrow keys.
        https://bugs.webkit.org/show_bug.cgi?id=60430

        Reviewed by Ryosuke Niwa.

        * fast/events/selectstart-by-arrow-keys-expected.txt: Added.
        * fast/events/selectstart-by-arrow-keys-prevent-default-expected.txt: Added.
        * fast/events/selectstart-by-arrow-keys-prevent-default.html: Added.
        * fast/events/selectstart-by-arrow-keys.html: Added.

2011-09-12  Ben Wagner  <bungeman@chromium.org>

        Chromium shadow-buffer-partial test change.
        https://bugs.webkit.org/show_bug.cgi?id=67849

        Reviewed by Kenneth Russell.

        * platform/chromium/test_expectations.txt:

2011-09-12  Kentaro Hara  <haraken@google.com>

        Implement a HashChangeEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=67924

        Reviewed by Sam Weinig.

        hash-change-event-constructor.html checks the behavior of the HashChangeEvent constructor.

        * fast/events/constructors/hash-change-event-constructor-expected.txt: Added.
        * fast/events/constructors/hash-change-event-constructor.html: Added.
        * platform/chromium/test_expectations.txt: Skipped hash-change-event-constructor.html, since V8 does not yet have the HashChangeEvent constructor.

2011-09-12  Nate Chapin  <japhet@chromium.org>

        Add video-zoom-controls.html to chromium expectations
        for leopard gpu.

        * platform/chromium/test_expectations.txt:

2011-09-12  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Runtime.callFunctionOn does not accept arguments that evaluate to false.
        https://bugs.webkit.org/show_bug.cgi?id=67934

        Reviewed by Tony Gentilcore.

        * inspector/runtime/runtime-setPropertyValue.html:

2011-09-12  Kentaro Hara  <haraken@google.com>

        Implement a WebKitAnimationEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=67922

        Reviewed by Adam Barth.

        Enabled webkit-animation-event-constructor.html, since now V8 has a WebKitAnimationEvent constructor.

        * platform/chromium/test_expectations.txt:

2011-09-12  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][ARMv5] fast/events/constructors/progress-event-constructor.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=67927

        Skip it.

        * platform/qt-arm/Skipped:

2011-09-12  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: add fast/events/constructors/progress-event-constructor.html

2011-09-12  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: perf/show-hide-table-rows.html slow to timeout

2011-09-12  Shinya Kawanaka  <shinyak@google.com>

        Characters beyond U+10000 should be deleted by one pressing delete key.
        https://bugs.webkit.org/show_bug.cgi?id=40351

        Reviewed by Kent Tamura.

        Added deletion tests.

        * editing/deleting/delete-surrogatepair-expected.txt: Added.
        * editing/deleting/delete-surrogatepair.html: Added.

2011-09-11  Kentaro Hara  <haraken@google.com>

        Implement a ProgressEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=67800

        Reviewed by Sam Weinig.

        Enabled fast/events/constructors/progress-event-constructor.html

        * platform/chromium/test_expectations.txt:

2011-09-11  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: slow perf/show-hide-table-rows.html

2011-09-11  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: slow perf/document-contains.html

2011-09-11  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia) part 3
        https://bugs.webkit.org/show_bug.cgi?id=67830

        Reviewed by Kenneth Russell.

        * fast/borders/: 13 changes
        * fast/frames/iframe-scaling-with-scroll-expected.txt: Renamed from LayoutTests/platform/gtk/fast/frames/iframe-scaling-with-scroll-expected.txt.
        * platform/chromium-linux/fast/: 18 changes
        * platform/chromium-win/fast/: 21 changes
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/: 13 removals
        * platform/qt/fast/: 14 removals

2011-09-11  Dimitri Glazkov  <dglazkov@chromium.org>

        REGRESSION (r87351): toggling display of lots (thousands) of elements with display:none is very slow
        https://bugs.webkit.org/show_bug.cgi?id=67581

        Reviewed by Darin Adler.

        * perf/show-hide-table-rows-expected.txt: Added.
        * perf/show-hide-table-rows.html: Added.

2011-09-11  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: add svg/custom/simple-text-double-shadow.svg

2011-09-11  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, one more rebaseline for r94912

        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:

2011-09-11  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations and rebaselines for r94912

        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt: Removed.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-09-11  Martin Robinson  <mrobinson@igalia.com>

        Remove two platform-specific results for GTK+ that no longer apply and
        rebaseline one more test.

        * platform/gtk/fast/multicol/inherit-column-values-expected.txt: Removed.
        * platform/gtk/fast/multicol/initial-column-values-expected.txt: Removed.
        * svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Rebaselined.
        * svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Ditto.

2011-09-11  Martin Robinson  <mrobinson@igalia.com>

        Unskip two tests that should be passing now that 67383 is resolved.

        * platform/gtk/Skipped: Unskip passing tests.

2011-09-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening. Paint the Qt-Mac bot green.

        * platform/qt-mac/Skipped: Skip new failing tests.

2011-09-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add Qt specific expected results for new passing tests.

        * platform/qt/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
        * platform/qt/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
        * platform/qt/fast/borders/border-image-outset-expected.png: Added.
        * platform/qt/fast/borders/border-image-outset-expected.txt: Added.
        * platform/qt/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
        * platform/qt/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
        * platform/qt/fast/borders/border-image-outset-split-inline-expected.png: Added.
        * platform/qt/fast/borders/border-image-outset-split-inline-expected.txt: Added.
        * platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
        * platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
        * platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
        * platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
        * platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
        * platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
        * platform/qt/fast/reflections/reflection-masks-outset-expected.png: Added.
        * platform/qt/fast/reflections/reflection-masks-outset-expected.txt: Added.

2011-09-10  Ryosuke Niwa  <rniwa@webkit.org>

        Skip fast/images/support-broken-image-delegate.html temporarily on Mac.
        The failure is tracked by the bug 67898.

        * platform/mac/Skipped:

2011-09-09  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67861
        
        Implement border-image-outset (and the mask equivalents).

        Reviewed by Beth Dakin.

        * fast/borders/block-mask-overlay-image-outset.html: Added.
        * fast/borders/block-mask-overlay-image.html~: Added.
        * fast/borders/border-image-outset-in-shorthand.html: Added.
        * fast/borders/border-image-outset-split-inline-vertical-lr.html: Added.
        * fast/borders/border-image-outset-split-inline.html: Added.
        * fast/borders/border-image-outset.html: Added.
        * fast/borders/inline-mask-overlay-image-outset-vertical-rl.html: Added.
        * fast/borders/inline-mask-overlay-image-outset.html: Added.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-with-zoom-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
        * fast/reflections/reflection-computed-style-expected.txt:
        * fast/reflections/reflection-masks-outset.html: Added.
        * platform/mac/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
        * platform/mac/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
        * platform/mac/fast/borders/border-image-outset-expected.png: Added.
        * platform/mac/fast/borders/border-image-outset-expected.txt: Added.
        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
        * platform/mac/fast/borders/border-image-outset-split-inline-expected.png: Added.
        * platform/mac/fast/borders/border-image-outset-split-inline-expected.txt: Added.
        * platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
        * platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
        * platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
        * platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
        * platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
        * platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
        * platform/mac/fast/reflections/reflection-masks-outset-expected.png: Added.
        * platform/mac/fast/reflections/reflection-masks-outset-expected.txt: Added.
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-10  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94897.

        * platform/qt/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/qt/svg/custom/simple-text-double-shadow-expected.txt: Added.

2011-09-10  Ken Buchanan <kenrb@chromium.org>

        Crash due to bad data in SVGDocumentExtensions m_pendingResources.
        https://bugs.webkit.org/show_bug.cgi?id=67488

        Reviewed by Nikolas Zimmermann.

        Test added: validating that the crash referenced in the bug is not present.

        * svg/dom/SVGStyledElement-pendingResource-crash.html: Added.
        * svg/dom/SVGStyledElement-pendingResource-crash-expected.txt: Added.
        * svg/dom/resources/SVGStyledElement-pendingResource-crash.svg: Added.

2011-09-09  Erik Arvidsson  <arv@chromium.org>

        Move Element.contains to Node
        https://bugs.webkit.org/show_bug.cgi?id=67651

        Reviewed by Darin Adler.

        This moves the contains method from Element to Node as in the DOM4 working draft: 
        http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains

        This also special cases Document contains to make it O(1) instead of O(depth).

        * fast/dom/Element/contains-method-expected.txt: Removed.
        * fast/dom/Element/script-tests/contains-method.js: Removed.
        * fast/dom/Node/contains-method-expected.txt: Added.
        * fast/dom/Node/contains-method.html: Renamed from LayoutTests/fast/dom/Element/contains-method.html.
        * fast/dom/Node/script-tests/contains-method.js: Added. Expanded tests.
        * fast/dom/Window/window-properties-expected.txt:
        * perf/document-contains-expected.txt: Added.
        * perf/document-contains.html: Added.
                                       Perf test to ensure that document.contains is O(1).
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-09-09  Tim Horton  <timothy_horton@apple.com>

        Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
        https://bugs.webkit.org/show_bug.cgi?id=67543
        <rdar://problem/10070536>

        Reviewed by Darin Adler.

        Add a test ensuring that text with 0px blur CSS shadow doesn't get rendered
        with a second shadow when inside a transparency layer.

        * platform/mac/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/mac/svg/custom/simple-text-double-shadow-expected.txt: Added.
        * svg/custom/simple-text-double-shadow.svg: Added.

2011-09-09  Matthew Delaney  <mdelaney@apple.com>

        Update Skipped lists for mac and mac-lion w.r.t. canvas
        https://bugs.webkit.org/show_bug.cgi?id=67867

        Reviewed by Simon Fraser.

        * platform/mac-lion/Skipped:
        * platform/mac/Skipped:

2011-09-09  Kentaro Hara  <haraken@google.com>

        Generate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended attribute
        https://bugs.webkit.org/show_bug.cgi?id=67458

        Reviewed by Adam Barth.

        Added a test case for "new WebKitCSSMatrix(null)" and "new WebKitCSSMatrix(undefined)".

        * fast/dom/Window/custom-constructors-expected.txt:
        * fast/dom/Window/custom-constructors.html:

2011-09-09  Dominic Mazzoni  <dmazzoni@google.com>

        Add a test to catch a case where an assertion failure or
        crash is triggered in AccessibilityRenderObject when deleting
        a node that includes a continuation.
        https://bugs.webkit.org/show_bug.cgi?id=44149

        Reviewed by Chris Fleizach.

        * accessibility/div-within-anchors-causes-crash.html: Added.
        * platform/mac/accessibility/div-within-anchors-causes-crash-expected.txt: Added.

2011-09-09  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        CSS rules not being applied when a hidden field is inserted between an input[type=checkbox] and a label
        https://bugs.webkit.org/show_bug.cgi?id=66887

        Reviewed by David Hyatt.

        * fast/css/adjacent-sibling-selector-expected.txt: Added.
        * fast/css/adjacent-sibling-selector.html: Added.

2011-09-09  Tom Sepez  <tsepez@chromium.org>

        Add test cases for xss auditor encoding bugs.
        https://bugs.webkit.org/show_bug.cgi?id=67134

        Reviewed by Daniel Bates.

        * http/tests/security/xssAuditor/resources/echo-intertag.pl:
        * http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt: Added.
        * http/tests/security/xssAuditor/xss-filter-bypass-big5.html: Added.
        * http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt: Added.
        * http/tests/security/xssAuditor/xss-filter-bypass-sjis.html: Added.

2011-09-09  Chris Rogers  <crogers@google.com>

        AudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
        https://bugs.webkit.org/show_bug.cgi?id=67749

        Reviewed by Kenneth Russell.

        * webaudio/audiobuffersource-channels-expected.txt: Added.
        * webaudio/audiobuffersource-channels.html: Added.

2011-09-09  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaseline.

        * platform/gtk/css2.1/t090204-display-change-01-b-ao-expected.txt:

2011-09-09  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium, GTK, Qt rebaselines for r94857.

        * platform/chromium-linux/fast/lists/list-marker-before-content-table-expected.png: Added.
        * platform/chromium-linux/fast/runin/runin-generated-before-content-expected.png: Added.
        * platform/chromium-win-xp/fast/lists: Removed.
        * platform/chromium-win/fast/lists/list-marker-before-content-table-expected.png: Added.
        * platform/chromium-win/fast/runin/runin-generated-before-content-expected.png: Added.
        * platform/gtk/fast/lists/list-marker-before-content-table-expected.txt: Added.
        * platform/gtk/fast/runin/runin-generated-before-content-expected.txt: Added.
        * platform/mac/fast/lists/list-marker-before-content-table-expected.txt: Added.
        * platform/mac/fast/runin/runin-generated-before-content-expected.txt: Added.
        * platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
        * platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.

2011-09-09  Dominic Mazzoni  <dmazzoni@google.com>

        Add a test to catch a case where adjacent continuations were
        causing nodes to get added to the accessibility tree twice, leading
        to an assertion failure or a crash. The test expectations are
        currently Mac-specific, so added the test to the Skipped file for
        gtk and win.
        https://bugs.webkit.org/show_bug.cgi?id=61805

        Reviewed by Chris Fleizach.

        * accessibility/adjacent-continuations-cause-assertion-failure.html: Added.
        * platform/mac/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.

2011-09-08  Kentaro Hara  <haraken@google.com>

        Implement a WebKitAnimationEvent constructor.
        https://bugs.webkit.org/show_bug.cgi?id=67825

        Checks the behavior of the WebKitAnimationEvent constructor.

        Reviewed by Sam Weinig.

        * fast/dom/constructed-objects-prototypes-expected.txt:
        * fast/events/constructors/webkit-animation-event-constructor-expected.txt: Added.
        * fast/events/constructors/webkit-animation-event-constructor.html: Added.
        * platform/chromium/test_expectations.txt: Skipped webkit-animation-event-constructor.html, since V8 does not yet have the WebKitAnimationEvent constructor.

2011-09-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94857. Add platform specific expected files.

        * platform/qt/fast/lists/list-marker-before-content-table-expected.png: Added.
        * platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
        * platform/qt/fast/runin/runin-generated-before-content-expected.png: Added.
        * platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.

2011-09-08  Abhishek Arya  <inferno@chromium.org>

        :before content rendering issues with list markers and run-ins.
        https://bugs.webkit.org/show_bug.cgi?id=67735

        Reviewed by Dave Hyatt.

        * fast/lists/list-marker-before-content-table-expected.png: Added.
        * fast/lists/list-marker-before-content-table-expected.txt: Added.
        * fast/lists/list-marker-before-content-table.html: Added.
        * fast/runin/runin-generated-before-content-expected.png: Added.
        * fast/runin/runin-generated-before-content-expected.txt: Added.
        * fast/runin/runin-generated-before-content.html: Added.

2011-09-09  Nate Chapin  <japhet@chromium.org>

        Chromium leopard css3 baselines, and new mac gpu baselines.

        * platform/chromium-cg-mac-leopard/css3: Added.
        * platform/chromium-cg-mac-leopard/css3/bdi-element-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css3/bdi-element-expected.txt: Added.
        * platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/chromium-gpu-cg-mac/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Removed.
        * platform/chromium-gpu/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-09  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, GPU edition)
        Added reference images.

        * platform/chromium-gpu-mac: Added.
        (remaining files omitted for brevity)

2011-09-09  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>

        [Qt] Unreviewed. Update test expectations for css3/bdi-element.html after r94822

        * platform/qt/css3/bdi-element-expected.png: Added.
        * platform/qt/css3/bdi-element-expected.txt: Added.

2011-09-09  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>

        [Qt] http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html fails on Qt
        https://bugs.webkit.org/show_bug.cgi?id=67842

        * platform/qt/Skipped:

2011-09-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94536.
        http://trac.webkit.org/changeset/94536
        https://bugs.webkit.org/show_bug.cgi?id=67836

        breaks absoluteLocation() of RelatedMouseEvent (Requested by
        jknotten on #webkit).

        * fast/events/page-scaled-mouse-click-expected.txt: Removed.
        * fast/events/page-scaled-mouse-click.html: Removed.
        * fast/events/script-tests/page-scaled-mouse-click.js: Removed.

2011-09-08  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: live edit both for JS and CSS is not discoverable.
        https://bugs.webkit.org/show_bug.cgi?id=65962

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/scripts-panel.html:

2011-09-09  Shinya Kawanaka  <shinyak@google.com>

        Crashes in WebCore::AppendNodeCommand::create().
        https://bugs.webkit.org/show_bug.cgi?id=67767

        Reviewed by Darin Adler.

        Added a crash test case.

        * editing/execCommand/ident-crashes-topnode-is-text-expected.txt: Added.
        * editing/execCommand/ident-crashes-topnode-is-text.html: Added.

2011-09-09  Shinya Kawanaka  <shinyak@google.com>

        Crashes in WebCore::ApplyStyleCommand.doApply()
        https://bugs.webkit.org/show_bug.cgi?id=67765

        Reviewed by Ryosuke Niwa.

        WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.

        * editing/style/remove-format-without-enclosing-block-expected.txt: Added.
        * editing/style/remove-format-without-enclosing-block.html: Added.

2011-09-09  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Update test expectations for hyphenate-limit-lines.html.

        * platform/chromium/test_expectations.txt:

2011-09-08  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed, remove wrong chromium expectations for hyphenate-limit-lines.html and mark the test as failing IMAGE+TEXT.

        I rebaselined the expectations yesterday but actualy Chromium doesn't support hyphenation yet.
        See CR47083. 

        * platform/chromium-cg-mac/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-linux/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-mac/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.png: Removed.
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-09-08  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: chromium/compositing/zoom-animator-scale-test missing on leopard gpu

2011-09-08  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt: add webaudio/sample-accurate-scheduling.html

2011-09-08  Annie Sullivan  <sullivan@chromium.org>

        Crashes in WebCore::InsertNodeBeforeCommand constructor.
        https://bugs.webkit.org/show_bug.cgi?id=67763

        Reviewed by Ryosuke Niwa.

        Tests for crash when the selection is outside the contenteditable node.

        * editing/inserting/insert-paragraph-selection-outside-contenteditable-expected.txt: Added.
        * editing/inserting/insert-paragraph-selection-outside-contenteditable.html: Added.

2011-09-08  Daniel Bates  <dbates@webkit.org>

        XSS filter bypass via non-standard URL encoding
        https://bugs.webkit.org/show_bug.cgi?id=66588

        Reviewed by Adam Barth.

        Add tests for decoding non-standard 16-bit Unicode escape sequences.

        Also add a test to ensure that we don't cause an assertion failure when
        calling window.open("").

        * http/tests/security/xssAuditor/resources/echo-intertag-decode-16bit-unicode.pl: Added.
        (isUTF16Surrogate):
        (decodeRunOf16BitUnicodeEscapeSequences):
        (decode16BitUnicodeEscapeSequences):
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode2-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode2.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode3-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode3.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode4-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode5-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode5.html: Added.
        * http/tests/security/xssAuditor/script-tag-with-fancy-unicode-expected.txt: Updated expected
        result since we now pass this test. We should rename this file to something more descriptive,
        see <https://bugs.webkit.org/show_bug.cgi?id=67818>.
        * http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode.html: Added.
        * http/tests/security/xssAuditor/window-open-without-url-should-not-assert-expected.txt: Added.
        * http/tests/security/xssAuditor/window-open-without-url-should-not-assert.html: Added.

2011-09-08  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed. Chromium rebaseline of css3/bdi-element.html

        * platform/chromium-cg-mac/css3/bdi-element-expected.png: Added.
        * platform/chromium-linux/css3/bdi-element-expected.png: Added.
        * platform/chromium-mac/css3/bdi-element-expected.png: Added.
        * platform/chromium-win/css3/bdi-element-expected.png: Added.
        * platform/chromium-win/css3/bdi-element-expected.txt: Added.
        * platform/chromium/css3/bdi-element-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-08  Eric Seidel  <eric@webkit.org>

        [BiDi] Add support for the BDI element
        https://bugs.webkit.org/show_bug.cgi?id=50913

        Reviewed by Ryosuke Niwa.

        * css3/bdi-element.html: Added.
        * platform/mac/css3/bdi-element-expected.png: Added.
        * platform/mac/css3/bdi-element-expected.txt: Added.

2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed, rolling out r94809.
        http://trac.webkit.org/changeset/94809
        https://bugs.webkit.org/show_bug.cgi?id=67718

        commit _still_ premature, despite CQ eagerness

        * fast/css/style-scoped/basic-attribute-expected.txt: Removed.
        * fast/css/style-scoped/basic-attribute.html: Removed.

2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>

        <style scoped>: Add 'scoped' attribute
        https://bugs.webkit.org/show_bug.cgi?id=67718

        Test setting/resetting of the 'scoped' attribute in various circumstances.

        Reviewed by Dimitri Glazkov.

        * fast/css/style-scoped/basic-attribute-expected.txt: Added.
        * fast/css/style-scoped/basic-attribute.html: Added.

2011-09-08  Tony Chang  <tony@chromium.org>

        remove fast/exclusions/triangle-exclusion.html which was originally added as a placeholder
        https://bugs.webkit.org/show_bug.cgi?id=67795

        * fast/exclusions/triangle-exclusion.html: Removed.

2011-09-08  Nate Chapin  <japhet@chromium.org>

        Chromium rebaseline zoom-animator-scale-test.html and mark a couple
        svg-as-background tests flaky on chromium-win.

        * platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Removed.
        * platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Removed.
        * platform/chromium-gpu-win/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94781.
        http://trac.webkit.org/changeset/94781
        https://bugs.webkit.org/show_bug.cgi?id=67806

        Broke Objective-C binding on Mac (Requested by rniwa on
        #webkit).

        * fast/dom/Element/contains-method-expected.txt: Added.
        * fast/dom/Element/contains-method.html: Renamed from LayoutTests/fast/dom/Node/contains-method.html.
        * fast/dom/Element/script-tests/contains-method.js: Added.
        * fast/dom/Node/contains-method-expected.txt: Removed.
        * fast/dom/Node/script-tests/contains-method.js: Removed.
        * fast/dom/Window/window-properties-expected.txt:
        * perf/document-contains-expected.txt: Removed.
        * perf/document-contains.html: Removed.
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-09-08  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] evetSender.keyDown is unimplemented
        https://bugs.webkit.org/show_bug.cgi?id=57515

        * platform/wk2/Skipped: Skip fast/dom/shadow/access-key.html.

2011-09-08  Ben Wagner  <bungeman@chromium.org>

        Chromium shadow-buffer-partial test change.
        Part1: Update and disable test.
        https://bugs.webkit.org/show_bug.cgi?id=67724

        Reviewed by Kenneth Russell.

        * platform/chromium-win/fast/box-shadow/shadow-buffer-partial-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-08  Jarred Nicholls  <jarred@sencha.com>

        frame-loading-via-document-write.html test cases have extra slash in path
        https://bugs.webkit.org/show_bug.cgi?id=67784
        
        Removing extra slash in path: file:////tmp/... => file:///tmp/...

        Reviewed by Andreas Kling.

        * fast/dom/frame-loading-via-document-write.html:
        * http/tests/security/frame-loading-via-document-write.html:

2011-09-08  Alexey Proskuryakov  <ap@apple.com>

        Some file-url-mimetypes subtests fail on rare extensions
        https://bugs.webkit.org/show_bug.cgi?id=67679

        * platform/mac-leopard/platform/mac/fast/loader/file-url-mimetypes-2-expected.txt:
        * platform/mac-leopard/platform/mac/fast/loader/file-url-mimetypes-expected.txt:
        * platform/mac-snowleopard/platform/mac/fast/loader/file-url-mimetypes-2-expected.txt:
        * platform/mac-snowleopard/platform/mac/fast/loader/file-url-mimetypes-expected.txt:
        Update platform specific results, too.

2011-09-08  Shinya Kawanaka  <shinyak@google.com>

        Crashes in WebCore::ReplaceSelectionCommand::doApply
        https://bugs.webkit.org/show_bug.cgi?id=67762

        Reviewed by Ryosuke Niwa.

        WebCore::enclosingBlock may return NULL, but its return value was not checked. This patch checks it.

        * editing/inserting/insert-without-enclosing-block-expected.txt: Added.
        * editing/inserting/insert-without-enclosing-block.html: Added.

2011-09-08  Nate Chapin  <japhet@chromium.org>

        Chromium baselines for new tests added in r94775 and r94779.

        * platform/chromium-cg-mac/platform/chromium/fast/repaint: Added.
        * platform/chromium-cg-mac/platform/chromium/fast/repaint/fixed-layout-360x240-expected.png: Added.
        * platform/chromium-linux/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/chromium-linux/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/chromium-win/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/chromium-win/css3/unicode-bidi-isolate-aharon-expected.txt: Added.
        * platform/chromium-win/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/chromium-win/css3/unicode-bidi-isolate-basic-expected.txt: Added.

2011-09-08  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94771.

        * fast/dom/constructed-objects-prototypes-expected.txt: Update, it will pass on Qt, GTK, SL, Win.
        * platform/qt/fast/dom/constructed-objects-prototypes-expected.txt: Removed.

2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94784.
        http://trac.webkit.org/changeset/94784
        https://bugs.webkit.org/show_bug.cgi?id=67796

        Commit was premature (Requested by rolandsteiner on #webkit).

        * fast/css/style-scoped/basic-attribute-expected.txt: Removed.
        * fast/css/style-scoped/basic-attribute.html: Removed.

2011-09-08  W. James MacLean  <wjmaclean@chromium.org>

        [chromium] Add backend compositor support for rescaling (zooming) textures during zoom animation.
        https://bugs.webkit.org/show_bug.cgi?id=66472

        Initial tests for zoomAnimatorChromium backend.

        Reviewed by James Robinson.

        * platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
        * platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Added.
        * platform/chromium/compositing/zoom-animator-scale-test.html: Added.

2011-09-08  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Skip tests introduced in r94775 because of missing test fonts.
        * platform/qt/fast/dom/constructed-objects-prototypes-expected.txt: Added. (test introduced in r94771)

2011-09-08  Eric Carlson  <eric.carlson@apple.com>

        HTMLMediaElement is missing initialTime attribute
        https://bugs.webkit.org/show_bug.cgi?id=67791

        Reviewed by Darin Adler.

        * media/media-initialTime-expected.txt: Added.
        * media/media-initialTime.html: Added.

2011-09-03  Robert Hogan  <robert@webkit.org>

        Elements with position:absolute don't move to correct position after images load
        https://bugs.webkit.org/show_bug.cgi?id=54611

        Reviewed by Simon Fraser.

        * fast/block/positioning/absolute-layout-after-image-load-expected.txt: Added.
        * fast/block/positioning/absolute-layout-after-image-load.html: Added.
        * fast/block/positioning/resources/absolute-layout-after-image-load-2.html: Added.

2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>

        <style scoped>: Add 'scoped' attribute
        https://bugs.webkit.org/show_bug.cgi?id=67718

        Test setting/resetting of the 'scoped' attribute in various circumstances.

        Reviewed by Dimitri Glazkov.

        * fast/css/style-scoped/basic-attribute-expected.txt: Added.
        * fast/css/style-scoped/basic-attribute.html: Added.

2011-09-08  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia) part 2
        https://bugs.webkit.org/show_bug.cgi?id=67751

        Reviewed by Kenneth Russell.

        * fast/borders/border-radius-circle-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-circle-expected.txt.
        * fast/borders/border-radius-groove-01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-groove-01-expected.txt.
        * fast/borders/border-radius-groove-02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-groove-02-expected.txt.
        * fast/borders/border-radius-groove-03-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-groove-03-expected.txt.
        * fast/borders/border-radius-wide-border-01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-wide-border-01-expected.txt.
        * fast/borders/border-radius-wide-border-02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-radius-wide-border-02-expected.txt.
        * fast/css/text-input-with-webkit-border-radius-expected.png: Removed.
        * fast/gradients/background-clipped-expected.txt: Renamed from LayoutTests/platform/gtk/fast/gradients/background-clipped-expected.txt.
        * fast/transforms/rotated-transform-affects-scrolling-1-expected.txt: Renamed from LayoutTests/platform/gtk/fast/transforms/rotated-transform-affects-scrolling-1-expected.txt.
        * fast/transforms/rotated-transform-affects-scrolling-2-expected.txt: Renamed from LayoutTests/platform/gtk/fast/transforms/rotated-transform-affects-scrolling-2-expected.txt.
        * fast/transforms/shadows-expected.txt: Renamed from LayoutTests/platform/gtk/fast/transforms/shadows-expected.txt.
        * platform/chromium-linux/fast/: 20 changes.
        * platform/chromium-win/fast/: 19 changes.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/: 9 changes.
        * platform/qt/fast/: 10 removals.

2011-09-08  Erik Arvidsson  <arv@chromium.org>

        Move Element.contains to Node
        https://bugs.webkit.org/show_bug.cgi?id=67651

        Reviewed by Darin Adler.

        This moves the contains method from Element to Node as in the DOM4 working draft: 
        http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains

        This also special cases Document contains to make it O(1) instead of O(depth).

        * fast/dom/Element/contains-method-expected.txt: Removed.
        * fast/dom/Element/script-tests/contains-method.js: Removed.
        * fast/dom/Node/contains-method-expected.txt: Added.
        * fast/dom/Node/contains-method.html: Renamed from LayoutTests/fast/dom/Element/contains-method.html.
        * fast/dom/Node/script-tests/contains-method.js: Added. Expanded tests.
        * fast/dom/Window/window-properties-expected.txt:
        * perf/document-contains-expected.txt: Added.
        * perf/document-contains.html: Added.
                                       Perf test to ensure that document.contains is O(1).
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-09-08  Chris Rogers  <crogers@google.com>

        Check AudioContext createChannelMerger() for thread safety
        https://bugs.webkit.org/show_bug.cgi?id=67247

        Reviewed by Kenneth Russell.

        * webaudio/audiochannelmerger-stereo-expected.txt: Added.
        * webaudio/audiochannelmerger-stereo.html: Added.

2011-09-08  Fady Samuel  <fsamuel@chromium.org>

        Fixed Layout Mode should be adjustable from layoutTestController for testing on Chromium platforms
        https://bugs.webkit.org/show_bug.cgi?id=67723

        Reviewed by Adam Barth.

        * platform/chromium/fast/repaint/fixed-layout-360x240-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-layout-360x240-expected.txt: Added.
        * platform/chromium/fast/repaint/fixed-layout-360x240.html: Added.

2011-04-19  Eric Seidel  <eric@webkit.org>

        Reviewed by Ryosuke Niwa.

        [BiDi] [CSS3] MASTER: Add support for the unicode-bidi:isolate CSS property
        https://bugs.webkit.org/show_bug.cgi?id=50912

        Two new tests for testing unicode-bidi: isolate behavior.
        Note that the test from Aharon Lanin has one failing subtest
        I've asked him if the test might have a typo in:
        https://bugs.webkit.org/show_bug.cgi?id=50912#c30

        * css3/unicode-bidi-isolate-aharon.html: Added.
         - Some various unicode-bidi: isolate tests from Aharon.
        * css3/unicode-bidi-isolate-basic.html: Added.
         - This test tries all possible orderings of strong-LTR, strong-RTL and neutral characters
           across unicode-bidi: isolate spans to make sure that we match expected rendering.
         - A little red bleeds through the test, but that appears to be from anti-aliasing
           and possible automatic font kerning, not layout failures.
        * platform/mac/css3/unicode-bidi-isolate-aharon-expected.png: Added.
        * platform/mac/css3/unicode-bidi-isolate-aharon-expected.txt: Added.
        * platform/mac/css3/unicode-bidi-isolate-basic-expected.png: Added.
        * platform/mac/css3/unicode-bidi-isolate-basic-expected.txt: Added.

2011-09-08  Luke Macpherson   <macpherson@chromium.org>

        Update tests for inherit and initial values for -webkit-columns and related CSS properties.
        https://bugs.webkit.org/show_bug.cgi?id=67685

        Reviewed by Eric Seidel.

        * fast/multicol/inherit-column-values-expected.txt:
        * fast/multicol/inherit-column-values.html:
        * fast/multicol/initial-column-values-expected.txt:
        * fast/multicol/initial-column-values.html:

2011-09-08  Kentaro Hara  <haraken@google.com>

        Implement a ProgressEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=67537

        Reviewed by Sam Weinig.

        * fast/events/constructors/progress-event-constructor-expected.txt: Added.
        * fast/events/constructors/progress-event-constructor.html: Added. Checks the behavior of the ProgressEvent constructor.
        * platform/chromium/test_expectations.txt: Skipped progress-event-constructor.html, since V8 does not yet have the ProgressEvent constructor.

2011-09-08  Nate Chapin  <japhet@chromium.org>

        Rebaseline svg/W3C-SVG-1.1-SE/filters-image-05-f.svg text for chromium win/linux.

        * platform/chromium-cg-mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.

2011-09-08  Mark Pilgrim  <pilgrim@chromium.org>

        Test how animation methods react to too few arguments
        https://bugs.webkit.org/show_bug.cgi?id=66539

        Reviewed by Darin Adler.

        * fast/animation/request-animation-frame-missing-arguments-expected.txt: Added.
        * fast/animation/request-animation-frame-missing-arguments.html: Added.

2011-09-08  Hayato Ito  <hayato@chromium.org>

        Add a layout test for the case where an accesskey is defined in shadow DOM.

        https://bugs.webkit.org/show_bug.cgi?id=67096

        Reviewed by Dimitri Glazkov.

        * fast/dom/shadow/access-key-expected.txt: Added.
        * fast/dom/shadow/access-key.html: Added.

2011-09-08  Alexey Proskuryakov  <ap@apple.com>

        Some file-url-mimetypes subtests fail on rare extensions
        https://bugs.webkit.org/show_bug.cgi?id=67679

        Reviewed by Darin Adler.

        * platform/mac/fast/loader/file-url-mimetypes-2-expected.txt:
        * platform/mac/fast/loader/file-url-mimetypes-2.html:
        * platform/mac/fast/loader/file-url-mimetypes-expected.txt:
        * platform/mac/fast/loader/file-url-mimetypes.html:
        It doesn't appear important to investigate why a few subtests fail on some machines, so
        just removing those.

2011-09-08  Alexey Proskuryakov  <ap@apple.com>

        Some cookie related tests fail on Lion
        https://bugs.webkit.org/show_bug.cgi?id=67674

        Reviewed by Mark Rowe.

        Use private browsing mode to work around a CFNetwork issue where these tests can affect each
        other's results. This should not affect their behavior in any other way.

        * http/tests/security/cookies/third-party-cookie-blocking-main-frame.html:
        * http/tests/security/cookies/third-party-cookie-blocking-user-action.html:
        * http/tests/security/cookies/third-party-cookie-blocking.html:

2011-09-08  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaseline filters-image-05-f.svg expected output (text) for SnowLeopard.
        https://bugs.webkit.org/show_bug.cgi?id=67781

        Unreviewed rebaseline for Mac.

        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.

2011-09-08  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium expectations tweaks.

        * platform/chromium-cg-mac-leopard/tables/mozilla_expected_failures/bugs/bug85016-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-09-07  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: get rid of RawSourceCode.createSourceMappingIfNeeded.
        https://bugs.webkit.org/show_bug.cgi?id=67717

        Merge source-file.html into raw-source-code.html.

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/raw-source-code.html:
        * inspector/debugger/source-file.html: Removed.

2011-09-08  Cary Clark  <caryclark@google.com>

        Unreviewed; removed one erroneous baseline (Skia on Mac)

        * platform/chromium-mac/fast/frames/lots-of-objects-expected.txt: Removed.

2011-09-06  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
        https://bugs.webkit.org/show_bug.cgi?id=67647

        1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
        2) Add RawSourceCode unit tests.
        3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/raw-source-code-expected.txt: Added.
        * inspector/debugger/raw-source-code.html: Added.
        * inspector/debugger/script-formatter.html:
        * inspector/debugger/source-file.html:

2011-09-08  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of files)
        Updated newer tests with reference images.
        Deleted images with correct fallbacks.

        * platform/chromium-mac/http/tests/eventsource: Added.
        (remaining files omitted for brevity)

2011-09-08  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Skip a new failing test.

2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94695.
        http://trac.webkit.org/changeset/94695
        https://bugs.webkit.org/show_bug.cgi?id=67776

        Hitting an assertion on Snow Leopard, Qt, GTK (Requested by
        Zoltan on #webkit).

        * fast/block/positioning/absolute-layout-after-image-load-expected.txt: Removed.
        * fast/block/positioning/absolute-layout-after-image-load.html: Removed.
        * fast/block/positioning/positioned-float-layout-after-image-load-expected.txt: Removed.
        * fast/block/positioning/positioned-float-layout-after-image-load.html: Removed.
        * fast/block/positioning/resources/absolute-layout-after-image-load-2.html: Removed.
        * fast/block/positioning/resources/positioned-float-layout-after-image-load-2.html: Removed.

2011-09-08  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Couple of tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        https://bugs.webkit.org/show_bug.cgi?id=52810

        * platform/qt/Skipped: Skip svg/W3C-SVG-1.1-SE/filters-image-05-f.svg, because it fails on 64 bit.

2011-09-08  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed rebaseline for chromium.

        * platform/chromium-cg-mac-leopard/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/chromium-cg-mac/svg/custom/feComponentTransfer-Table-expected.png:

2011-09-08  Oliver Varga  <voliver@inf.u-szeged.hu>

        [Qt] fast/css/line-after-floating-div.html fails
        https://bugs.webkit.org/show_bug.cgi?id=67772

        Reviewed by Csaba Osztrogonác.

        * platform/qt/Skipped: Skip it until fix.

2011-09-08  Oliver Varga  <voliver@inf.u-szeged.hu>

        Gardening: add missing result after: r94710.
        https://bugs.webkit.org/show_bug.cgi?id=67768

        Reviewed by Zoltan Herczeg.

        * platform/qt/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/qt/fast/text/hyphenate-limit-lines-expected.txt: Added.

2011-09-08  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Rebaselines for chromium.

        * platform/chromium-cg-mac-leopard/fast/css/line-after-floating-div-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/line-after-floating-div-expected.png:
        * platform/chromium-cg-mac/fast/css/line-after-floating-div-expected.txt: Removed.
        * platform/chromium-cg-mac/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/chromium-linux/fast/css/line-after-floating-div-expected.png:
        * platform/chromium-linux/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/chromium-win/fast/css/line-after-floating-div-expected.png:
        * platform/chromium-win/fast/css/line-after-floating-div-expected.txt:
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/chromium-win/fast/text/hyphenate-limit-lines-expected.txt: Added.
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-09-07  Ben Wells  <benwells@chromium.org>

        Fix typo in test_expectations introduced with r94725
        https://bugs.webkit.org/show_bug.cgi?id=67758

        image-makering.html -> image-color-matching.html

        Reviewed by Ryosuke Niwa.

        * platform/chromium/test_expectations.txt:

2011-09-07  Dan Bernstein  <mitz@apple.com>

        Added Snow Leopard results for this new test.

        * platform/mac-snowleopard/fast/text/hyphenate-limit-lines-expected.txt: Added.

2011-09-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94674 and r94689.
        http://trac.webkit.org/changeset/94674
        http://trac.webkit.org/changeset/94689
        https://bugs.webkit.org/show_bug.cgi?id=67754

        Broke inspector/debugger/script-formatter.html (Requested by
        rniwa on #webkit).

        * inspector/debugger/raw-source-code-expected.txt: Removed.
        * inspector/debugger/raw-source-code.html: Removed.
        * inspector/debugger/script-formatter.html:
        * inspector/debugger/source-file.html:

2011-09-07  Adam Barth  <abarth@webkit.org>

        Update baselines for svg/as-background-image.  These results all appear
        correct and test_expectations indicates that they just need new
        baselines.

        * platform/chromium-cg-mac/svg/as-background-image/svg-as-background-5-expected.png: Added.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-1-expected.png:
        * platform/chromium-linux/svg/as-background-image/svg-as-background-3-expected.png:
        * platform/chromium-linux/svg/as-background-image/svg-as-background-5-expected.png:
        * platform/chromium-win-vista/svg/as-background-image: Added.
        * platform/chromium-win-vista/svg/as-background-image/svg-as-background-1-expected.png: Added.
        * platform/chromium-win-vista/svg/as-background-image/svg-as-background-3-expected.png: Added.
        * platform/chromium-win/svg/as-background-image/animated-svg-as-background-expected.png:
        * platform/chromium-win/svg/as-background-image/svg-as-background-1-expected.png:
        * platform/chromium-win/svg/as-background-image/svg-as-background-3-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/svg/as-background-image/animated-svg-as-background-expected.txt: Removed.
        * platform/gtk/svg/as-background-image/svg-as-background-1-expected.txt: Removed.
        * platform/gtk/svg/as-background-image/svg-as-background-3-expected.txt: Removed.
        * platform/gtk/svg/as-background-image/svg-as-background-5-expected.txt: Removed.
        * svg/as-background-image/animated-svg-as-background-expected.txt: Added.
        * svg/as-background-image/svg-as-background-1-expected.txt: Added.
        * svg/as-background-image/svg-as-background-3-expected.txt: Added.
        * svg/as-background-image/svg-as-background-5-expected.txt: Added.

2011-09-07  Adam Barth  <abarth@webkit.org>

        These tests just differ in how JSC and V8 report error messages.

        * platform/chromium-cg-mac-leopard/http/tests/security: Added.
        * platform/chromium-cg-mac-leopard/http/tests/security/xss-DENIED-xml-external-entity-expected.txt: Added.
        * platform/chromium-cg-mac-leopard/http/tests/security/xss-DENIED-xsl-external-entity-expected.txt: Added.
        * platform/chromium/http/tests/security/xss-DENIED-assign-location-href-javascript-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-07  Adam Barth  <abarth@webkit.org>

        Our results here reflect an intentional difference between GURL and
        KURL.  KURL doesn't handle non-ASCII characters in the fragment in the
        same was as IE whereas GURL does.

        * platform/chromium/http/tests/uri: Added.
        * platform/chromium/http/tests/uri/resolve-encoding-relative-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-07  Adam Barth  <abarth@webkit.org>

        Our behavior is correct with respect to the new cookie RFC.  I'm told
        that CFNetwork is going to change this behavior to match every other
        browser.

        * platform/chromium/http/tests/cookies: Added.
        * platform/chromium/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94714 and r94723.
        http://trac.webkit.org/changeset/94714
        http://trac.webkit.org/changeset/94723
        https://bugs.webkit.org/show_bug.cgi?id=67746

        breaks gtk-linux tests with assertion failure (Requested by
        thorton on #webkit).

        * platform/chromium-linux/svg/custom/simple-text-double-shadow.png: Removed.
        * platform/chromium-mac/svg/custom/simple-text-double-shadow.png: Removed.
        * platform/chromium-win/svg/custom/simple-text-double-shadow.png: Removed.
        * platform/mac/svg/custom/simple-text-double-shadow-expected.png: Removed.
        * platform/mac/svg/custom/simple-text-double-shadow-expected.txt: Removed.
        * svg/custom/simple-text-double-shadow.svg: Removed.

2011-09-07  Adam Barth  <abarth@webkit.org>

        Update results.  The actual results are only off by a fraction of a
        pixel around the curve in the zero.

        * platform/chromium-cg-mac/media/audio-repaint-expected.txt: Removed.
        * platform/chromium-mac/media/audio-repaint-expected.txt: Removed.
        * platform/chromium-win-xp/media: Removed.
        * platform/chromium-win/media/audio-repaint-expected.png:
        * platform/chromium/media/audio-repaint-expected.txt: Added.

2011-09-07  Adam Barth  <abarth@webkit.org>

        These results are also off by just factional pixels.

        * platform/chromium-cg-mac/tables/mozilla_expected_failures/bugs/bug85016-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug89315-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug89315-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:

2011-09-07  Adam Barth  <abarth@webkit.org>

        These results all differ only in less than one pixel border or text rendering.

        * platform/chromium-cg-mac-leopard/tables/mozilla/bugs/bug82946-2-expected.png: Added.
        * platform/chromium-cg-mac/tables/mozilla/bugs/bug82946-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug22019-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug28341-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2886-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2947-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug6674-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug22019-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2886-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2947-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug6674-expected.png:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Add Mac baseline for the test added by r94331.

        * platform/mac/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/mac/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaseline for r94710.

        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium svg/ rebaselines.

        * platform/chromium-cg-mac-leopard/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/chromium-cg-mac-leopard/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-cg-mac-leopard/svg/batik/filters/feTile-expected.png:
        * platform/chromium-cg-mac-leopard/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-cg-mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-cg-mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-cg-mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-cg-mac-leopard/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-cg-mac-leopard/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-cg-mac-leopard/svg/filters/filterRes-expected.png:
        * platform/chromium-cg-mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/chromium-cg-mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.
        * platform/chromium-cg-mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-cg-mac/svg/batik/filters/feTile-expected.png:
        * platform/chromium-cg-mac/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt: Added.
        * platform/chromium-cg-mac/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-cg-mac/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-cg-mac/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-cg-mac/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/chromium-cg-mac/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-cg-mac/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-cg-mac/svg/filters/filterRes-expected.png:
        * platform/chromium-linux/svg/batik/text/textFeatures-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/chromium-win-vista/svg/filters: Removed.
        * platform/chromium-win-xp/svg/css: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
        * platform/chromium-win/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/chromium-win/svg/custom/simple-text-double-shadow-expected.txt: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-win/svg/filters/filterRes-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        css2.1/t090204-display-change-01-b-ao.html is not attaching event listener properly
        https://bugs.webkit.org/show_bug.cgi?id=67725

        Reviewed by Dan Bernstein.

        Revert the script fix in t090204-display-change-01-b-ao.html and css2.1 test suite and
        replace line-after-floating-div.html by the fixed version.
        
        Also move the expected result for line-after-floating-div.html from fast/css as it is platform dependent.

        * css2.1/t090204-display-change-01-b-ao.html:
        * fast/css/line-after-floating-div-expected.png: Removed.
        * fast/css/line-after-floating-div-expected.txt: Removed.
        * fast/css/line-after-floating-div.html:
        * platform/mac/css2.1/t090204-display-change-01-b-ao-expected.png:
        * platform/mac/css2.1/t090204-display-change-01-b-ao-expected.txt:
        * platform/mac/fast/css/line-after-floating-div-expected.png: Copied from
        LayoutTests/fast/css/line-after-floating-div-expected.png.
        * platform/mac/fast/css/line-after-floating-div-expected.txt: Copied from
        LayoutTests/fast/css/line-after-floating-div-expected.txt.

2011-09-07  Tim Horton  <timothy_horton@apple.com>

        Unreviewed, Chromium baselines for svg/custom/simple-text-double-shadow

        * platform/chromium-linux/svg/custom/simple-text-double-shadow.png: Added.
        * platform/chromium-mac/svg/custom/simple-text-double-shadow.png: Added.
        * platform/chromium-win/svg/custom/simple-text-double-shadow.png: Added.

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium fast/css/ rebaslines.

        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt: Added.
        * platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.
        * platform/chromium-cg-mac/fast/css/line-after-floating-div-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/line-after-floating-div-expected.txt: Added.
        * platform/chromium-linux/fast/css/getComputedStyle: Removed.
        * platform/chromium-linux/fast/css/line-after-floating-div-expected.png: Added.
        * platform/chromium-win-vista/fast/css/getComputedStyle: Removed.
        * platform/chromium-win-xp/fast/css/getComputedStyle: Removed.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/fast/css/line-after-floating-div-expected.png: Added.
        * platform/chromium-win/fast/css/line-after-floating-div-expected.txt: Added.

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, patch up some chromium gpu expectations
        that are failing on the cg mac builds.

        * platform/chromium/test_expectations.txt:

2011-09-07  Chris Fleizach  <cfleizach@apple.com>

        Changes to aria-hidden don't change VO navigation
        https://bugs.webkit.org/show_bug.cgi?id=67722

        Reviewed by Darin Adler.

        * accessibility/aria-hidden-updates-alldescendants-expected.txt: Added.
        * accessibility/aria-hidden-updates-alldescendants.html: Added.

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, upstream some chromium expected failure after skia roll,
        and rebaseline 2 tests for leopard cg.

        * platform/chromium-cg-mac-leopard/fast/borders/border-image-scaled-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/borders/border-image-side-reduction-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-09-07  Tim Horton  <timothy_horton@apple.com>

        Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
        https://bugs.webkit.org/show_bug.cgi?id=67543
        <rdar://problem/10070536>

        Reviewed by Simon Fraser.

        Add a test ensuring that text with 0px blur CSS shadow doesn't get rendered
        with a second shadow when inside a transparency layer.

        * platform/mac/svg/custom/simple-text-double-shadow-expected.png: Added.
        * platform/mac/svg/custom/simple-text-double-shadow-expected.txt: Added.
        * svg/custom/simple-text-double-shadow.svg: Added.

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium expectations update.
        Make the WONTFIX WIN LINUX for platform/chromium/rubberbanding/
        FAIL instead of IMAGE, so it's less likely to flake out.

        * platform/chromium/test_expectations.txt:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Add the forgotten expected results for r94696.

        * fast/css/line-after-floating-div-expected.png: Added.
        * fast/css/line-after-floating-div-expected.txt: Added.

2011-09-07  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/8881922> Support the hyphenate-limit-lines property
        https://bugs.webkit.org/show_bug.cgi?id=67730

        Reviewed by Dave Hyatt.

        * fast/css/parsing-hyphenate-limit-lines-expected.txt: Added.
        * fast/css/parsing-hyphenate-limit-lines.html: Added.
        * fast/text/hyphenate-limit-lines.html: Added.
        * platform/mac/fast/text/hyphenate-limit-lines-expected.png: Added.
        * platform/mac/fast/text/hyphenate-limit-lines-expected.txt: Added.

2011-09-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94697.

        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.

2011-09-07  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium expectations update.

        * platform/chromium-cg-mac-leopard/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-cg-mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-win-xp/svg/transforms: Removed.
        * platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-07  Alexei Svitkine  <asvitkine@chromium.org>

        Add test infrastructure to test rubber-banding overhang drawing along with layout tests for existing Chromium Mac overhang drawing in the non-gpu path.
        https://bugs.webkit.org/show_bug.cgi?id=67511

        Reviewed by Dimitri Glazkov.

        * platform/chromium-mac/rubberbanding: Added.
        * platform/chromium-mac/rubberbanding/overhang-e-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-e-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-e.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-n-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-n-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-n.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-ne-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-ne-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-ne.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-nw-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-nw-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-nw.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-s-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-s-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-s.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-se-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-se-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-se.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-sw-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-sw-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-sw.html: Added.
        * platform/chromium-mac/rubberbanding/overhang-w-expected.png: Added.
        * platform/chromium-mac/rubberbanding/overhang-w-expected.txt: Added.
        * platform/chromium-mac/rubberbanding/overhang-w.html: Added.

2011-09-07  David Reveman  <reveman@chromium.org>

        [Chromium] Render surface anti-aliasing.
        https://bugs.webkit.org/show_bug.cgi?id=66437

        Reviewed by James Robinson.

        Update expected results.

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/scaling/tiled-layer-recursion-expected.png:
        * platform/chromium-gpu-linux/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-linux/media/video-transformed-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-07  Xiaomei Ji  <xji@chromium.org>

        Rebaseline after r93935.

        * platform/gtk/editing/selection/move-by-word-visually-multi-line-expected.txt:

2011-09-07  Elliot Poger  <epoger@google.com>

        now that layout tests distinguish between Core Graphics and Skia
        expectations, update test_expectations accordingly.
        https://bugs.webkit.org/show_bug.cgi?id=67324

        Reviewed by Dirk Pranke.

        * platform/chromium/test_expectations.txt:

2011-09-07  W. James MacLean  <wjmaclean@chromium.org>

        Eliminate motion jitter in animated, blurred SVG image
        https://bugs.webkit.org/show_bug.cgi?id=67503

        Fixes filter shear-free transform applied to SVG images.

        Reviewed by Dirk Schulze.

        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-linux/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-linux/svg/batik/text/textFeatures-expected.txt: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-linux/svg/filters/filterRes-expected.png:
        * platform/chromium-linux/svg/filters/filterRes-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Added.
        * svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/filters-image-05-f.svg: Added.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        css2.1/t090204-display-change-01-b-ao.html is not attaching event listener properly
        https://bugs.webkit.org/show_bug.cgi?id=67725

        Reviewed by David Hyatt.

        Fixed the test to properly attach load event listener on window instead of document.

        Since this broken test also caught a bug fixed in r94693, I made a copy of this version in fast/css.

        * css2.1/t090204-display-change-01-b-ao.html:
        * fast/css/line-after-floating-div.html: Copied from LayoutTests/css2.1/t090204-display-change-01-b-ao.html.
        * platform/mac/css2.1/t090204-display-change-01-b-ao-expected.png:
        * platform/mac/css2.1/t090204-display-change-01-b-ao-expected.txt:

2011-09-03  Robert Hogan  <robert@webkit.org>

        Elements with position:absolute don't move to correct position after images load
        https://bugs.webkit.org/show_bug.cgi?id=54611

        Reviewed by Simon Fraser.

        * fast/block/positioning/absolute-layout-after-image-load-expected.txt: Added.
        * fast/block/positioning/absolute-layout-after-image-load.html: Added.
        * fast/block/positioning/resources/absolute-layout-after-image-load-2.html: Added.
        * fast/block/positioning/positioned-float-layout-after-image-load-expected.txt: Added.
        * fast/block/positioning/positioned-float-layout-after-image-load.html: Added.
        * fast/block/positioning/resources/positioned-float-layout-after-image-load-2.html: Added.

2011-09-07  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, build fix after r94674.

        * inspector/debugger/script-formatter.html:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Skip media/media-controls-invalid-url.html on Mac for now because it has been failing.
        The failure is tracked by the bug 67716.

        * platform/mac/Skipped:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Finally, Mac rebaseline for r93237.

        * platform/mac-snowleopard/fast/text/midword-break-before-surrogate-pair-2-expected.txt: Copied from
        LayoutTests/platform/mac/fast/text/midword-break-before-surrogate-pair-2-expected.txt.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Fix my accidental svn mv (instead of cp) in r94680.

        * fast/dom/call-a-constructor-as-a-function-expected.txt: Copied from
        LayoutTests/platform/gtk/fast/dom/call-a-constructor-as-a-function-expected.txt.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        GTK+ rebaseline after r94357. GTK+ port apparently implements PeerConnection.

        * fast/dom/call-a-constructor-as-a-function-expected.txt: Removed.
        * platform/gtk/fast/dom/call-a-constructor-as-a-function-expected.txt: Copied from
        LayoutTests/fast/dom/call-a-constructor-as-a-function-expected.txt.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Skip accessibility/textbox-role-reports-selection.html on GTK+ bots because it has been failing.
        The failure is tracked by the bug 67713.

        * platform/gtk/Skipped:

2011-09-06  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
        https://bugs.webkit.org/show_bug.cgi?id=67647

        1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
        2) Add RawSourceCode unit tests.
        3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/raw-source-code-expected.txt: Added.
        * inspector/debugger/raw-source-code.html: Added.
        * inspector/debugger/script-formatter.html:
        * inspector/debugger/source-file.html:

2011-09-07  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: Implement circular tabbing through the Styles sidebar pane contents
        https://bugs.webkit.org/show_bug.cgi?id=67127

        Reviewed by Yury Semikhatsky.

        * inspector/styles/styles-commit-editing.html:

2011-09-07  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed test fix (removed a call to console.trace() to avoid having platform-specific expectations).

        * inspector/extensions/extensions-console-expected.txt:
        * inspector/extensions/extensions-console.html:

2011-09-07  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of files)
        Updated newer tests with reference images.
        Deleted images with correct fallbacks.

        * platform/chromium-mac/media/media/video-defaultmuted-expected.txt: Removed.
        (remaining files omitted for brevity)

2011-09-02  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] expose console API
        https://bugs.webkit.org/show_bug.cgi?id=67506

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resources/extension-main.js:
        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-console-expected.txt: Added.
        * inspector/extensions/extensions-console.html: Added.

2011-09-07  Oliver Varga  <voliver@inf.u-szeged.hu>

        Update LayoutTests/platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt

        Unreviewed gardening.

        * platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt:

2011-09-07  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] evetSender.keyDown is unimplemented
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Unreviewed gardening, skip dependent new test.

        * platform/wk2/Skipped: Skip fast/forms/number-input-changeevent.html.

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Change event is not fired for input[type=number] when the user reverts a change made by script
        https://bugs.webkit.org/show_bug.cgi?id=67697

        Reviewed by Kent Tamura.

        Add a regression test to ensure WebKit fires change event when the user reverts a change made by script.

        * fast/forms/number-input-changeevent-expected.txt: Added.
        * fast/forms/number-input-changeevent.html: Added.

2011-09-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening after r94646.

        * platform/qt-mac/Skipped: Paint the Qt-Mac bot green.

2011-09-07  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Revert expectation that was wrongly generated for textStyles.svg.

        * platform/chromium-linux/svg/batik/text/textStyles-expected.png:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed Windows rebaselines.

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        One last GTK+ rebaseline for r94614.

        * platform/gtk/fast/js/global-constructors-expected.txt:

2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>

        GTK+ rebaselines after r94614.

        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:

2011-09-07  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Rebaseline expectations after r94593

        * platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt: Removed.
        * platform/chromium-win-vista/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/chromium-win-vista/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:

2011-09-07  Xianzhu Wang  <wangxianzhu@chromium.org>

        fast/dom/replaceChild.html may not test what it's supposed to test and may sometimes be flaky
        https://bugs.webkit.org/show_bug.cgi?id=67629

        Reviewed by Darin Adler.

        The test is supposed to test Node.replaceChild() called from a frame.
        However, in most cases, it's not executed because the test finishes before
        the iframe's onload event handler. For now, the expected result is just
        the original render tree before replaceChild(). In chance that iframe's
        onload is executed earlier, the actual result might be different from
        expected (that is, replaceChild() is executed and the DOM is actually changed.)

        Use waitUntilDone() and notifyDone() to ensure the frame's onload handler
        is called.

        BTW changed it to a pure text test to avoid platform branches.

        * fast/dom/replaceChild.html:
        * fast/dom/replaceChild-expected.txt: Added.
        * fast/dom/resources/replaceChildHelper.html:
        * platform/chromium-linux/fast/dom/replaceChild-expected.png: Removed.
        * platform/chromium-mac/fast/dom/replaceChild-expected.png: Removed.
        * platform/chromium-win/fast/dom/replaceChild-expected.png: Removed.
        * platform/chromium-win/fast/dom/replaceChild-expected.txt: Removed.
        * platform/gtk/fast/dom/replaceChild-expected.png: Removed.
        * platform/gtk/fast/dom/replaceChild-expected.txt: Removed.
        * platform/mac-leopard/fast/dom/replaceChild-expected.png: Removed.
        * platform/mac/fast/dom/replaceChild-expected.png: Removed.
        * platform/mac/fast/dom/replaceChild-expected.txt: Removed.
        * platform/qt/fast/dom/replaceChild-expected.png: Removed.
        * platform/qt/fast/dom/replaceChild-expected.txt: Removed.

2011-09-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add platform specific expected results for new passing tests.

        * platform/qt/fast/borders/border-image-longhand-expected.png: Added.
        * platform/qt/fast/borders/border-image-longhand-expected.txt: Added.
        * platform/qt/fast/borders/border-image-scaled-expected.png: Added.
        * platform/qt/fast/borders/border-image-scaled-expected.txt: Added.
        * platform/qt/fast/borders/border-image-side-reduction-expected.png: Added.
        * platform/qt/fast/borders/border-image-side-reduction-expected.txt: Added.

2011-09-07  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Rebaseline expectations for svg/batik/text/textStyles.svg after r94624.

        * platform/chromium-linux/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.txt:

2011-08-31  Yury Semikhatsky  <yurys@chromium.org>

        fast/workers/worker-script-error.html fails on Chromium after r94061
        https://bugs.webkit.org/show_bug.cgi?id=67206

        Add a couple more tests for window.onerror handler that check whether
        error message is printed to the console pending on the handler return
        value.

        Reviewed by Dmitry Titov.

        * fast/events/window-onerror14-expected.txt: Added.
        * fast/events/window-onerror14.html: Added.
        * fast/events/window-onerror15-expected.txt: Added.
        * fast/events/window-onerror15.html: Added.
        * fast/events/window-onerror16-expected.txt: Added.
        * fast/events/window-onerror16.html: Added.
        * platform/chromium/fast/events/window-onerror16-expected.txt: Added.

2011-09-05  Kent Tamura  <tkent@chromium.org>

        REGRESSION (Safari 5.1 - ToT): File input retains its file icon when the value is reset
        https://bugs.webkit.org/show_bug.cgi?id=67567

        Reviewed by Dimitri Glazkov.

        * fast/forms/file/file-reset-in-change-expected.html: Added.
        * fast/forms/file/file-reset-in-change.html: Added.

2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>

        Qt rebaseline after r94614.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r94274): The inner text value of an input element is not updated when input.value is set
        https://bugs.webkit.org/show_bug.cgi?id=67681

        Reviewed by Kent Tamura.

        Added a test that overrides the suggested value by modifying the value IDL attribute of an input element.

        * fast/forms/suggested-value-after-setvalue-expected.txt: Added.
        * fast/forms/suggested-value-after-setvalue.html: Added.

2011-09-06  Alexey Proskuryakov  <ap@apple.com>

        Layout Test fast/dom/HTMLMeterElement/meter-element-crash.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=67653

        Reviewed by James Robinson.

        * fast/dom/HTMLMeterElement/meter-element-crash.html: Added waitUntilDone/notifyDone,
        and changed "1" that's displayed after testing to "PASS".

2011-09-06  Ben Wells  <benwells@chromium.org>

        Rebaseline for bug 65583 (path based border radius drawing on skia)
        https://bugs.webkit.org/show_bug.cgi?id=67596

        Reviewed by Kenneth Russell.

        * fast/backgrounds/gradient-background-leakage-expected.txt: Renamed from LayoutTests/platform/gtk/fast/backgrounds/gradient-background-leakage-expected.txt.
        * fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.txt: Renamed from LayoutTests/platform/gtk/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.txt.
        * fast/box-shadow/spread-expected.txt: Renamed from LayoutTests/platform/gtk/fast/box-shadow/spread-expected.txt.
        * fast/css/box-shadow-and-border-radius-expected.txt: Renamed from LayoutTests/platform/gtk/fast/css/box-shadow-and-border-radius-expected.txt.
        * fast/css/color-leakage-expected.txt: Renamed from LayoutTests/platform/gtk/fast/css/color-leakage-expected.txt.
        * fast/css/nested-rounded-corners-expected.txt:
        * platform/chromium-linux-x86/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-linux/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-linux/fast/: 17 changes
        * platform/chromium-win-vista/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-win-xp/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-win/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-win/fast/: 19 changes
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Renamed from LayoutTests/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png.
        * platform/gtk/fast/css/nested-rounded-corners-expected.txt: Removed.
        * platform/mac/fast/: 5 files removed
        * platform/mac/fast/css/nested-rounded-corners-expected.txt: Copied from LayoutTests/fast/css/nested-rounded-corners-expected.txt.
        * platform/qt/: 6 files removed

2011-09-06  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium gpu baseline due to skia roll

        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.png:

2011-09-06  James Robinson  <jamesr@chromium.org>

        [chromium] Update various chromium baselines.

        * platform/chromium-cg-mac-leopard/fast/css/value-list-out-of-bounds-crash-expected.png:
        * platform/chromium-cg-mac-leopard/scrollbars/overflow-scrollbar-combinations-expected.png:
        * platform/chromium-mac/fast/dom/Window/window-lookup-precedence-expected.txt: Copied from LayoutTests/platform/chromium/fast/dom/Window/window-lookup-precedence-expected.txt.
        * platform/chromium-mac/fast/dom/wrapper-classes-expected.txt: Copied from LayoutTests/platform/chromium/fast/dom/wrapper-classes-expected.txt.
        * platform/chromium-win/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.txt:
        * platform/chromium/fast/dom/Window/window-lookup-precedence-expected.txt:
        * platform/chromium/fast/dom/wrapper-classes-expected.txt:

2011-09-06  Yong Li  <yoli@rim.com>

        https://bugs.webkit.org/show_bug.cgi?id=67486
        Add a test case for branchTruncateDoubleToInt32() which is
        used in right shift optimization when the assembler
        "supportsFloatingPointTruncate".

        Reviewed by Gavin Barraclough.

        * fast/js/floating-point-truncate-rshift-expected.txt: Added.
        * fast/js/floating-point-truncate-rshift.html: Added.

2011-09-06  Adam Barth  <abarth@webkit.org>

        editing/selection/mixed-editability-10.html is failing on the bots
        https://bugs.webkit.org/show_bug.cgi?id=67683

        Update editing/selection/mixed-editability-10.html baselines after
        HTMLSpanElement introduction.

        * editing/selection/mixed-editability-10-expected.txt:
        * platform/qt/editing/selection/mixed-editability-10-expected.png: Removed.
            - This test is no longer an image test.
        * platform/qt/editing/selection/mixed-editability-10-expected.txt:
        * platform/win/editing/selection/mixed-editability-10-expected.txt:

2011-09-06  James Robinson  <jamesr@chromium.org>

        [chromium] Update expectations for a few tests that render oddly on xp due to r94589

        * platform/chromium/test_expectations.txt:

2011-09-06  Chris Rogers  <crogers@google.com>

        MediaElementAudioSourceNode destruction triggers ASSERTS
        https://bugs.webkit.org/show_bug.cgi?id=67665

        Reviewed by Nate Chapin.

        * webaudio/mediaelementaudiosourcenode-gc-expected.txt: Added.
        * webaudio/mediaelementaudiosourcenode-gc.html: Added.

2011-09-06  James Robinson  <jamesr@chromium.org>

        [chromium] Update pixel baselines for r94597

        * platform/chromium-cg-mac/fast/borders/border-image-scaled-expected.png: Added.
        * platform/chromium-cg-mac/fast/borders/border-image-side-reduction-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/value-list-out-of-bounds-crash-expected.png: Added.
        * platform/chromium-cg-mac/scrollbars/overflow-scrollbar-combinations-expected.png:
        * platform/chromium-linux/fast/borders/border-image-scaled-expected.png: Added.
        * platform/chromium-linux/fast/css/value-list-out-of-bounds-crash-expected.png:
        * platform/chromium-linux/scrollbars/overflow-scrollbar-combinations-expected.png:
        * platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium-win-vista/fast/css/getComputedStyle/computed-style-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-win-vista/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-win/fast/borders/border-image-longhand-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-longhand-expected.txt: Added.
        * platform/chromium-win/fast/borders/border-image-scaled-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-scaled-expected.txt: Added.
        * platform/chromium-win/fast/borders/border-image-side-reduction-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-side-reduction-expected.txt: Added.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/fast/css/value-list-out-of-bounds-crash-expected.png:
        * platform/chromium-win/scrollbars/overflow-scrollbar-combinations-expected.png:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:

2011-09-06  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67672
        
        Improve background-size parsing. Make it actually dump auto values properly, and also make it omit
        auto if it is the second value. Fix the parsing to not create a value list when only a singleton value
        is specified.

        Reviewed by Beth Dakin.

        Covered well by existing tests.

        * fast/backgrounds/size/parsing-background-size-values-expected.txt:
        * fast/backgrounds/size/parsing-inherit-expected.txt:
        * fast/backgrounds/size/resources/parsing-background-size-values.js:
        * fast/backgrounds/size/resources/parsing-inherit.js:
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle/getComputedStyle-background-size-expected.txt:
        * fast/css/value-list-out-of-bounds-crash.html:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-06  David Hyatt  <hyatt@apple.com>

        Update some layout test results following the improved Pair parsing code that landed in r94593.

        * fast/backgrounds/size/parsing-background-size-values-expected.txt:
        * fast/backgrounds/size/resources/parsing-background-size-values.js:
        * fast/reflections/reflection-computed-style-expected.txt:
        * inspector/elements/elements-panel-styles-expected.txt:

2011-09-06  Filip Pizlo  <fpizlo@apple.com>

        LayoutTests does not include a test for DFG speculation recovery of additions
        https://bugs.webkit.org/show_bug.cgi?id=67667

        Reviewed by Geoffrey Garen.

        * fast/js/add-recovery-expected.txt: Added.
        * fast/js/add-recovery.html: Added.
        * fast/js/script-tests/add-recovery.js: Added.
        (destructiveAddForBoxedInteger):

2011-09-06  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67657
        
        Implement border-image-width. This patch stops short of converting -webkit-border-image to a shorthand.
        I'll do that in the next patch.

        Note that unlike the -webkit-border-image syntax, border-image-width does not actually set the border
        width values. It simply makes cuts into the border image drawing area (which for now is just the border
        box, but that will change once border-image-outset is implemented).
        
        This means we need additional storage for the slices, since they are now separate from the border widths.
        
        For backwards compatibility, -webkit-border-image will continue to set the border widths when
        border-image-width is specified in the -webkit-border-image shorthand.

        Reviewed by Beth Dakin.

        * fast/borders/border-image-longhand.html: Added.
        * fast/borders/border-image-scaled.html: Added.
        * fast/borders/border-image-side-reduction.html: Added.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-with-zoom-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
        * fast/css/large-value-csstext-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-06  Mike Reed  <reed@google.com>

        [skia] never draw with GDI, so that all text can be gpu-accelerated
        https://bugs.webkit.org/show_bug.cgi?id=65203

        Reviewed by Kenneth Russell.

        * platform/chromium/test_expectations.txt:

2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r94274): FormManagerTest.PreviewForm and FillFormNonEmptyField fail on chromium
        https://bugs.webkit.org/show_bug.cgi?id=67453

        Reviewed by Kent Tamura.

        Added a regression test to ensure HTMLInputElement updates its inner text value when the suggested value is set.

        * fast/forms/suggested-value-expected.txt: Added.
        * fast/forms/suggested-value.html: Added.

2011-09-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Web Inspector: [Extensions API] rename webInspector.resources to webInspector.network
        https://bugs.webkit.org/show_bug.cgi?id=66460

        Unreviewed, renaming tests in WK2 skiplists after r93312.

        * platform/win-wk2/Skipped:
        * platform/wk2/Skipped:

2011-09-06  Eric Carlson  <eric.carlson@apple.com>

        load() does not reset the resource selection algorithm
        https://bugs.webkit.org/show_bug.cgi?id=64917

        Reviewed by Darin Adler.

        * media/video-source-load-expected.txt: Added.
        * media/video-source-load.html: Added.

2011-09-06  Abhishek Arya  <inferno@chromium.org>

        Style not propagated to anonymous boxes and anonymous
        inline-blocks.
        https://bugs.webkit.org/show_bug.cgi?id=67364

        Add comments explaining what the test does.

        Reviewed by James Robinson.

        * fast/ruby/ruby-block-style-not-updated-with-before-after-content.html:
        * fast/ruby/ruby-block-style-not-updated.html:
        * fast/ruby/ruby-inline-style-not-updated-with-before-after-content.html:
        * fast/ruby/ruby-inline-style-not-updated.html:
        * fast/table/table-before-child-style-update.html:
        * fast/table/table-row-before-child-style-update.html:
        * fast/table/table-row-style-not-updated-with-after-content.html:
        * fast/table/table-row-style-not-updated-with-before-content.html:
        * fast/table/table-style-not-updated.html:

2011-09-06  Robin Cao  <robin.cao@torchmobile.com.cn>

        [skia] States of GraphicsContext may never be restored after clipToImageBuffer
        https://bugs.webkit.org/show_bug.cgi?id=67358

        Reviewed by James Robinson.

        * fast/repaint/background-clip-text-expected.png: Added.
        * fast/repaint/background-clip-text-expected.txt: Added.
        * fast/repaint/background-clip-text.html: Added.
        * platform/qt/Skipped: Missing layoutController.testRepaint().

2011-08-30  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: implement source map v3 consumer.
        https://bugs.webkit.org/show_bug.cgi?id=67205

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/compiler-source-mapping-expected.txt: Added.
        * inspector/debugger/compiler-source-mapping.html: Added.

2011-09-06  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, unskip tests now passing because bug 61523 was fixed.

        * platform/gtk/Skipped:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Skip one more failing test.

2011-09-06  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update expectation for inspector/elements/elements-panel-styles.html,
        which no longer looks flaky.
        https://bugs.webkit.org/show_bug.cgi?id=63056

        * platform/chromium/test_expectations.txt:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94331.

        * platform/qt/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Renamed from LayoutTests/platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.png.
        * platform/qt/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Renamed from LayoutTests/platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt.

2011-09-06  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, unskip tests now passing because bug 61523 was fixed.

        * platform/gtk/Skipped:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Skip one more failing test.

2011-09-06  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update expectation for inspector/elements/elements-panel-styles.html,
        which no longer looks flaky.
        https://bugs.webkit.org/show_bug.cgi?id=63056

        * platform/chromium/test_expectations.txt:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r94331.

        * platform/qt/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Renamed from LayoutTests/platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.png.
        * platform/qt/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Renamed from LayoutTests/platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt.

2011-09-05  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: re-implement RawSourceCode.
        https://bugs.webkit.org/show_bug.cgi?id=67609

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/content-providers-expected.txt:
        * inspector/debugger/content-providers.html:
        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/source-frame-count.html:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Skip new failing tests to paint the bot green.

2011-09-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Regression:  On Lion, redirects lose HTTP authentication headers
        https://bugs.webkit.org/show_bug.cgi?id=66354

        Unreviewed, renaming tests in WK2 skiplist after r93247.

        * platform/wk2/Skipped:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed, rolling out r94564.
        http://trac.webkit.org/changeset/94564
        https://bugs.webkit.org/show_bug.cgi?id=67555

        It broke many tests

        * svg/custom/tref-clone-crash-expected.txt: Removed.
        * svg/custom/tref-clone-crash.html: Removed.

2011-09-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Web Inspector: nuke background events collection (dead feature)
        https://bugs.webkit.org/show_bug.cgi?id=66296

        Reviewed by Yury Semikhatsky.

        * platform/wk2/Skipped: Remove non-existent tests from the Skipped list
        as well.

2011-09-06  Andreas Kling  <kling@webkit.org>

        Unreviewed, removing non-existent test from Qt skiplist.

        * platform/qt/Skipped:

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][ARM] http/tests/loading/empty-urls.html fails
        https://bugs.webkit.org/show_bug.cgi?id=67638

        [Qt][ARM]fast/dom/call-a-constructor-as-a-function.html fails
        https://bugs.webkit.org/show_bug.cgi?id=67639

        * platform/qt-arm/Skipped: Skip failing tests.

2011-09-06  Rob Buis  <rbuis@rim.com>

        use after free in WebCore::SVGTRefElement::updateReferencedText
        https://bugs.webkit.org/show_bug.cgi?id=67555

        Reviewed by Nikolas Zimmermann.

        Test that cloned tref does not cause a crash.

        * svg/custom/tref-clone-crash-expected.txt: Added.
        * svg/custom/tref-clone-crash.html: Added.

2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][ARM] Missing WebGLContextEvent window property
        https://bugs.webkit.org/show_bug.cgi?id=67637

        * platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt: Added.

2011-09-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94560.
        http://trac.webkit.org/changeset/94560
        https://bugs.webkit.org/show_bug.cgi?id=67636

        It made inspector/debugger/script-formatter.html flakey
        (Requested by Ossy on #webkit).

        * inspector/debugger/content-providers-expected.txt:
        * inspector/debugger/content-providers.html:
        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/source-frame-count.html:

2011-09-05  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: re-implement RawSourceCode.
        https://bugs.webkit.org/show_bug.cgi?id=67609

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/content-providers-expected.txt:
        * inspector/debugger/content-providers.html:
        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/source-frame-count.html:

2011-09-06  Dirk Schulze  <krit@webkit.org>

        Return to transform multiplication: motion transform * other transforms
        https://bugs.webkit.org/show_bug.cgi?id=67601

        Reviewed by Nikolas Zimmermann.
        
        Change the expected results of nested transformations to match new behavior
        on matrices multiplications.

        * svg/animations/animate-path-nested-transforms-expected.txt:
        * svg/animations/animate-text-nested-transforms-expected.txt:
        * svg/animations/script-tests/animate-path-nested-transforms.js:
        (startSample):
        (endSample):
        * svg/animations/script-tests/animate-text-nested-transforms.js:
        (startSample):
        (endSample):
        * svg/animations/svgtransform-animation-discrete-expected.txt:
        * svg/animations/svgtransform-animation-discrete.html:

2011-09-06  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] http/tests/history/popstate-fires-with-pending-requests.html breaks ~400 subsequent tests
        https://bugs.webkit.org/show_bug.cgi?id=49321

        Rubber-stamped by Csaba Osztrogonác.

        * platform/qt-wk2/Skipped:
        The issue is not reproducible any more, so the bug can be closed and the test unskipped.

2011-09-06  Filip Pizlo  <fpizlo@apple.com>

        Updated expectations on Mac for fast/js/global-constructors.html.

        Rubber-stampted by Gavin Barraclough.

        * platform/mac/fast/js/global-constructors-expected.txt:

2011-09-06  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r94545.

        * platform/gtk/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt:
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/gtk/fast/js/global-constructors-expected.txt:

2011-09-05  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, fullscreen tests rebaseline after r94545.

        * fullscreen/full-screen-cancel-expected.txt:
        * fullscreen/full-screen-css-expected.txt:
        * fullscreen/full-screen-remove-ancestor-expected.txt:
        * fullscreen/full-screen-remove-children-expected.txt:
        * fullscreen/full-screen-remove-expected.txt:
        * fullscreen/full-screen-twice-expected.txt:

2011-09-05  Renata Hodovan  <reni@webkit.org>

        [Qt] Update expecteds after r94545.

        Unreviewed gardening.

        * platform/qt/fast/dom/Window/window-properties-expected.png:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.png:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.png:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-09-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. GTK rebaselines for r94541, r94543.

        * platform/gtk/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/gtk/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/gtk/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/gtk/fast/ruby/ruby-block-style-not-updated-expected.txt: Added.
        * platform/gtk/fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.txt: Added.
        * platform/gtk/fast/ruby/ruby-inline-style-not-updated-expected.txt: Added.
        * platform/gtk/fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.txt: Added.
        * platform/gtk/fast/table/table-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-style-not-updated-expected.txt: Added.
        * platform/gtk/fast/table/table-row-style-not-updated-with-after-content-expected.txt: Added.
        * platform/gtk/fast/table/table-row-style-not-updated-with-before-content-expected.txt: Added.
        * platform/gtk/fast/table/table-style-not-updated-expected.txt: Added.

2011-09-05  James Robinson  <jamesr@chromium.org>

        [chromium] Remove unnecessary expectation, results match the fallback path.

        * platform/chromium-cg-mac/fast/dom/wrapper-classes-expected.txt: Removed.

2011-09-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium rebaselines for r94541, r94543.

        * platform/chromium-cg-mac-leopard/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/chromium-cg-mac-leopard/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/chromium-cg-mac/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/chromium-cg-mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/chromium-cg-mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/chromium-linux/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-block-style-not-updated-expected.png: Added.
        * platform/chromium-linux/fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.png: Added.
        * platform/chromium-linux/fast/ruby/ruby-inline-style-not-updated-expected.png: Added.
        * platform/chromium-linux/fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-style-not-updated-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-style-not-updated-with-after-content-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-style-not-updated-with-before-content-expected.png: Added.
        * platform/chromium-linux/fast/table/table-style-not-updated-expected.png: Added.
        * platform/chromium-win/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/chromium-win/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/chromium-win/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/chromium-win/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-block-style-not-updated-expected.png: Added.
        * platform/chromium-win/fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.png: Added.
        * platform/chromium-win/fast/ruby/ruby-inline-style-not-updated-expected.png: Added.
        * platform/chromium-win/fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.png: Added.
        * platform/chromium-win/fast/table/table-after-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-before-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-row-style-not-updated-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-style-not-updated-with-after-content-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-style-not-updated-with-before-content-expected.png: Added.
        * platform/chromium-win/fast/table/table-style-not-updated-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-09-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Qt rebaselines for r94543.

        * platform/qt/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/qt/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/qt/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/qt/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/qt/fast/ruby/ruby-block-style-not-updated-expected.txt: Added.
        * platform/qt/fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.txt: Added.
        * platform/qt/fast/ruby/ruby-inline-style-not-updated-expected.txt: Added.
        * platform/qt/fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.txt: Added.
        * platform/qt/fast/table/table-after-child-in-table-expected.txt:
        * platform/qt/fast/table/table-before-child-in-table-expected.txt:
        * platform/qt/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/qt/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/qt/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/qt/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/qt/fast/table/table-row-style-not-updated-expected.txt: Added.
        * platform/qt/fast/table/table-row-style-not-updated-with-after-content-expected.txt: Added.
        * platform/qt/fast/table/table-row-style-not-updated-with-before-content-expected.txt: Added.
        * platform/qt/fast/table/table-style-not-updated-expected.txt: Added.

2011-09-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Rebaselines for r94541.

        * platform/qt/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/qt/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:

2011-09-05  Adam Barth  <abarth@webkit.org>

        window.HTMLSpanElement does not exist
        https://bugs.webkit.org/show_bug.cgi?id=67571

        Reviewed by Sam Weinig.

        Update tests to account for HTMLSpanElement existing.  I also took the
        liberty of changing fast/tokenizer/external-script-document-write.html
        into a text test and cleaning up the platform-specific results.

        * editing/selection/extend-after-mouse-selection-expected.txt:
        * fast/dom/gc-6-expected.txt:
        * fast/dom/gc-7-expected.txt:
        * fast/dom/wrapper-classes-expected.txt:
        * fast/dom/wrapper-classes.html:
        * fast/events/mouseclick-target-and-positioning-expected.txt:
        * fast/js/toString-and-valueOf-override-expected.txt:
        * fast/tokenizer/external-script-document-write-expected.txt: Added.
        * fast/tokenizer/resources/external-script-document-write.js:
        * platform/chromium-linux/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/external-script-document-write-expected.txt: Removed.
        * platform/gtk/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/gtk/fast/tokenizer/external-script-document-write-expected.txt: Removed.
        * platform/mac-leopard/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/mac/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/mac/fast/tokenizer/external-script-document-write-expected.txt: Removed.
        * platform/qt/fast/tokenizer/external-script-document-write-expected.png: Removed.
        * platform/qt/fast/tokenizer/external-script-document-write-expected.txt: Removed.

2011-09-04  Abhishek Arya  <inferno@chromium.org>

        Style not propagated to anonymous boxes and anonymous
        inline-blocks.
        https://bugs.webkit.org/show_bug.cgi?id=67364

        Reviewed by James Robinson.

        None of the different color boxes should overlap. If they overlap, test fails.

        * fast/ruby/ruby-block-style-not-updated-expected.png: Added.
        * fast/ruby/ruby-block-style-not-updated-expected.txt: Added.
        * fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.png: Added.
        * fast/ruby/ruby-block-style-not-updated-with-before-after-content-expected.txt: Added.
        * fast/ruby/ruby-block-style-not-updated-with-before-after-content.html: Added.
        * fast/ruby/ruby-block-style-not-updated.html: Added.
        * fast/ruby/ruby-inline-style-not-updated-expected.png: Added.
        * fast/ruby/ruby-inline-style-not-updated-expected.txt: Added.
        * fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.png: Added.
        * fast/ruby/ruby-inline-style-not-updated-with-before-after-content-expected.txt: Added.
        * fast/ruby/ruby-inline-style-not-updated-with-before-after-content.html: Added.
        * fast/ruby/ruby-inline-style-not-updated.html: Added.
        * fast/table/table-row-style-not-updated-expected.png: Added.
        * fast/table/table-row-style-not-updated-expected.txt: Added.
        * fast/table/table-row-style-not-updated-with-after-content-expected.png: Added.
        * fast/table/table-row-style-not-updated-with-after-content-expected.txt: Added.
        * fast/table/table-row-style-not-updated-with-after-content.html: Added.
        * fast/table/table-row-style-not-updated-with-before-content-expected.png: Added.
        * fast/table/table-row-style-not-updated-with-before-content-expected.txt: Added.
        * fast/table/table-row-style-not-updated-with-before-content.html: Added.
        * fast/table/table-row-style-not-updated.html: Added.
        * fast/table/table-style-not-updated-expected.png: Added.
        * fast/table/table-style-not-updated-expected.txt: Added.
        * fast/table/table-style-not-updated.html: Added.
        * platform/mac/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/mac/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/mac/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/mac/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/mac/fast/table/table-after-child-in-table-expected.txt:
        * platform/mac/fast/table/table-before-child-in-table-expected.txt:
        * platform/mac/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/mac/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/mac/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/mac/fast/table/table-row-before-child-in-table-expected.txt:

2011-09-05  Abhishek Arya  <inferno@chromium.org>

        Crash in RenderObjectChildList::destroyLeftOverChildren()
        https://bugs.webkit.org/show_bug.cgi?id=64753

        Reviewed by James Robinson.

        anonymous-split-block-crash rendering was already wrong. The fix prevents
        the tree to go bad and hence does not do the column-span rendering. same issue
        with clone-anonymous-block-non-inline-child-crash test.

        * fast/multicol/column-span-parent-continuation-crash-expected.txt: Added.
        * fast/multicol/column-span-parent-continuation-crash.html: Added.
        * platform/mac/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/mac/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:

2011-09-05  John Knottenbelt  <jknotten@chromium.org>

        Take pageScaleFactor into account for MouseRelatedEvents.
        https://bugs.webkit.org/show_bug.cgi?id=67592

        Mouse-related events currently take account of the zoom factor, but they
        also need to take account of the page scale factor so that pageX and pageY
        event coordinates are properly determined.

        Reviewed by Dimitri Glazkov.

        * fast/events/page-scaled-mouse-click-expected.txt: Added.
        * fast/events/page-scaled-mouse-click.html: Added.
        * fast/events/script-tests/page-scaled-mouse-click.js: Added.

2011-09-05  Balazs Kelemen  <kbalazs@webkit.org>

        D'oh! Missed the name of the test in the previous gardening.
        Unreviewed regardening.

        * platform/qt-wk2/Skipped:

2011-09-05  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] fast/inline/absolute-positioned-inline-in-centred-block.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=67607

        Unreviewed gardening.

        * platform/qt-wk2/Skipped:

2011-09-05  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Unreviewed gardening - move expectation to the correct place.

        * platform/qt/fast/borders/border-image-repeat-expected.txt: Renamed from LayoutTests/platform/qt/border-image-repeat-expected.txt.

2011-09-02  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: cleanup scripts-panel.html test.
        https://bugs.webkit.org/show_bug.cgi?id=67497

        ScriptsPanel test should not depend on presentation model internals.

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/scripts-panel.html:

2011-09-05  Zsolt Fehér  <feherzs@inf.u-szeged.hu>

        [Qt] Unreviewed gardening.

        * platform/qt/border-image-repeat-expected.txt: Added.

2011-09-05  Kristof Kosztyo <kkristof@inf.u-szeged.hu>

        [Qt] Update expected result after r94425
        https://bugs.webkit.org/show_bug.cgi?id=66467

        * platform/qt/fast/dom/HTMLInputElement/input-image-alt-text-expected.png:
        * platform/qt/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt:

2011-09-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed update expected image for chromium MAC.
        The test was introduced at r94492.

        * platform/chromium-cg-mac-leopard/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png:
        * platform/chromium-cg-mac/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png:

2011-09-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed update expected image for chromium Linux.
        The test was introduced at r94492.

        * platform/chromium-linux/fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.

2011-09-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed rebaseline for chromium: fast/repaint/block-layout-inline-children-float-positioned.html

        * platform/chromium-cg-mac-leopard/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-cg-mac/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt: Removed.
        * platform/chromium-win/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:

2011-09-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed rebaseline for fast/inline/absolute-positioned-inline-in-centred-block

        * platform/chromium-cg-mac-leopard/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-cg-mac/fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.
        * platform/chromium-cg-mac/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-linux-x86/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-linux/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-win-vista/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-win-xp/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/chromium-win/fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.
        * platform/chromium-win/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.

2011-09-04  James Kozianski  <koz@chromium.org>

        Unreviewed, rolling out r94510.
        http://trac.webkit.org/changeset/94510
        https://bugs.webkit.org/show_bug.cgi?id=66531

        Causes layout test crashes.

        * plugins/fullscreen-plugins-dont-reload-expected.txt: Removed.
        * plugins/fullscreen-plugins-dont-reload.html: Removed.

2011-09-04  Abhishek Arya  <inferno@chromium.org>

        Crash in Range::processAncestorsAndTheirSiblings.
        https://bugs.webkit.org/show_bug.cgi?id=67556

        Reviewed by Ryosuke Niwa.

        Tests that we do not crash when removing contents of
        a range from the document.

        * fast/dom/Range/range-delete-contents-event-fire-crash-expected.txt: Added.
        * fast/dom/Range/range-delete-contents-event-fire-crash.html: Added.

2011-09-04  Jeremy Apthorp  <jeremya@google.com>

        Don't detach elements from the render tree when entering fullscreen mode
        https://bugs.webkit.org/show_bug.cgi?id=66531

        Test that the plugin is not reloaded when entering fullscreen.

        Reviewed by Darin Fisher.

        * plugins/fullscreen-plugins-dont-reload-expected.txt: Added.
        * plugins/fullscreen-plugins-dont-reload.html: Added.

2011-09-04  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10071256> Retain retired custom fonts until the next style recalc

        Reviewed by Darin Adler.

        * fast/css/font-face-used-after-retired-expected.txt: Added.
        * fast/css/font-face-used-after-retired.html: Added.

2011-09-04  Sam Weinig  <sam@webkit.org>

        Forgot to check in new results for fast/events/event-creation.html

        * fast/events/event-creation-expected.txt:

2011-09-04  Sam Weinig  <sam@webkit.org>

        Document.createEvent should support all the interfaces of Event we got
        https://bugs.webkit.org/show_bug.cgi?id=67568

        Reviewed by Anders Carlsson.

        * fast/events/event-creation.html:
        Converted to shouldBe style test, changed prototype check to us instanceof and constructor check,
        added enumeration based catchall.

        * fast/events/event-instanceof-expected.txt: Removed.
        * fast/events/event-instanceof.html: Removed.
        * fast/events/script-tests/event-instanceof.js: Removed.
        Moved contents to fast/events/event-creation.html.

2011-09-04  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed fix for chromium expectations.
        The expectations for http/tests/security/xssAuditor/dom-write-innerHTML.html
        were in conflict. The first was for LINUX the second was for DEBUG. I just added RELEASE flag for LINUX one.

        * platform/chromium/test_expectations.txt:

2011-09-03  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r94274): selection-change-closes-typing.html fails
        https://bugs.webkit.org/show_bug.cgi?id=67377

        Reviewed by Kent Tamura.

        Add a regression test to ensure the same bug doesn't exist in textarea element.

        * platform/mac/editing/input/selection-change-closes-typing-2-expected.txt: Copied from
        LayoutTests/platform/mac/editing/input/selection-change-closes-typing-expected.txt.
        * platform/mac/editing/input/selection-change-closes-typing-2.html: Copied from
        LayoutTests/platform/mac/editing/input/selection-change-closes-typing.html.

2011-09-03  Mark Pilgrim  <pilgrim@chromium.org>

        Test that document.all.tags() matches IE behavior with too few arguments
        https://bugs.webkit.org/show_bug.cgi?id=66535

        Reviewed by Darin Adler.

        * fast/dom/document-all-tags-expected.txt: Added.
        * fast/dom/document-all-tags.html: Added.

2011-09-03  Robert Hogan  <robert@webkit.org>

        Add platform-specific results for r94492

        Unreviewed.

        * platform/chromium-win/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/gtk/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
        * platform/gtk/fast/css/bug4860-absolute-inline-child-inherits-alignment-expected.txt: Added.
        * platform/gtk/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/gtk/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:
        * platform/mac/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:

2011-09-03  Sam Weinig  <sam@webkit.org>

        Add missing Event constructors to DOMWindow.idl
        https://bugs.webkit.org/show_bug.cgi?id=67449

        Reviewed by Anders Carlsson.

        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/mac/fast/dom/prototype-inheritance-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:
        Update results for new constructors.

2011-08-27  Robert Hogan  <robert@webkit.org>

        div align="center" rendering problem
        https://bugs.webkit.org/show_bug.cgi?id=4860

        Reviewed by David Hyatt.

        * fast/css/bug4860-absolute-block-child-does-not-inherit-alignment-expected.png: Added.
        * fast/css/bug4860-absolute-block-child-does-not-inherit-alignment-expected.txt: Added.
        * fast/css/bug4860-absolute-block-child-does-not-inherit-alignment.html: Added.
        * fast/css/bug4860-absolute-inline-child-inherits-alignment-expected.png: Added.
        * fast/css/bug4860-absolute-inline-child-inherits-alignment-expected.txt: Added.
        * fast/css/bug4860-absolute-inline-child-inherits-alignment.html: Added.
        * fast/inline/absolute-positioned-block-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-block-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-block-in-centred-block.html: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block.html: Added.
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:
          Both of these two tests were based on the incorrect behaviour of ignoring the alignment specified
          by the container of an element absolute position when there was no text preceding the element.
          The updated results agree with Firefox and IE.
        * fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt:
        * platform/chromium-win/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png:
          This test expected the wrong alignment of the red block - it should be centred, not aligned to the left.

2011-07-25  Robert Hogan  <robert@webkit.org>

        div align="center" rendering problem
        https://bugs.webkit.org/show_bug.cgi?id=4860

        Reviewed by David Hyatt.

        * fast/inline/absolute-positioned-block-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-block-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-block-in-centred-block.html: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block.html: Added.
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:
          Both of these two tests were based on the incorrect behaviour of ignoring the alignment specified
          by the container of an element absolute position when there was no text preceding the element.
          The updated results agree with Firefox and IE.

2011-09-03  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Send ArrayBuffer as WebSocket binary message
        https://bugs.webkit.org/show_bug.cgi?id=67477

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
        Add tests to send ArrayBuffers.
        * http/tests/websocket/tests/hybi/check-binary-messages_wsh.py:
        Renamed from LayoutTests/http/tests/websocket/tests/hybi/send-blob_wsh.py, because this handler
        is used from send-blob.html and send-arraybuffer.html.
        * http/tests/websocket/tests/hybi/send-arraybuffer-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-arraybuffer.html:
        Added. Send three small binary messages as ArrayBuffers.
        * http/tests/websocket/tests/hybi/send-blob.html:
        * http/tests/websocket/tests/hybi/workers/resources/check-binary-messages_wsh.py:
        Renamed from LayoutTests/http/tests/websocket/tests/hybi/workers/resources/send-blob_wsh.py.
        * http/tests/websocket/tests/hybi/workers/resources/send-arraybuffer.js:
        Added. Same as send-arraybuffer.html, except that this test is run on the worker.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob.js:
        Removed the definition of unnecessary function startsWith().
        * http/tests/websocket/tests/hybi/workers/send-arraybuffer-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/send-arraybuffer.html: Added

2011-09-02  Kentaro Hara  <haraken@google.com>

        Implement a CustomEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=67527

        Reviewed by Sam Weinig.

        * platform/chromium/fast/events/constructors/custom-event-constructor-expected.txt: Updated the result.

2011-09-02  Chris Marrin  <cmarrin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67510
        Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction

        Reviewed by Simon Fraser.
        
        Test to tickle crash when pause is called. Currently animation-play-state is broken
        (https://bugs.webkit.org/show_bug.cgi?id=67540) so this test doesn't reliably 
        tickle the crash, but it does on occasion.

        * animations/pause-crash-expected.txt: Added.
        * animations/pause-crash.html: Added.

2011-09-02  James Robinson  <jamesr@chromium.org>

        [chromium] Update baselines and expectations.

        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-09-02  Julien Chaffraix  <jchaffraix@webkit.org>

        Enable RenderLayer::updateLayerPosition's cachedOffset optimization for more cases
        https://bugs.webkit.org/show_bug.cgi?id=66901

        Reviewed by Simon Fraser.

        * fast/layers/crash-RenderLayer-update-positions-expected.txt: Added.
        * fast/layers/crash-RenderLayer-update-positions.html: Added.
        Test that some changes in the layers does not cause an ASSERT failure.

2011-09-02  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9755843> anonymous RenderMathMLOperator sets itself as the renderer of its parent mfenced node

        Reviewed by Darin Adler.

        * mathml/operator-hijacks-fenced-node-expected.txt: Added.
        * mathml/operator-hijacks-fenced-node.xhtml: Added.

2011-09-02  Tom Sepez  <tsepez@chromium.org>

        Add LayoutTest for the case where long strings are processed by the XSSAuditor.
        https://bugs.webkit.org/show_bug.cgi?id=66580
        
        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/resources/xss-filter-bypass-long-string-reply.html: Added.
        * http/tests/security/xssAuditor/xss-filter-bypass-long-string-expected.txt: Added.
        * http/tests/security/xssAuditor/xss-filter-bypass-long-string.html: Added.

2011-09-02  Jer Noble  <jer.noble@apple.com>

        Some media layout tests fail because of ambiguous ordering of canplaythough event.
        https://bugs.webkit.org/show_bug.cgi?id=67520

        Reviewed by Eric Carlson.

        The "canplaythrough" event can occur either before or after the "playing" event, causing layout tests
        to fail for certain media engines (AVFoundation). The "canplaythrough" event check isn't adding anything
        of value which isn't covered in other layout tests, so remove this event check.

        * media/audio-play-event-expected.txt:
        * media/audio-play-event.html:
        * media/video-play-empty-events-expected.txt:
        * media/video-play-empty-events.html:
        * media/video-timeupdate-during-playback-expected.txt:
        * media/video-timeupdate-during-playback.html:

2011-09-02  James Robinson  <jamesr@chromium.org>

        [chromium] Update expectations for tests with animations and reflections

        * platform/chromium/test_expectations.txt:

2011-09-02  James Robinson  <jamesr@chromium.org>

        [chromium] Update some chromium gpu baselines

        * platform/chromium-gpu-cg-mac/compositing/images/content-image-change-expected.png: Added.
        * platform/chromium-gpu-cg-mac/compositing/reflections/animation-inside-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/images/content-image-change-expected.png: Added.
        * platform/chromium-gpu-win/compositing/reflections/animation-inside-reflection-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-02  Alexey Proskuryakov  <ap@apple.com>

        Flaky Test: http/tests/appcache/origin-usage.html
        https://bugs.webkit.org/show_bug.cgi?id=60928

        Reviewed by Joseph Pecoraro.

        Not sure if it was actually flaky anywhere, but it's failing for me on Lion consistently.

        * http/tests/appcache/origin-usage-expected.txt:
        * http/tests/appcache/origin-usage.html:
        Increase the range for success. It's OK because data is added in larger chunks anyway.

2011-09-02  Anders Carlsson  <andersca@apple.com>

        The private browsing state isn't saved when it changes
        https://bugs.webkit.org/show_bug.cgi?id=67508

        Reviewed by Sam Weinig.

        Unskip private browsing plug-in tests, since WebKitTestRunner
        now has layoutTestController.setPopupBlockingEnabled.

        * platform/wk2/Skipped:

2011-09-01  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of files)
        Updated newer tests with reference images.
        Deleted images with correct fallbacks.

        * platform/chromium-mac/media/controls-after-reload-expected.txt: Added.
        (remaining files omitted for brevity)

2011-09-02  Anders Carlsson  <andersca@apple.com>

        Move private browsing test to a PluginTest subclass
        https://bugs.webkit.org/show_bug.cgi?id=67498

        Reviewed by Darin Adler.

        Set the 'test' attribute to 'private-browsing'.

        * plugins/private-browsing-mode-2.html:
        * plugins/private-browsing-mode.html:

2011-09-02  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update expectations after r94420.

        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium-win/fast/borders/border-image-repeat-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-repeat-expected.txt: Added.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:

2011-09-02  Mihnea Ovidenie  <mihnea@adobe.com>

        BORDER attribute percent with the input image tag not working.
        https://bugs.webkit.org/show_bug.cgi?id=66467

        Reviewed by Simon Fraser.

        Test border-width-percent was modified with tests for input image element.
        Expected results for input-image-alt-test were regenerated since an image input element
        takes border attribute into account.
        Also, mark the test as failure for chromium.

        * fast/borders/border-width-percent-expected.txt:
        * fast/borders/border-width-percent.html:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/dom/HTMLInputElement/input-image-alt-text-expected.png:
        * platform/mac/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt:

2011-09-02  Kentaro Hara  <haraken@google.com>

        Implement the Event constructor for V8.
        https://bugs.webkit.org/show_bug.cgi?id=66756

        Reviewed by Adam Barth.

        * platform/chromium/test_expectations.txt: Unskip fast/events/constructors/event-constructors.html.

2011-09-01  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67431
        
        Implement border-image-repeat. Similar to how border-image-slice was implemented, the parsing of the two
        repeat values has been moved into separate functions. The value is represented as a Pair (similar to how we
        handle border radius).

        Reviewed by Beth Dakin.

        Added fast/borders/border-image-repeat.html.

        * fast/borders/border-image-repeat.html: Added.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/mac/fast/borders/border-image-repeat-expected.png: Added.
        * platform/mac/fast/borders/border-image-repeat-expected.txt: Added.
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-02  Jarred Nicholls  <jarred@sencha.com>

        [Qt] number input not rendering spin buttons properly in RTL direction
        https://bugs.webkit.org/show_bug.cgi?id=67445
        
        New baseline for Qt number input with RTL direction.

        Reviewed by Andreas Kling.

        * platform/qt/fast/forms/input-appearance-number-rtl-expected.png:

2011-09-02  Arko Saha  <nghq36@motorola.com>

        Controls not reset when media element url changed from a valid url to an invalid url.
        https://bugs.webkit.org/show_bug.cgi?id=64880

        Reviewed by Eric Carlson.

        * media/media-controls-invalid-url-expected.txt: Added.
        * media/media-controls-invalid-url.html: Added.

2011-09-02  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>

        [Qt][WK2] 4 tests are failing, skip them
        https://bugs.webkit.org/show_bug.cgi?id=67485

        * platform/qt-wk2/Skipped:

2011-09-02  Dominic Cooney  <dominicc@chromium.org>

        Unreviewed test fix.

        Sadly window-property-descriptors enumerates functions in the test
        harness. r94362 added a couple of functions, so these results need
        to be updated.

        * fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:

2011-09-02  Renata Hodovan  <reni@webkit.org>

        [Qt] Two tests are passing after r94324. They are unskipped:
        fast/events/document-elementFromPoint.html
        plugins/mouse-events-fixedpos.html

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-09-02  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update test expectations.

        * platform/chromium/test_expectations.txt:

2011-09-02  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Send Blob as WebSocket binary message
        https://bugs.webkit.org/show_bug.cgi?id=67465

        Reviewed by Kent Tamura.

        Re-lands r94399 with a fix for Leopard builds.

        * http/tests/websocket/tests/hixie76/send-empty-expected.txt: Added.
        * http/tests/websocket/tests/hixie76/send-empty.html: Added.
        * http/tests/websocket/tests/hixie76/send-object-expected.txt: Added.
        * http/tests/websocket/tests/hixie76/send-object.html: Added.
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
        * http/tests/websocket/tests/hybi/send-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-blob.html: Added.
        * http/tests/websocket/tests/hybi/send-blob_wsh.py: Added.
        * http/tests/websocket/tests/hybi/send-empty-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-empty.html: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-fail-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-fail.html: Added.
        * http/tests/websocket/tests/hybi/send-file-blob.html: Added.
        * http/tests/websocket/tests/hybi/send-file-blob_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob.js: Added.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/send-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/send-blob.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-09-02  Kenichi Ishibashi  <bashi@chromium.org>

        [chromium] editing/selection/regional-indicators.html timing out on Linux
        https://bugs.webkit.org/show_bug.cgi?id=66510

        Reviewed by Kent Tamura.

        ComplexTextControllerLinux is now surrogate pairs aware, therefore;
        - editing/selection/regional-indicators.html should pass.
        - editing/deleting/regional-indicators.html should not timeout.
        - fast/text/regional-indicator-symbols.html should pass.

        * platform/chromium/test_expectations.txt:

2011-09-02  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94399.
        http://trac.webkit.org/changeset/94399
        https://bugs.webkit.org/show_bug.cgi?id=67471

        Broke Leopard build (Requested by yutak on #webkit).

        * http/tests/websocket/tests/hixie76/send-empty-expected.txt: Removed.
        * http/tests/websocket/tests/hixie76/send-empty.html: Removed.
        * http/tests/websocket/tests/hixie76/send-object-expected.txt: Removed.
        * http/tests/websocket/tests/hixie76/send-object.html: Removed.
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
        * http/tests/websocket/tests/hybi/send-blob-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/send-blob.html: Removed.
        * http/tests/websocket/tests/hybi/send-blob_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/send-empty-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/send-empty.html: Removed.
        * http/tests/websocket/tests/hybi/send-file-blob-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/send-file-blob-fail-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/send-file-blob-fail.html: Removed.
        * http/tests/websocket/tests/hybi/send-file-blob.html: Removed.
        * http/tests/websocket/tests/hybi/send-file-blob_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob.js: Removed.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/workers/send-blob-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/workers/send-blob.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-09-02  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Send Blob as WebSocket binary message
        https://bugs.webkit.org/show_bug.cgi?id=67465

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hixie76/send-empty-expected.txt: Added.
        * http/tests/websocket/tests/hixie76/send-empty.html: Added.
        * http/tests/websocket/tests/hixie76/send-object-expected.txt: Added.
        * http/tests/websocket/tests/hixie76/send-object.html: Added.
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
        Updated. Added tests to send Blobs.
        * http/tests/websocket/tests/hybi/send-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-blob.html:
        Added. Send three Blobs each of which contains a small binary message.
        * http/tests/websocket/tests/hybi/send-blob_wsh.py:
        Added. receive_message() returns a unicode value if the received message was text, or
        a str value if the message was binary.
        * http/tests/websocket/tests/hybi/send-empty-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-empty.html: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-fail-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-file-blob-fail.html:
        Added. If we delete a file before reading it, FileReaderLoader reliably fails.
        * http/tests/websocket/tests/hybi/send-file-blob.html:
        Added. Create a File and try to send it as a Blob.
        * http/tests/websocket/tests/hybi/send-file-blob_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob.js:
        Added. Same as send-blob.html above.
        * http/tests/websocket/tests/hybi/workers/resources/send-blob_wsh.py:
        Added. Same as send-blob_wsh.py above.
        * http/tests/websocket/tests/hybi/workers/send-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/send-blob.html: Added.
        * platform/gtk/Skipped:
        send-file-blob.html and send-file-blob-fail.html depend on availability of File API.
        * platform/mac/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.

2011-09-02  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r94304.

        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:

2011-09-02  Renata Hodovan  <reni@webkit.org>

        [Qt] Update Qt specific expected files after r94304.

        Unreviewed gardening.

        * platform/qt/fast/dom/Window/window-property-descriptors-expected.png:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.png:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:

2011-09-02  Renata Hodovan  <reni@webkit.org>

        [Qt] Add Qt expecteds for new tests.

        Unreviewed gardening.

        * platform/qt/fast/borders/border-image-slices-expected.png: Added.
        * platform/qt/fast/borders/border-image-slices-expected.txt: Added.
        * platform/qt/fast/text/fallback-traits-fixup-expected.txt: Added.
        * platform/qt/svg/custom/pattern-rotate-gaps-expected.png: Added.
        * platform/qt/svg/custom/pattern-rotate-gaps-expected.txt: Added.

2011-09-01  Takashi Toyoshima  <toyoshim@chromium.org>

        [WebSocket] Implement WebSocket::close() code and reason handling.
        https://bugs.webkit.org/show_bug.cgi?id=66925

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/close-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close.html: Added.
        * http/tests/websocket/tests/hybi/close_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/close-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/close.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/close.js: Added.
        (postResult):
        (testFailed):
        (debug):
        (shouldBe):
        (shouldBeTrue):
        (shouldBeFalse):
        (handleOpen):
        (handleError):
        (handleClose):
        (handleMessage):
        (setDefaultHandlers):
        (runCodeTest.else.ws.onclose):
        (runCodeTest):
        (runInvalidStringTest):
        (runReasonTest.else.ws.onclose):
        (runReasonTest):
        (runCodeAndReasonTest.):
        (runCodeAndReasonTest):

2011-09-01  Dominic Cooney  <dominicc@chromium.org>

        Unreviewed test fix.

        r94362 erroneously changed the description wording generated by
        the js-test-pre.

        * fast/js/resources/js-test-pre.js:
        (description): add the word 'see'
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Add chromium-mac-leopard pixel baselines for new/modified tests with text

        * platform/chromium-cg-mac-leopard/fast/text/fallback-traits-fixup-expected.png: Added.
        * platform/chromium-cg-mac-leopard/svg/custom/pattern-rotate-gaps-expected.png: Added.

2011-09-01  Kent Tamura  <tkent@chromium.org>

        The filename text color of a file upload control should be inherited.
        https://bugs.webkit.org/show_bug.cgi?id=67368

        Reviewed by Darin Adler.

        * fast/forms/file/file-style-inheritance-expected.txt:
        * fast/forms/file/file-style-inheritance.html: Add a testcase.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Add chromium leopard baselines

        * platform/chromium-cg-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/chromium-cg-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.txt: Copied from LayoutTests/platform/win/fast/text/international/bidi-mirror-he-ar-expected.txt.
        * platform/win-wk2/fast/text/international/bidi-mirror-he-ar-expected.txt: Renamed from LayoutTests/platform/win/fast/text/international/bidi-mirror-he-ar-expected.txt.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Remove expectation lines for tests that pass

        * platform/chromium/test_expectations.txt:

2011-09-01  Dan Bernstein  <mitz@apple.com>

        Added Snow Leopard expected results to the test added in r94352.

        * platform/mac-snowleopard/fast/text/fallback-traits-fixup-expected.txt: Added.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update leopard pixel baselines for svg tests

        * platform/chromium-cg-mac-leopard/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png: Added.
        * platform/chromium-cg-mac-leopard/svg/custom/non-scaling-stroke-expected.png:
        * platform/chromium-cg-mac-leopard/svg/custom/pattern-rotate-expected.png:
        * platform/chromium-cg-mac-leopard/svg/custom/pattern-skew-transformed-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/svg/custom/pattern-with-transformation-expected.png:
        * platform/chromium-cg-mac-leopard/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-cg-mac-leopard/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * platform/chromium-cg-mac/svg/custom/pattern-rotate-expected.png: Added.
        * platform/chromium-cg-mac/svg/custom/pattern-rotate-gaps-expected.png: Added.

2011-09-01  Julien Chaffraix  <jchaffraix@webkit.org>

        REGRESSION (r84327-r84329): CSS stylesheets fail to load on www.flagstar.com login page
        https://bugs.webkit.org/show_bug.cgi?id=65140

        Reviewed by Darin Adler.

        * fast/css/stylesheet-enable-first-alternate-link-expected.txt: Added.
        * fast/css/stylesheet-enable-first-alternate-link.html: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load-link-expected.txt: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load-link.html: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load-sheet-expected.txt: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load-sheet.html: Added.
        * fast/css/stylesheet-enable-second-alternate-link-expected.txt: Added.
        * fast/css/stylesheet-enable-second-alternate-link.html: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load-link-expected.txt: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load-link.html: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load-sheet-expected.txt: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load-sheet.html: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-expected.txt: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error-expected.txt: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html: Added.
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet-in-error.js: Added.
        (onSheetLoaded):
        (testWhenLoaded):
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet.js: Added.
        (onSheetLoaded):
        (testWhenLoaded):
        * http/tests/css/resources/slow-loading-sheet-in-error.php: Added.
        * http/tests/css/resources/slow-loading-sheet.php: Added.
        New tests developped for 65140. The baselines matches what FF and Opera are doing (IE does not support
        link.sheet at the moment). Those failures are covered by bug 67436.

        * fast/css/link-disabled-attr-expected.txt:
        * fast/dom/HTMLLinkElement/disabled-attribute-expected.txt:
        Fixed the baseline to match our behavior. The FAIL are our current deviation from the spec. Those
        failures are covered by bug 67436.

        * fast/dom/boolean-attribute-reflection-expected.txt:
        * fast/dom/script-tests/boolean-attribute-reflection.js:
        Re-added link.disabled as a reflected attribute.

2011-09-01  Ryosuke Niwa  <rniwa@webkit.org>

        Revert r94355 because it caused bunch of builds to break.

        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium baselines+expectations for fast/text/fallback-traits-fixup.html

        * platform/chromium-cg-mac/fast/text/fallback-traits-fixup-expected.png: Added.
        * platform/chromium-cg-mac/fast/text/fallback-traits-fixup-expected.txt: Added.
        * platform/chromium-linux/fast/text/fallback-traits-fixup-expected.png: Added.
        * platform/chromium-linux/fast/text/fallback-traits-fixup-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-09-01  James Robinson  <jamesr@chromium.org>

        fast/dom/global-constructors.html and fast/dom/prototype-inheritance.html are way too fragile
        https://bugs.webkit.org/show_bug.cgi?id=67452

        Reviewed by Darin Adler.

        Modifies these tests to not print PASS lines for all of the expected successes, since that means they have to be
        updated whenever the set of properties on the global object is changed.  That is not the point of these tests
        and it just causes excessive churn.

        * fast/dom/global-constructors-expected.txt:
        * fast/dom/global-constructors.html:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/js/resources/js-test-pre.js:
        (description):
        (descriptionQuiet):
        (shouldBe):
        (shouldBeTrueQuiet):
        * platform/chromium-mac/fast/dom/prototype-inheritance-expected.txt:
        * platform/chromium/fast/dom/global-constructors-expected.txt: Removed.
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/dom/prototype-inheritance-expected.txt: Removed.
        * platform/mac/fast/dom/prototype-inheritance-expected.txt: Removed.
        * platform/qt/fast/dom/prototype-inheritance-expected.txt: Removed.
        * platform/win/fast/dom/prototype-inheritance-expected.txt: Removed.

2011-09-01  Dan Bernstein  <mitz@apple.com>

        Added Windows expected results to the test added in r94352.

        * platform/win/fast/text/fallback-traits-fixup-expected.txt: Added.

2011-09-01  Kentaro Hara  <haraken@google.com>

        TypeError should be thrown when a constructor is called as a normal function.
        https://bugs.webkit.org/show_bug.cgi?id=67381

        Reviewed by Darin Adler.

        The spec is here: http://www.w3.org/TR/WebIDL/#es-interface-call
        For example, "Image()" or "XMLHttpRequest()" should throw TypeError.

        * fast/dom/call-a-constructor-as-a-function-expected.txt: Added. The test result for JSC.
        * fast/dom/call-a-constructor-as-a-function.html: Added. Checks if TypeError is thrown.
        * platform/chromium/fast/dom/call-a-constructor-as-a-function-expected.txt: Added. The test result for V8.

2011-09-01  Sam Weinig  <sam@webkit.org>

        Add missing Event constructors to DOMWindow.idl
        https://bugs.webkit.org/show_bug.cgi?id=67449

        Reviewed by Anders Carlsson.

        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/mac/fast/dom/prototype-inheritance-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:
        Update results for new constructors.

2011-09-01  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9528843> STIX glyphs not rendered on this stackoverflow answer
        https://bugs.webkit.org/show_bug.cgi?id=67444

        Reviewed by Darin Adler.

        * fast/text/fallback-traits-fixup.html: Added.
        * platform/mac/fast/text/fallback-traits-fixup-expected.png: Added.
        * platform/mac/fast/text/fallback-traits-fixup-expected.txt: Added.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update more SVG baselines

        * platform/chromium-cg-mac/svg/custom/non-scaling-stroke-expected.png:
        * platform/chromium-cg-mac/svg/custom/pattern-skew-transformed-expected.png:
        * platform/chromium-cg-mac/svg/custom/pattern-with-transformation-expected.png:
        * platform/mac/svg/custom/non-scaling-stroke-expected.txt: Removed.
        * platform/mac/svg/custom/pattern-skew-transformed-expected.txt: Removed.
        * platform/qt/svg/custom/non-scaling-stroke-expected.txt: Removed.
        * platform/qt/svg/custom/pattern-skew-transformed-expected.txt: Removed.
        * svg/custom/non-scaling-stroke-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/non-scaling-stroke-expected.txt.
        * svg/custom/pattern-skew-transformed-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-skew-transformed-expected.txt.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Mark test that renders differently in 32 vs 64 bit mode as failing (WTF?)

        * platform/chromium/test_expectations.txt:

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium baselines for 94338 for windows/mac

        * platform/chromium-cg-mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png: Added.
        * platform/chromium-cg-mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.png: Added.
        * platform/chromium-cg-mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
        * platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
        * platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium baselines for 94338

        * platform/chromium-linux/svg/custom/pattern-rotate-expected.png:
        * platform/chromium-win/svg/custom/pattern-rotate-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/qt/svg/custom/pattern-rotate-expected.txt: Removed.
        * svg/custom/pattern-rotate-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-rotate-expected.txt.

2011-09-01  Dominic Mazzoni  <dmazzoni@google.com>

        Adds a new test that checks triggering speech input via an API call.
        https://bugs.webkit.org/show_bug.cgi?id=60170

        Reviewed by Dimitri Glazkov.

        * fast/speech/input-text-speechtrigger-expected.txt: Added.
        * fast/speech/input-text-speechtrigger.html: Added.

2011-09-01  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of files)
        Some images incorrectly created with LCD text replaced with gray-scale.
        Updated newer tests with reference images.
        Deleted images with correct fallbacks.

        * platform/chromium-mac/http/tests/navigation/error404-basic-expected.png: Removed.
        (remaining files omitted for brevity)

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Land chromium baselines for fast/css/focus-ring-multiline-writingmode-vertical.html

        * platform/chromium-cg-mac/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/chromium-cg-mac/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.
        * platform/chromium-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/chromium-win/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/chromium-win/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.

2011-09-01  Tim Horton  <timothy_horton@apple.com>

        REGRESSION: Rendering artifacts on a rotated, pattern filled SVG shape
        https://bugs.webkit.org/show_bug.cgi?id=53055
        <rdar://problem/8910917>

        Reviewed by Simon Fraser.

        Add a test that makes pixel cracking in transformed SVG patterns quite blatant,
        and rebaseline some other tests affected by the change.

        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png:
        * platform/mac/svg/custom/pattern-rotate-expected.png:
        * platform/mac/svg/custom/pattern-rotate-gaps-expected.png: Added.
        * platform/mac/svg/custom/pattern-rotate-gaps-expected.txt: Added.
        * platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * svg/custom/pattern-rotate-gaps.svg: Added.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update expectations and baselines

        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-09-01  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        Focus ring is rendered incorrectly for a block with -webkit-writing-mode
        https://bugs.webkit.org/show_bug.cgi?id=62915

        Reviewed by Simon Fraser.

        * fast/css/focus-ring-multiline-writingmode-vertical.html: Added.
        * platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
        * platform/qt-linux/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.

2011-09-01  Simon Fraser  <simon.fraser@apple.com>

        r93794 results in ruby tests causing assertion failure in RenderBlock.cpp
        https://bugs.webkit.org/show_bug.cgi?id=67007
        
        Reviewed by Beth Dakin.

        Disable these asserting ruby tests until the underlying issue can be fixed.

        * fast/ruby/after-block-doesnt-crash.html-disabled: Renamed from LayoutTests/fast/ruby/after-block-doesnt-crash.html.
        * fast/ruby/after-table-doesnt-crash.html-disabled: Renamed from LayoutTests/fast/ruby/after-table-doesnt-crash.html.
        * fast/ruby/generated-after-counter-doesnt-crash.html-disabled: Renamed from LayoutTests/fast/ruby/generated-after-counter-doesnt-crash.html.
        * fast/ruby/generated-before-and-after-counter-doesnt-crash.html-disabled: Renamed from LayoutTests/fast/ruby/generated-before-and-after-counter-doesnt-crash.html.

2011-09-01  James Robinson  <jamesr@chromium.org>

        [chromium] Update baselines for vertical-text-glyph-test.html

        * platform/chromium-cg-mac/fast/text/international/vertical-text-glyph-test-expected.png: Added.
        * platform/chromium-cg-mac/fast/text/international/vertical-text-glyph-test-expected.txt: Added.

2011-09-01  Nate Chapin  <japhet@chromium.org>

        http/tests/loading/empty-urls.html shouldn't
        fail if the load event fires before we finish.
        https://bugs.webkit.org/show_bug.cgi?id=67359

        Reviewed by Adam Barth.

        * http/tests/loading/empty-urls-expected.txt:
        * http/tests/loading/empty-urls.html:

2011-09-01  Sam Weinig  <sam@webkit.org>

        WebGLContextEvent should have its own JS wrapper
        https://bugs.webkit.org/show_bug.cgi?id=67352

        Reviewed by Anders Carlsson.

        * fast/canvas/webgl/WebGLContextEvent-expected.txt: Added.
        * fast/canvas/webgl/WebGLContextEvent.html: Added.
        Add a test that shows that WebGLContextEvents are not just base Events.

2011-09-01  Eric Carlson  <eric.carlson@apple.com>

        Add 'muted' content attribute to HTMLMediaElement
        https://bugs.webkit.org/show_bug.cgi?id=58369

        Reviewed by Darin Adler.

        * media/video-defaultmuted-expected.txt: Added.
        * media/video-defaultmuted.html: Added.

2011-08-30  Adrienne Walker  <enne@google.com>

        [chromium] Fix scissor rects on clipped nested iframes
        https://bugs.webkit.org/show_bug.cgi?id=67221

        Reviewed by James Robinson.

        * compositing/iframes/nested-composited-iframe-expected.png: Added.
        * compositing/iframes/nested-composited-iframe-expected.txt: Added.
        * compositing/iframes/nested-composited-iframe.html: Added.
        * compositing/iframes/resources/composited-red.html: Added.
        * compositing/iframes/resources/has-composited-iframe-child.html: Added.

2011-09-01  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, rebaseline tests after r94299.

        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-win-xp/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium-win/fast/borders/border-image-slices-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-slices-expected.txt: Added.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:

2011-09-01  Anna Cavender  <annacc@chromium.org>

        New baselines needed after changes in r94185
        https://bugs.webkit.org/show_bug.cgi?id=67350

        Reviewed by Eric Carlson.

        * platform/chromium-linux/media/audio-repaint-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-win/media/audio-repaint-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium/test_expectations.txt:

2011-09-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94194.
        http://trac.webkit.org/changeset/94194
        https://bugs.webkit.org/show_bug.cgi?id=67410

        Broke a test on the GTK+ bots. (Requested by mrobinson on
        #webkit).

        * platform/gtk/Skipped:

2011-08-31  David Hyatt  <hyatt@apple.com>

        Implement border-image-slice. This will eventually be a component of the new border-image shorthand
        property. It holds the cuts that you make into the border image along with a new optional "fill"
        keyword that indicates whether or not the center should be filled with the middle slice of the image.
        
        By default -webkit-border-image has always filled, but this does not match the specification. To preserve
        backwards compatibility, -webkit-border-image will continue to fill by default, but this does slightly affect
        computed style results, since the "fill" keyword will now be included in property dumps.

        Reviewed by Beth Dakin.

        Added fast/borders/border-image-slices.html.

        * fast/borders/border-image-slices.html: Added.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-with-zoom-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
        * fast/css/uri-token-parsing-expected.txt:
        * fast/css/uri-token-parsing.html:
        * platform/mac/fast/borders/border-image-slices-expected.png: Added.
        * platform/mac/fast/borders/border-image-slices-expected.txt: Added.
        * svg/css/getComputedStyle-basic-expected.txt:

2011-09-01  Zsolt Fehér  <feherzs@inf.u-szeged.hu>

        Unreviewed Qt gardening.
        https://bugs.webkit.org/show_bug.cgi?id=67392

        * platform/qt-wk2/Skipped:

2011-09-01  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 GTK a11y failing tests.

        * platform/gtk/Skipped:

2011-09-01  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/fast/borders/border-fit-2-expected.png: Added.
        * platform/gtk/fast/borders/border-fit-2-expected.txt: Added.
        * platform/gtk/fast/borders/border-image-source-expected.png: Added.
        * platform/gtk/fast/borders/border-image-source-expected.txt: Added.
        * platform/gtk/fast/multicol/overflow-across-columns-expected.png: Added.
        * platform/gtk/fast/multicol/overflow-across-columns-expected.txt: Added.
        * platform/gtk/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/gtk/fast/multicol/overflow-across-columns-percent-height-expected.txt: Added.
        * platform/gtk/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/gtk/fast/multicol/overflow-unsplittable-expected.txt: Added.
        * platform/gtk/fast/multicol/positive-leading-expected.png: Added.
        * platform/gtk/fast/multicol/positive-leading-expected.txt: Added.
        * platform/gtk/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/gtk/fast/table/table-after-child-in-table-expected.txt: Added.
        * platform/gtk/fast/text/complex-preferred-logical-widths-expected.png: Added.
        * platform/gtk/fast/text/complex-preferred-logical-widths-expected.txt: Added.
        * platform/gtk/fast/text/midword-break-before-surrogate-pair-2-expected.png: Added.
        * platform/gtk/fast/text/midword-break-before-surrogate-pair-2-expected.txt: Added.

2011-09-01  Gabor Loki  <loki@webkit.org>

        Unreviewed, rebaseline Qt-specific tests.

        * platform/qt/fast/borders/border-image-source-expected.png: Added.
        * platform/qt/fast/borders/border-image-source-expected.txt: Added.
        * platform/qt/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/qt/fast/multicol/overflow-across-columns-percent-height-expected.txt: Added.

2011-09-01  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of 800 files)
        tables/mozilla/bugs/bug8361 through transitions/svg-text-shadow-transition

        * platform/chromium-mac/transforms: Added.
        (remaining files omitted for brevity)

2011-09-01  Zsolt Fehér  <feherzs@inf.u-szeged.hu>

        Unreviewed Qt gardening.

        * platform/qt-wk2/Skipped:

2011-09-01  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Network error messages in console should link to the respective request in network panel if there is one.
        https://bugs.webkit.org/show_bug.cgi?id=65550

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/console-resource-errors-expected.txt:
        * http/tests/inspector/console-xhr-logging-expected.txt:

2011-09-01  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of 800 files)
        svg/svg/text/scaled-font through tables/mozilla/bugs/bug82946-1

        * platform/chromium-mac/svg/zoom: Added.
        (remaining files omitted for brevity)

2011-09-01  Zoltan Herczeg  <zherczeg@webkit.org>

        Unreviewed, skipping failing tests after r94259.

        r94259 fails on Qt and Gtk
        https://bugs.webkit.org/show_bug.cgi?id=67383

        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-09-01  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Fix bufferedAmount after WebSocket is closed
        https://bugs.webkit.org/show_bug.cgi?id=67363

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
        Try to send messages having various lengths to make sure we correctly calculate
        the framing overhead.

2011-09-01  Ryosuke Niwa  <rniwa@webkit.org>

        Temporarily skip a test that started failing after r94274.
        The failure is tracked by the bug 67377.

        * platform/mac/Skipped:

2011-08-31  Ryosuke Niwa  <rniwa@webkit.org>

        Crash when inserting text with a trailing newline into a textarea via JS
        https://bugs.webkit.org/show_bug.cgi?id=66241

        Reviewed by Darin Adler and Kent Tamura.

        Add regressions tests to ensure WebKit doesn't crash even when style recalc happens
        in the midst of editing commands.

        * fast/forms/update-from-element-during-editing-crash-1-expected.txt: Added.
        * fast/forms/update-from-element-during-editing-crash-1.html: Added.
        * fast/forms/update-from-element-during-editing-crash-2-expected.txt: Added.
        * fast/forms/update-from-element-during-editing-crash-2.html: Added.

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Add baseline due to r94258.

        * platform/chromium-linux/http/tests/eventsource/existent-eventsource-status-error-iframe-crash-expected.txt: Added.

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Add baselines due to r94253 and r94258.

        * platform/chromium-cg-mac-leopard/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/chromium-win/http/tests/eventsource/existent-eventsource-status-error-iframe-crash-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Add baselines for test added by r94253.

        * platform/chromium-cg-mac/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/chromium-linux/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/chromium-win/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/chromium-win/fast/multicol/overflow-across-columns-percent-height-expected.txt: Added.

2011-08-31  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r88115): "Choose File" button doesn't respect font-size property for the <input>
        https://bugs.webkit.org/show_bug.cgi?id=67181

        Reviewed by Dimitri Glazkov.

        * fast/forms/file/file-style-inheritance-expected.txt: Added.
        * fast/forms/file/file-style-inheritance.html: Added.

2011-08-31  Erik Arvidsson  <arv@chromium.org>

        shouldBeEqualToString should encode special characters
        https://bugs.webkit.org/show_bug.cgi?id=67223

        Reviewed by Darin Adler.

        * fast/js/resources/standalone-pre.js:
        (shouldBeEqualToString): Encode \, ", \n, \r
        * http/tests/cookies/resources/cookies-test-pre.js:
        (shouldBeEqualToString): Encode \, ", \n, \r

2011-08-31  Abhishek Arya  <inferno@chromium.org>

        Add test for testing non-existent eventsource and
        fix typo in previous test.
        https://bugs.webkit.org/show_bug.cgi?id=49448

        Reviewed by Alexey Proskuryakov.

        * http/tests/eventsource/eventsource-status-error-iframe-crash-expected.txt: Removed.
        * http/tests/eventsource/eventsource-status-error-iframe-crash.html: Removed.
        * http/tests/eventsource/existent-eventsource-status-error-iframe-crash-expected.txt: Copied from LayoutTests/http/tests/eventsource/eventsource-status-error-iframe-crash-expected.txt.
        * http/tests/eventsource/existent-eventsource-status-error-iframe-crash.html: Copied from LayoutTests/http/tests/eventsource/eventsource-status-error-iframe-crash.html.
        * http/tests/eventsource/non-existent-eventsource-status-error-iframe-crash-expected.txt: Added.
        * http/tests/eventsource/non-existent-eventsource-status-error-iframe-crash.html: Added.
        * http/tests/eventsource/resources/request-existent-eventsource-error.html: Copied from LayoutTests/http/tests/eventsource/resources/request-status-error.htm.
        * http/tests/eventsource/resources/request-non-existent-eventsource-error.html: Added.
        * http/tests/eventsource/resources/request-status-error.htm: Removed.

2011-08-31  Dan Bernstein  <mitz@apple.com>

        Additional test for <rdar://problem/10002140> Text gets clipped in
        multi-column layouts when overflow:auto is used.
        https://bugs.webkit.org/show_bug.cgi?id=67212

        Reviewed by Dave Hyatt.

        * fast/multicol/overflow-across-columns-percent-height.html: Added.
        * platform/mac/fast/multicol/overflow-across-columns-percent-height-expected.png: Added.
        * platform/mac/fast/multicol/overflow-across-columns-percent-height-expected.txt: Added.

2011-08-31  Ojan Vafai  <ojan@chromium.org>

        fix bug in flexbox test with offsetWidth/offsetLeft of 0
        https://bugs.webkit.org/show_bug.cgi?id=67330

        Reviewed by Tony Chang.

        * css3/flexbox/resources/flexbox.js:

2011-08-31  Kenji Imasaki  <imasaki@chromium.org>

        [Chromium] Update a bug number in test expectation file and skip
        media-document-audio-repaint.html for GPU due to an unimplented
        feature.
        https://bugs.webkit.org/show_bug.cgi?id=67328

        Reviewed by Adam Barth.

        * platform/chromium/test_expectations.txt:

2011-08-31  Alexey Proskuryakov  <ap@apple.com>

        http/tests/eventsource/workers/eventsource-simple.html is a flaky crash because of
        eventsource-status-error-iframe-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=61523

        Reviewed by Nate Chapin.

        * http/tests/eventsource/eventsource-status-code-states-expected.txt:
        * http/tests/eventsource/eventsource-status-code-states.html:
        2xx responses are no longer different from any other failures.

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Test expectation updates due to r94211.

        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-001-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-002-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-003-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-004-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-005-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-006-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-007-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-008-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-009-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-010-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-012-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-013-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-014-expected.png: Added.
        * platform/chromium-cg-mac-leopard/css2.1/20110323/margin-applies-to-015-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-001-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-002-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-003-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-004-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-005-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-006-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-007-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-008-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-009-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-010-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-012-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-013-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-014-expected.png: Added.
        * platform/chromium-cg-mac/css2.1/20110323/margin-applies-to-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-001-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-001-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-002-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-002-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-003-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-003-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-004-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-004-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-005-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-005-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-006-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-006-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-007-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-007-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-008-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-008-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-009-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-009-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-010-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-010-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-012-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-012-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-013-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-013-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-013-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-014-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-014-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-014-expected.txt.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/margin-applies-to-015-expected.txt: Renamed from LayoutTests/platform/chromium-linux/css2.1/20110323/margin-applies-to-015-expected.txt.

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Fix expectations due to r94213.

        * platform/chromium-cg-mac/fast/tokenizer/script_extra_close-expected.txt: Removed.

2011-08-31  David Levin  <levin@chromium.org>

        empty-urls.html is non-deterministic.
        https://bugs.webkit.org/show_bug.cgi?id=67327

        Reviewed by Adam Barth.

        * http/tests/loading/empty-urls-expected.txt:
        * http/tests/loading/empty-urls.html: Ensure
          the ordering of the pass messages and remove the
          loader events which also seem to produce non-deterministic
          results.

2011-08-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94116.
        http://trac.webkit.org/changeset/94116
        https://bugs.webkit.org/show_bug.cgi?id=67323

        caused a lot of tests failures (Requested by thorton on
        #webkit).

        * platform/chromium/test_expectations.txt:
        * svg/custom/getBBox-path-expected.txt: Removed.
        * svg/custom/getBBox-path.svg: Removed.

2011-08-31  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of 800 files)
        svg/batik/text/textLayout through svg/text/multichar-glyph

        * platform/chromium-mac/svg/batik/text/textLayout-expected.png: Added.
        (remaining files omitted for brevity)

2011-08-31  Robert Hogan  <robert@webkit.org>

        Add new platform-specific results from r94211
        
        Unreviewed.

        * platform/gtk/css2.1/20110323/margin-applies-to-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-013-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-014-expected.txt: Added.
        * platform/gtk/css2.1/20110323/margin-applies-to-015-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-013-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-014-expected.txt: Added.
        * platform/mac/css2.1/20110323/margin-applies-to-015-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-013-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-014-expected.txt: Added.
        * platform/qt/css2.1/20110323/margin-applies-to-015-expected.txt: Added.

2011-08-31  David Levin  <levin@chromium.org>

        [chromium] Update test expectation due to r94206 and r94211.

        * platform/chromium-win/fast/borders/border-image-source-expected.png: Added.
        * platform/chromium-win/fast/borders/border-image-source-expected.txt: Added.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/core/captions1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/captions2-expected.png:

2011-08-31  Tom Sepez  <tsepez@chromium.org>

        Fix XSS filter bypass by multiply decoding both the URL and the body
        snippet until they are in the most minimal form before comparison.
        https://bugs.webkit.org/show_bug.cgi?id=66585

        Reviewed by Adam Barth.

        * http/tests/security/xssAuditor/anchor-url-dom-write-location2.html:
        * http/tests/security/xssAuditor/resources/echo-dom-write-unescaped-location.html: Added.

2011-08-31  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of 800 files)
        fast/overflow through svg/batik/text

        * platform/chromium-mac/fast/overflow/overflow-with-local-background-attachment-expected.png: Added.
        (remaining files omitted for brevity)

2011-08-31  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, next chunk of 800 files)
        Most files were inadvertantly excluded from earlier checkins.

        * platform/chromium-mac/fast/overflow: Added.
        (remaining files omitted for brevity)

2011-08-31  Robert Hogan  <robert@webkit.org>

        Update platform-specific results after r94211

        Unreviewed, update platform-specifc results.

        * platform/gtk/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions3-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions3-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/core/captions3-expected.txt:

2011-08-31  Simon Fraser  <simon.fraser@apple.com>

        Crash with -webkit-radial-gradient(top) gradient
        https://bugs.webkit.org/show_bug.cgi?id=66686

        Reviewed by Darin Adler.
        
        Test case with degenerate arguments in a radial gradient.

        * fast/gradients/css3-radial-gradient-crash-expected.txt: Added.
        * fast/gradients/css3-radial-gradient-crash.html: Added.

2011-08-31  Nate Chapin  <japhet@chromium.org>

        Test updates for https://bugs.webkit.org/show_bug.cgi?id=30303.

        Reviewed by Darin Adler.

        * fast/images/load-img-with-empty-src-expected.txt:
        * fast/images/load-img-with-empty-src.html: Expect the same behavior whether or not an empty src
            is in a local file document.
        * fast/tokenizer/002-expected.txt: Added.
        * fast/tokenizer/002.html: Make dumpAsText().
        * fast/tokenizer/external-script-document-write_2-expected.txt: Added.
        * fast/tokenizer/external-script-document-write_2.html:: Make dumpAsText().
        * fast/tokenizer/script_extra_close-expected.txt: Added.
        * fast/tokenizer/script_extra_close.html:: Make dumpAsText().
        * http/tests/loading/empty-urls-expected.txt: Added.
        * http/tests/loading/empty-urls.html: Added. Test empty urls with a bunch of subresource types
            and ensure their error event behavior matches the spec.
        * platform/chromium-cg-mac/fast/tokenizer/002-expected.txt: Removed.
        * platform/chromium-cg-mac/fast/tokenizer/external-script-document-write_2-expected.txt: Removed.
        * platform/chromium-linux/fast/tokenizer/002-expected.png: Removed.
        * platform/chromium-linux/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/chromium-linux/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/002-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/002-expected.txt: Removed.
        * platform/chromium-win/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/external-script-document-write_2-expected.txt: Removed.
        * platform/chromium-win/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/chromium-win/fast/tokenizer/script_extra_close-expected.txt: Removed.
        * platform/gtk/fast/tokenizer/002-expected.png: Removed.
        * platform/gtk/fast/tokenizer/002-expected.txt: Removed.
        * platform/gtk/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/gtk/fast/tokenizer/external-script-document-write_2-expected.txt: Removed.
        * platform/gtk/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/gtk/fast/tokenizer/script_extra_close-expected.txt: Removed.
        * platform/mac-leopard/fast/tokenizer/002-expected.png: Removed.
        * platform/mac-leopard/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/mac-leopard/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/mac/fast/tokenizer/002-expected.png: Removed.
        * platform/mac/fast/tokenizer/002-expected.txt: Removed.
        * platform/mac/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/mac/fast/tokenizer/external-script-document-write_2-expected.txt: Removed.
        * platform/mac/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/mac/fast/tokenizer/script_extra_close-expected.txt: Removed.
        * platform/qt/fast/tokenizer/002-expected.png: Removed.
        * platform/qt/fast/tokenizer/002-expected.txt: Removed.
        * platform/qt/fast/tokenizer/external-script-document-write_2-expected.png: Removed.
        * platform/qt/fast/tokenizer/external-script-document-write_2-expected.txt: Removed.
        * platform/qt/fast/tokenizer/script_extra_close-expected.png: Removed.
        * platform/qt/fast/tokenizer/script_extra_close-expected.txt: Removed.

2011-08-31  Simon Fraser  <simon.fraser@apple.com>

        Improve appearance and performance of layout test results.html
        https://bugs.webkit.org/show_bug.cgi?id=67252

        Reviewed by Adam Barth, Ojan Vafai.
        
        Improve the appearance of the pixel result comparison overlay.
        
        Change the overlay from painting pixels into a canvas one by one
        to using images enlarged with 'image-rendering: -webkit-optimize-contrast",
        which is very much faster.

        * fast/harness/results.html:

2011-08-28  Robert Hogan  <robert@webkit.org>

        CSS 2.1 failure: margin-applies-to-015 fails, WebKit does not respect top margin for table captions
        https://bugs.webkit.org/show_bug.cgi?id=34763

        Reviewed by Simon Fraser.

        * css2.1/20110323/margin-applies-to-001.htm: Added.
        * css2.1/20110323/margin-applies-to-002.htm: Added.
        * css2.1/20110323/margin-applies-to-003.htm: Added.
        * css2.1/20110323/margin-applies-to-004.htm: Added.
        * css2.1/20110323/margin-applies-to-005.htm: Added.
        * css2.1/20110323/margin-applies-to-006.htm: Added.
        * css2.1/20110323/margin-applies-to-007.htm: Added.
        * css2.1/20110323/margin-applies-to-008.htm: Added.
        * css2.1/20110323/margin-applies-to-009.htm: Added.
        * css2.1/20110323/margin-applies-to-010.htm: Added.
        * css2.1/20110323/margin-applies-to-012.htm: Added.
        * css2.1/20110323/margin-applies-to-013.htm: Added.
        * css2.1/20110323/margin-applies-to-014.htm: Added.
        * css2.1/20110323/margin-applies-to-015.htm: Added.
          - Added from http://test.csswg.org/suites/css2.1/20110323/html4/chapter-8.html
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-001-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-002-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-003-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-004-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-005-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-006-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-007-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-008-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-009-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-010-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-012-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-013-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-013-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-014-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-014-expected.txt: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-015-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/margin-applies-to-015-expected.txt: Added.
          - Chromium-Linux results for  http://test.csswg.org/suites/css2.1/20110323/html4/chapter-8.html
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/core/captions3-expected.txt:
          - Updated to reflect position of table caption taking account of margin, matching Firefox where appropriate. Still some
            unrelated failures that prevent matching Firefox exactly.

2011-08-31  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67300
        
        Add the new border-image-source property (and its corresponding analogue for masks, mask-box-image-source).
        Change the border-image parsing code to no longer consider "none" to represent the entire border-image
        expression, but instead to just mean "none" for the image component of the expression.
        
        Change the pending image code for border-image and mask-box-image to use the new *-source properties when
        loading the image so that they're considered the same.
        
        This is the first step towards eliminating the border-image parsing code in favor of just parsing it as
        a shorthand instead, but for now I'm implementing each property one by one, and once they're all there,
        we can cut over to border-image as a true shorthand.

        Reviewed by Beth Dakin.

        Added fast/borders/border-image-source.html.

        * fast/borders/border-image-source.html: Added.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-08-31  Cary Clark  <caryclark@google.com>

        Unreviewed; new baselines (Skia on Mac, remainder of fast directory)

        * platform/chromium-mac/fast/blockflow: Added.
        (remaining files omitted for brevity)

2011-08-31  Noel Gordon  <noel.gordon@gmail.com>

        [chromium] DRT linux should pass nativeKeyCode to plugins
        https://bugs.webkit.org/show_bug.cgi?id=66679

        Reviewed by Tony Chang.

        * platform/chromium-linux/plugins/keyboard-events-expected.txt:

2011-08-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Unreviewed gardening.
        Unskip fast/files/create-blob-url.html after r94187

        * platform/qt/Skipped:

2011-08-31  Cary Clark  <caryclark@google.com>

        unreviewed; new baselines (Skia on Mac, css3, edit, partial fast directories)

        * platform/chromium-mac/css3: Added.
        * platform/chromium-mac/edit: Added.
        * platform/chromium-mac/fast/backgrounds: Added.
        (remaining files omitted for brevity)

2011-08-31  Martin Robinson  <mrobinson@igalia.com>

        Unskip a test which now seems to be passing on GTK+.

        * platform/gtk/Skipped: Unskip a test.

2011-08-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Incorrect results for new fast/multicol tests added in r94084
        https://bugs.webkit.org/show_bug.cgi?id=67293

        Unreviwed gardening.

        * platform/qt/Skipped:

2011-08-31  Cary Clark  <caryclark@google.com>

        unreviewed; new baselines (Skia on Mac, css2.1 directory only)

        * platform/chromium-mac/css2.1: Added.
        * platform/chromium-mac/css2.1/20110323: Added.
        * platform/chromium-mac/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        (remaining files omitted for brevity)

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, revert part of r94168, the test didn't need result
        update. Proper fix is worked on in bug 66045.

        * fast/files/create-blob-url-crash-expected.txt:

2011-08-31  Mike Reed  <reed@google.com>

        [skia] antialias images if we're rotated
        https://bugs.webkit.org/show_bug.cgi?id=67207

        Reviewed by Stephen White.

        * platform/chromium/test_expectations.txt:

2011-08-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Unreviewedly skip new failures.

        It covers the following bugs:
          * Ping-pong with fast/files/create-blob-url-crash-expected.txt
            https://bugs.webkit.org/show_bug.cgi?id=67282
          * [Qt] css2.1/t090204-display-change-01-b-ao.html fails after r94084
            https://bugs.webkit.org/show_bug.cgi?id=67286

        * platform/qt/Skipped:

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, rebaseline GTK-specific font tests.

        * platform/gtk/fonts/complex-text-shadows-expected.txt:
        * platform/gtk/fonts/font-face-with-complex-text-expected.txt:

2011-08-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, build fix after r94167.

        * inspector/debugger/script-formatter.html:

2011-08-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Unreviewed gardening.
        Skipped the wrong test in a previous gardening.

        * platform/qt/Skipped:

2011-08-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Incorrect results for svg/custom/getBBox-js.svg
        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, unskip fast/css/square-button-appearance.html which
        got baselines in r93953.

        * platform/gtk/test_expectations.txt:

2011-08-31  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 3 test started crashing somewhere between r93878-r93935
        https://bugs.webkit.org/show_bug.cgi?id=67197

        * platform/qt/Skipped: Unskip tests, because bug was fixed by r94088.

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing fast/loader/location-port.html test on
        GTK.

        * platform/gtk/Skipped:

2011-08-31  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        Add Qt specific expected files after r94111, update Qt specific expected files after r94109.

        Based on digging of Gabor Rapcsanyi.

        * platform/qt/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/qt/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/qt/fast/css-generated-content/table-table-before-after-child-add-expected.png:
        * platform/qt/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/qt/fast/preloader/document-write-noscript-expected.png: Added.
        * platform/qt/fast/preloader/document-write-noscript-expected.txt: Added.

2011-08-31  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add and update platform specific expected files after r94109.

        Based on digging of Gabor Rapcsanyi.

        * platform/qt/fast/table/table-after-child-in-table-expected.txt:
        * platform/qt/fast/table/table-before-child-in-table-expected.txt:
        * platform/qt/fast/table/table-before-child-style-update-expected.png: Added.
        * platform/qt/fast/table/table-before-child-style-update-expected.txt: Added.
        * platform/qt/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/qt/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/qt/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/qt/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/qt/fast/table/table-row-before-child-style-update-expected.png: Added.
        * platform/qt/fast/table/table-row-before-child-style-update-expected.txt: Added.

2011-08-31  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Update platform specific expected files after r94147.

        Based on digging of Gabor Rapcsanyi.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r93713 and r93909.

        * fast/files/create-blob-url-crash-expected.txt:
        * platform/gtk/css2.1/t0602-c13-inheritance-00-e-expected.txt:
        * platform/gtk/css2.1/t090204-display-change-01-b-ao-expected.txt:

2011-08-30  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: rename sourceFile to uiSourceCode and get rid of sourceFileId where possible.
        https://bugs.webkit.org/show_bug.cgi?id=67136

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/breakpoint-manager.html:
        * inspector/debugger/scripts-panel.html:

2011-08-31  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, rebaseline another multicol test expectation.

        * platform/chromium-cg-mac-leopard/fast/multicol/overflow-across-columns-expected.png: Added.

2011-08-31  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update Mac-Leopard expectations for multicol tests.

        * platform/chromium-cg-mac-leopard/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/multicol/positive-leading-expected.png: Added.

2011-08-31  Takashi Toyoshima  <toyoshim@chromium.org>

        [WebSocket] Prevent unnecessary pywebsocket warnings on layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=67182

        Reviewed by Kent Tamura.

        Some layout tests for WebSocket raised Exception to prevent unnecessary
        pywebsocket warning. But it doesn't work any more on pywebsocket 0.6b4.
        Now pywebsocket support AbortedByUserException to prevent warning.
        This change make raise AbortedByUserException instead of Exception.

        handshake-fail-by-prepended-null_wsh.py didn't use Exception, but
        expected abnormal closure on sending response could raise unexpected
        Exception by chance. This change also takes care of it.

        * http/tests/websocket/tests/hixie76/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-overflow_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null_wsh.py:
        * http/tests/websocket/tests/hixie76/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/masked-frames_wsh.py:
        Use AbortedByUserException instead of Exception.

2011-08-31  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Receive binary message as ArrayBuffer
        https://bugs.webkit.org/show_bug.cgi?id=67180

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/receive-arraybuffer-expected.txt: Added.
        * http/tests/websocket/tests/hybi/receive-arraybuffer.html:
        Added. Connect to binary-frames_wsh.py (which is also used from receive-blob.html) and
        check the content of MessageEvent's data attribute.
        * http/tests/websocket/tests/hybi/receive-blob.html:
        Update function names to match ones in receive-arraybuffer.html.
        * http/tests/websocket/tests/hybi/workers/receive-arraybuffer-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/receive-arraybuffer.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/receive-arraybuffer.js: Added.
        * http/tests/websocket/tests/hybi/workers/resources/receive-blob.js:
        Same as receive-blob.html above.

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r94109 and r93909.

        * platform/gtk/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/gtk/fast/multicol/inherit-column-values-expected.txt: Added.
        * platform/gtk/fast/multicol/initial-column-values-expected.txt: Added.
        * platform/gtk/fast/multicol/single-line-expected.txt:
        * platform/gtk/fast/multicol/table-vertical-align-expected.txt:
        * platform/gtk/fast/repaint/multicol-repaint-expected.txt:
        * platform/gtk/fast/table/table-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-before-child-style-update-expected.txt: Added.
        * platform/gtk/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-style-update-expected.txt: Added.

2011-08-31  Keishi Hattori  <keishi@webkit.org>

        input color: onchange event is not fired when changing color from color chooser
        https://bugs.webkit.org/show_bug.cgi?id=66848

        Reviewed by Kent Tamura.

        * fast/forms/color/input-color-onchange-event-expected.txt: Added.
        * fast/forms/color/input-color-onchange-event.html: Added. Tests if change event is fired when user selects color from color chooser.

2011-08-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r94147.

        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-expected.txt:
        * platform/gtk/fast/js/global-constructors-expected.txt:

2011-08-30  David Levin  <levin@chromium.org>

        [chromium] Update result due to r94114.

        * platform/chromium-win/svg/custom/pan-direction-expected.png: Renamed from LayoutTests/platform/chromium-linux/svg/custom/pan-direction-expected.png.
        * platform/chromium/test_expectations.txt:

2011-08-30  David Levin  <levin@chromium.org>

        [chromium] Update due to r94147.

        * platform/chromium-mac/fast/dom/prototype-inheritance-expected.txt: Copied from LayoutTests/platform/chromium/fast/dom/prototype-inheritance-expected.txt.
        * platform/chromium-mac/fast/events/constructors/custom-event-constructor-expected.txt: Added.
        Several of these results are failures but that should be fixed by bug 66756.
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/chromium/fast/events/constructors/custom-event-constructor-expected.txt: Added.

2011-08-30  Sam Weinig  <sam@webkit.org>

        Add constructor for CustomEvent
        https://bugs.webkit.org/show_bug.cgi?id=67248

        Reviewed by Dan Bernstein.

        * fast/events/constructors/custom-event-constructor-expected.txt: Added.
        * fast/events/constructors/custom-event-constructor.html: Added.
        New test.

        * fast/dom/constructed-objects-prototypes-expected.txt:
        * platform/mac/fast/dom/Window/window-properties-expected.txt:
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/mac/fast/dom/prototype-inheritance-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:
        Updated for add window.CustomEvent.

2011-08-30  David Levin  <levin@chromium.org>

        [chromium] New baselines due to r94109.

        * platform/chromium-linux/fast/css-generated-content/table-row-before-after-child-add-expected.txt: Removed.
        * platform/chromium-linux/fast/css-generated-content/table-table-before-after-child-add-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-after-child-in-table-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-before-child-in-table-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-row-after-child-in-block-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-row-after-child-in-table-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-row-before-child-in-block-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-row-before-child-in-table-expected.txt: Removed.
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/chromium-win/fast/table/table-after-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-before-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-before-child-style-update-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/chromium-win/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/chromium-win/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/chromium-win/fast/table/table-row-before-child-style-update-expected.png: Added.

2011-08-30  Ojan Vafai  <ojan@chromium.org>

        add a test for border/padding/margin on the flexbox container
        https://bugs.webkit.org/show_bug.cgi?id=67243

        Reviewed by Tony Chang.

        * css3/flexbox/001-expected.txt:
        * css3/flexbox/001.html:
        * css3/flexbox/resources/flexbox.js:

2011-08-30  Alice Boxhall  <aboxhall@chromium.org>

        Correctly report selected text range for accessibility APIs for role=textbox
        https://bugs.webkit.org/show_bug.cgi?id=65900

        Reviewed by Chris Fleizach.

        * accessibility/textbox-role-reports-selection-expected.txt: Added.
        * accessibility/textbox-role-reports-selection.html: Added.

2011-08-30  Rachel Blum  <groby@chromium.org>

        The "port" property of an <a> whose href does not specify a port returns the wrong value
        https://bugs.webkit.org/show_bug.cgi?id=66081

        Updated tests to reflect behavior change around invalid port strings. 
        Updated chromium location-port test to reflect chromium issues
        
        Reviewed by Adam Barth.

        * fast/dom/HTMLAnchorElement/get-href-attribute-port-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/get-href-attribute-port.html: Added.
        * fast/dom/HTMLAnchorElement/script-tests/get-href-attribute-port.js: Added.
        * fast/loader/location-port-expected.txt:
        * fast/loader/location-port.html:
        * fast/url/script-tests/segments-from-data-url.js:
        * fast/url/script-tests/segments.js:
        * fast/url/script-tests/trivial-segments.js:
        * fast/url/segments-expected.txt:
        * fast/url/segments-from-data-url-expected.txt:
        * fast/url/trivial-segments-expected.txt:
        * platform/chromium-cg-mac/fast/loader/location-port-expected.txt:
        * platform/chromium-win/fast/loader/location-port-expected.txt:
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-port-expected.txt:

2011-08-30  Scott Byer  <scottbyer@chromium.org>

        Fix pan scrolling on Windows to be clamped
        https://bugs.webkit.org/show_bug.cgi?id=66910

        With the recent change to support rubberband scrolling on the Mac, pan
        scrolling of overflow divs became unclamped and would scroll infinitely
        and along an axis without a scrollbar.
        
        Reviewed by Simon Fraser

        * platform/mac/fast/frames/iframe-scaling-with-scroll-expected.png:
        * platform/win/fast/events/panScroll-click-hyperlink-expected.txt: Added.
        * platform/win/fast/events/panScroll-correct-direction-expected.txt: Added.
        * platform/win/fast/events/panScroll-correct-direction.html: Added.

2011-08-30  Chris Rogers  <crogers@google.com>

        Don't allow nodes of one context to be connected to nodes of another context
        https://bugs.webkit.org/show_bug.cgi?id=67245

        Reviewed by Dimitri Glazkov.

        * webaudio/audionode-expected.txt:
        * webaudio/audionode.html:

2011-08-30  Aaron Colwell  <acolwell@chromium.org>

        Add MediaSource API to HTMLMediaElement
        https://bugs.webkit.org/show_bug.cgi?id=64731

        Reviewed by Eric Carlson.

        * http/tests/media/media-source/webm/video-media-source-errors-expected.txt: Added.
        * http/tests/media/media-source/webm/video-media-source-errors.html: Added.
        * http/tests/media/media-source/webm/video-media-source-play-expected.txt: Added.
        * http/tests/media/media-source/webm/video-media-source-play.html: Added.
        * http/tests/media/media-source/webm/video-media-source-seek-expected.txt: Added.
        * http/tests/media/media-source/webm/video-media-source-seek.html: Added.
        * http/tests/media/media-source/webm/video-media-source-state-changes-expected.txt: Added.
        * http/tests/media/media-source/webm/video-media-source-state-changes.html: Added.
        * http/tests/media/media-source/webm/webm-media-source.js: Added.
        (getData):
        (getHeaders):
        (getClusterCount):
        (getCluster):
        (getClusterTimeForIndex):
        (getClusterIndexForTimestamp):
        (setSrcToMediaSourceURL):
        (appendHeaders):
        (appendCluster):
        (appendUntilEndOfStream):
        (logSourceState):
        (getSourceStateName):
        (expectSourceState):
        * http/tests/media/resources/media-source/webm/test.webm: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-0: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-1: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-10: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-11: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-12: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-13: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-14: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-15: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-2: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-3: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-4: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-5: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-6: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-7: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-8: Added.
        * http/tests/media/resources/media-source/webm/test.webm.cluster-9: Added.
        * http/tests/media/resources/media-source/webm/test.webm.headers: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-08-30  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium rebaselines for r94109.

        * platform/chromium-linux/fast/css-generated-content/table-row-before-after-child-add-expected.txt: Added.
        * platform/chromium-linux/fast/css-generated-content/table-table-before-after-child-add-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-after-child-in-table-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-before-child-in-table-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-before-child-style-update-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-after-child-in-block-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-row-after-child-in-table-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-row-before-child-in-block-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-row-before-child-in-table-expected.txt: Added.
        * platform/chromium-linux/fast/table/table-row-before-child-style-update-expected.png: Added.

2011-08-30  Tim Horton  <timothy_horton@apple.com>

        getBBox() on a SVGPathElement with curves incorrectly includes control points
        https://bugs.webkit.org/show_bug.cgi?id=53512
        <rdar://problem/9861154>

        Reviewed by Dirk Schulze.

        Add a test ensuring that getBBox returns only the bounds of the filled shape,
        not the bounds of all of the control points.

        * platform/chromium/test_expectations.txt:
        * svg/custom/getBBox-path-expected.txt: Added.
        * svg/custom/getBBox-path.svg: Added.

2011-08-30  Tim Horton  <timothy_horton@apple.com>

        SVG panning y-axis is flipped in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=65800
        <rdar://problem/9908012>

        Reviewed by Darin Adler.

        Add a test which attempts to pan an SVG using eventSender.

        * platform/chromium-linux/svg/custom/pan-direction-expected.png: Added.
        * platform/mac/svg/custom/pan-direction-expected.png: Added.
        * svg/custom/pan-direction-expected.txt: Added.
        * svg/custom/pan-direction.svg: Added.

2011-08-30  Cary Clark  <caryclark@google.com>

        LayoutTest expected results for Skia on Mac (animations and canvas directories only)
        https://bugs.webkit.org/show_bug.cgi?id=67218

        Reviewed by Adam Barth.

        * platform/chromium-mac/animations: Added.
        * platform/chromium-mac/animations/missing-values-first-keyframe-expected.png: Added.
        * platform/chromium-mac/animations/missing-values-last-keyframe-expected.png: Added.
        * platform/chromium-mac/animations/opacity-transform-animation-expected.png: Added.
        * platform/chromium-mac/animations/state-at-end-event-expected.png: Added.
        * platform/chromium-mac/animations/stop-animation-on-suspend-expected.txt: Added.
        * platform/chromium-mac/canvas: Added.
        * platform/chromium-mac/canvas/philip: Added.
        * platform/chromium-mac/canvas/philip/tests: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.operation.clear-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.operation.darker-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.fill.copy-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.image.copy-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.image.destination-atop-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.image.destination-in-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.image.source-in-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.image.source-out-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.composite.uncovered.pattern.copy-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.drawImage.broken-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.drawImage.image.incomplete.omitted-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.fillStyle.parse.invalid.rgba-6-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.fillStyle.parse.rgb-eof-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.fillStyle.parse.rgba-eof-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.cone.behind-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.cone.beside-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.cone.cylinder-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.cone.shape2-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.cone.top-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.outside3-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.touch1-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.gradient.radial.touch3-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.create1.type-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.create2.type-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.get.type-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.object.round-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.object.wrap-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.imageData.put.wrongtype-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.line.width.basic-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.line.width.transformed-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.missingargs-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.path.arc.angle.3-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.path.arc.angle.5-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.path.arcTo.shape.curve1-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.path.arcTo.shape.curve2-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.image.broken-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.image.incomplete.empty-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.image.incomplete.omitted-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.image.string-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.image.undefined-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.paint.norepeat.coord3-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.paint.repeatx.coord1-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.pattern.paint.repeaty.coord1-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.canvas.alpha-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.canvas.basic-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.canvas.transparent.2-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.image.alpha-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.image.basic-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.image.scale-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.shadow.image.transparent.2-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.align.center-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.baseline.bottom-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.baseline.hanging-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.baseline.ideographic-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.baseline.middle-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.baseline.top-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.fill.maxWidth.fontface-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.space.collapse.end-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.space.collapse.nonspace-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.space.collapse.other-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.space.collapse.space-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.draw.space.collapse.start-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.basic-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.complex-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.invalid-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.size.percentage-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.size.percentage.default-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.font.parse.system-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.text.measure.width.space-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.transformation.setTransform.skewed-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/2d.transformation.transform.skewed-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt: Added.
        * platform/chromium-mac/canvas/philip/tests/type.prototype-expected.txt: Added.

2011-08-30  Adam Barth  <abarth@webkit.org>

        Flaky crash with JavaScript URLs
        https://bugs.webkit.org/show_bug.cgi?id=66360

        Reviewed by Nate Chapin.

        * fast/loader/javascript-url-iframe-crash-expected.txt: Added.
        * fast/loader/javascript-url-iframe-crash.html: Added.

2011-08-30  Tony Gentilcore  <tonyg@chromium.org>

        PreloadScanner shouldn't load images inside noscript via doc.write
        https://bugs.webkit.org/show_bug.cgi?id=67214

        Reviewed by Adam Barth.

        * fast/preloader/document-write-noscript-expected.txt: Added.
        * fast/preloader/document-write-noscript.html: Added.

2011-08-30  Abhishek Arya  <inferno@chromium.org>

        Style not updated for table parts in :before, :after content.
        https://bugs.webkit.org/show_bug.cgi?id=66141

        1. 2 new tests show that the blue and green boxes don't overlap
        after the fix.
        2. update r93794 tests showing that style info is propagated.

        Reviewed by Dave Hyatt.

        * fast/table/table-before-child-style-update-expected.png: Added.
        * fast/table/table-before-child-style-update-expected.txt: Added.
        * fast/table/table-before-child-style-update.html: Added.
        * fast/table/table-row-before-child-style-update-expected.png: Added.
        * fast/table/table-row-before-child-style-update-expected.txt: Added.
        * fast/table/table-row-before-child-style-update.html: Added.
        * platform/mac/fast/table/table-after-child-in-table-expected.txt:
        * platform/mac/fast/table/table-before-child-in-table-expected.txt:
        * platform/mac/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/mac/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/mac/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/mac/fast/table/table-row-before-child-in-table-expected.txt:

2011-08-30  Tony Chang  <tony@chromium.org>

        refactor box-ordinal-group handling so we don't timeout on large values
        https://bugs.webkit.org/show_bug.cgi?id=65783

        Reviewed by David Hyatt.

        * fast/flexbox/box-ordinal-group-expected.txt: Added.
        * fast/flexbox/box-ordinal-group.html: Added.

2011-08-30  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        Emit last progress notification before calling dispatchDidFinishLoad
        https://bugs.webkit.org/show_bug.cgi?id=28851

        Reviewed by Adam Barth.

        Keep track of the order expected for the progressFinishedNotification, which is
        before the didFinishLoadForFrame.

        * http/tests/loading/progress-finished-callback-expected.txt: Added.
        * http/tests/loading/progress-finished-callback.html: Added.
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-08-30  Ojan Vafai  <ojan@chromium.org>

        CSS parsing for -webkit-flex-flow
        https://bugs.webkit.org/show_bug.cgi?id=67224

        Reviewed by Tony Chang.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/script-tests/css-properties.js:

2011-08-30  Alexey Proskuryakov  <ap@apple.com>

        fast/loader/document-destruction-within-unload.html causes an assertion failure in the next
        test (currently, document-with-fragment-url-1.html)
        https://bugs.webkit.org/show_bug.cgi?id=66783

        * platform/mac/Skipped: Skipping the offending test.

2011-08-29  Oliver Hunt  <oliver@apple.com>

        TypedArrays don't ensure that denormalised values are normalised
        https://bugs.webkit.org/show_bug.cgi?id=67178

        Reviewed by Gavin Barraclough.

        Add test to ensure that we create a non-signalling nan when reading
        a singaling nan from a typed array.

        * fast/canvas/webgl/webgl-array-invalid-ranges-expected.txt:
        * fast/canvas/webgl/webgl-array-invalid-ranges.html:

2011-08-30  David Levin  <levin@chromium.org>

        [chromium] Add baselines for due to r94092 and r93909.

        * platform/chromium-cg-mac/fast/multicol/overflow-across-columns-expected.png: Added.
        * platform/chromium-cg-mac/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/chromium-linux/fast/multicol/overflow-across-columns-expected.png: Added.
        * platform/chromium-linux/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/chromium-win/fast/multicol/overflow-across-columns-expected.png: Added.
        * platform/chromium-win/fast/multicol/overflow-across-columns-expected.txt: Added.
        * platform/chromium-win/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/chromium-win/fast/multicol/overflow-unsplittable-expected.txt: Added.
        * platform/chromium-win/fast/text/complex-preferred-logical-widths-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-08-30  David Levin  <levin@chromium.org>

        [chromium] Update baselines after r94084 and r94088 and r93909.

        * platform/chromium-cg-mac/fast/multicol/positive-leading-expected.png: Added.
        * platform/chromium-cg-mac/fast/text/complex-preferred-logical-widths-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/positive-leading-expected.png: Added.
        * platform/chromium-linux/fast/multicol/single-line-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-generated-content-expected.png:
        * platform/chromium-linux/fast/repaint/multicol-repaint-expected.txt: Removed.
        * platform/chromium-win/fast/multicol/positive-leading-expected.png: Added.
        * platform/chromium-win/fast/multicol/positive-leading-expected.txt: Added.
        * platform/chromium-win/fast/multicol/single-line-expected.png:
        * platform/chromium-win/fast/multicol/single-line-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-generated-content-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/chromium-win/fast/multicol/table-vertical-align-expected.txt:
        * platform/chromium-win/fast/repaint/multicol-repaint-expected.png:
        * platform/chromium-win/fast/repaint/multicol-repaint-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-08-30  David Hyatt  <hyatt@apple.com>

        <rdar://problem/10002140> Text gets clipped in book because of overflow:auto
        
        https://bugs.webkit.org/show_bug.cgi?id=67212 - Text gets clipped in multi-column layouts when overflow:auto
        is used.
        
        Revise our overflow:auto pagination behavior. If the overflow block doesn't specify any logical height
        information, then we'll just assume the plan is for it to enclose its contents, and we will be willing
        to paginate in those circumstances.

        Reviewed by Dan Bernstein.

        Added overflow-across-columns.html and overflow-unsplittable.html

        * fast/multicol/overflow-across-columns.html: Added.
        * fast/multicol/overflow-unsplittable.html: Added.
        * platform/mac/fast/multicol/overflow-across-columns-expected.png: Added.
        * platform/mac/fast/multicol/overflow-across-columns-expected.txt: Added.
        * platform/mac/fast/multicol/overflow-unsplittable-expected.png: Added.
        * platform/mac/fast/multicol/overflow-unsplittable-expected.txt: Added.

2011-08-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93924.
        http://trac.webkit.org/changeset/93924
        https://bugs.webkit.org/show_bug.cgi?id=67209

        Bad baseline submitted for OS X. Should be chromium specific.
        (Requested by dave_levin on #webkit).

        * platform/mac/fast/text/complex-preferred-logical-widths-expected.txt:

2011-08-30  David Hyatt  <hyatt@apple.com>

        <rdar://problem/8832814> With large line-height, column break can happen anywhere in the
        inter-line gap, causing staggered lines.
        
        https://bugs.webkit.org/show_bug.cgi?id=67202 Handle positive leading when paginating lines.
        
        Technically we should paginate lines based solely off their line top and line bottom with
        leading included. However there are two issues with always doing so. The first is that overflow
        can cause lines to overlap, and the second is that negative leading can cause lines to overlap.

        Since we're incapable of dealing with overlap until we stop clipping column boxes and allow them
        to have a form of specialized overflow, we still have to at least factor in overflow and ignore
        negative leading for now. However we can at least honor positive leading when the lines don't
        overlap. This patch provides basic support for paginating when positive leading is involved.

        Reviewed by Dan Bernstein.

        Added fast/multicol/positive-leading.html.

        * fast/multicol/positive-leading.html: Added.
        * platform/mac/fast/multicol/positive-leading-expected.png: Added.
        * platform/mac/fast/multicol/positive-leading-expected.txt: Added.

2011-08-30  Young Han Lee  <joybro@company100.net>

        [Qt][WK2] svg/animations/animate-end-attribute.html r93949
        https://bugs.webkit.org/show_bug.cgi?id=67130

        Skip a svg test on WebKit2 that rely on unimplemented test harness API.

        Reviewed by Noam Rosenthal.

        * platform/wk2/Skipped:

2011-08-30  Ben Wells  <benwells@chromium.org>

        Update registerProtocolHandler scheme whitelist to match spec
        https://bugs.webkit.org/show_bug.cgi?id=67104

        Reviewed by Darin Adler.

        * fast/dom/register-protocol-handler-expected.txt:
        * fast/dom/register-protocol-handler.html:
        * platform/chromium/fast/dom/register-protocol-handler-expected.txt:

2011-08-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94076.
        http://trac.webkit.org/changeset/94076
        https://bugs.webkit.org/show_bug.cgi?id=67201

        Results will be different on each platform (Requested by
        apavlov on #webkit).

        * fast/multicol/huge-column-count-expected.png: Removed.
        * fast/multicol/inherit-column-values-expected.png: Removed.
        * fast/multicol/initial-column-values-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-30  Alexander Pavlov  <apavlov@chromium.org>

        Unreviewed, add missing multicol test baselines.

        * fast/multicol/huge-column-count-expected.png: Added.
        * fast/multicol/inherit-column-values-expected.png: Added.
        * fast/multicol/initial-column-values-expected.png: Added.
        * platform/chromium/test_expectations.txt: Remove huge-column-count-expected.png MISSING expectation.

2011-08-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-4.8/fast/text/complex-preferred-logical-widths-expected.png: Added.
        * platform/qt-4.8/fast/text/complex-preferred-logical-widths-expected.txt: Added.
        * platform/qt-arm/Skipped:
        * platform/qt/Skipped:
        * platform/qt/test_expectations.txt:

2011-08-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Unskip now passing tests.
        * platform/qt/css2.1/t0602-c13-inheritance-00-e-expected.png:
        * platform/qt/css2.1/t0602-c13-inheritance-00-e-expected.txt:
        * platform/qt/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/qt/fast/block/float/floats-and-text-indent-expected.txt: Added.
        * platform/qt/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/qt/fast/block/float/floats-and-text-indent-rl-expected.txt: Added.
        * platform/qt/fast/borders/border-fit-2-expected.png: Added.
        * platform/qt/fast/borders/border-fit-2-expected.txt: Added.
        * platform/qt/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/qt/fast/forms/input-appearance-number-rtl-expected.txt:
        * platform/qt/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png: Added.
        * platform/qt/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/qt/fast/forms/input-appearance-spinbutton-layer-expected.png: Added.
        * platform/qt/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/qt/fast/forms/input-appearance-spinbutton-visibility-expected.png: Added.
        * platform/qt/fast/forms/input-appearance-spinbutton-visibility-expected.txt:

2011-08-30  Alexander Pavlov  <apavlov@chromium.org>

        REGRESSION(93978): inspector/styles/styles-computed-trace.html fails
        https://bugs.webkit.org/show_bug.cgi?id=67185

        Reviewed by Yury Semikhatsky.

        * inspector/styles/styles-computed-trace-expected.txt:
        * inspector/styles/styles-computed-trace.html:
        * platform/chromium-win/inspector/styles/styles-computed-trace-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-30  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update test expectations for userscripts/window-onerror-for-isolated-world-1.html

        * platform/chromium/userscripts/window-onerror-for-isolated-world-1-expected.txt:
        * userscripts/window-onerror-for-isolated-world-1-expected.txt:

2011-08-30  Oliver Varga  <voliver@inf.u-szeged.hu>

        [Qt] 3 test started crashing somewhere between r93878-r93935
        https://bugs.webkit.org/show_bug.cgi?id=67197

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-30  Ryosuke Niwa  <rniwa@webkit.org>

        lastChangeWasUserEdit continues to return true when innerText or textContent is modified
        https://bugs.webkit.org/show_bug.cgi?id=67183

        Reviewed by Kent Tamura.

        Two test cases now pass.

        * fast/forms/textfield-lastchange-was-useredit-expected.txt:

2011-08-29  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: wrong script display name when there is a slash in its URL query parameters
        https://bugs.webkit.org/show_bug.cgi?id=67120

        Reviewed by Pavel Feldman.

        * inspector/debugger/scripts-sorting.html:
        * platform/chromium/inspector/debugger/scripts-sorting-expected.txt:

2011-08-30  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update window.onerror tests after r94061 to match new semantics
        of window.onerror return value.

        * fast/workers/resources/shared-worker-script-error.js:
        * http/tests/security/cross-origin-script-window-onerror-redirected.html:
        * http/tests/security/cross-origin-script-window-onerror.html:
        * userscripts/window-onerror-for-isolated-world-1.html:
        * userscripts/window-onerror-for-isolated-world-2.html:

2011-08-30  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations for new test.

        * platform/chromium/fast/events/window-onerror13-expected.txt: Added.

2011-08-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r94055 and r94057.
        http://trac.webkit.org/changeset/94055
        http://trac.webkit.org/changeset/94057
        https://bugs.webkit.org/show_bug.cgi?id=67191

        Many failures on Mac 10.5 (Requested by toyoshim on #webkit).

        * http/tests/websocket/tests/hixie76/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-overflow_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null_wsh.py:
        * http/tests/websocket/tests/hixie76/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/masked-frames_wsh.py:

2011-08-30  Renata Hodovan  <reni@webkit.org>

        [Qt] Qt Linux Release bot has four failed tests.
        They are skipped.

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-29  Yury Semikhatsky  <yurys@chromium.org>

        Return value of window.onerror has inverted semantics
        https://bugs.webkit.org/show_bug.cgi?id=67119

        Reviewed by Darin Adler.

        * fast/events/window-onerror1.html:
        * fast/events/window-onerror11.html:
        * fast/events/window-onerror12.html:
        * fast/events/window-onerror13-expected.txt: Added.
        * fast/events/window-onerror13.html: Copied from LayoutTests/fast/events/window-onerror11.html.
        * fast/events/window-onerror2.html:
        * fast/events/window-onerror3.html:
        * fast/events/window-onerror4.html:
        * fast/events/window-onerror5.html:
        * fast/events/window-onerror6.html:
        * fast/events/window-onerror8.html:
        * fast/events/window-onerror9.html:
        * fast/workers/resources/worker-script-error-bubbled.js:
        (onerror):
        * fast/workers/resources/worker-script-error-handled.js:
        (onerror):
        * http/tests/security/window-onerror-exception-in-iframe.html:

2011-08-30  Takashi Toyoshima  <toyoshim@chromium.org>

        [WebSocket] Prevent unnecessary pywebsocket warnings on layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=67182

        Reviewed by Kent Tamura.

        Some layout tests for WebSocket raised Exception to prevent unnecessary
        pywebsocket warning. But it doesn't work any more on pywebsocket 0.6b4.
        Now pywebsocket support AbortedByUserException to prevent warning.
        This change make raise AbortedByUserException instead of Exception.

        handshake-fail-by-prepended-null_wsh.py didn't use Exception, but
        expected abnormal closure on sending response could raise unexpected
        Exception by chance. This change also takes care of it.

        * http/tests/websocket/tests/hixie76/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer_wsh.py:
        * http/tests/websocket/tests/hixie76/frame-length-overflow_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null_wsh.py:
        * http/tests/websocket/tests/hixie76/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header_wsh.py:
        * http/tests/websocket/tests/hybi/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/masked-frames_wsh.py:
        Use AbortedByUserException instead of Exception.

2011-08-29  Takashi Toyoshima  <toyoshim@chromium.org>

        Fix two layout tests which fails on Qt port with latest pywebsocket.
        https://bugs.webkit.org/show_bug.cgi?id=66929

        Reviewed by Kent Tamura.

        hanging-handshake_wsh.py read socket to hang in opening handshake.
        Then client initiated closing handshakes or abnormal closures caused
        exception or resulted in http error response on hybi-10 compliant new
        pywebsocket. Because tests finished at closure, it depends on timing
        whether tests detects the error response. Actually, two tests failed on
        Qt port by chance.
        Essentially, hangings is unnecessary because open event must be queued
        and WebSocket's readyState could not be changed to OPEN until the next
        event loop is executed. That's why we can use echo_wsh.py instead of
        hanging-handshake_wsh.py safely.

        close-unref-websocket tests call close() before GC. These tests expect
        GC cause close event. But close() itself also queues close event.
        These close() are redandant. If GC doesn't cause close event, these
        tests can pass by close event that close() queues. This change also
        remove these redandant close() calls.

        * http/tests/websocket/tests/hixie76/close-before-open.html:
        Use echo_wsh.py instead of hanging-handshake_wsh.py.
        * http/tests/websocket/tests/hixie76/close-unref-websocket-expected.txt:
        * http/tests/websocket/tests/hixie76/close-unref-websocket.html:
        Used echo_wsh.py, remove ws.close() and fix expectation.
        * http/tests/websocket/tests/hixie76/hanging-handshake_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/close-before-open.html:
        Use echo_wsh.py instead of hanging-handshake_wsh.py.
        * http/tests/websocket/tests/hybi/close-unref-websocket-expected.txt:
        * http/tests/websocket/tests/hybi/close-unref-websocket.html:
        Used echo_wsh.py, remove ws.close() and fix expectation.
        * http/tests/websocket/tests/hybi/hanging-handshake_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/close-code-and-reason.html:
        * http/tests/websocket/tests/hybi/workers/resources/close-code-and-reason.js:
        Use echo_wsh.py instead of hanging-handshake_wsh.py.

2011-08-29  MORITA Hajime  <morrita@google.com>

        Unreviewed marking skip.

        * platform/win/Skipped: Skipped editing/spelling/spelling-insert-html.html

2011-08-25  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r88115): Disabling a file upload control causes an endless busyloop.
        https://bugs.webkit.org/show_bug.cgi?id=66659

        Reviewed by Darin Adler.

        * fast/forms/file/disabling-file-busy-loop-expected.txt: Added.
        * fast/forms/file/disabling-file-busy-loop.html: Added.

2011-08-29  David Levin  <levin@chromium.org>

        [chromium] Add exception due to missing results for r94037.

        * platform/chromium/test_expectations.txt:

2011-08-29  David Levin  <levin@chromium.org>

        [chromium] Minor update for test that is timing out.

        * platform/chromium/test_expectations.txt:

2011-08-29  David Levin  <levin@chromium.org>

        [chromium] Misc test expectations updates.

        * platform/chromium-mac/fast/files/create-blob-url-crash-expected.txt: Copied from LayoutTests/platform/qt/fast/files/create-blob-url-crash-expected.txt.
        * platform/chromium/fast/files/create-blob-url-crash-expected.txt: Renamed from LayoutTests/platform/qt/fast/files/create-blob-url-crash-expected.txt.
           Added due to it being different from normal OSX result.
        * platform/chromium/test_expectations.txt: Changes due to expectation
          update for media-document-audio-repaint.html leading to only an image mismatch
          and a test that is a slow on OS X as well as Linux and Windows.

2011-08-29  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Receive binary message as Blob
        https://bugs.webkit.org/show_bug.cgi?id=67115

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/binary-frames_wsh.py: Added. Used from receive-blob.html.
        * http/tests/websocket/tests/hybi/fragmented-binary-frames-expected.txt: Added.
        * http/tests/websocket/tests/hybi/fragmented-binary-frames.html:
        Added. The content of this test is almost identical to receive-blob.html.
        * http/tests/websocket/tests/hybi/fragmented-binary-frames_wsh.py: Added.
        * http/tests/websocket/tests/hybi/receive-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/receive-blob.html:
        Added. It is a bit complicated to validate the content of a Blob, because a Blob must be read
        asynchronously. FileReader is used to read a blob as an ArrayBuffer, each byte of which is
        compared with the expected result.
        * http/tests/websocket/tests/hybi/workers/receive-blob-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/receive-blob.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/binary-frames_wsh.py:
        Added. Same as above binary-frames_wsh.py.
        * http/tests/websocket/tests/hybi/workers/resources/receive-blob.js: Added.

2011-08-29  Ryosuke Niwa  <rniwa@webkit.org>

        Add a test for lastChangeWasUserEdit in HTMLInputElement and HTMLTextAreaElement
        https://bugs.webkit.org/show_bug.cgi?id=67173

        Reviewed by Darin Adler.

        Added some basic test for HTMLInputElement::lastChangeWasUserEdit and
        HTMLTextAreaElement::lastChangeWasUserEdit.

        * fast/forms/textfield-lastchange-was-useredit-expected.txt: Added.
        * fast/forms/textfield-lastchange-was-useredit.html: Added.

2011-08-29  Kenji Imasaki  <imasaki@chromium.org>

        [Chromium] Added new rebaselines for media/media-document-audio-repaint.
        These are obtained by the rebaseline tool.
        https://bugs.webkit.org/show_bug.cgi?id=67070

        Reviewed by David Levin.

        * platform/chromium-cg-mac-leopard/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-cg-mac/media/media-document-audio-repaint-expected.png:
        * platform/chromium-cg-mac/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-gpu-cg-mac/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-gpu-cg-mac/media/media-document-audio-repaint-expected.txt: Added.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.txt: Added.
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt:

2011-08-29  Sam Weinig  <sam@webkit.org>

        Fix path to style sheet in fast/events/constructors/event-constructors.html.

        Reviewed by Gavin Barraclough.

        * fast/events/constructors/event-constructors.html:

2011-08-29  Sam Weinig  <sam@webkit.org>

        Update results for fast/files/create-blob-url-crash.html to match
        exception text.

        * fast/files/create-blob-url-crash-expected.txt:

2011-08-29  David Levin  <levin@chromium.org>

        Fix test_expectation.txt typo.

        * platform/chromium/test_expectations.txt:

2011-08-29  Julien Chaffraix  <jchaffraix@webkit.org>

        Assertion failure in RenderLayer::computeRepaintRects when scrolling
        https://bugs.webkit.org/show_bug.cgi?id=67140

        Reviewed by David Hyatt.

        This test checks that a fixed element with no visible content does not ASSERT and
        renders properly.

        * fast/repaint/scroll-fixed-layer-with-no-visible-content-expected.txt: Added.
        * fast/repaint/scroll-fixed-layer-with-no-visible-content.html: Added.
        * platform/chromium-cg-mac/fast/repaint/scroll-fixed-layer-with-no-visible-content-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-fixed-layer-with-no-visible-content-expected.png: Added.
        * platform/mac/fast/repaint/scroll-fixed-layer-with-no-visible-content-expected.png: Added.

2011-08-29  Nayan Kumar K  <nayankk@motorola.com>

        As per HTML specification, default font style of dfn tag should be italic.
        https://bugs.webkit.org/show_bug.cgi?id=56670

        Reviewed by Adam Barth.

        * fast/css/dfn-default-font-style-expected.txt: Added.
        * fast/css/dfn-default-font-style.html: Added.

2011-08-29  Chris Palmer  <palmer@google.com>

        Fix failures when FFT array size is changed.
        https://bugs.webkit.org/show_bug.cgi?id=66916

        Reviewed by Kenneth Russell.

        * webaudio/realtimeanalyser-fft-sizing-expected.txt: Added.
        * webaudio/realtimeanalyser-fft-sizing.html: Added.

2011-08-29  Abhishek Arya  <inferno@chromium.org>

        Crash in InlineBox::deleteLine due to accessing removed
        renderer.
        https://bugs.webkit.org/show_bug.cgi?id=66015

        Reviewed by Simon Fraser.

        * fast/block/line-layout/inline-box-wrapper-crash-expected.txt: Added.
        * fast/block/line-layout/inline-box-wrapper-crash.html: Added.

2011-08-29  Chris Marrin  <cmarrin@apple.com>

        Fixing LayoutTests broken by http://trac.webkit.org/changeset/93980

        Unreviewed.
        
        Add Mac specific tests to take into account new requestAnimationFrame functionality

        * platform/mac/fast/dom/Window/window-properties-expected.txt: Added.
        * platform/mac/fast/dom/Window/window-property-descriptors-expected.txt: Added.
        * platform/mac/fast/dom/prototype-inheritance-expected.txt: Added.

2011-08-29  Tony Chang  <tony@chromium.org>

        Implement -webkit-flex-pack for horizontal flexboxen
        https://bugs.webkit.org/show_bug.cgi?id=66898

        Reviewed by Ojan Vafai.

        * css3/flexbox/004-expected.txt: Added.
        * css3/flexbox/004.html: Added.

2011-08-29  Sam Weinig  <sam@webkit.org>

        Update tests after landing Event constructors.

        Reviewed by Anders Carlsson.

        * fast/dom/constructed-objects-prototypes-expected.txt:
        * fast/dom/dom-constructors-expected.txt:
        * fast/dom/dom-constructors.html:

2011-08-29  Stephen White  <senorblanco@chromium.org>

        Unreviewed gardening.

        Mark test fast/canvas/setWidthResetAfterForcedRender.html as failing
        after r93988.

        * platform/chromium/test_expectations.txt:

2011-08-29  David Levin  <levin@chromium.org>

        Update test expections due to r94006 and r93978.

        * platform/chromium/test_expectations.txt: Add failing test due to r93978.
        * platform/mac/css2.1/t0602-c13-inheritance-00-e-expected.txt: Change to use of dfn tag and
          behavior change in r94006.

2011-08-29  David Levin  <levin@chromium.org>

        Temporary suppression for new test added in r93982.

        * platform/chromium/test_expectations.txt:

2011-08-22  David Levin  <levin@chromium.org>

        postMessage raises INVALID_STATE_ERR instead of DATA_CLONE_ERR in many cases.
        https://bugs.webkit.org/show_bug.cgi?id=66713

        Reviewed by Dmitry Titov.

        * fast/events/message-port-clone-expected.txt: Output changed from INVALID_STATE_ERR to DATA_CLONE_ERR.
        * fast/events/message-port-multi-expected.txt: Ditto.
        * fast/workers/worker-context-multi-port-expected.txt:  Ditto.
        * fast/workers/worker-multi-port-expected.txt:  Ditto.
        * platform/chromium-win/fast/events/message-port-multi-expected.txt: Ditto.
        * platform/chromium-win/fast/workers/worker-context-multi-port-expected.txt: Ditto.
        * platform/chromium-win/fast/workers/worker-multi-port-expected.txt: Ditto.

2011-08-29  Julien Chaffraix  <jchaffraix@webkit.org>

        Assertion failure in WebCore::RenderFlow::rightmostPosition
        https://bugs.webkit.org/show_bug.cgi?id=12085

        Reviewed by Alexey Proskuryakov.

        The bug got solved. Landed the test to avoid regressing.

        * fast/css/assert-marquee-not-last-element-expected.txt: Added.
        * fast/css/assert-marquee-not-last-element.html: Added.

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline inspector/styles/styles-computed-trace.html in chromium.

        * platform/chromium-win/inspector/styles/styles-computed-trace-expected.txt: Added.

2011-08-29  Tom Zakrajsek  <tomz@codeaurora.org>

        canvas arc() missing line to start of arc if swing is zero
        https://bugs.webkit.org/show_bug.cgi?id=55696

        LayoutTests/canvas/philip/tests/2d.path.stroke.prune.arc.html misinterprets pruning requirement
        https://bugs.webkit.org/show_bug.cgi?id=66832

        Reviewed by Andreas Kling.

        Update to 2d.path.stroke.prune.arc.html was reviewed by Philip Taylor and will be part of the
        next update to http://philip.html5.org/tests/canvas/suite/tests/2d.path.stroke.prune.arc.html

        * canvas/philip/tests/2d.path.stroke.prune.arc.html:
        * fast/canvas/canvas-arc-zero-lineto-expected.txt: Added.
        * fast/canvas/canvas-arc-zero-lineto.html: Added.

2011-08-23  Chris Marrin  <cmarrin@apple.com>

        [mac] requestAnimationFrame support for mac port
        https://bugs.webkit.org/show_bug.cgi?id=59146

        Reviewed by Simon Fraser.

        Enable requestAnimationFrame tests for Mac. Tests were also
        modified to work on Mac. Before the tests would assume the
        requestAnimationFrame callbacks would be called by calling
        LayoutTestController.display(). This is not a valid assumption
        for Mac, since it skips display() if nothing was dirty.

        Tests were changed to use timeouts to wait for callbacks and
        ensure they get called. Also added more positive indications
        that test failed or succeeded, rather than relying on the lack
        of an error message to indicate success.

        * fast/animation/request-animation-frame-cancel-expected.txt:
        * fast/animation/request-animation-frame-cancel.html:
        * fast/animation/request-animation-frame-cancel2-expected.txt:
        * fast/animation/request-animation-frame-cancel2.html:
        * fast/animation/request-animation-frame-display.html:
        * fast/animation/request-animation-frame-during-modal-expected.txt:
        * fast/animation/request-animation-frame-during-modal.html:
        * fast/animation/request-animation-frame-timestamps.html:
        * fast/animation/request-animation-frame-within-callback.html:
        * fast/animation/request-animation-frame.html:
        * fast/animation/script-tests/request-animation-frame-cancel.js:
        (window):
        (if):
        * fast/animation/script-tests/request-animation-frame-cancel2.js:
        (if):
        * fast/animation/script-tests/request-animation-frame-display.js:
        (if):
        * fast/animation/script-tests/request-animation-frame-timestamps.js:
        (var):
        * fast/animation/script-tests/request-animation-frame-within-callback.js:
        * fast/animation/script-tests/request-animation-frame.js:
        (if):
        * platform/mac/Skipped:

2011-08-29  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: <button hidden>..</button> has a different computed "display" value than "none"
        https://bugs.webkit.org/show_bug.cgi?id=67124

        Reviewed by Yury Semikhatsky.

        * inspector/elements/elements-panel-styles-expected.txt:
        * inspector/styles/styles-computed-trace-expected.txt:
        * inspector/styles/styles-computed-trace.html:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: rename sourceFile to (raw|ui)SourceCode in DebuggerPresentationModel.
        https://bugs.webkit.org/show_bug.cgi?id=66769

        Reviewed by Pavel Feldman.

        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/source-file.html:

2011-08-29  Gabor Loki  <loki@webkit.org>

        [Qt] The square-button-appearance test is wrong
        https://bugs.webkit.org/show_bug.cgi?id=67128

        Unreviewed skip until square-button fix on qt-arm.

        * platform/qt-arm/Skipped:

2011-08-29  Zsolt Fehér  <feherzs@inf.u-szeged.hu>

        Unreviewed Qt gardening.

        * platform/qt/Skipped:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: extract FormattedContentProvider from RawSourceCode.
        https://bugs.webkit.org/show_bug.cgi?id=66938

        Reviewed by Pavel Feldman.

        * inspector/debugger/content-providers-expected.txt:
        * inspector/debugger/content-providers.html:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark fast/dom/dom-constructors.html as TEXT in chromium.

        * platform/chromium/fast/dom/dom-constructors-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix event-constructors.html test.
        https://bugs.webkit.org/show_bug.cgi?id=63878

        * fast/events/constructors/event-constructors.html:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: link UISourceCode to RawSourceCode.
        https://bugs.webkit.org/show_bug.cgi?id=66944

        Reviewed by Pavel Feldman.

        * inspector/debugger/ui-source-code.html:

2011-08-29  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Skip failing and flaky results after r93937
        https://bugs.webkit.org/show_bug.cgi?id=67118

        * platform/qt/Skipped:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark overflow-scroll-overlap.html as flaky on chromium gpu.

        * platform/chromium/test_expectations.txt:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, add new chromium mac cg baseline for square-button-appearance added in r93953.

        * platform/chromium-cg-mac-leopard/fast/css/square-button-appearance-expected.png: Added.

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update chromium expectations. Mark frame-removed-during-resize.html and scrollbar-buttons.html
        as crashing on win linux debug only.

        * platform/chromium/test_expectations.txt:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: remove RawSourceCode.setFormatted.
        https://bugs.webkit.org/show_bug.cgi?id=66947

        Reviewed by Pavel Feldman.

        * inspector/debugger/source-file.html:

2011-08-26  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: Debugger.setBreakpointByUrl should return error when setting breakpoint on the same location twice.
        https://bugs.webkit.org/show_bug.cgi?id=67030

        Reviewed by Pavel Feldman.

        * inspector/debugger/set-breakpoint-expected.txt: Renamed from LayoutTests/inspector/debugger/debugger-pause-on-breakpoint-expected.txt.
        * inspector/debugger/set-breakpoint.html: Renamed from LayoutTests/inspector/debugger/debugger-pause-on-breakpoint.html.

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix event-constructors.html test.
        https://bugs.webkit.org/show_bug.cgi?id=63878

        * fast/events/constructors/event-constructors.html:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark event-constructors.html as failing in chromium.
        https://bugs.webkit.org/show_bug.cgi?id=66756

        * platform/chromium/test_expectations.txt:

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, adding custom expectation for dom-constructors test in chromium
        until bug 66756 is resolved.
        https://bugs.webkit.org/show_bug.cgi?id=66756

        * platform/chromium/fast/dom/dom-constructors-expected.txt: Added.

2011-08-29  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark scrollbars/scrollbar-buttons.html as crashing in chromium.

        * platform/chromium/test_expectations.txt:

2011-08-28  Keishi Hattori  <keishi@webkit.org>

        Chromium Win: Setting square-button appearance reaches NOTREACHED
        https://bugs.webkit.org/show_bug.cgi?id=66918

        Reviewed by Kent Tamura.

        * fast/css/square-button-appearance-expected.txt: Added.
        * fast/css/square-button-appearance.html: Added. Test rendering of square-button appearance.
        * platform/chromium-linux/fast/css/square-button-appearance-expected.png: Added.
        * platform/chromium-win/fast/css/square-button-appearance-expected.png: Added.
        * platform/gtk/test_expectations.txt: Added this test as expected to fail.
        * platform/mac/fast/css/square-button-appearance-expected.png: Added.
        * platform/qt/test_expectations.txt: Added this test as expected to fail.

2011-08-28  Sam Weinig  <sam@webkit.org>

        Add support for constructor syntax for Events
        https://bugs.webkit.org/show_bug.cgi?id=63878

        Reviewed by Oliver Hunt.

        Add basic test for Event constructors.

        * fast/events/constructors/event-constructors-expected.txt: Added.
        * fast/events/constructors/event-constructors.html: Added.

2011-08-27  Robert Hogan  <robert@webkit.org>

        Don't rely on hardcoded position in absolute-appended-to-inline.html

        Allow test added in r93944 to pass on platforms other than Chromium-Linux.

        Unreviewed, fix on r93944.

        * fast/block/positioning/absolute-appended-to-inline.html:

2011-08-07  Robert Hogan  <robert@webkit.org>

        The child div element with position:absolute will overlap with its parent div when a 'break' element is present in between
        https://bugs.webkit.org/show_bug.cgi?id=21934

        Reviewed by David Hyatt.

        * fast/block/positioning/absolute-appended-to-inline-expected.txt: Added.
        * fast/block/positioning/absolute-appended-to-inline.html: Added.

2011-08-27  Anders Carlsson  <andersca@apple.com>

        iChat: Receiving a message containing only a single-quote (') causes bubble to fail
        https://bugs.webkit.org/show_bug.cgi?id=67076
        <rdar://problem/10026089>

        Reviewed by Dan Bernstein.

        * fast/borders/border-fit-2.html: Added.
        * platform/mac/fast/borders/border-fit-2-expected.png: Added.
        * platform/mac/fast/borders/border-fit-2-expected.txt: Added.

2011-08-27  Young Han Lee  <joybro@company100.net>

        Reviewed by Dirk Schulze.

        SVG animation fill="freeze" doesn't set baseVal to current animVal if animation stops before reaching the end
        https://bugs.webkit.org/show_bug.cgi?id=63553

        calculateAnimationPercentAndRepeat() is returning 1, which means 100%, whenever
        elapsed >= m_intervalEnd, but this is wrong because m_intervalEnd can be in the middle
        of the animation duration. (e.g. begin="0s" end="2s" dur="3s")

        This change makes the function return the animations's true progress instead of 100%
        when the animation ends.

        * svg/animations/animate-end-attribute-expected.txt: Added.
        * svg/animations/animate-end-attribute.html: Added.
        * svg/animations/script-tests/animate-end-attribute.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):

2011-08-27  Jarred Nicholls  <jarred@sencha.com>

        [Qt] Need spin-button implementation
        https://bugs.webkit.org/show_bug.cgi?id=65896

        Reviewed by Kenneth Rohde Christiansen.

        * platform/qt/Skipped:
        * platform/qt/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt: Added.
        * platform/qt/fast/forms/input-appearance-spinbutton-layer-expected.txt: Added.
        * platform/qt/fast/forms/input-appearance-spinbutton-visibility-expected.txt: Added.

2011-08-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Remove a non-existent test.
        * platform/qt/fast/text/complex-preferred-logical-widths-expected.png: Added.
        * platform/qt/fast/text/complex-preferred-logical-widths-expected.txt: Added.

2011-08-26  Xiaomei Ji  <xji@chromium.org>

        Regression(91788): Bad cast in WebCore::blockWithNextLineBox
        https://bugs.webkit.org/show_bug.cgi?id=66090

        Reviewed by Ryosuke Niwa.

        * editing/selection/move-by-word-visually-crash-test-1-expected.txt: Added.
        * editing/selection/move-by-word-visually-crash-test-1.html: Added.
        * editing/selection/move-by-word-visually-crash-test-2-expected.txt: Added.
        * editing/selection/move-by-word-visually-crash-test-2.html: Added.
        * editing/selection/move-by-word-visually-crash-test-3-expected.txt: Added.
        * editing/selection/move-by-word-visually-crash-test-3.html: Added.
        * editing/selection/move-by-word-visually-crash-test-4-expected.txt: Added.
        * editing/selection/move-by-word-visually-crash-test-4.html: Added.
        * editing/selection/move-by-word-visually-multi-line-expected.txt:
        * editing/selection/resources/move-by-word-visually.js:
        (runMoveLeftRight):

2011-08-26  Gavin Barraclough  <barraclough@apple.com>

        DFG JIT - ArithMod may clobber operands.
        https://bugs.webkit.org/show_bug.cgi?id=67085

        Reviewed by Sam Weinig.

        Added test case.

        * fast/js/mod-crash-expected.txt:
        * fast/js/script-tests/mod-crash.js:
        (nonSpeculativeModReuseInner):
        (nonSpeculativeModReuse):

2011-08-26  Anna Cavender  <annacc@chromium.org>

        Cleanup resulting text of media/track tests.
        https://bugs.webkit.org/show_bug.cgi?id=67073

        Reviewed by Eric Carlson.

        * media/track/track-webvtt-tc001-utf8-expected.txt:
        * media/track/track-webvtt-tc002-bom-expected.txt:
        * media/track/track-webvtt-tc003-newlines-expected.txt:
        * media/track/track-webvtt-tc004-magic-header-expected.txt:
        * media/track/track-webvtt-tc005-header-comment-expected.txt:
        * media/track/track-webvtt-tc006-cue-identifiers-expected.txt:
        * media/track/track-webvtt-tc007-cue-no-id-expected.txt:
        * media/track/track-webvtt-tc008-timings-no-hours-expected.txt:
        * media/track/track-webvtt-tc009-timings-hour-expected.txt:
        * media/track/track-webvtt-tc011-blank-lines-expected.txt:
        * media/track/track-webvtt-tc013-settings-expected.txt:
        * media/track/track-webvtt-tc014-alignment-expected.txt:
        * media/track/track-webvtt-tc015-positioning-expected.txt:
        * media/track/track-webvtt-tc016-align-positioning-expected.txt:
        * media/track/track-webvtt-tc017-line-position-expected.txt:
        * media/track/track-webvtt-tc018-align-text-line-position-expected.txt:
        * media/track/track-webvtt-tc019-cue-size-expected.txt:
        * media/track/track-webvtt-tc020-cue-size-align-expected.txt:
        * media/track/track-webvtt-tc021-valign-expected.txt:
        * media/track/track-webvtt-tc022-entities-expected.txt:
        * media/track/track-webvtt-tc028-unsupported-markup-expected.txt:
        * media/video-test.js:
        (testCues):

2011-08-26  David Levin  <levin@chromium.org>

        [chromium] Update tests expectations due to r93909 and r93913.

        * platform/chromium-cg-mac/fast/text/complex-preferred-logical-widths-expected.txt: Added.
        * platform/chromium-linux/fast/text/complex-preferred-logical-widths-expected.png: Added.
        * platform/chromium-win/fast/text/complex-preferred-logical-widths-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-26  David Levin  <levin@chromium.org>

        [chromium] Update tests expectations due to r93909.

        * platform/mac/fast/text/complex-preferred-logical-widths-expected.txt:

2011-08-26  David Levin  <levin@chromium.org>

        [chromium] Update tests expectations due to r93913.

        * platform/chromium-cg-mac/fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt: Removed.
        * platform/chromium-win/fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt: Removed.
        * platform/chromium/fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt: Added.

2011-08-26  Ojan Vafai  <ojan@chromium.org>

        change the default preferred width of the flex() function to 0px per the new spec
        https://bugs.webkit.org/show_bug.cgi?id=67067

        Reviewed by Tony Chang.

        * css3/flexbox/001.html:
        * css3/flexbox/002.html:
        * css3/flexbox/flex-parsing-expected.txt:
        * css3/flexbox/script-tests/flex-parsing.js:

2011-08-26  Aaron Colwell  <acolwell@chromium.org>

        Rebasing media/video-layer-crash & media/video-transformed images.
        https://bugs.webkit.org/show_bug.cgi?id=67065

        Reviewed by David Levin.

        * platform/chromium-linux/media/video-layer-crash-expected.png:
        * platform/chromium-linux/media/video-transformed-expected.png:
        * platform/chromium-win/media/video-layer-crash-expected.png:
        * platform/chromium-win/media/video-transformed-expected.png:
        * platform/chromium/test_expectations.txt:

2011-08-26  Alexey Proskuryakov  <ap@apple.com>

        Get rid of frame life support timer
        https://bugs.webkit.org/show_bug.cgi?id=66874

        Reviewed by Geoff Garen.

        * fast/dom/resources/xmlhttprequest-constructor-in-detached-document-frame.html:
        * fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt:
        The test used to access XMLHttpRequest constructor from a detached frame. Modified the test
        to also try a stored constructor, and added an error that's clogged when trying that in a
        detached frame to test output.

        * fast/frames/detached-frame-property-expected.txt: Added.
        * fast/frames/detached-frame-property.html: Added.
        Added a test to check for the new, more compatible behavior.

        * fast/storage/storage-detached-iframe.html:
        Store a reference to localStorage before detaching a frame, as it won't be available
        afterwards any more.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        fast/js/const.html is opening a modal print dialog, leading to a timeout on the GTK+ bots
        https://bugs.webkit.org/show_bug.cgi?id=67061

        Reviewed by Oliver Hunt.

        Update this test to remove inadvertant calls to window.print().

        * fast/js/resources/const.js:
        (tryCatch1): Remove call to window.print()
        (tryCatch2): Ditto.

2011-08-26  Dan Bernstein  <mitz@apple.com>

        RenderText::computePreferredLogicalWidths() should measure words with trailing spaces
        https://bugs.webkit.org/show_bug.cgi?id=66733

        * fast/text/complex-preferred-logical-widths.html: Added.
        * platform/mac/fast/text/complex-preferred-logical-widths-expected.txt: Added.

2011-08-26  Tony Chang  <tony@chromium.org>

        Add CSS parsing for -webkit-flex-align
        https://bugs.webkit.org/show_bug.cgi?id=66726

        Reviewed by Ojan Vafai.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/script-tests/css-properties.js:

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Skip two tests on GTK+ that are failing due to known issues.

        * platform/gtk/Skipped: Update the skipped list.

2011-08-26  Chris Rogers  <crogers@google.com>

        Add MediaPlayer::audioSourceProvider() method for audio stream access by the Web Audio API.
        https://bugs.webkit.org/show_bug.cgi?id=66398

        Reviewed by Eric Carlson.

        * webaudio/mediaelementaudiosourcenode-expected.txt:
        * webaudio/mediaelementaudiosourcenode.html:

2011-08-23  Stephen White  <senorblanco@chromium.org>

        Assertion fires if canvas is resized while save() active
        https://bugs.webkit.org/show_bug.cgi?id=66710

        Reviewed by Simon Fraser.

        * fast/canvas/resize-while-save-active-expected.txt: Added.
        * fast/canvas/resize-while-save-active.html: Added.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Add some new baselines for GTK+ and unskip tests that now have them.

        * platform/gtk/Skipped: Unskip tests.
        * platform/gtk/fast/block/float/fit_line_below_floats-expected.png: Added.
        * platform/gtk/fast/block/float/fit_line_below_floats-expected.txt: Added.
        * platform/gtk/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/gtk/fast/block/float/floats-and-text-indent-expected.txt: Added.
        * platform/gtk/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/gtk/fast/block/float/floats-and-text-indent-rl-expected.txt: Added.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Import the last set of GTK+ CSS3 selector results.

        * platform/gtk/css3/selectors3/xml: Import the last set of results.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Continue importing GTK+ CSS3 selector test results.

        * platform/gtk/css3/selectors3/xml: Import the next set of results.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Begin importing the last directory of CSS3 selector results for GTK+.

        * platform/gtk/css3/selectors3/xml: Import the first set of files in this directory.

2011-08-26  Victoria Kirst  <vrk@chromium.org>

        Unreviewed; adding files missing from r93885.

        * media/track/captions-webvtt/tc000-empty.vtt: Added.
        * media/track/captions-webvtt/tc001-iso2022jp3.vtt: Added.
        * media/track/captions-webvtt/tc001-utf8.vtt: Added.
        * media/track/captions-webvtt/tc002-bom.vtt: Added.
        * media/track/captions-webvtt/tc003-newlines.vtt: Added.
        * media/track/captions-webvtt/tc003-no-newline-at-eof.vtt: Added.
        * media/track/captions-webvtt/tc004-no-webvtt.vtt: Added.
        * media/track/captions-webvtt/tc004-webvtt-file.vtt: Added.
        * media/track/captions-webvtt/tc004-webvtt-rubbish.vtt: Added.
        * media/track/captions-webvtt/tc005-default-styles.vtt: Added.
        * media/track/captions-webvtt/tc005-metadata-area.vtt: Added.
        * media/track/captions-webvtt/tc006-cue-id-error.vtt: Added.
        * media/track/captions-webvtt/tc006-cue-id.vtt: Added.
        * media/track/captions-webvtt/tc007-cue-no-id-error.vtt: Added.
        * media/track/captions-webvtt/tc007-cue-no-id.vtt: Added.
        * media/track/captions-webvtt/tc008-timings-no-hour-errors.vtt: Added.
        * media/track/captions-webvtt/tc008-timings-no-hour.vtt: Added.
        * media/track/captions-webvtt/tc009-timings-hour-error.vtt: Added.
        * media/track/captions-webvtt/tc009-timings-hour.vtt: Added.
        * media/track/captions-webvtt/tc010-no-timings.vtt: Added.
        * media/track/captions-webvtt/tc011-cues-no-separation.vtt: Added.
        * media/track/captions-webvtt/tc011-cues.vtt: Added.
        * media/track/captions-webvtt/tc012-out-of-order.vtt: Added.
        * media/track/captions-webvtt/tc013-settings-bad-separation.vtt: Added.
        * media/track/captions-webvtt/tc013-settings.vtt: Added.
        * media/track/captions-webvtt/tc014-alignment-bad.vtt: Added.
        * media/track/captions-webvtt/tc014-alignment-ltr.vtt: Added.
        * media/track/captions-webvtt/tc014-alignment.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning-bad.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning-ltr.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning.vtt: Added.
        * media/track/captions-webvtt/tc016-align-positioning-bad.vtt: Added.
        * media/track/captions-webvtt/tc016-align-positioning.vtt: Added.
        * media/track/captions-webvtt/tc017-line-position-bad.vtt: Added.
        * media/track/captions-webvtt/tc017-line-position.vtt: Added.
        * media/track/captions-webvtt/tc018-align-text-line-position-bad.vtt: Added.
        * media/track/captions-webvtt/tc018-align-text-line-position.vtt: Added.
        * media/track/captions-webvtt/tc019-cue-size-bad.vtt: Added.
        * media/track/captions-webvtt/tc019-cue-size.vtt: Added.
        * media/track/captions-webvtt/tc020-cue-size-align-bad.vtt: Added.
        * media/track/captions-webvtt/tc020-cue-size-align.vtt: Added.
        * media/track/captions-webvtt/tc021-valign-bad.vtt: Added.
        * media/track/captions-webvtt/tc021-valign-ltr.vtt: Added.
        * media/track/captions-webvtt/tc021-valign.vtt: Added.
        * media/track/captions-webvtt/tc022-entities-wrong.vtt: Added.
        * media/track/captions-webvtt/tc022-entities.vtt: Added.
        * media/track/captions-webvtt/tc023-markup-bad.vtt: Added.
        * media/track/captions-webvtt/tc023-markup.vtt: Added.
        * media/track/captions-webvtt/tc024-timestamp-bad.vtt: Added.
        * media/track/captions-webvtt/tc024-timestamp.vtt: Added.
        * media/track/captions-webvtt/tc025-class-bad.vtt: Added.
        * media/track/captions-webvtt/tc025-class.vtt: Added.
        * media/track/captions-webvtt/tc026-voice-bad.vtt: Added.
        * media/track/captions-webvtt/tc026-voice.vtt: Added.
        * media/track/captions-webvtt/tc027-empty-cue.vtt: Added.
        * media/track/captions-webvtt/tc028-unsupported-markup.vtt: Added.
        * media/track/track-webvtt-tc004-magic-header-expected.txt: Added.
        * media/track/track-webvtt-tc004-magic-header.html: Added.
        * media/track/track-webvtt-tc005-header-comment-expected.txt: Added.
        * media/track/track-webvtt-tc005-header-comment.html: Added.
        * media/track/track-webvtt-tc006-cue-identifiers-expected.txt: Added.
        * media/track/track-webvtt-tc006-cue-identifiers.html: Added.
        * media/track/track-webvtt-tc007-cue-no-id-expected.txt: Added.
        * media/track/track-webvtt-tc007-cue-no-id.html: Added.
        * media/track/track-webvtt-tc008-timings-no-hours-expected.txt: Added.
        * media/track/track-webvtt-tc008-timings-no-hours.html: Added.
        * media/track/track-webvtt-tc009-timings-hour-expected.txt: Added.
        * media/track/track-webvtt-tc009-timings-hour.html: Added.
        * media/track/track-webvtt-tc010-no-timings-expected.txt: Added.
        * media/track/track-webvtt-tc010-no-timings.html: Added.
        * media/track/track-webvtt-tc011-blank-lines-expected.txt: Added.
        * media/track/track-webvtt-tc011-blank-lines.html: Added.
        * media/track/track-webvtt-tc012-out-of-order-expected.txt: Added.
        * media/track/track-webvtt-tc012-out-of-order.html: Added.
        * media/track/track-webvtt-tc014-alignment-expected.txt: Added.
        * media/track/track-webvtt-tc014-alignment.html: Added.
        * media/track/track-webvtt-tc015-positioning-expected.txt: Added.
        * media/track/track-webvtt-tc015-positioning.html: Added.
        * media/track/track-webvtt-tc016-align-positioning-expected.txt: Added.
        * media/track/track-webvtt-tc016-align-positioning.html: Added.
        * media/track/track-webvtt-tc017-line-position-expected.txt: Added.
        * media/track/track-webvtt-tc017-line-position.html: Added.
        * media/track/track-webvtt-tc018-align-text-line-position-expected.txt: Added.
        * media/track/track-webvtt-tc018-align-text-line-position.html: Added.
        * media/track/track-webvtt-tc019-cue-size-expected.txt: Added.
        * media/track/track-webvtt-tc019-cue-size.html: Added.
        * media/track/track-webvtt-tc020-cue-size-align-expected.txt: Added.
        * media/track/track-webvtt-tc020-cue-size-align.html: Added.
        * media/track/track-webvtt-tc021-valign-expected.txt: Added.
        * media/track/track-webvtt-tc021-valign.html: Added.
        * media/track/track-webvtt-tc022-entities-expected.txt: Added.
        * media/track/track-webvtt-tc022-entities.html: Added.
        * media/track/track-webvtt-tc023-markup-expected.txt: Added.
        * media/track/track-webvtt-tc023-markup.html: Added.
        * media/track/track-webvtt-tc024-timestamp-expected.txt: Added.
        * media/track/track-webvtt-tc024-timestamp.html: Added.
        * media/track/track-webvtt-tc025-class-markup-expected.txt: Added.
        * media/track/track-webvtt-tc025-class-markup.html: Added.
        * media/track/track-webvtt-tc026-voice-expected.txt: Added.
        * media/track/track-webvtt-tc026-voice.html: Added.
        * media/track/track-webvtt-tc027-empty-cue-expected.txt: Added.
        * media/track/track-webvtt-tc027-empty-cue.html: Added.
        * media/track/track-webvtt-tc028-unsupported-markup-expected.txt: Added.
        * media/track/track-webvtt-tc028-unsupported-markup.html: Added.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Continue importing GTK+ CSS3 selector results.

        * platform/gtk/css3/selectors3/xhtml: Import this directory.

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Begin importing CSS3 selector test results for GTK+.

        * platform/gtk/css3/selectors3/html: Import this directory.

2011-08-25  Anna Cavender  <annacc@chromium.org>

        Tests for validating a new WebVTT parser and tokenizer for TextTrackCue content.
        https://bugs.webkit.org/show_bug.cgi?id=65884

        Reviewed by Eric Carlson.

        * media/track/captions-webvtt/tc000-empty.vtt: Renamed from media/track/captions/tc000_empty.vtt.
        * media/track/captions-webvtt/tc001-iso2022jp3.vtt: Renamed from media/track/captions/tc001_iso2022jp3.vtt.
        * media/track/captions-webvtt/tc001-utf8.vtt: Renamed from media/track/captions/tc001_utf8.vtt.
        * media/track/captions-webvtt/tc002-bom.vtt: Renamed from media/track/captions/tc002_bom.vtt.
        * media/track/captions-webvtt/tc003-newlines.vtt: Renamed from media/track/captions/tc003_newlines.vtt
        * media/track/captions-webvtt/tc003-no-newline-at-eof.vtt: Renamed from media/track/captions/tc003_nonewlineateof.vtt
        * media/track/captions-webvtt/tc004-no-webvtt.vtt: Renamed from media/track/captions/tc004_nowebvtt.vtt.
        * media/track/captions-webvtt/tc004-webvtt-file.vtt: Renamed from media/track/captions/tc004_webvttfile.vtt.
        * media/track/captions-webvtt/tc004-webvtt-rubbish.vtt: Renamed from media/track/captions/tc004_webvttrubbish.vtt.
        * media/track/captions-webvtt/tc005-default-styles.vtt: Renamed from media/track/captions/tc005_defaultstyles.vtt.
        * media/track/captions-webvtt/tc005-metadata-area.vtt: Renamed from media/track/captions/tc005_metadataarea.vtt.
        * media/track/captions-webvtt/tc006-cue-id-error.vtt: Renamed from media/track/captions/tc006_cueiderror.vtt.
        * media/track/captions-webvtt/tc006-cue-id.vtt: Renamed from media/track/captions/tc006_cueid.vtt.
        * media/track/captions-webvtt/tc007-cue-no-id-error.vtt: Renamed from media/track/captions/tc007_cuenoid.vtt.
        * media/track/captions-webvtt/tc007-cue-no-id.vtt: Renamed from media/track/captions/tc007_cuenoiderror.vtt.
        * media/track/captions-webvtt/tc008-timings-no-hour-errors.vtt: Renamed from media/track/captions/tc008_timingsnohourerrors.vtt.
        * media/track/captions-webvtt/tc008-timings-no-hour.vtt: Renamed from media/track/captions/tc008_timingsnohour.vtt.
        * media/track/captions-webvtt/tc009-timings-hour-error.vtt: Renamed from media/track/captions/tc009_timingshourerror.vtt.
        * media/track/captions-webvtt/tc009-timings-hour.vtt: Renamed from media/track/captions/tc009_timingshour.vtt.
        * media/track/captions-webvtt/tc010-no-timings.vtt: Renamed from media/track/captions/tc010_notimings.vtt.
        * media/track/captions-webvtt/tc011-cues-no-separation.vtt: Copied from media/track/captions/tc011_cuesnosep.vtt.
        * media/track/captions-webvtt/tc011-cues.vtt: Renamed from media/track/captions/tc011_cues.vtt.
        * media/track/captions-webvtt/tc012-out-of-order.vtt: Renamed from media/track/captions/tc012_outoforder.vtt.
        * media/track/captions-webvtt/tc013-settings-bad-separation.vtt: Renamed from media/track/captions/tc013_settingsbadsep.vtt.
        * media/track/captions-webvtt/tc013-settings.vtt: Renamed from media/track/captions/tc013_settings.vtt.
        * media/track/captions-webvtt/tc014-alignment-bad.vtt: Added.
        * media/track/captions-webvtt/tc014-alignment-ltr.vtt: Added.
        * media/track/captions-webvtt/tc014-alignment.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning-bad.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning-ltr.vtt: Added.
        * media/track/captions-webvtt/tc015-positioning.vtt: Added.
        * media/track/captions-webvtt/tc016-align-positioning-bad.vtt: Added.
        * media/track/captions-webvtt/tc016-align-positioning.vtt: Added.
        * media/track/captions-webvtt/tc017-line-position-bad.vtt: Added.
        * media/track/captions-webvtt/tc017-line-position.vtt: Added.
        * media/track/captions-webvtt/tc018-align-text-line-position-bad.vtt: Added.
        * media/track/captions-webvtt/tc018-align-text-line-position.vtt: Added.
        * media/track/captions-webvtt/tc019-cue-size-bad.vtt: Added.
        * media/track/captions-webvtt/tc019-cue-size.vtt: Added.
        * media/track/captions-webvtt/tc020-cue-size-align-bad.vtt: Added.
        * media/track/captions-webvtt/tc020-cue-size-align.vtt: Added.
        * media/track/captions-webvtt/tc021-valign-bad.vtt: Added.
        * media/track/captions-webvtt/tc021-valign-ltr.vtt: Added.
        * media/track/captions-webvtt/tc021-valign.vtt: Added.
        * media/track/captions-webvtt/tc022-entities-wrong.vtt: Added.
        * media/track/captions-webvtt/tc022-entities.vtt: Added.
        * media/track/captions-webvtt/tc023-markup-bad.vtt: Added.
        * media/track/captions-webvtt/tc023-markup.vtt: Added.
        * media/track/captions-webvtt/tc024-timestamp-bad.vtt: Added.
        * media/track/captions-webvtt/tc024-timestamp.vtt: Added.
        * media/track/captions-webvtt/tc025-class-bad.vtt: Added.
        * media/track/captions-webvtt/tc025-class.vtt: Added.
        * media/track/captions-webvtt/tc026-voice-bad.vtt: Added.
        * media/track/captions-webvtt/tc026-voice.vtt: Added.
        * media/track/captions-webvtt/tc027-empty-cue.vtt: Added.
        * media/track/captions-webvtt/tc028-unsupported-markup.vtt: Added.
        * media/track/track-webvtt-tc000-empty.html:
        * media/track/track-webvtt-tc001-utf8-expected.txt:
        * media/track/track-webvtt-tc001-utf8.html:
        * media/track/track-webvtt-tc002-bom-expected.txt:
        * media/track/track-webvtt-tc002-bom.html:
        * media/track/track-webvtt-tc003-newlines-expected.txt:
        * media/track/track-webvtt-tc003-newlines.html:
        * media/track/track-webvtt-tc004-magic-header-expected.txt: Renamed from media/track/track-webvtt-tc004-magicheader-expected.txt.
        * media/track/track-webvtt-tc004-magic-header.html: Renamed from media/track/track-webvtt-tc004-magicheader.html.
        * media/track/track-webvtt-tc005-header-comment-expected.txt: Renamed from media/track/track-webvtt-tc005-headercomment-expected.txt.
        * media/track/track-webvtt-tc005-header-comment.html: Renamed from media/track/track-webvtt-tc005-headercomment.html.
        * media/track/track-webvtt-tc006-cue-identifiers-expected.txt: Renamed from media/track/track-webvtt-tc006-cueidentifiers-expected.txt.
        * media/track/track-webvtt-tc006-cue-identifiers.html: Renamed from media/track/track-webvtt-tc006-cueidentifiers.html.
        * media/track/track-webvtt-tc007-cue-no-id-expected.txt: Renamed from media/track/track-webvtt-tc007-cuenoid-expected.txt.
        * media/track/track-webvtt-tc007-cue-no-id.html: Renamed media/track/track-webvtt-tc007-cuenoid.html.
        * media/track/track-webvtt-tc008-timings-no-hours-expected.txt: Renamed from media/track/track-webvtt-tc008-timingsnohours-expected.txt.
        * media/track/track-webvtt-tc008-timings-no-hours.html: Renamed from media/track/track-webvtt-tc008-timingsnohours.html.
        * media/track/track-webvtt-tc009-timings-hour-expected.txt: Renamed from media/track/track-webvtt-tc009-timingshour-expected.txt.
        * media/track/track-webvtt-tc009-timings-hour.html: Renamed from media/track/track-webvtt-tc009-timingshour.html.
        * media/track/track-webvtt-tc010-no-timings-expected.txt: Copied from media/track/track-webvtt-tc010-notimings-expected.txt.
        * media/track/track-webvtt-tc010-no-timings.html: Renamed from media/track/track-webvtt-tc012-outoforder.html.
        * media/track/track-webvtt-tc011-blank-lines-expected.txt: Renamed from media/track/track-webvtt-tc011-blanklines-expected.txt.
        * media/track/track-webvtt-tc011-blank-lines.html: Renamed from media/track/track-webvtt-tc011-blanklines.html.
        * media/track/track-webvtt-tc012-out-of-order-expected.txt: Renamed from media/track/track-webvtt-tc012-outoforder-expected.txt.
        * media/track/track-webvtt-tc012-out-of-order.html: Copied from media/track/track-webvtt-tc000-empty.html.
        * media/track/track-webvtt-tc013-settings-expected.txt:
        * media/track/track-webvtt-tc013-settings.html:
        * media/track/track-webvtt-tc014-alignment-expected.txt: Added.
        * media/track/track-webvtt-tc014-alignment.html: Added.
        * media/track/track-webvtt-tc015-positioning-expected.txt: Added.
        * media/track/track-webvtt-tc015-positioning.html: Added.
        * media/track/track-webvtt-tc016-align-positioning-expected.txt: Added.
        * media/track/track-webvtt-tc016-align-positioning.html: Added.
        * media/track/track-webvtt-tc017-line-position-expected.txt: Added.
        * media/track/track-webvtt-tc017-line-position.html: Added.
        * media/track/track-webvtt-tc018-align-text-line-position-expected.txt: Added.
        * media/track/track-webvtt-tc018-align-text-line-position.html: Added.
        * media/track/track-webvtt-tc019-cue-size-expected.txt: Added.
        * media/track/track-webvtt-tc019-cue-size.html: Added.
        * media/track/track-webvtt-tc020-cue-size-align-expected.txt: Added.
        * media/track/track-webvtt-tc020-cue-size-align.html: Added.
        * media/track/track-webvtt-tc021-valign-expected.txt: Added.
        * media/track/track-webvtt-tc021-valign.html: Added.
        * media/track/track-webvtt-tc022-entities-expected.txt: Added.
        * media/track/track-webvtt-tc022-entities.html: Added.
        * media/track/track-webvtt-tc023-markup-expected.txt: Added.
        * media/track/track-webvtt-tc023-markup.html: Added.
        * media/track/track-webvtt-tc024-timestamp-expected.txt: Added.
        * media/track/track-webvtt-tc024-timestamp.html: Added.
        * media/track/track-webvtt-tc025-class-markup-expected.txt: Added.
        * media/track/track-webvtt-tc025-class-markup.html: Added.
        * media/track/track-webvtt-tc026-voice-expected.txt: Added.
        * media/track/track-webvtt-tc026-voice.html: Added.
        * media/track/track-webvtt-tc027-empty-cue-expected.txt: Added.
        * media/track/track-webvtt-tc027-empty-cue.html: Added.
        * media/track/track-webvtt-tc028-unsupported-markup-expected.txt: Added.
        * media/track/track-webvtt-tc028-unsupported-markup.html: Added.
        * media/video-test.js:
        (testCues):
        (allTestsEnded):

2011-08-26  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rolling out r93870.
        http://trac.webkit.org/changeset/93870
        https://bugs.webkit.org/show_bug.cgi?id=65203

        Broke i18n chromium tests

        * platform/chromium/test_expectations.txt:

2011-08-26  Martin Robinson  <mrobinson@igalia.com>

        Removing some tests from the GTK+ skipped lists that have results now
        or no longer exist.

        * platform/gtk/Skipped: Clean up.
        * platform/gtk/test_expectations.txt: Ditto.

2011-08-26  Andreas Kling  <kling@webkit.org>

        Rebaseline Qt (4.7) after r93873.

        * platform/qt/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-07-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/paths-data-01-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/paths-data-02-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/text-path-01-b-expected.txt:
        * platform/qt/svg/batik/text/textGlyphOrientationHorizontal-expected.txt:
        * platform/qt/svg/batik/text/textOnPath-expected.txt:
        * platform/qt/svg/batik/text/textOnPath2-expected.txt:
        * platform/qt/svg/batik/text/textOnPath3-expected.txt:
        * platform/qt/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/qt/svg/text/text-path-01-b-expected.txt:

2011-08-26  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix error in chromium test_expectations.

        * platform/chromium/test_expectations.txt:

2011-08-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.
        * platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
        * platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Added.
        * platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Added.
        * platform/gtk/fast/table/table-before-child-in-table-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-after-child-in-block-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-after-child-in-table-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-before-child-in-block-expected.txt: Added.
        * platform/gtk/fast/table/table-cell-before-child-in-table-expected.txt: Added.
        * platform/gtk/fast/table/table-row-after-child-in-block-expected.txt: Added.
        * platform/gtk/fast/table/table-row-after-child-in-table-expected.txt: Added.
        * platform/gtk/fast/table/table-row-before-child-in-block-expected.txt: Added.
        * platform/gtk/fast/table/table-row-before-child-in-table-expected.txt: Added.
        * platform/gtk/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/gtk/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.
        * platform/gtk/svg/as-object/embedded-svg-size-changes-no-layout-triggers-expected.txt: Added.
        * platform/gtk/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/gtk/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.

2011-08-26  Andreas Kling  <kling@webkit.org>

        [Qt] Path::boundingRect() is unnecessarily slow.
        https://bugs.webkit.org/show_bug.cgi?id=66854

        Reviewed by Benjamin Poulain.

        Rebaseline SVG tests after Path::boundingRect() change.
        This brings Qt quite a bit closer to CG and Skia metrics.

        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/animate-elem-07-t-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/paths-data-01-t-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/paths-data-02-t-expected.txt:
        * platform/qt-4.8/svg/W3C-SVG-1.1/text-path-01-b-expected.txt:
        * platform/qt-4.8/svg/batik/text/textGlyphOrientationHorizontal-expected.txt:
        * platform/qt-4.8/svg/batik/text/textOnPath-expected.txt:
        * platform/qt-4.8/svg/batik/text/textOnPath2-expected.txt:
        * platform/qt-4.8/svg/batik/text/textOnPath3-expected.txt:
        * platform/qt-4.8/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/qt-4.8/svg/text/text-path-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-28-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-83-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt:
        * platform/qt/svg/custom/animate-path-morphing-expected.txt:
        * platform/qt/svg/custom/broken-internal-references-expected.txt:
        * platform/qt/svg/custom/control-points-for-S-and-T-expected.txt:
        * platform/qt/svg/custom/path-textPath-simulation-expected.txt:
        * platform/qt/svg/custom/second-inline-text-expected.txt:
        * platform/qt/svg/custom/use-nested-transform-expected.txt:
        * platform/qt/svg/dom/SVGPathSegList-segment-modification-expected.txt:
        * platform/qt/svg/hixie/perf/001-expected.txt:
        * platform/qt/svg/hixie/perf/002-expected.txt:
        * platform/qt/svg/hixie/shapes/path/001-expected.txt:

2011-08-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, another rebaseline after switch to GTK+3.x.

        * platform/gtk/editing/selection/caret-rtl-2-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-2-left-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-right-expected.txt:
        * platform/gtk/editing/selection/move-by-word-visually-multi-line-expected.txt:
        * platform/gtk/editing/selection/move-past-trailing-space-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:
        * platform/gtk/fast/borders/bidi-012-expected.txt:
        * platform/gtk/fast/borders/rtl-border-04-expected.txt:
        * platform/gtk/fast/css/rtl-ordering-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-bidi-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-strict-expected.txt:
        * platform/gtk/fast/forms/listbox-bidi-align-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/forms/visual-hebrew-text-field-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/gtk/fast/text/bidi-embedding-pop-and-push-same-expected.txt:
        * platform/gtk/fast/text/cg-fallback-bolding-expected.txt:
        * platform/gtk/fast/text/drawBidiText-expected.txt:
        * platform/gtk/fast/text/in-rendered-text-rtl-expected.txt:
        * platform/gtk/fast/text/international/bidi-L2-run-reordering-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/gtk/fast/text/international/bidi-european-terminators-expected.txt:
        * platform/gtk/fast/text/international/bidi-explicit-embedding-expected.txt:
        * platform/gtk/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt:
        * platform/gtk/fast/text/international/bidi-innertext-expected.txt:
        * platform/gtk/fast/text/international/bidi-layout-across-linebreak-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-001-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-002-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-003-expected.txt:
        * platform/gtk/fast/text/international/bidi-mirror-he-ar-expected.txt:
        * platform/gtk/fast/text/international/bidi-neutral-run-expected.txt:
        * platform/gtk/fast/text/international/bidi-override-expected.txt:
        * platform/gtk/fast/text/international/hebrew-vowels-expected.txt:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt:
        * platform/gtk/fast/text/international/rtl-caret-expected.txt:
        * platform/gtk/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-expected.txt:
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
        * platform/gtk/fast/text/trailing-white-space-2-expected.txt:
        * platform/gtk/fast/text/trailing-white-space-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-no-markup-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-tselect-02-f-expected.txt:
        * platform/gtk/svg/text/bidi-embedded-direction-expected.txt:
        * platform/gtk/svg/text/bidi-reorder-value-lists-expected.txt:
        * platform/gtk/svg/text/bidi-text-anchor-direction-expected.txt:
        * platform/gtk/svg/text/text-tselect-02-f-expected.txt:
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:

2011-08-26  Mike Reed  <reed@google.com>

        [skia] never draw with GDI, so that all text can be gpu-accelerated
        https://bugs.webkit.org/show_bug.cgi?id=65203

        Reviewed by Kenneth Russell.

        * platform/chromium/test_expectations.txt:

2011-08-26  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium fast/borders/* tests.

        * fast/borders/borderRadiusArcs01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusArcs01-expected.txt.
        * fast/borders/borderRadiusDashed02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDashed02-expected.txt.
        * fast/borders/borderRadiusDashed03-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDashed03-expected.txt.
        * fast/borders/borderRadiusDotted01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDotted01-expected.txt.
        * fast/borders/borderRadiusDouble01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDouble01-expected.txt.
        * fast/borders/borderRadiusDouble02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDouble02-expected.txt.
        * fast/borders/borderRadiusDouble03-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusDouble03-expected.txt.
        * fast/borders/borderRadiusGroove01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusGroove01-expected.txt.
        * fast/borders/borderRadiusGroove02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusGroove02-expected.txt.
        * fast/borders/borderRadiusInset01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusInset01-expected.txt.
        * fast/borders/borderRadiusOutset01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusOutset01-expected.txt.
        * fast/borders/borderRadiusRidge01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusRidge01-expected.txt.
        * fast/borders/borderRadiusSolid01-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusSolid01-expected.txt.
        * fast/borders/borderRadiusSolid02-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusSolid02-expected.txt.
        * fast/borders/borderRadiusSolid03-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusSolid03-expected.txt.
        * fast/borders/borderRadiusSolid04-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/borderRadiusSolid04-expected.txt.
        * fast/borders/fieldsetBorderRadius-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/fieldsetBorderRadius-expected.txt.
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove02-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusRidge01-expected.png: Removed.
        * platform/chromium-linux/fast/borders/border-antialiasing-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-inline-flow-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid04-expected.png:
        * platform/chromium-linux/fast/borders/different-color-borders-expected.png:
        * platform/chromium-linux/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-01-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-02-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-03-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-04-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-05-expected.png:
        * platform/chromium-win/fast/borders/border-antialiasing-expected.png:
        * platform/chromium-win/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-win/fast/borders/border-radius-inline-flow-expected.png:
        * platform/chromium-win/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid04-expected.png:
        * platform/chromium-win/fast/borders/different-color-borders-expected.png:
        * platform/chromium-win/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-01-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-02-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-03-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-04-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-05-expected.png:
        * platform/chromium-win/fast/borders/table-borders-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/borders/fieldsetBorderRadius-expected.txt: Removed.
        * platform/qt/fast/borders/borderRadiusDashed02-expected.txt: Removed.
        * platform/qt/fast/borders/borderRadiusDashed03-expected.txt: Removed.
        * platform/qt/fast/borders/borderRadiusDotted01-expected.txt: Removed.
        * platform/qt/fast/borders/fieldsetBorderRadius-expected.txt: Removed.

2011-08-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of some svg tests after switch to
        GTK+-3.x.

        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt:
        * platform/gtk/svg/W3C-I18N/text-anchor-no-markup-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-tselect-02-f-expected.txt:
        * platform/gtk/svg/text/bidi-embedded-direction-expected.txt:
        * platform/gtk/svg/text/bidi-reorder-value-lists-expected.txt:
        * platform/gtk/svg/text/bidi-text-anchor-direction-expected.txt:
        * platform/gtk/svg/text/text-tselect-02-f-expected.txt:

2011-08-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of some fast/ tests after switch to
        GTK+-3.x.

        * platform/gtk/fast/borders/bidi-012-expected.txt:
        * platform/gtk/fast/borders/rtl-border-04-expected.txt:
        * platform/gtk/fast/css/pseudo-cache-stale-expected.txt:
        * platform/gtk/fast/css/rtl-ordering-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-bidi-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-expected.txt:
        * platform/gtk/fast/css/text-overflow-ellipsis-strict-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-text-indent-expected.txt:
        * platform/gtk/fast/forms/isindex-placeholder-expected.txt:
        * platform/gtk/fast/forms/listbox-bidi-align-expected.txt:
        * platform/gtk/fast/forms/password-placeholder-expected.txt:
        * platform/gtk/fast/forms/password-placeholder-text-security-expected.txt:
        * platform/gtk/fast/forms/placeholder-position-expected.txt:
        * platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/placeholder-set-attribute-expected.txt:
        * platform/gtk/fast/forms/placeholder-stripped-expected.txt:
        * platform/gtk/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-styled-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-set-attribute-expected.txt:
        * platform/gtk/fast/forms/visual-hebrew-text-field-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/gtk/fast/text/bidi-embedding-pop-and-push-same-expected.txt:
        * platform/gtk/fast/text/cg-fallback-bolding-expected.txt:
        * platform/gtk/fast/text/drawBidiText-expected.txt:
        * platform/gtk/fast/text/in-rendered-text-rtl-expected.txt:
        * platform/gtk/fast/text/international/bidi-L2-run-reordering-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/gtk/fast/text/international/bidi-european-terminators-expected.txt:
        * platform/gtk/fast/text/international/bidi-explicit-embedding-expected.txt:
        * platform/gtk/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt:
        * platform/gtk/fast/text/international/bidi-innertext-expected.txt:
        * platform/gtk/fast/text/international/bidi-layout-across-linebreak-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-001-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-002-expected.txt:
        * platform/gtk/fast/text/international/bidi-linebreak-003-expected.txt:
        * platform/gtk/fast/text/international/bidi-mirror-he-ar-expected.txt:
        * platform/gtk/fast/text/international/bidi-neutral-run-expected.txt:
        * platform/gtk/fast/text/international/bidi-override-expected.txt:
        * platform/gtk/fast/text/international/hebrew-vowels-expected.txt:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt:
        * platform/gtk/fast/text/international/rtl-caret-expected.txt:
        * platform/gtk/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-expected.txt:
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
        * platform/gtk/fast/text/trailing-white-space-2-expected.txt:
        * platform/gtk/fast/text/trailing-white-space-expected.txt:

2011-08-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        [Qt] http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm fails intermittently
        https://bugs.webkit.org/show_bug.cgi?id=65969

        Not reviewed. Unskip this test on Qt, it's fixed now.

        * platform/qt/Skipped:

2011-08-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of some editing tests after switch to
        GTK+-3.x.

        * platform/gtk/editing/pasteboard/4641033-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-2-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-2-left-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-expected.txt:
        * platform/gtk/editing/selection/caret-rtl-right-expected.txt:
        * platform/gtk/editing/selection/move-by-word-visually-multi-line-expected.txt: Added.
        * platform/gtk/editing/selection/move-past-trailing-space-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:

2011-08-26  James Kozianski  <koz@chromium.org>

        Unreviewed, rolling out r93853.
        http://trac.webkit.org/changeset/93853
        https://bugs.webkit.org/show_bug.cgi?id=67016

        Turns bots red

        * platform/chromium/test_expectations.txt:

2011-08-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add Qt specific expected results for new tests introduced in r93794.

        * platform/qt/Skipped:
        * platform/qt/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-after-child-in-table-expected.txt: Added.
        * platform/qt/fast/table/table-before-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-before-child-in-table-expected.txt: Added.
        * platform/qt/fast/table/table-cell-after-child-in-block-expected.png: Added.
        * platform/qt/fast/table/table-cell-after-child-in-block-expected.txt: Added.
        * platform/qt/fast/table/table-cell-after-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-cell-after-child-in-table-expected.txt: Added.
        * platform/qt/fast/table/table-cell-before-child-in-block-expected.png: Added.
        * platform/qt/fast/table/table-cell-before-child-in-block-expected.txt: Added.
        * platform/qt/fast/table/table-cell-before-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-cell-before-child-in-table-expected.txt: Added.
        * platform/qt/fast/table/table-row-after-child-in-block-expected.png: Added.
        * platform/qt/fast/table/table-row-after-child-in-block-expected.txt: Added.
        * platform/qt/fast/table/table-row-after-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-row-after-child-in-table-expected.txt: Added.
        * platform/qt/fast/table/table-row-before-child-in-block-expected.png: Added.
        * platform/qt/fast/table/table-row-before-child-in-block-expected.txt: Added.
        * platform/qt/fast/table/table-row-before-child-in-table-expected.png: Added.
        * platform/qt/fast/table/table-row-before-child-in-table-expected.txt: Added.

2011-08-26  Shinya Kawanaka  <shinyak@google.com>

        REGRESSION(r93390): Empty or invalid maxlength of an input tag should be ignored.
        https://bugs.webkit.org/show_bug.cgi?id=67015

        Reviewed by Kent Tamura.

        * fast/forms/input-text-paste-maxlength-expected.txt:
           Added maxlength="" and maxlength="invalid" tests.
        * fast/forms/input-text-paste-maxlength.html: ditto.
        * fast/forms/script-tests/textarea-maxlength.js: ditto.
        * fast/forms/textarea-maxlength-expected.txt: ditto.

2011-08-25  Ben Wells  <benwells@chromium.org>

        Update expectations to remove conflict
        https://bugs.webkit.org/show_bug.cgi?id=67020

        Unreviewed, expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Jeremy Apthorp  <jeremya@google.com>

        https://bugs.webkit.org/show_bug.cgi?id=67016

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        Update GTK+ result that depend on the GTK+ version.

        * platform/gtk/css2.1/t09-c5526c-display-00-e-expected.png:
        * platform/gtk/css2.1/t09-c5526c-display-00-e-expected.txt:
        * platform/gtk/editing/pasteboard/4641033-expected.png:
        * platform/gtk/editing/pasteboard/4641033-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-1-expected.png:
        * platform/gtk/editing/pasteboard/4944770-1-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-2-expected.png:
        * platform/gtk/editing/pasteboard/4944770-2-expected.txt:
        * platform/gtk/editing/pasteboard/drag-selected-image-to-contenteditable-expected.png: Added.
        * platform/gtk/editing/pasteboard/drag-selected-image-to-contenteditable-expected.txt:
        * platform/gtk/editing/selection/caret-before-select-expected.png:
        * platform/gtk/editing/selection/caret-before-select-expected.txt:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.png:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.txt:
        * platform/gtk/editing/selection/select-box-expected.png:
        * platform/gtk/editing/selection/select-box-expected.txt:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.png:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.txt:
        * platform/gtk/fast/block/basic/011-expected.png:
        * platform/gtk/fast/block/basic/011-expected.txt:
        * platform/gtk/fast/block/float/float-avoidance-expected.png:
        * platform/gtk/fast/block/float/float-avoidance-expected.txt:
        * platform/gtk/fast/block/margin-collapse/103-expected.png:
        * platform/gtk/fast/block/margin-collapse/103-expected.txt:
        * platform/gtk/fast/css/non-standard-checkbox-size-expected.txt:
        * platform/gtk/fast/forms/001-expected.png:
        * platform/gtk/fast/forms/001-expected.txt:
        * platform/gtk/fast/forms/003-expected.png:
        * platform/gtk/fast/forms/003-expected.txt:
        * platform/gtk/fast/forms/004-expected.png:
        * platform/gtk/fast/forms/004-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.txt:
        * platform/gtk/fast/forms/basic-inputs-expected.png:
        * platform/gtk/fast/forms/basic-inputs-expected.txt:
        * platform/gtk/fast/forms/basic-selects-expected.png:
        * platform/gtk/fast/forms/basic-selects-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.png:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/checkbox-radio-onchange-expected.png:
        * platform/gtk/fast/forms/checkbox-radio-onchange-expected.txt:
        * platform/gtk/fast/forms/control-clip-overflow-expected.png:
        * platform/gtk/fast/forms/control-clip-overflow-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.png:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
        * platform/gtk/fast/forms/file-input-disabled-expected.png:
        * platform/gtk/fast/forms/file-input-disabled-expected.txt:
        * platform/gtk/fast/forms/form-element-geometry-expected.png:
        * platform/gtk/fast/forms/form-element-geometry-expected.txt:
        * platform/gtk/fast/forms/formmove-expected.png:
        * platform/gtk/fast/forms/formmove-expected.txt:
        * platform/gtk/fast/forms/formmove2-expected.png:
        * platform/gtk/fast/forms/formmove2-expected.txt:
        * platform/gtk/fast/forms/indeterminate-expected.png:
        * platform/gtk/fast/forms/indeterminate-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.png:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-number-rtl-expected.png:
        * platform/gtk/fast/forms/input-appearance-number-rtl-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/gtk/fast/forms/input-value-expected.png:
        * platform/gtk/fast/forms/input-value-expected.txt:
        * platform/gtk/fast/forms/menulist-clip-expected.png:
        * platform/gtk/fast/forms/menulist-clip-expected.txt:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.png:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.txt:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.png:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.txt:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.png:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.txt:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.png:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.txt:
        * platform/gtk/fast/forms/menulist-style-color-expected.png:
        * platform/gtk/fast/forms/menulist-style-color-expected.txt:
        * platform/gtk/fast/forms/menulist-width-change-expected.png:
        * platform/gtk/fast/forms/menulist-width-change-expected.txt:
        * platform/gtk/fast/forms/option-script-expected.png:
        * platform/gtk/fast/forms/option-script-expected.txt:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.png:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.txt:
        * platform/gtk/fast/forms/option-text-clip-expected.png:
        * platform/gtk/fast/forms/option-text-clip-expected.txt:
        * platform/gtk/fast/forms/radio-attr-order-expected.png:
        * platform/gtk/fast/forms/radio-attr-order-expected.txt:
        * platform/gtk/fast/forms/radio-nested-labels-expected.png:
        * platform/gtk/fast/forms/radio-nested-labels-expected.txt:
        * platform/gtk/fast/forms/radio_checked-expected.png:
        * platform/gtk/fast/forms/radio_checked-expected.txt:
        * platform/gtk/fast/forms/radio_checked_dynamic-expected.png:
        * platform/gtk/fast/forms/radio_checked_dynamic-expected.txt:
        * platform/gtk/fast/forms/select-align-expected.png:
        * platform/gtk/fast/forms/select-align-expected.txt:
        * platform/gtk/fast/forms/select-background-none-expected.png:
        * platform/gtk/fast/forms/select-background-none-expected.txt:
        * platform/gtk/fast/forms/select-baseline-expected.png:
        * platform/gtk/fast/forms/select-baseline-expected.txt:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.png:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.txt:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.png:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.png:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
        * platform/gtk/fast/forms/select-empty-option-height-expected.png:
        * platform/gtk/fast/forms/select-empty-option-height-expected.txt:
        * platform/gtk/fast/forms/select-initial-position-expected.png:
        * platform/gtk/fast/forms/select-initial-position-expected.txt:
        * platform/gtk/fast/forms/select-selected-expected.png:
        * platform/gtk/fast/forms/select-selected-expected.txt:
        * platform/gtk/fast/forms/select-size-expected.png:
        * platform/gtk/fast/forms/select-size-expected.txt:
        * platform/gtk/fast/forms/select-style-expected.png:
        * platform/gtk/fast/forms/select-style-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.png:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.png:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/forms/selectlist-minsize-expected.png:
        * platform/gtk/fast/forms/selectlist-minsize-expected.txt:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.png:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.txt:
        * platform/gtk/fast/inline/positionedLifetime-expected.png:
        * platform/gtk/fast/inline/positionedLifetime-expected.txt:
        * platform/gtk/fast/invalid/014-expected.png:
        * platform/gtk/fast/invalid/014-expected.txt:
        * platform/gtk/fast/invalid/residual-style-expected.png:
        * platform/gtk/fast/invalid/residual-style-expected.txt:
        * platform/gtk/fast/parser/bad-xml-slash-expected.png:
        * platform/gtk/fast/parser/bad-xml-slash-expected.txt:
        * platform/gtk/fast/parser/document-write-option-expected.png:
        * platform/gtk/fast/parser/document-write-option-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-expected.png:
        * platform/gtk/fast/replaced/replaced-breaking-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.png:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.txt:
        * platform/gtk/fast/replaced/table-percent-height-expected.txt:
        * platform/gtk/fast/replaced/three-selects-break-expected.png:
        * platform/gtk/fast/replaced/three-selects-break-expected.txt:
        * platform/gtk/fast/replaced/width100percent-checkbox-expected.png:
        * platform/gtk/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.png:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.txt:
        * platform/gtk/fast/replaced/width100percent-radio-expected.png:
        * platform/gtk/fast/replaced/width100percent-radio-expected.txt:
        * platform/gtk/fast/text/international/bidi-menulist-expected.png:
        * platform/gtk/fast/text/international/bidi-menulist-expected.txt:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.png:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/gtk/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
        * platform/gtk/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
        * platform/gtk/http/tests/navigation/javascriptlink-frames-expected.png:
        * platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug1318-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2479-4-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2479-4-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4527-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/gtk/tables/mozilla/core/margins-expected.png:
        * platform/gtk/tables/mozilla/core/margins-expected.txt:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.png:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/gtk/transforms/2d/zoom-menulist-expected.png:
        * platform/gtk/transforms/2d/zoom-menulist-expected.txt:

2011-08-25  Ben Wells  <benwells@chromium.org>

        Use PATH_BASED_BORDER_RADIUS_DRAWING for skia
        https://bugs.webkit.org/show_bug.cgi?id=65583

        Reviewed by James Robinson.

        Update expectations: added failures for baselines to come. removed some
        failure expectations for tests that now pass and moved some expectations
        into the group of tests to be rebaselined.

        * platform/chromium/test_expectations.txt:

2011-08-25  Martin Robinson  <mrobinson@igalia.com>

        Skip some tests on GTK+ that are missing DRT functionality. Also
        reorganize some failures on the skipped list.

        * platform/gtk/Skipped: Update the skipped list.

2011-08-25  Peter Kasting  <pkasting@google.com>

        Temporarily mark some tests as crashing (assertion failure) after r93794.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:
        * platform/mac/test_expectations.txt:
        * platform/qt/test_expectations.txt:
        * platform/win/test_expectations.txt:

2011-08-25  Peter Kasting  <pkasting@google.com>

        [chromium] Some tests are apparently slow on Mac debug too.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Peter Kasting  <pkasting@google.com>

        [chromium] Test expectation updates.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Peter Kasting  <pkasting@google.com>

        [chromium] Test expectation updates.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Igor Oliveira  <igor.oliveira@openbossa.org>

        Rollout r93799: Caused bad clipping on the bottom of tall glyphs inside a button label

        * fast/css/button-overflow-ellipsis.html: Removed.
        * platform/qt/fast/css/button-overflow-ellipsis-expected.txt: Removed.

2011-08-25  Anders Carlsson  <andersca@apple.com>

        Return the correct value for NPNVsupportsCarbonBool
        https://bugs.webkit.org/show_bug.cgi?id=66964

        Reviewed by Adam Roben.

        Add test.

        * platform/mac/plugins/supports-carbon-event-model-expected.txt: Added.
        * platform/mac/plugins/supports-carbon-event-model.html: Added.

2011-08-25  Peter Kasting  <pkasting@google.com>

        [chromium] Further attempts to clean up the test expectations by being
        more consistent about handling SKIPped and WONTFIXed tests.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=21586
        Apply CSS animations and transitions to SVG properties

        Reviewed by Simon Fraser.

        New test for the SVG properties that can now animate. Also
        updated the test helper script to handle colors and
        percentages.

        This test has one entry that intentionally fails for a type
        of animation that we don't yet support: with a paint
        server of the form "url(#invalidref) green".

        * transitions/resources/transition-test-helpers.js:
        (expected):
        * transitions/svg-transitions-expected.txt: Added.
        * transitions/svg-transitions.html: Added.

2011-08-25  Igor Oliveira  <igor.oliveira@openbossa.org>

        [Qt] Unreviewed, rebaseline for bug 53438

        * platform/qt/fast/css/button-overflow-ellipsis-expected.txt:

2011-08-25  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Chromium rebaselines for r93794.

        * platform/chromium-cg-mac-leopard/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-before-child-in-table-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-cell-after-child-in-block-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-cell-after-child-in-table-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-cell-before-child-in-block-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-cell-before-child-in-table-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-row-after-child-in-block-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-row-after-child-in-table-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-row-before-child-in-block-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/table/table-row-before-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-before-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-after-child-in-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-after-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-before-child-in-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-cell-before-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-after-child-in-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-after-child-in-table-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-before-child-in-block-expected.png: Added.
        * platform/chromium-linux/fast/table/table-row-before-child-in-table-expected.png: Added.
        * platform/chromium-win-vista/fast/table: Removed.
        * platform/chromium-win/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-after-child-in-table-expected.txt: Added.
        * platform/chromium-win/fast/table/table-before-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-before-child-in-table-expected.txt: Added.
        * platform/chromium-win/fast/table/table-cell-after-child-in-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-after-child-in-block-expected.txt: Added.
        * platform/chromium-win/fast/table/table-cell-after-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-after-child-in-table-expected.txt: Added.
        * platform/chromium-win/fast/table/table-cell-before-child-in-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-before-child-in-block-expected.txt: Added.
        * platform/chromium-win/fast/table/table-cell-before-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-cell-before-child-in-table-expected.txt: Added.
        * platform/chromium-win/fast/table/table-row-after-child-in-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-after-child-in-block-expected.txt: Added.
        * platform/chromium-win/fast/table/table-row-after-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-after-child-in-table-expected.txt: Added.
        * platform/chromium-win/fast/table/table-row-before-child-in-block-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-before-child-in-block-expected.txt: Added.
        * platform/chromium-win/fast/table/table-row-before-child-in-table-expected.png: Added.
        * platform/chromium-win/fast/table/table-row-before-child-in-table-expected.txt: Added.

2011-08-25  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r90971): Fix an assertion failure with textarea placeholder.
        https://bugs.webkit.org/show_bug.cgi?id=66164

        Reviewed by Dave Hyatt.

        * fast/forms/textarea-placeholder-relayout-assertion-expected.txt: Added.
        * fast/forms/textarea-placeholder-relayout-assertion.html: Added.

2011-08-25  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Skip new tests until check them.

2011-08-25  Igor Oliveira  <igor.oliveira@openbossa.org>

        Text-overflow is broken for button elements
        https://bugs.webkit.org/show_bug.cgi?id=53438

        Add button text-overflow test.

        Reviewed by David Hyatt.

        * fast/css/button-overflow-ellipsis.html: Added.
        * platform/qt/fast/css/button-overflow-ellipsis-expected.txt: Added.

2011-08-25  Peter Kasting  <pkasting@google.com>

        [chromium] Several test expectation updates.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-25  Abhishek Arya  <inferno@chromium.org>

        Incorrect layout of :before and :after content, with display
        table, table-row and table-cell.
        https://bugs.webkit.org/show_bug.cgi?id=66699

        Reviewed by David Hyatt.

        * fast/table/table-after-child-in-table.html: Added.
        * fast/table/table-before-child-in-table.html: Added.
        * fast/table/table-cell-after-child-in-block.html: Added.
        * fast/table/table-cell-after-child-in-table.html: Added.
        * fast/table/table-cell-before-child-in-block.html: Added.
        * fast/table/table-cell-before-child-in-table.html: Added.
        * fast/table/table-row-after-child-in-block.html: Added.
        * fast/table/table-row-after-child-in-table.html: Added.
        * fast/table/table-row-before-child-in-block.html: Added.
        * fast/table/table-row-before-child-in-table.html: Added.
        * platform/mac/fast/table/table-after-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-after-child-in-table-expected.txt: Added.
        * platform/mac/fast/table/table-before-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-before-child-in-table-expected.txt: Added.
        * platform/mac/fast/table/table-cell-after-child-in-block-expected.png: Added.
        * platform/mac/fast/table/table-cell-after-child-in-block-expected.txt: Added.
        * platform/mac/fast/table/table-cell-after-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-cell-after-child-in-table-expected.txt: Added.
        * platform/mac/fast/table/table-cell-before-child-in-block-expected.png: Added.
        * platform/mac/fast/table/table-cell-before-child-in-block-expected.txt: Added.
        * platform/mac/fast/table/table-cell-before-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-cell-before-child-in-table-expected.txt: Added.
        * platform/mac/fast/table/table-row-after-child-in-block-expected.png: Added.
        * platform/mac/fast/table/table-row-after-child-in-block-expected.txt: Added.
        * platform/mac/fast/table/table-row-after-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-row-after-child-in-table-expected.txt: Added.
        * platform/mac/fast/table/table-row-before-child-in-block-expected.png: Added.
        * platform/mac/fast/table/table-row-before-child-in-block-expected.txt: Added.
        * platform/mac/fast/table/table-row-before-child-in-table-expected.png: Added.
        * platform/mac/fast/table/table-row-before-child-in-table-expected.txt: Added.

2011-08-25  Pavel Feldman  <pfeldman@google.com>

        [Qt] REGRESSION(93769): inspector/console/console-tests.html fails
        https://bugs.webkit.org/show_bug.cgi?id=66930

        Reviewed by Yury Semikhatsky.

        * inspector/console/console-repeat-count-expected.txt: Added.
        * inspector/console/console-repeat-count.html: Added.

2011-08-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93775.
        http://trac.webkit.org/changeset/93775
        https://bugs.webkit.org/show_bug.cgi?id=66932

        "Patch introduced the failures was rolled out." (Requested by
        kbalazs on #webkit).

        * platform/qt/Skipped:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium expectations.

        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Removed.

2011-08-25 Zsolt Fehér <h490267@stud.u-szeged.hu>

    Unreviewed Qt gardening.

    * platform/qt/Skipped:

2011-08-24  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: split ConsoleView into the View and the Model.
        https://bugs.webkit.org/show_bug.cgi?id=66861

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/change-iframe-src.html:
        * http/tests/inspector/console-cd-completions.html:
        * http/tests/inspector/console-cd.html:
        * http/tests/inspector/console-resource-errors.html:
        * http/tests/inspector/console-test.js:
        (initialize_ConsoleTest.InspectorTest.dumpConsoleMessages):
        (initialize_ConsoleTest.InspectorTest.dumpConsoleMessagesWithClasses):
        (initialize_ConsoleTest.InspectorTest.expandConsoleMessages):
        (initialize_ConsoleTest):
        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInConsole):
        (initialize_InspectorTest):
        * http/tests/inspector/network/disabled-cache-crash.html:
        * http/tests/inspector/network/network-cachedresources-with-same-urls.html:
        * http/tests/inspector/network/network-clear-cache.html-disabled:
        * http/tests/inspector/network/network-clear-cookies.html-disabled:
        * http/tests/inspector/network/network-content-replacement-embed.html:
        * http/tests/inspector/network/network-content-replacement-xhr.html:
        * http/tests/inspector/network/network-disable-cache-memory.html:
        * http/tests/inspector/network/network-disable-cache-xhrs.html:
        * http/tests/inspector/network/network-embed.html:
        * http/tests/inspector/network/network-iframe-load-and-delete.html:
        * http/tests/inspector/network/network-initiator-from-console.html:
        * http/tests/inspector/network/network-initiator.html:
        * http/tests/inspector/network/network-request-revision-content.html:
        * http/tests/inspector/network/network-shared-worker.html:
        * http/tests/inspector/network/network-sidebar-width.html:
        * http/tests/inspector/network/network-size-chunked.html:
        * http/tests/inspector/network/network-size-sync.html:
        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/network/network-timing.html:
        * http/tests/inspector/network/network-worker.html:
        * http/tests/inspector/network/network-xhr-async.html:
        * http/tests/inspector/network/network-xhr-sync.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-add.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-navigate.html:
        * http/tests/inspector/resource-tree/resource-tree-no-xhrs.html:
        * inspector/console/console-assert.html:
        * inspector/console/console-trace-in-eval.html:
        * inspector/console/console-trace.html:
        * inspector/console/console-uncaught-exception.html:
        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/debugger/debugger-completions-on-call-frame.html:
        * inspector/styles/styles-iframe.html:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-script-tag-1.html:
        * inspector/timeline/timeline-script-tag-2.html:

2011-08-25  Pavel Podivilov  <podivilov@chromium.org>

        Unreviwed, fix error in chromium test_expectations.

        * platform/chromium/test_expectations.txt:

2011-08-25  MORITA Hajime  <morrita@google.com>

        Unreviewed, rolling out r93762.
        http://trac.webkit.org/changeset/93762
        https://bugs.webkit.org/show_bug.cgi?id=66756

        IndexedDb tests crash

        * fast/events/event-constructors-expected.txt: Removed.
        * fast/events/event-constructors.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * platform/wk2/Skipped:

2011-08-25  Zoltan Herczeg  <zherczeg@webkit.org>

        [Qt] Add Qt specific expected after r93713 since ENABLE_MEDIA_STREAM is disabled.

        Unreviewed, test expectations update.

        * platform/qt/fast/files/create-blob-url-crash-expected.txt: Added.

2011-08-24  Kentaro Hara  <haraken@google.com>

        Implement an Event constructor.
        https://bugs.webkit.org/show_bug.cgi?id=66756

        Reviewed by Adam Barth.

        The spec of the Event constructor is here:
        http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#concept-event-constructor.
        This patch added the Event constructor to EventConstructors.h using
        JavaScript implementation-independent macros. This patch also added the V8
        implementation of these macros to V8EventConstructors.cpp.

        * fast/events/event-constructors-expected.txt: Added.
        * fast/events/event-constructors.html: Added.
        * platform/gtk/Skipped: Skipped event-constructors.html, since Event constructors are not yet implemented in JSC.
        * platform/mac/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.
        * platform/wk2/Skipped: Ditto.

2011-08-24  Kentaro Hara  <haraken@google.com>

        Implement a keypath parser strictly following the specification
        https://bugs.webkit.org/show_bug.cgi?id=62288

        Reviewed by Tony Chang.

        Implemented a keypath parser that accepts either an empty string, a JavaScript
        identifier, or multiple JavaScript identifiers separated by periods.
        We fixed createObjectStore() and createIndex() so that they parse and check
        their |keypath| argument and return an appropriate exception if the |keypath|
        is not valid. We removed create-index-null-name.html since this test violates the
        specification that says "a |keypath| argument of createIndex() must not be nullable".

        * storage/indexeddb/keypath-basics-expected.txt:
        * storage/indexeddb/keypath-basics.html:
        * storage/indexeddb/keypath-fetch-key-expected.txt: Renamed from LayoutTests/storage/indexeddb/keyPath-expected.txt.
        * storage/indexeddb/keypath-fetch-key.html: Renamed from LayoutTests/storage/indexeddb/keyPath.html.
        * storage/indexeddb/mozilla/create-index-null-name-expected.txt: Removed.
        * storage/indexeddb/mozilla/create-index-null-name.html: Removed.

2011-08-24  James Robinson  <jamesr@chromium.org>

        [chromium] Remove expected CRASH lines for tests that don't crash

        * platform/chromium/test_expectations.txt:

2011-08-24  James Robinson  <jamesr@chromium.org>

        [chromium] Remove expected failure lines from tests that work now.

        * platform/chromium/test_expectations.txt:

2011-08-24  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium mac baselines for fast/repaint/japanese-rl-selection-repaint-in-regions.html

        * platform/chromium-cg-mac-leopard/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-08-24  Peter Kasting  <pkasting@google.com>

        [chromium] Mark a test as flaky.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-24  Peter Kasting  <pkasting@google.com>

        [chromium] Update expectations after r93728 and r93737.

        Unreviewed, test expectations update.

        * platform/chromium-cg-mac-leopard/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Removed.
        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-24  Daniel Bates  <dbates@webkit.org>

        XSS filter bypass via document.write(location.href) and fragments
        https://bugs.webkit.org/show_bug.cgi?id=66585

        Reviewed by Darin Adler.

        Add a test case for a variation of a DOM-based XSS attack using an anchor URL.

        * http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt: Added.
        * http/tests/security/xssAuditor/anchor-url-dom-write-location2.html: Added.

2011-08-24  James Robinson  <jamesr@chromium.org>

        [chromium] Update expectations for tests that no longer crash.

        * platform/chromium/test_expectations.txt:

2011-08-24  James Robinson  <jamesr@chromium.org>

        Some compositing LayoutTests flakily crashing on Mac 10.6
        https://bugs.webkit.org/show_bug.cgi?id=66740

        Reviewed by Adam Barth.

        Remove = CRASH expectations for plugin tests that should no longer crash.

        * platform/chromium/test_expectations.txt:

2011-08-24  Peter Kasting  <pkasting@google.com>

        [chromium] More test expectation updates.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-24  Alexey Proskuryakov  <ap@apple.com>

        Plug-in tests are flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=66822

        Reviewed by Anders Carlsson.

        * platform/wk2/Skipped: Removed a test that was already passing in WK2 (but flaky in WK1).

2011-08-24  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] Fix Element::getBoundingClientRect and Element::getClientRects for content flow
        https://bugs.webkit.org/show_bug.cgi?id=66641

        Original author of the patch is Mihnea Ovidenie <mihnea@adobe.com>.

        Reviewed by David Hyatt.

        * fast/regions/flowed-content-bounding-client-rect-expected.txt: Added.
        * fast/regions/flowed-content-bounding-client-rect-horizontal-bt-expected.txt: Added.
        * fast/regions/flowed-content-bounding-client-rect-horizontal-bt.html: Added.
        * fast/regions/flowed-content-bounding-client-rect-vertical-expected.txt: Added.
        * fast/regions/flowed-content-bounding-client-rect-vertical-rl-expected.txt: Added.
        * fast/regions/flowed-content-bounding-client-rect-vertical-rl.html: Added.
        * fast/regions/flowed-content-bounding-client-rect-vertical.html: Added.
        * fast/regions/flowed-content-bounding-client-rect.html: Added.
        * fast/regions/flowed-content-transform-bounding-client-rect-expected.txt: Added.
        * fast/regions/flowed-content-transform-bounding-client-rect.html: Added.
        * fast/regions/resources/helper.js: Added.
        (rectToArray):
        (areEqualNumbers):
        (areEqualRects):
        (assertEqualRects):
        (testBoundingRects):

2011-08-24  Nate Chapin  <japhet@chromium.org>

        Test for https://bugs.webkit.org/show_bug.cgi?id=45202.

        Reviewed by Alexey Proskuryakov.

        * http/tests/eventsource/eventsource-reconnect-during-navigate-crash-expected.txt: Added.
        * http/tests/eventsource/eventsource-reconnect-during-navigate-crash.html: Added.
        * http/tests/eventsource/resources/wait-then-notify-done.php: Added.

2011-08-24  Peter Kasting  <pkasting@google.com>

        [chromium] Test expectation updates.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-24  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] RenderRegion is not used if there's another renderer after it
        https://bugs.webkit.org/show_bug.cgi?id=66844

        Reviewed by David Hyatt.

        * fast/regions/content-flowed-into-regions-dynamically-inserted-expected.png: Added.
        * fast/regions/content-flowed-into-regions-dynamically-inserted-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-dynamically-inserted.html: Added.

2011-08-24  Peter Kasting  <pkasting@google.com>

        [chromium] Organize SLOW section of expectations.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-24  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, rebaselining media/video-currentTime-set.html due to
        FFmpeg udpate.

        * platform/chromium-cg-mac/media/video-currentTime-set-expected.txt:
        * platform/chromium-win/media/video-currentTime-set-expected.txt:

2011-08-24  Tommy Widenflycht  <tommyw@google.com>

        MediaStream API: add createObjectURL functionality
        https://bugs.webkit.org/show_bug.cgi?id=65925

        Reviewed by Adam Barth.

        * fast/files/create-blob-url-crash-expected.txt:

2011-08-23  David Levin  <levin@chromium.org>

        MessageEvent.ports shouldn't ever be null.
        https://bugs.webkit.org/show_bug.cgi?id=66789

        Reviewed by Darin Adler.

        Fix all tests which verified that MessageEvents.ports was null in various cases.

        * fast/dom/Window/window-postmessage-args-expected.txt:
        * fast/events/message-port-multi-expected.txt:
        * fast/events/resources/message-port-multi.js:
        (channel.port2.onmessage):
        * fast/workers/resources/worker-context-multi-port.js:
        (worker.onmessage):
        * fast/workers/resources/worker-messageport.js:
        (onmessage):
        * fast/workers/resources/worker-thread-multi-port.js:
        (onmessage):
        * fast/workers/worker-context-multi-port-expected.txt:
        * fast/workers/worker-messageport-expected.txt:
        * fast/workers/worker-multi-port-expected.txt:
        * platform/chromium-win/fast/events/message-port-multi-expected.txt:
        * platform/chromium-win/fast/workers/worker-context-multi-port-expected.txt:
        * platform/chromium-win/fast/workers/worker-multi-port-expected.txt:
        * platform/chromium/fast/dom/Window/window-postmessage-args-expected.txt:

2011-08-24  Alexandru Chiculita  <achicu@adobe.com>

        https://bugs.webkit.org/show_bug.cgi?id=66799
        RenderFlowThread creates a list of child elements, so that it can search
        the insertion point of a new element without searching the whole DOM.
        The issue is that it used addChild/removeChild, but that wasn't taking care of
        elements added in anonymous blocks created inside the RenderFlowThread.

        Reviewed by David Hyatt.

        * fast/regions/flow-anonymous-children-expected.txt: Added.
        * fast/regions/flow-anonymous-children.html: Added.

2011-08-24  Pavel Podivilov  <podivilov@chromium.org>

         Unreviewed, chromium rebaseline for gradient-after-transparent-border.

        * platform/chromium-cg-mac-leopard/fast/gradients/gradient-after-transparent-border-expected.png:
        * platform/chromium-cg-mac/fast/gradients/gradient-after-transparent-border-expected.png:
        * platform/chromium/test_expectations.txt:

2011-08-24  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update test expectations for svg/custom/stroke-opacity-update.

        * platform/chromium-linux/svg/custom/stroke-opacity-update-expected.png: Added.
        * platform/chromium-win/svg/custom/stroke-opacity-update-expected.png: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/svg/custom/stroke-opacity-update-expected.txt: Removed.
        * platform/qt/svg/custom/stroke-opacity-update-expected.txt: Removed.
        * svg/custom/stroke-opacity-update-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/stroke-opacity-update-expected.txt.

2011-08-24  Tatiana Meshkova  <tatiana.meshkova@nokia.com>

        Pixel crash test for RenderThemeQt::paintSliderTrack.
        https://bugs.webkit.org/show_bug.cgi?id=50453

        Reviewed by Kenneth Rohde Christiansen.

        Support -webkit-appearance: slider-horizontal/vertical
        painting without range input.

        * platform/qt/fast/forms/range/slider-crash-expected.png: Added.
        * platform/qt/fast/forms/range/slider-crash-expected.txt: Added.
        * platform/qt/fast/forms/range/slider-crash.html: Added.

2011-08-24  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix chromium expectations for fast/preloader/script.html.

        * platform/chromium/fast/preloader/script-expected.txt: Added.

2011-08-23  Ben Wells  <benwells@chromium.org>

        Extra baseline for bug 66036 (canvas fill composite modes)
        https://bugs.webkit.org/show_bug.cgi?id=66835

        Unreviewed, new baseline for pixel tests.

        * platform/chromium-gpu-linux/fast/canvas/canvas-composite-expected.png:

2011-08-23  Ben Wells  <benwells@chromium.org>

        Extra baseline for bug 66442 (skia webkit-transform breaks webkit-mask)
        https://bugs.webkit.org/show_bug.cgi?id=66833

        Reviewed by Kenneth Russell.

        * platform/chromium-gpu-linux/compositing/masks/multiple-masks-expected.png: Added.

2011-08-23  Ben Wells  <benwells@chromium.org>

        Rebaselines for bug 66036 (fills with various canvas compositing modes)
        https://bugs.webkit.org/show_bug.cgi?id=66824

        Reviewed by James Robinson.

        * platform/chromium-gpu-win/fast/canvas/canvas-composite-expected.png: Added.
        * platform/chromium-gpu-win/fast/canvas/canvas-composite-transformclip-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Add more flaky snowleopard GPU tests.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Fix erroneous test expectation.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  James Robinson  <jamesr@chromium.org>

        [chromium] Need a way to test lost compositor context recovery
        https://bugs.webkit.org/show_bug.cgi?id=66820

        Reviewed by Kenneth Russell.

        Adds a simple test for losing the compositor context in a recoverable
        way on a composited page. Tests that we recover without crashing and
        render the updated content on the next frame.

        * platform/chromium/compositing/lost-compositor-context.html: Added.

2011-08-23  Adam Barth  <abarth@webkit.org>

        Fix baselines for fast/block/float/fit_line_below_floats.html.  I forgot Windows in my previous patch.

        * platform/chromium-linux/fast/block/float/fit_line_below_floats-expected.txt: Removed.
        * platform/chromium-win/fast/block/float/fit_line_below_floats-expected.png: Added.
        * platform/chromium-win/fast/block/float/fit_line_below_floats-expected.txt: Added.

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Remove comments formerly associated with now-rebaselined tests.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  Chang Shu  <cshu@webkit.org>

        Added support for momentarily revealing last typed character in password input.
        Code change was partially based on Apple's iOS code and Samuel Nevala's work.
        https://bugs.webkit.org/show_bug.cgi?id=32509

        Reviewed by Alexey Proskuryakov.

        Updated failed expected files.

        * editing/input/password-echo-passnode-expected.txt:
        * editing/input/password-echo-passnode2-expected.txt:

2011-08-23  Ben Wells  <benwells@chromium.org>

        Rebaselines for bug 66442 (skia webkit-transform breaks webkit-mask)
        https://bugs.webkit.org/show_bug.cgi?id=66757

        Reviewed by Kenneth Russell.

        * platform/chromium-gpu-win/compositing/masks/multiple-masks-expected.png: Added.
        * platform/chromium-gpu-win/compositing/masks/multiple-masks-expected.txt: Added.
        * platform/chromium-linux/fast/backgrounds/mask-composite-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/mask-composite-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/mask-composite-expected.txt: Added.
        * platform/chromium-win/fast/css/transformed-mask-expected.png: Added.
        * platform/chromium-win/fast/css/transformed-mask-expected.txt: Renamed from LayoutTests/platform/chromium-linux/fast/css/transformed-mask-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-08-23  Tony Chang  <tony@chromium.org>

        Add handling of mix-width and max-width for flexitems
        https://bugs.webkit.org/show_bug.cgi?id=66723

        Reviewed by David Hyatt.

        * css3/flexbox/003-expected.txt: Added.
        * css3/flexbox/003.html: Added.

2011-08-23  Adam Barth  <abarth@webkit.org>

        Update expectations for pkasting.  The rebaseline script is having
        trouble on Cygwin, so I ran the script as instructed by Peter.

        * platform/chromium-cg-mac-leopard/fast/block/float/fit_line_below_floats-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/chromium-cg-mac/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/chromium-linux-x86/fast/css: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates: Removed.
        * platform/chromium-linux/fast/block/float/fit_line_below_floats-expected.png: Added.
        * platform/chromium-linux/fast/block/float/fit_line_below_floats-expected.txt: Added.
        * platform/chromium-linux/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/chromium-linux/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/chromium-linux/fast/block/positioning/058-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/chromium-linux/svg/custom/image-small-width-height-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-win-vista/svg/dynamic-updates: Removed.
        * platform/chromium-win/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/chromium-win/fast/block/float/floats-and-text-indent-expected.txt: Added.
        * platform/chromium-win/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/chromium-win/fast/block/float/floats-and-text-indent-rl-expected.txt: Added.
        * platform/chromium-win/fast/block/positioning/058-expected.png:
        * platform/chromium-win/fast/block/positioning/058-expected.txt:
        * platform/chromium-win/fast/css/border-radius-non-negative-expected.png: Added.
        * platform/chromium-win/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/chromium-win/fast/multicol/span/span-as-nested-inline-block-child-expected.txt: Added.
        * platform/chromium-win/svg/custom/image-small-width-height-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/svg/custom/image-small-width-height-expected.txt: Removed.
        * platform/qt/svg/custom/image-small-width-height-expected.txt: Removed.
        * svg/custom/image-small-width-height-expected.txt: Added.

2011-08-23  Tatiana Meshkova  <tatiana.meshkova@nokia.com>

        Swap width and height for sliderthumb-vertical.
        https://bugs.webkit.org/show_bug.cgi?id=66732

        Reviewed by Kenneth Rohde Christiansen.

        * platform/qt/fast/forms/range/thumbslider-no-parent-slider-expected.txt:

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Typo fix.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Revert unintentional changes to test expectations in r93638.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  Peter Kasting  <pkasting@google.com>

        Unreviewed, rolling out r93452.
        http://trac.webkit.org/changeset/93452
        https://bugs.webkit.org/show_bug.cgi?id=66423

        Broke Leopard, Snowleopard, and Chromium bots

        * fast/parser/innerhtml-with-prefixed-elements.xhtml: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.png: Removed.
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Removed.

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Move result images into correct subdirectory.
        https://bugs.webkit.org/show_bug.cgi?id=66618

        Unreviewed, file misplacement fix.

        * platform/chromium-cg-mac/fast/repaint/scroll-absolute-layer-with-reflection-expected.png: Copied from platform/chromium-cg-mac/scroll-absolute-layer-with-reflection-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-fixed-layer-with-reflection-expected.png: Copied from platform/chromium-cg-mac/scroll-fixed-layer-with-reflection-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-fixed-layer-with-transformed-parent-layer-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-fixed-reflected-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-fixed-reflected-layer-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-in-clipped-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-in-clipped-layer-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-in-fixed-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-in-fixed-layer-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-in-transformed-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-in-transformed-layer-expected.png.
        * platform/chromium-cg-mac/fast/repaint/scroll-with-transformed-parent-layer-expected.png: Copied from platform/chromium-cg-mac/scroll-with-transformed-parent-layer-expected.png.
        * platform/chromium-cg-mac/scroll-absolute-layer-with-reflection-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-fixed-layer-with-reflection-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-fixed-reflected-layer-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-in-clipped-layer-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-in-fixed-layer-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-in-transformed-layer-expected.png: Removed.
        * platform/chromium-cg-mac/scroll-with-transformed-parent-layer-expected.png: Removed.

2011-08-23  Peter Kasting  <pkasting@google.com>

        [chromium] Attempt to make test expectations more accurate.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-23  Alexandru Chiculita  <achicu@adobe.com>

        Text overlaps with the floats
        https://bugs.webkit.org/show_bug.cgi?id=66671

        Reviewed by David Hyatt.

        * fast/block/float/fit_line_below_floats.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/fast/block/float/fit_line_below_floats-expected.png: Added.
        * platform/mac/fast/block/float/fit_line_below_floats-expected.txt: Added.
        * platform/qt/Skipped:

2011-08-23  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] RenderFlowThread layout should use the attached region sizes
        https://bugs.webkit.org/show_bug.cgi?id=66143

        Reviewed by David Hyatt.

        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Added.
        * fast/regions/webkit-flow-floats-inside-regions-bounds.html: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl.html: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical.html: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds.html: Added.

2011-08-23  Alexandru Chiculita  <achicu@adobe.com>

        Text-indent and floats push the text out of the container box
        https://bugs.webkit.org/show_bug.cgi?id=66662

        Reviewed by David Hyatt.

        * fast/block/float/floats-and-text-indent-rl.html: Added.
        * fast/block/float/floats-and-text-indent.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/fast/block/float/floats-and-text-indent-expected.png: Added.
        * platform/mac/fast/block/float/floats-and-text-indent-expected.txt: Added.
        * platform/mac/fast/block/float/floats-and-text-indent-rl-expected.png: Added.
        * platform/mac/fast/block/float/floats-and-text-indent-rl-expected.txt: Added.
        * platform/qt/Skipped:

2011-08-23  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=55347
        "name" and "message" enumerable on *Error.prototype

        Reviewed by Sam Weinig.

        * fast/js/exception-properties-expected.txt:
        * fast/js/script-tests/exception-properties.js:
            - Add tests for value of RangeError.__proto__.{name|message}

2011-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93616.
        http://trac.webkit.org/changeset/93616
        https://bugs.webkit.org/show_bug.cgi?id=66796

        "causes fast/css/absolute-child-with-percent-height-inside-
        relative-parent.html to fail" (Requested by mwenge2 on
        #webkit).

        * fast/inline/absolute-positioned-block-in-centred-block-expected.png: Removed.
        * fast/inline/absolute-positioned-block-in-centred-block-expected.txt: Removed.
        * fast/inline/absolute-positioned-block-in-centred-block.html: Removed.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Removed.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Removed.
        * fast/inline/absolute-positioned-inline-in-centred-block.html: Removed.
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:

2011-07-25  Robert Hogan  <robert@webkit.org>

        div align="center" rendering problem
        https://bugs.webkit.org/show_bug.cgi?id=4860

        Reviewed by David Hyatt.

        * fast/inline/absolute-positioned-block-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-block-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-block-in-centred-block.html: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.png: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
        * fast/inline/absolute-positioned-inline-in-centred-block.html: Added.
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt:
          Both of these two tests were based on the incorrect behaviour of ignoring the alignment specified
          by the container of an element absolute position when there was no text preceding the element.
          The updated results agree with Firefox and IE.

2011-08-23  Julien Chaffraix  <jchaffraix@webkit.org>

        Reduce the amount of RenderLayer rectangles' update when scrolling
        https://bugs.webkit.org/show_bug.cgi?id=66618

        Reviewed by David Hyatt.

        * fast/repaint/resources/default.css:
        Added more shortcuts.

        * fast/repaint/scroll-absolute-layer-with-reflection-expected.txt: Added.
        * fast/repaint/scroll-absolute-layer-with-reflection.html: Added.
        * fast/repaint/scroll-fixed-layer-with-reflection-expected.txt: Added.
        * fast/repaint/scroll-fixed-layer-with-reflection.html: Added.
        * fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.txt: Added.
        * fast/repaint/scroll-fixed-layer-with-transformed-parent-layer.html: Added.
        * fast/repaint/scroll-fixed-reflected-layer-expected.txt: Added.
        * fast/repaint/scroll-fixed-reflected-layer.html: Added.
        * fast/repaint/scroll-in-clipped-layer-expected.txt: Added.
        * fast/repaint/scroll-in-clipped-layer.html: Added.
        * fast/repaint/scroll-in-fixed-layer-expected.txt: Added.
        * fast/repaint/scroll-in-fixed-layer.html: Added.
        * fast/repaint/scroll-in-transformed-layer-expected.txt: Added.
        * fast/repaint/scroll-in-transformed-layer.html: Added.
        * fast/repaint/scroll-with-transformed-parent-layer-expected.txt: Added.
        * fast/repaint/scroll-with-transformed-parent-layer.html: Added.
        Those are a variation on the same theme: scrolling inside a layers (sometimes the layer is itself scrolled)
        to show that we are still doing the right thing.

        * platform/chromium-cg-mac/scroll-absolute-layer-with-reflection-expected.png: Added.
        * platform/chromium-cg-mac/scroll-fixed-layer-with-reflection-expected.png: Added.
        * platform/chromium-cg-mac/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Added.
        * platform/chromium-cg-mac/scroll-fixed-reflected-layer-expected.png: Added.
        * platform/chromium-cg-mac/scroll-in-clipped-layer-expected.png: Added.
        * platform/chromium-cg-mac/scroll-in-fixed-layer-expected.png: Added.
        * platform/chromium-cg-mac/scroll-in-transformed-layer-expected.png: Added.
        * platform/chromium-cg-mac/scroll-with-transformed-parent-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-absolute-layer-with-reflection-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-fixed-layer-with-reflection-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-fixed-reflected-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-in-clipped-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-in-fixed-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-in-transformed-layer-expected.png: Added.
        * platform/chromium-win/fast/repaint/scroll-with-transformed-parent-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-absolute-layer-with-reflection-expected.png: Added.
        * platform/mac/fast/repaint/scroll-fixed-layer-with-reflection-expected.png: Added.
        * platform/mac/fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-fixed-reflected-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-in-clipped-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-in-fixed-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-in-transformed-layer-expected.png: Added.
        * platform/mac/fast/repaint/scroll-with-transformed-parent-layer-expected.png: Added.
        Baseline for Chromium and Mac.

2011-08-23  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Disabled inspector/extensions/extensions-resources.html.
        https://bugs.webkit.org/show_bug.cgi?id=66786

        * platform/qt/Skipped:

2011-08-23  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed test fix following r93605.

        * http/tests/inspector/resources/extension-main.js:
        (trimURL):
        * inspector/extensions/extensions-resources-expected.txt:
        * inspector/extensions/extensions-resources.html:

2011-08-23  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] provide access to page resources
        https://bugs.webkit.org/show_bug.cgi?id=66767

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resources/extension-main.js:
        (trimURL):
        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-network-expected.txt:
        * inspector/extensions/extensions-network.html:
        * inspector/extensions/extensions-resources-expected.txt: Added.
        * inspector/extensions/extensions-resources.html: Added.
        * inspector/extensions/resources/Ahem.ttf:
        * inspector/extensions/resources/test-script.js: Added.
        (__test_function):

2011-08-23  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Remove a non-existent test from the skipped list.

        * platform/qt/Skipped:

2011-08-23  Kent Tamura  <tkent@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=66651
        Move <input type=range> tests to fast/forms/range/

        Reviewed by Tony Chang.

        * fast/forms/ValidityState-stepMismatch-expected.txt: Removed 'range' part.
        * fast/forms/input-appearance-range-rtl-expected.html: Removed.
        * fast/forms/input-appearance-range-rtl.html: Removed.
        * fast/forms/input-appearance-range.html: Removed.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed 'range' part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: Removed 'range' part.
        * fast/forms/input-valueasnumber-range-expected.txt: Removed.
        * fast/forms/input-valueasnumber-range.html: Removed.
        * fast/forms/range: Added.
        * fast/forms/range-default-value-expected.txt: Removed.
        * fast/forms/range-default-value.html: Removed.
        * fast/forms/range-drag-expected.txt: Removed.
        * fast/forms/range-drag.html: Removed.
        * fast/forms/range-input-dynamic-oninput-expected.txt: Removed.
        * fast/forms/range-input-dynamic-oninput.html: Removed.
        * fast/forms/range-keyoperation-expected.txt: Removed.
        * fast/forms/range-keyoperation.html: Removed.
        * fast/forms/range-reset-expected.txt: Removed.
        * fast/forms/range-reset.html: Removed.
        * fast/forms/range-set-attribute-expected.txt: Removed.
        * fast/forms/range-set-attribute.html: Removed.
        * fast/forms/range-thumb-height-percentage.html: Removed.
        * fast/forms/range/ValidityState-stepMismatch-range-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-stepMismatch-expected.txt.
        * fast/forms/range/ValidityState-stepMismatch-range.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/range/input-appearance-range-rtl-expected.html: Copied from LayoutTests/fast/forms/input-appearance-range-rtl-expected.html.
        * fast/forms/range/input-appearance-range-rtl.html: Copied from LayoutTests/fast/forms/input-appearance-range-rtl.html.
        * fast/forms/range/input-appearance-range.html: Copied from LayoutTests/fast/forms/input-appearance-range.html.
        * fast/forms/range/input-valueasnumber-range-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-range-expected.txt.
        * fast/forms/range/input-valueasnumber-range.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-range.js.
        * fast/forms/range/range-default-value-expected.txt: Copied from LayoutTests/fast/forms/range-default-value-expected.txt.
        * fast/forms/range/range-default-value.html: Copied from LayoutTests/fast/forms/range-default-value.html.
        * fast/forms/range/range-drag-expected.txt: Copied from LayoutTests/fast/forms/range-drag-expected.txt.
        * fast/forms/range/range-drag.html: Copied from LayoutTests/fast/forms/range-drag.html.
        * fast/forms/range/range-input-dynamic-oninput-expected.txt: Copied from LayoutTests/fast/forms/range-input-dynamic-oninput-expected.txt.
        * fast/forms/range/range-input-dynamic-oninput.html: Copied from LayoutTests/fast/forms/range-input-dynamic-oninput.html.
        * fast/forms/range/range-keyoperation-expected.txt: Copied from LayoutTests/fast/forms/range-keyoperation-expected.txt.
        * fast/forms/range/range-keyoperation.html: Copied from LayoutTests/fast/forms/range-keyoperation.html.
        * fast/forms/range/range-reset-expected.txt: Copied from LayoutTests/fast/forms/range-reset-expected.txt.
        * fast/forms/range/range-reset.html: Copied from LayoutTests/fast/forms/range-reset.html.
        * fast/forms/range/range-set-attribute-expected.txt: Copied from LayoutTests/fast/forms/range-set-attribute-expected.txt.
        * fast/forms/range/range-set-attribute.html: Copied from LayoutTests/fast/forms/range-set-attribute.html.
        * fast/forms/range/range-stepup-stepdown-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-expected.txt.
        * fast/forms/range/range-stepup-stepdown-from-renderer-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-from-renderer-expected.txt.
        * fast/forms/range/range-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/range/range-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.
        * fast/forms/range/range-thumb-height-percentage.html: Copied from LayoutTests/fast/forms/range-thumb-height-percentage.html.
        * fast/forms/range/slider-delete-while-dragging-thumb-expected.txt: Copied from LayoutTests/fast/forms/slider-delete-while-dragging-thumb-expected.txt.
        * fast/forms/range/slider-delete-while-dragging-thumb.html: Copied from LayoutTests/fast/forms/slider-delete-while-dragging-thumb.html.
        * fast/forms/range/slider-hit-testing-expected.txt: Copied from LayoutTests/fast/forms/slider-hit-testing-expected.txt.
        * fast/forms/range/slider-hit-testing.html: Copied from LayoutTests/fast/forms/slider-hit-testing.html.
        * fast/forms/range/slider-mouse-events-expected.txt: Copied from LayoutTests/fast/forms/slider-mouse-events-expected.txt.
        * fast/forms/range/slider-mouse-events.html: Copied from LayoutTests/fast/forms/slider-mouse-events.html.
        * fast/forms/range/slider-onchange-event-expected.txt: Copied from LayoutTests/fast/forms/slider-onchange-event-expected.txt.
        * fast/forms/range/slider-onchange-event.html: Copied from LayoutTests/fast/forms/slider-onchange-event.html.
        * fast/forms/range/slider-padding.html: Copied from LayoutTests/fast/forms/slider-padding.html.
        * fast/forms/range/slider-thumb-shared-style.html: Copied from LayoutTests/fast/forms/slider-thumb-shared-style.html.
        * fast/forms/range/slider-thumb-stylability.html: Copied from LayoutTests/fast/forms/slider-thumb-stylability.html.
        * fast/forms/range/slider-transformed-expected.txt: Copied from LayoutTests/fast/forms/slider-transformed-expected.txt.
        * fast/forms/range/slider-transformed.html: Copied from LayoutTests/fast/forms/slider-transformed.html.
        * fast/forms/range/slider-zoomed-expected.txt: Copied from LayoutTests/fast/forms/slider-zoomed-expected.txt.
        * fast/forms/range/slider-zoomed.html: Copied from LayoutTests/fast/forms/slider-zoomed.html.
        * fast/forms/range/thumbslider-crash-expected.txt: Copied from LayoutTests/fast/forms/thumbslider-crash-expected.txt.
        * fast/forms/range/thumbslider-crash.html: Copied from LayoutTests/fast/forms/thumbslider-crash.html.
        * fast/forms/range/thumbslider-no-parent-slider.html: Copied from LayoutTests/fast/forms/thumbslider-no-parent-slider.html.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: Removed 'range' part.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Removed 'range' part.
        * fast/forms/script-tests/input-stepup-stepdown.js: Removed 'range' part.
        * fast/forms/script-tests/input-valueasnumber-range.js: Removed.
        * fast/forms/slider-delete-while-dragging-thumb-expected.txt: Removed.
        * fast/forms/slider-delete-while-dragging-thumb.html: Removed.
        * fast/forms/slider-hit-testing-expected.txt: Removed.
        * fast/forms/slider-hit-testing.html: Removed.
        * fast/forms/slider-mouse-events-expected.txt: Removed.
        * fast/forms/slider-mouse-events.html: Removed.
        * fast/forms/slider-onchange-event-expected.txt: Removed.
        * fast/forms/slider-onchange-event.html: Removed.
        * fast/forms/slider-padding.html: Removed.
        * fast/forms/slider-thumb-shared-style.html: Removed.
        * fast/forms/slider-thumb-stylability.html: Removed.
        * fast/forms/slider-transformed-expected.txt: Removed.
        * fast/forms/slider-transformed.html: Removed.
        * fast/forms/slider-zoomed-expected.txt: Removed.
        * fast/forms/slider-zoomed.html: Removed.
        * fast/forms/thumbslider-crash-expected.txt: Removed.
        * fast/forms/thumbslider-crash.html: Removed.
        * fast/forms/thumbslider-no-parent-slider.html: Removed.
        * platform/chromium-cg-mac-leopard/fast/forms/input-appearance-range-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/fast/forms/range: Added.
        * platform/chromium-cg-mac-leopard/fast/forms/range/input-appearance-range-expected.png: Copied from LayoutTests/platform/chromium-cg-mac-leopard/fast/forms/input-appearance-range-expected.png.
        * platform/chromium-cg-mac-leopard/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/chromium-cg-mac-leopard/fast/forms/slider-padding-expected.png.
        * platform/chromium-cg-mac-leopard/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/chromium-cg-mac-leopard/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/chromium-cg-mac-leopard/fast/forms/range/slider-thumb-stylability-expected.png: Copied from LayoutTests/platform/chromium-cg-mac-leopard/fast/forms/slider-thumb-stylability-expected.png.
        * platform/chromium-cg-mac-leopard/fast/forms/range/thumbslider-no-parent-slider-expected.png: Copied from LayoutTests/platform/chromium-cg-mac-leopard/fast/forms/thumbslider-no-parent-slider-expected.png.
        * platform/chromium-cg-mac-leopard/fast/forms/slider-padding-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/chromium-cg-mac-leopard/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/chromium-linux/fast/forms/input-appearance-range-expected.png: Removed.
        * platform/chromium-linux/fast/forms/input-appearance-range-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/range: Added.
        * platform/chromium-linux/fast/forms/range-thumb-height-percentage-expected.png: Removed.
        * platform/chromium-linux/fast/forms/range/input-appearance-range-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/forms/input-appearance-range-expected.png.
        * platform/chromium-linux/fast/forms/range/input-appearance-range-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/input-appearance-range-expected.txt.
        * platform/chromium-linux/fast/forms/range/range-thumb-height-percentage-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/forms/range-thumb-height-percentage-expected.png.
        * platform/chromium-linux/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/forms/slider-padding-expected.png.
        * platform/chromium-linux/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/chromium-linux/fast/forms/range/thumbslider-no-parent-slider-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/forms/thumbslider-no-parent-slider-expected.png.
        * platform/chromium-linux/fast/forms/slider-padding-expected.png: Removed.
        * platform/chromium-linux/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/chromium-linux/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-appearance-range-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-appearance-range-expected.txt: Removed.
        * platform/chromium-win/fast/forms/range: Added.
        * platform/chromium-win/fast/forms/range-thumb-height-percentage-expected.png: Removed.
        * platform/chromium-win/fast/forms/range-thumb-height-percentage-expected.txt: Removed.
        * platform/chromium-win/fast/forms/range/input-appearance-range-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/input-appearance-range-expected.png.
        * platform/chromium-win/fast/forms/range/input-appearance-range-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/input-appearance-range-expected.txt.
        * platform/chromium-win/fast/forms/range/range-thumb-height-percentage-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/range-thumb-height-percentage-expected.png.
        * platform/chromium-win/fast/forms/range/range-thumb-height-percentage-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/range-thumb-height-percentage-expected.txt.
        * platform/chromium-win/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/slider-padding-expected.png.
        * platform/chromium-win/fast/forms/range/slider-padding-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/slider-padding-expected.txt.
        * platform/chromium-win/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/chromium-win/fast/forms/range/slider-thumb-shared-style-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/slider-thumb-shared-style-expected.txt.
        * platform/chromium-win/fast/forms/range/slider-thumb-stylability-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/slider-thumb-stylability-expected.png.
        * platform/chromium-win/fast/forms/range/thumbslider-no-parent-slider-expected.png: Copied from LayoutTests/platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.png.
        * platform/chromium-win/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.txt.
        * platform/chromium-win/fast/forms/slider-padding-expected.png: Removed.
        * platform/chromium-win/fast/forms/slider-padding-expected.txt: Removed.
        * platform/chromium-win/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/chromium-win/fast/forms/slider-thumb-shared-style-expected.txt: Removed.
        * platform/chromium-win/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/gtk/fast/forms/input-appearance-range-expected.txt: Removed.
        * platform/gtk/fast/forms/range: Added.
        * platform/gtk/fast/forms/range-thumb-height-percentage-expected.png: Removed.
        * platform/gtk/fast/forms/range-thumb-height-percentage-expected.txt: Removed.
        * platform/gtk/fast/forms/range/input-appearance-range-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/input-appearance-range-expected.txt.
        * platform/gtk/fast/forms/range/range-thumb-height-percentage-expected.png: Copied from LayoutTests/platform/gtk/fast/forms/range-thumb-height-percentage-expected.png.
        * platform/gtk/fast/forms/range/range-thumb-height-percentage-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/range-thumb-height-percentage-expected.txt.
        * platform/gtk/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/gtk/fast/forms/slider-padding-expected.png.
        * platform/gtk/fast/forms/range/slider-padding-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/slider-padding-expected.txt.
        * platform/gtk/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/gtk/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/gtk/fast/forms/range/slider-thumb-shared-style-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/slider-thumb-shared-style-expected.txt.
        * platform/gtk/fast/forms/range/slider-thumb-stylability-expected.png: Copied from LayoutTests/platform/gtk/fast/forms/slider-thumb-stylability-expected.png.
        * platform/gtk/fast/forms/range/slider-thumb-stylability-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/slider-thumb-stylability-expected.txt.
        * platform/gtk/fast/forms/range/slider-transformed-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/slider-transformed-expected.txt.
        * platform/gtk/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Copied from LayoutTests/platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.txt.
        * platform/gtk/fast/forms/slider-padding-expected.png: Removed.
        * platform/gtk/fast/forms/slider-padding-expected.txt: Removed.
        * platform/gtk/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/gtk/fast/forms/slider-thumb-shared-style-expected.txt: Removed.
        * platform/gtk/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/gtk/fast/forms/slider-thumb-stylability-expected.txt: Removed.
        * platform/gtk/fast/forms/slider-transformed-expected.txt: Removed.
        * platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.txt: Removed.
        * platform/mac-leopard/fast/forms/range: Added.
        * platform/mac-leopard/fast/forms/range-thumb-height-percentage-expected.png: Removed.
        * platform/mac-leopard/fast/forms/range/range-thumb-height-percentage-expected.png: Copied from LayoutTests/platform/mac-leopard/fast/forms/range-thumb-height-percentage-expected.png.
        * platform/mac-leopard/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/mac-leopard/fast/forms/slider-padding-expected.png.
        * platform/mac-leopard/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/mac-leopard/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/mac-leopard/fast/forms/range/slider-thumb-stylability-expected.png: Copied from LayoutTests/platform/mac-leopard/fast/forms/slider-thumb-stylability-expected.png.
        * platform/mac-leopard/fast/forms/slider-padding-expected.png: Removed.
        * platform/mac-leopard/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/mac-leopard/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/mac/fast/forms/input-appearance-range-expected.png: Removed.
        * platform/mac/fast/forms/input-appearance-range-expected.txt: Removed.
        * platform/mac/fast/forms/range: Added.
        * platform/mac/fast/forms/range-thumb-height-percentage-expected.png: Removed.
        * platform/mac/fast/forms/range-thumb-height-percentage-expected.txt: Removed.
        * platform/mac/fast/forms/range/input-appearance-range-expected.png: Copied from LayoutTests/platform/mac/fast/forms/input-appearance-range-expected.png.
        * platform/mac/fast/forms/range/input-appearance-range-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/input-appearance-range-expected.txt.
        * platform/mac/fast/forms/range/range-thumb-height-percentage-expected.png: Copied from LayoutTests/platform/mac/fast/forms/range-thumb-height-percentage-expected.png.
        * platform/mac/fast/forms/range/range-thumb-height-percentage-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/range-thumb-height-percentage-expected.txt.
        * platform/mac/fast/forms/range/slider-padding-expected.png: Copied from LayoutTests/platform/mac/fast/forms/slider-padding-expected.png.
        * platform/mac/fast/forms/range/slider-padding-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/slider-padding-expected.txt.
        * platform/mac/fast/forms/range/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/mac/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/mac/fast/forms/range/slider-thumb-shared-style-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/slider-thumb-shared-style-expected.txt.
        * platform/mac/fast/forms/range/slider-thumb-stylability-expected.png: Copied from LayoutTests/platform/mac/fast/forms/slider-thumb-stylability-expected.png.
        * platform/mac/fast/forms/range/slider-thumb-stylability-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/slider-thumb-stylability-expected.txt.
        * platform/mac/fast/forms/range/thumbslider-no-parent-slider-expected.png: Copied from LayoutTests/platform/mac/fast/forms/thumbslider-no-parent-slider-expected.png.
        * platform/mac/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/thumbslider-no-parent-slider-expected.txt.
        * platform/mac/fast/forms/slider-padding-expected.png: Removed.
        * platform/mac/fast/forms/slider-padding-expected.txt: Removed.
        * platform/mac/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/mac/fast/forms/slider-thumb-shared-style-expected.txt: Removed.
        * platform/mac/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/mac/fast/forms/slider-thumb-stylability-expected.txt: Removed.
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.txt: Removed.
        * platform/qt-mac/Skipped:
        * platform/qt/Skipped:
        * platform/qt/fast/forms/range: Added.
        * platform/qt/fast/forms/range-thumb-height-percentage-expected.txt: Removed.
        * platform/qt/fast/forms/range/range-thumb-height-percentage-expected.txt: Copied from LayoutTests/platform/qt/fast/forms/range-thumb-height-percentage-expected.txt.
        * platform/qt/fast/forms/range/slider-thumb-shared-style-expected.txt: Copied from LayoutTests/platform/qt/fast/forms/slider-thumb-shared-style-expected.txt.
        * platform/qt/fast/forms/range/slider-thumb-stylability-expected.txt: Copied from LayoutTests/platform/qt/fast/forms/slider-thumb-stylability-expected.txt.
        * platform/qt/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Copied from LayoutTests/platform/qt/fast/forms/thumbslider-no-parent-slider-expected.txt.
        * platform/qt/fast/forms/slider-thumb-shared-style-expected.txt: Removed.
        * platform/qt/fast/forms/slider-thumb-stylability-expected.txt: Removed.
        * platform/qt/fast/forms/thumbslider-no-parent-slider-expected.txt: Removed.
        * platform/wk2/Skipped:

2011-08-22  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: generate protocol externs API for the front-end compilation.
        https://bugs.webkit.org/show_bug.cgi?id=66677

        Reviewed by Tony Gentilcore.

        * inspector/debugger/debugger-set-breakpoint-regex.html:

2011-08-23  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed gardening. Remove Windows style new lines from the test introduced in r93521.

        * fast/loader/document-destruction-within-unload-expected.txt:
        * fast/loader/document-destruction-within-unload.html:

2011-08-23  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Unreviewed gardening.

        * platform/wk2/Skipped: Skip fast/frames/focus-controller-crash-change-event.html, because eventSender.keyDown is unimplemented.

2011-08-23  Renata Hodovan  <reni@webkit.org>

        [Qt] REGRESSION after r93567.
        https://bugs.webkit.org/show_bug.cgi?id=66749

        Three tests have assertion failed error in debug mode on x86-32 Linux Qt. They are skipped.
        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93565.
        http://trac.webkit.org/changeset/93565
        https://bugs.webkit.org/show_bug.cgi?id=66745

        Breaks layout tests (Requested by koz2 on #webkit).

        * accessibility/aria-labelledby-overrides-aria-labeledby-expected.txt: Removed.
        * accessibility/aria-labelledby-overrides-aria-labeledby.html: Removed.

2011-08-22  Peter Kasting  <pkasting@google.com>

        [chromium] Mark some tests on Mac as flakily crashing.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-22  Peter Kasting  <pkasting@google.com>

        [chromium] Mark some tests on Windows as flaky.

        Unreviewed, test expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-22  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Chris Fleizach.

        aria-labelledby should be used in preference to aria-labeledby
        https://bugs.webkit.org/show_bug.cgi?id=62351

        * accessibility/aria-labelledby-overrides-aria-labeledby-expected.txt: Added.
        * accessibility/aria-labelledby-overrides-aria-labeledby.html: Added.

2011-08-22  Adam Barth  <abarth@webkit.org>

        HTMLSourceTracker crashes when network packets break poorly
        https://bugs.webkit.org/show_bug.cgi?id=66728

        Reviewed by Darin Adler.

        Test that we don't crash when we get a bad network packet boundary.

        * http/tests/security/xssAuditor/crash-while-loading-tag-with-pause-expected.txt: Added.
        * http/tests/security/xssAuditor/crash-while-loading-tag-with-pause.html: Added.
        * http/tests/security/xssAuditor/resources/tag-with-pause.php: Added.

2011-08-22  Peter Kasting  <pkasting@google.com>

        Unreviewed, rolling out r93538.
        http://trac.webkit.org/changeset/93538
        https://bugs.webkit.org/show_bug.cgi?id=66143

        Broke Leopard, SnowLeopard, and Chromium Mac bots

        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Removed.
        * fast/regions/webkit-flow-floats-inside-regions-bounds.html: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-lr-expected.txt: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-lr.html: Removed.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds.html: Removed.

2011-08-22  Tony Chang  <tony@chromium.org>

        Move chromium-mac/plugins/keyboard-events-expected.txt to
        chromium-cg-mac/plugins/keyboard-events-expected.txt since the results
        for chromium-mac are currently in chromium-cg-mac.  This result was
        added in r93519 and put in the wrong place.

        * platform/chromium-cg-mac/plugins/keyboard-events-expected.txt: Copied from LayoutTests/platform/chromium-mac/plugins/keyboard-events-expected.txt.
        * platform/chromium-mac/plugins: Removed.
        * platform/chromium-mac/plugins/keyboard-events-expected.txt: Removed.

2011-08-22  Tony Chang  <tony@chromium.org>

        Add CSS parsing of -webkit-flex-pack
        https://bugs.webkit.org/show_bug.cgi?id=66701

        Reviewed by Eric Seidel.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/script-tests/css-properties.js:

2011-08-22  Ryosuke Niwa  <rniwa@webkit.org>

        Add editing/selection/caret-at-bidi-boundary.html back to the Qt's skipped list
        because r93529 didn't fix it. The failure is still tracked by the bug 66514.

        * platform/qt/Skipped:

2011-08-22  Tony Chang  <tony@chromium.org>

        handle child margin values when flexing
        https://bugs.webkit.org/show_bug.cgi?id=65887

        Reviewed by David Hyatt.

        * css3/flexbox/002-expected.txt: Added.
        * css3/flexbox/002.html: Added.
        * css3/flexbox/resources/flexbox.js:
        (checkHorizontalBoxen):

2011-08-22  Peter Kasting  <pkasting@google.com>

        [chromium] Disable compositing tests for Leopard.

        Reviewed by James Robinson.

        * platform/chromium/test_expectations.txt:

2011-08-22  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] RenderFlowThread layout should use the attached region sizes
        https://bugs.webkit.org/show_bug.cgi?id=66143

        Reviewed by David Hyatt.

        * fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Added.
        * fast/regions/webkit-flow-floats-inside-regions-bounds.html: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-lr-expected.txt: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-lr.html: Added.
        * fast/regions/webkit-flow-inlines-inside-regions-bounds.html: Added.

2011-08-22  David Levin  <levin@chromium.org>

        REGRESSION (r89086): All worker xhr requests trigger preflight requests.
        https://bugs.webkit.org/show_bug.cgi?id=66340

        Reviewed by Darin Adler.

        Added tests which are similar to the non worker test with the same name.

        * http/tests/xmlhttprequest/workers/access-control-basic-get-fail-non-simple-expected.txt: Added.
        * http/tests/xmlhttprequest/workers/access-control-basic-get-fail-non-simple.html: Added.
        * http/tests/xmlhttprequest/workers/resources/access-control-basic-get-fail-non-simple-test.js: Added.
        * http/tests/xmlhttprequest/workers/resources/access-control-basic-get-fail-non-simple.js: Added.
        * http/tests/xmlhttprequest/workers/shared-worker-access-control-basic-get-fail-non-simple-expected.txt: Added.
        * http/tests/xmlhttprequest/workers/shared-worker-access-control-basic-get-fail-non-simple.html: Added.

2011-08-22  James Robinson  <jamesr@chromium.org>

        [chromium] Rename chromium-gpu-mac to chromium-gpu-cg-mac

        * platform/chromium-gpu-cg-mac: Copied from LayoutTests/platform/chromium-gpu-mac.
        * platform/chromium-gpu-mac: Removed.

2011-08-22  Peter Kasting  <pkasting@google.com>

        Unreviewed, rolling out r93517.
        http://trac.webkit.org/changeset/93517
        https://bugs.webkit.org/show_bug.cgi?id=63553

        Breaks GTK Linux and Chromium Win

        * svg/animations/animate-end-attribute-expected.txt: Removed.
        * svg/animations/animate-end-attribute.html: Removed.
        * svg/animations/script-tests/animate-end-attribute.js: Removed.

2011-08-22  Ryosuke Niwa  <rniwa@webkit.org>

        editing/selection/caret-at-bidi-boundary.html timing out on Windows since it was added
        https://bugs.webkit.org/show_bug.cgi?id=66551

        Reviewed by Adam Roben.

        Replaced leapForward by dummy clicks to make it work on Windows and other ports.

        * editing/selection/caret-at-bidi-boundary.html:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-08-22  Tony Chang  <tony@chromium.org>

        Add CSS parsing of -webkit-flex-order
        https://bugs.webkit.org/show_bug.cgi?id=65384

        Reviewed by Ojan Vafai.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/css-properties.html:
        * css3/flexbox/script-tests/css-properties.js:

2011-08-22  Nate Chapin  <japhet@chromium.org>

        Test for https://bugs.webkit.org/show_bug.cgi?id=64741.

        Reviewed by Adam Barth.

        * fast/loader/document-destruction-within-unload-expected.txt: Added.
        * fast/loader/document-destruction-within-unload.html: Added.
        * fast/loader/resources/document-destruction-within-unload-iframe.html: Added.
        * fast/loader/resources/document-destruction-within-unload.svg: Added.

2011-08-22  Adrienne Walker  <enne@google.com>

        [chromium] Skip rtl-composited, as it causes other tests to crash.

        Unreviewed expectation change.

        * platform/chromium/test_expectations.txt:

2011-08-22  Noel Gordon  <noel.gordon@gmail.com>

        [Chromium] plugins/keyboard-events.html should pass on linux/mac
        https://bugs.webkit.org/show_bug.cgi?id=65964

        Reviewed by Tony Chang.

        Update the Chromium Linux test results following r88712.  Also rebaseline test results
        for Chromium Mac.  Note the WebKit Mac and Win ports both report 0 for the line number
        for all console.log() events.  The Chromium port reports the actual line number, hence
        the need for separate test results for Chromium.  The test now runs, and passes on all
        the Chromium ports, following r87855.  The test confirms user-plugin interactivity, so
        we don't regress sites like youtube.com.  Refer to bug 34936.

        * platform/chromium-linux/plugins/keyboard-events-expected.txt: Added.
        * platform/chromium-mac/plugins/keyboard-events-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-08-22  Ben Wells  <benwells@chromium.org>

        Rebaseline for webkit bug 65295
        https://bugs.webkit.org/show_bug.cgi?id=66637

        Reviewed by Kenneth Russell.

        * fast/box-shadow/box-shadow-radius-expected.txt: Renamed from LayoutTests/platform/gtk/fast/box-shadow/box-shadow-radius-expected.txt.
        * fast/layers/self-painting-outline-expected.txt: Renamed from LayoutTests/platform/gtk/fast/layers/self-painting-outline-expected.txt.
        * platform/chromium-win/fast/box-shadow/box-shadow-radius-expected.png:
        * platform/chromium-win/fast/layers/self-painting-outline-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/box-shadow/box-shadow-radius-expected.png: Renamed from LayoutTests/fast/box-shadow/box-shadow-radius-expected.png.
        * platform/mac/fast/layers/self-painting-outline-expected.txt: Removed.
        * platform/qt/fast/layers/self-painting-outline-expected.txt: Removed.

2011-08-22  Young Han Lee  <joybro@company100.net>

        Reviewed by Dirk Schulze.

        SVG animation fill="freeze" doesn't set baseVal to current animVal if animation stops before reaching the end
        https://bugs.webkit.org/show_bug.cgi?id=63553

        calculateAnimationPercentAndRepeat() is returning 1, which means 100%, whenever
        elapsed >= m_intervalEnd, but this is wrong because m_intervalEnd can be in the middle
        of the animation duration. (e.g. begin="0s" end="2s" dur="3s")

        This change makes the function return the animations's true progress instead of 100%
        when the animation ends.

        * svg/animations/animate-end-attribute-expected.txt: Added.
        * svg/animations/animate-end-attribute.html: Added.
        * svg/animations/script-tests/animate-end-attribute.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):

2011-08-22  Abhishek Arya  <inferno@chromium.org>

        Crash in FocusController::advanceFocusInDocumentOrder
        https://bugs.webkit.org/show_bug.cgi?id=66678

        Reviewed by Dave Hyatt.

        * fast/frames/focus-controller-crash-change-event-expected.txt: Added.
        * fast/frames/focus-controller-crash-change-event.html: Added.

2011-08-22  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Some GTK+-specific font-face tests fail on the bots
        https://bugs.webkit.org/show_bug.cgi?id=65820

        Fix the timing issues in this test.

        Reviewed by Philippe Normand.

        * platform/gtk/fonts/custom-font-missing-glyphs.html: Delay the test completion until
        after document.readyState moves to "complete" and a short timeout.
        * platform/gtk/fonts/font-face-with-complex-text.html: Ditto.

2011-08-22  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>

        [NRWT] Fix "Only unexpected results" option of results.html
        https://bugs.webkit.org/show_bug.cgi?id=66657

        Reviewed by Csaba Osztrogonác.

        * fast/harness/results.html:

2011-08-22  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Updating test expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-22  Takashi Toyoshima  <toyoshim@chromium.org>

        [Chromium] [WebSocket] Add a test to reproduce chromium bug on close before open.
        https://bugs.webkit.org/show_bug.cgi?id=66649

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/close-before-open-expected.txt:
        * http/tests/websocket/tests/hybi/close-before-open.html:
        Add new URL to reproduce the problem.

2011-08-18  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: extract breakpoint management code to a separate class and add tests.
        https://bugs.webkit.org/show_bug.cgi?id=66224

        Reviewed by Pavel Feldman.

        * inspector/debugger/breakpoint-manager-expected.txt: Added.
        * inspector/debugger/breakpoint-manager.html: Added.

2011-08-22  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][ARM] Add bug report to flaky tests

        http/tests/cache/subresource-multiple-instances.html
        https://bugs.webkit.org/show_bug.cgi?id=66652

        http/tests/inspector/resource-tree/resource-tree-errors-reload.html 
        https://bugs.webkit.org/show_bug.cgi?id=66653

        * platform/qt-arm/Skipped:

2011-08-22  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][ARM] Skip flaky tests.

        * platform/qt-arm/Skipped:

2011-08-21  Darin Adler  <darin@apple.com>

        Update results for more tests affected by the addition of the
        HTMLSourceElement class.

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/js/global-constructors-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:
        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-08-20  Filip Pizlo  <fpizlo@apple.com>

        JavaScriptCore bytecompiler does not compute scope depth correctly
        in the case of constant declarations
        https://bugs.webkit.org/show_bug.cgi?id=66572

        Reviewed by Oliver Hunt.
        
        Added tests that reproduce the failure.

        * fast/js/const-expected.txt:
        * fast/js/resources/const.js:
        (tryCatch1):
        (tryCatch2):
        (with1):
        (with2):

2011-08-20  Tom Zakrajsek  <tomz@codeaurora.org>

        instanceof HTMLSourceElement Fails
        https://bugs.webkit.org/show_bug.cgi?id=65013

        Reviewed by Eric Carlson.

        Updated test results after adding HTMLSourceElement to the DOMWindow

        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:

2011-08-20  Darin Adler  <darin@apple.com>

        If Range::insertNode is passed an empty document fragment, it creates a broken DOM tree
        https://bugs.webkit.org/show_bug.cgi?id=65015

        Reviewed by Alexey Proskuryakov.

        * fast/dom/Range/insertNode-empty-fragment-crash-expected.txt: Added.
        * fast/dom/Range/insertNode-empty-fragment-crash.html: Added.

2011-08-20  Balazs Kelemen  <kbalazs@webkit.org>

        eventSender.keyDown is unimplemented (WKTR)
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Unreviewed gardening.

        * platform/wk2/Skipped: Skip dependent test.

2011-08-20  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] fast/parser/innerhtml-with-prefixed-elements.xhtml has incorrect result
        https://bugs.webkit.org/show_bug.cgi?id=66626

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-20  Ken Buchanan  <kenrb@chromium.org>

        OOB Read in WebCore::SVGAnimationElement
        https://bugs.webkit.org/show_bug.cgi?id=65858

        Reviewed by Nikolas Zimmermann.

        Added test case covering keySpline array length problem.

        * svg/animations/animate-calcMode-spline-crash-bad-array-length-expected.txt: Added.
        * svg/animations/animate-calcMode-spline-crash-bad-array-length.xhtml: Added.

2011-08-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93415.
        http://trac.webkit.org/changeset/93415
        https://bugs.webkit.org/show_bug.cgi?id=66623

        Introduces failing test (Requested by pfeldman on #webkit).

        * inspector/debugger/breakpoint-manager-expected.txt: Removed.
        * inspector/debugger/breakpoint-manager.html: Removed.

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Windows and Linux rebaselines. These baselines were so wrong.

        * platform/chromium-cg-mac/fast/css/computed-style-expected.txt: Removed.
        * platform/chromium-win/fast/css/computed-style-expected.txt: Removed.
        * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
        Replaced with LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt.
        * platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
        Replaced with LayoutTests/svg/css/getComputedStyle-basic-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r93369 on GTK; the failure is tracked by the bug 66621.

        * platform/gtk/Skipped:

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Remove the left over from r93468; also fix Chromium Windows expectation
        (Copied it over from fast/css/getComputedStyle/ and replaced Times with 'times new roman')

        * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        Replaced with LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r93392 on Windows; the failure is tracked by the bug 66620.

        * platform/win/Skipped:

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        More rebaseline after r93068. Apparently Windows XP needs a separate baseline.

        * platform/win-xp/editing: Added.
        * platform/win-xp/editing/deleting: Added.
        * platform/win-xp/editing/deleting/regional-indicators-expected.txt: Added.

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Redo the rebaseline done by r93353. The test that has been failing on GTK is
        editing/deleting/regional-indicators.html, not editing/selection/regional-indicators.

        The failure is still tracked by the bug 66501.

        * platform/gtk/editing/deleting/regional-indicators-expected.txt: Copied from
        LayoutTests/platform/gtk/editing/selection/regional-indicators-expected.txt.
        * platform/gtk/editing/selection/regional-indicators-expected.txt: Removed.

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r93392 on Qt. The failure is tracked by the bug 66619.

        * platform/qt/Skipped:

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaseline after r93430. Also removed superfluous expected result from Chromium directories.

        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Replaced with
        LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
        * platform/chromium-cg-mac/fast/css/computed-style-without-renderer-expected.txt: Removed.
        * platform/chromium-win/fast/css/computed-style-without-renderer-expected.txt: Removed.
        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
        * platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.

2011-08-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r93369 because Window's DRT actually sleeps for
        the amount of time leapForward is called upon. The failure is tracked by the bug 66551.

        * platform/win/Skipped:

2011-08-19  James Robinson  <jamesr@chromium.org>

        [chromium] GPU test expectation baseline update

        Update pixel baselines for this test on mac and linux.

        * platform/chromium-gpu-linux/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-19  Jeffrey Pfau  <jpfau@apple.com>

        libxml2 fragment parser loses prefix namespaces
        https://bugs.webkit.org/show_bug.cgi?id=66423

        Added a test to ensure that elements inserted when the prefix is already declared are inserted properly.

        Reviewed by Darin Adler.

        * fast/parser/innerhtml-with-prefixed-elements.xhtml: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.png: Added.
        * platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.

2011-08-19  Tony Chang  <tony@chromium.org>

        [chromium] Cleanup some old plugin tests.  Rebase plugin-javascript-access.html
        on win and run plugin-initiate-popup-window on mac/linux to get results.

        * platform/chromium-win/plugins/plugin-initiate-popup-window-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/win/plugins/plugin-javascript-access-expected.txt: Renamed from LayoutTests/platform/chromium-win/plugins/plugin-javascript-access-expected.txt.

2011-08-19  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium test expectations

        Remove = CRASH expectations for tests fixed by r93441.

        * platform/chromium/test_expectations.txt:

2011-08-19  Tony Chang  <tony@chromium.org>

        [chromium] Update results for japanese-rl-selection-repaint-in-regions.html that
        changed after r93428.

        * platform/chromium-cg-mac-leopard/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:

2011-08-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93425.
        http://trac.webkit.org/changeset/93425
        https://bugs.webkit.org/show_bug.cgi?id=66591

        "The newly-added ASSERT is being triggered on several bots"
        (Requested by jchaffraix on #webkit).

        * fast/css/link-disabled-attr-expected.txt:
        * fast/css/stylesheet-enable-first-alternate-expected.txt: Removed.
        * fast/css/stylesheet-enable-first-alternate-on-load-expected.txt: Removed.
        * fast/css/stylesheet-enable-first-alternate-on-load.html: Removed.
        * fast/css/stylesheet-enable-first-alternate.html: Removed.
        * fast/css/stylesheet-enable-second-alternate-expected.txt: Removed.
        * fast/css/stylesheet-enable-second-alternate-on-load-expected.txt: Removed.
        * fast/css/stylesheet-enable-second-alternate-on-load.html: Removed.
        * fast/css/stylesheet-enable-second-alternate.html: Removed.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-expected.txt: Removed.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error-expected.txt: Removed.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html: Removed.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html: Removed.
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet-in-error.js: Removed.
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet.js: Removed.
        * http/tests/css/resources/slow-loading-sheet-in-error.php: Removed.
        * http/tests/css/resources/slow-loading-sheet.php: Removed.

2011-08-19  Victoria Kirst  <vrk@chromium.org>

        Tell media player to prepareToPlay() at end of HTMLMediaElement::load()
        https://bugs.webkit.org/show_bug.cgi?id=66414

        Reviewed by Eric Carlson.

        * media/video-load-preload-none-expected.txt: Added.
        * media/video-load-preload-none.html: Added.

2011-08-19  Tony Chang  <tony@chromium.org>

        [chromium] Mark touch tests as failing on OSX 10.5.

        * platform/chromium/test_expectations.txt:

2011-08-19  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]Parse -webkit-region-break(after, before, inside)
        https://bugs.webkit.org/show_bug.cgi?id=66559

        Reviewed by David Hyatt.

        * fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-08-19  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]Content displayed in regions should not be scrollable
        https://bugs.webkit.org/show_bug.cgi?id=66459

        Reviewed by Darin Adler.

        * fast/regions/content-flowed-into-regions-no-scroll-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-no-scroll.html: Added.

2011-08-19  Julien Chaffraix  <jchaffraix@webkit.org>

        REGRESSION (r84327-r84329): CSS stylesheets fail to load on www.flagstar.com login page
        https://bugs.webkit.org/show_bug.cgi?id=65140
        <rdar://problem/9835905>

        Reviewed by Antti Koivisto.

        * fast/css/link-disabled-attr-expected.txt: This change is a progression, but we are still
        not handling updates to the selected style set properly (already covered by bug 62407).

        * fast/css/stylesheet-enable-first-alternate-expected.txt: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load-expected.txt: Added.
        * fast/css/stylesheet-enable-first-alternate-on-load.html: Added.
        * fast/css/stylesheet-enable-first-alternate.html: Added.
        * fast/css/stylesheet-enable-second-alternate-expected.txt: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load-expected.txt: Added.
        * fast/css/stylesheet-enable-second-alternate-on-load.html: Added.
        * fast/css/stylesheet-enable-second-alternate.html: Added.
        Those are a variation on the same theme: we disable some stylesheet and enable others,
        either directly or later.

        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-expected.txt: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error-expected.txt: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html: Added.
        * http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html: Added.
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet-in-error.js: Added.
        (onSheetLoaded):
        (testWhenLoaded):
        * http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet.js: Added.
        (onSheetLoaded):
        (testWhenLoaded):
        * http/tests/css/resources/slow-loading-sheet-in-error.php: Added.
        * http/tests/css/resources/slow-loading-sheet.php: Added.
        Those 2 test cases relies on a slow loading stylesheet so that we can test the disabled() value while the alternate
        sheet is asynchronously loading and then check them again once the sheet is loaded.

2011-08-19  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Cleaning up test expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-19  Tony Chang  <tony@chromium.org>

        [chromium] Add correct baseline for merge-end-list.html on OSX 10.5.

        * platform/chromium-cg-mac-leopard/editing/pasteboard/merge-end-list-expected.png: Added.

2011-08-18  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: extract breakpoint management code to a separate class and add tests.
        https://bugs.webkit.org/show_bug.cgi?id=66224

        Reviewed by Pavel Feldman.

        * inspector/debugger/breakpoint-manager-expected.txt: Added.
        * inspector/debugger/breakpoint-manager.html: Added.

2011-08-19  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Updating test expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-19  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Updating baselines.

        Unreviewed.

        * platform/chromium-cg-mac-leopard/editing/pasteboard/paste-text-008-expected.png: Added.
        * platform/chromium-cg-mac/editing/pasteboard/merge-end-list-expected.png: Added.
        * platform/chromium-cg-mac/editing/pasteboard/paste-text-008-expected.png: Added.

2011-08-19  Anton Muhin  <antonm@chromium.org>

        [v8] CSS wrapper objects retention
        https://bugs.webkit.org/show_bug.cgi?id=66377

        Reviewed by Pavel Feldman.

        Disable object grouping for CSS object wrappers.
        This logic leads to hard to debug use-after-free problems.

        * platform/chromium/test_expectations.txt:

2011-08-19  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] editing/selection/caret-at-bidi-boundary.html times out after r93369
        https://bugs.webkit.org/show_bug.cgi?id=66514

        Skip it.

        * platform/qt/Skipped:

2011-08-19  Takashi Toyoshima  <toyoshim@chromium.org>

        [WebSocket] CloseEvent's code and reason properties support.
        https://bugs.webkit.org/show_bug.cgi?id=66362

        Reviewed by Kent Tamura.

        Current WebSocket implementation miss code and reason properties
        in CloseEvent. This change expose incoming closing frame's code
        and reason to JavaScript API.

        * http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-code-and-reason.html: Added.
        * http/tests/websocket/tests/hybi/close-code-and-reason_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/close-code-and-reason.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/close-code-and-reason.js: Added.
        (postResult):
        (ws.onopen):
        (ws.onmessage):
        (ws.onclose):

2011-08-19  MORITA Hajime <morrita@google.com>

        Spell-checking doesn't recognize word boundaries on contests inserted by execCommand('insertHTML')
        https://bugs.webkit.org/show_bug.cgi?id=65902

        Reviewed by Ryosuke Niwa.
        
        Existing expectation was wrong because of some markers on substrings of words.
        With this fix, Editor now rejects such markers.

        * editing/spelling/spelling-insert-html-expected.txt: Added.
        * editing/spelling/spelling-insert-html.html: Added.
        * platform/mac/editing/pasteboard/merge-after-delete-1-expected.png:
        * platform/mac/editing/pasteboard/merge-after-delete-2-expected.png:
        * platform/mac/editing/pasteboard/merge-after-delete-expected.png:
        * platform/mac/editing/pasteboard/merge-end-blockquote-expected.png:
        * platform/mac/editing/pasteboard/merge-end-list-expected.png:
        * platform/mac/editing/pasteboard/merge-end-table-expected.png:
        * platform/mac/editing/pasteboard/paste-text-008-expected.png:

2011-08-19  Shinya Kawanaka  <shinyak@google.com>

        input[maxlength=0] should ignore text input.
        https://bugs.webkit.org/show_bug.cgi?id=65497

        Reviewed by Kent Tamura.

        * fast/forms/input-text-paste-maxlength-expected.txt:
          Added a case that maxlength=0
        * fast/forms/input-text-paste-maxlength.html: ditto.
        * fast/forms/script-tests/textarea-maxlength.js: ditto.
        (createFocusedTextAreaWithMaxLength):
        * fast/forms/textarea-maxlength-expected.txt: ditto.

2011-08-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: backend js api: an ability to skip optional arguments in the middle of the argument list is required.
        https://bugs.webkit.org/show_bug.cgi?id=66482

        There are functions in the API with multiple optional arguments.
        When we call it we have to specify an optional argument as 'undefined' if we want to pass non default value for the next one.
        This can be solved with passing the arguments as an object.

        Reviewed by Pavel Feldman.

        * inspector/debugger/debugger-set-breakpoint-regex.html:

2011-08-18  Shawn Singh  <shawnsingh@chromium.org>

        Computing screen-space transform for LayerChromium and CCLayerImpl
        https://bugs.webkit.org/show_bug.cgi?id=66114

        This case tests if backface visibility properly accounts for a hierarchy
        of transforms.  In particular, this test forces Chromium to create a
        hierarchy of RenderSurfaces.

        Reviewed by James Robinson.

        * compositing/backface-visibility-hierarchical-transform-expected.png: Added.
        * compositing/backface-visibility-hierarchical-transform-expected.txt: Added.
        * compositing/backface-visibility-hierarchical-transform.html: Added.

2011-08-18  Ben Wells  <benwells@chromium.org>

        [skia] -webkit-transform breaks -webkit-mask
        https://bugs.webkit.org/show_bug.cgi?id=66442

        Reviewed by Stephen White.

        * platform/chromium-linux/fast/css/transformed-mask-expected.png: Added.
        * platform/chromium-linux/fast/css/transformed-mask-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-08-18  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r90971): Null pointer dereference with placeholder and webkit-scrollbar-corner
        https://bugs.webkit.org/show_bug.cgi?id=66453

        Reviewed by Simon Fraser.

        * fast/forms/placeholder-crash-with-scrollbar-corner-expected.txt: Added.
        * fast/forms/placeholder-crash-with-scrollbar-corner.html: Added.

2011-08-18  Tony Chang  <tony@chromium.org>

        [chromium] Fix results.  Just copy over the platform independent results.

        * platform/chromium/fast/frames/frame-set-scaling-rotate-expected.png:
        * platform/chromium/fast/frames/frame-set-scaling-skew-expected.png:

2011-08-18  Fady Samuel  <fsamuel@chromium.org>

        Added Frame Set Scaling Test Results for WebKit1 Mac and WebKit2 Mac
        https://bugs.webkit.org/show_bug.cgi?id=66493

        The expected results of the layout tests written for 
        https://bugs.webkit.org/show_bug.cgi?id=57785
        differ between WebKitt Mac and WebKit2 Mac.

        WebKit2 Mac matches the cross-platform results.
        WebKit1 Mac has a special set of test results.

        Reviewed by Tony Chang.

        * platform/chromium/fast/frames/frame-set-scaling-3d-expected.png: Added.
        * platform/chromium/fast/frames/frame-set-scaling-3d-expected.txt: Added.
        * platform/chromium/fast/frames/frame-set-scaling-centered-expected.png: Added.
        * platform/chromium/fast/frames/frame-set-scaling-centered-expected.txt: Added.
        * platform/chromium/fast/frames/frame-set-scaling-expected.png: Added.
        * platform/chromium/fast/frames/frame-set-scaling-expected.txt: Added.
        * platform/chromium/fast/frames/frame-set-scaling-rotate-expected.png: Added.
        * platform/chromium/fast/frames/frame-set-scaling-rotate-expected.txt: Added.
        * platform/chromium/fast/frames/frame-set-scaling-skew-expected.png: Added.
        * platform/chromium/fast/frames/frame-set-scaling-skew-expected.txt: Added.
        * platform/mac-wk2/fast/frames/frame-set-scaling-3d-expected.png: Added.
        * platform/mac-wk2/fast/frames/frame-set-scaling-centered-expected.png: Added.
        * platform/mac-wk2/fast/frames/frame-set-scaling-expected.png: Added.
        * platform/mac-wk2/fast/frames/frame-set-scaling-rotate-expected.png: Added.
        * platform/mac-wk2/fast/frames/frame-set-scaling-skew-expected.png: Added.
        * platform/mac/fast/frames/frame-set-scaling-3d-expected.png: Added.
        * platform/mac/fast/frames/frame-set-scaling-centered-expected.png: Added.
        * platform/mac/fast/frames/frame-set-scaling-expected.png: Added.
        * platform/mac/fast/frames/frame-set-scaling-rotate-expected.png: Added.
        * platform/mac/fast/frames/frame-set-scaling-skew-expected.png: Added.

2011-08-18  Tony Chang  <tony@chromium.org>

        [chromium] Mark editing/selection/regional-indicators.html as timing
        out on Linux debug and rebaseline 2 tests.

        * platform/chromium-win/fast/frames/frame-set-scaling-rotate-expected.png: Added.
        * platform/chromium-win/fast/frames/frame-set-scaling-skew-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        positionForPoint returns wrong VisiblePosition at bidi boundaries
        https://bugs.webkit.org/show_bug.cgi?id=65356

        Reviewed by David Hyatt.

        * editing/selection/caret-at-bidi-boundary-expected.txt: Added.
        * editing/selection/caret-at-bidi-boundary.html: Added.

2011-08-18  James Robinson  <jamesr@chromium.org>

        [chromium] Draw the root/"non-composited content" in compositor side
        https://bugs.webkit.org/show_bug.cgi?id=58834

        Reviewed by Kenneth Russell.

        Update pixel baselines that changes due to subtle blending
        differences, primarily on scrollbars. I don't know why these keep
        changing.

        * compositing/checkerboard-expected.png:
        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-linux/compositing/images/direct-image-background-color-expected.png:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-linux/compositing/webgl/webgl-background-color-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:

2011-08-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93354.
        http://trac.webkit.org/changeset/93354
        https://bugs.webkit.org/show_bug.cgi?id=66503

        "consensus was not reached" (Requested by senorblanco on
        #webkit).

        * fast/canvas/drawImage-clipped-source-expected.txt: Removed.
        * fast/canvas/drawImage-clipped-source.html: Removed.
        * fast/canvas/drawImage-clipped-source.js: Removed.
        * fast/canvas/drawImage-with-invalid-args-expected.txt:
        * fast/canvas/drawImage-with-invalid-args.html:
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Fix r93349.

        * platform/gtk/Skipped:

2011-08-18  Sailesh Agrawal  <sail@chromium.org>

        Chromium: Update forked ScrollbarThemeChromiumMac.mm
        https://bugs.webkit.org/show_bug.cgi?id=65555

        Reviewed by James Robinson.

        Removing the chromium-cg-mac version of the expectation file since it now matches the mac one.

        * platform/chromium-cg-mac/fast/events/scrollbar-double-click-expected.txt: Removed.

2011-08-18  Justin Novosad  <junov@chromium.org>

        Unwarranted DOM Exception when when canvas2D drawImage is called with src 
        rect out of bounds
        https://bugs.webkit.org/show_bug.cgi?id=65709

        Reviewed by Stephen White.

        * fast/canvas/drawImage-clipped-source-expected.txt: Added.
        * fast/canvas/drawImage-clipped-source.html: Added.
        New test that verifies the clipping behavior when source rectangles
        are partially out of the bounds of the source image
        * fast/canvas/drawImage-clipped-source.js: Added.
        (patternTest.this.testPixel):
        (patternTest.this.testRedSquare):
        (patternTest.this.testPattern):
        (patternTest.this.testAggregatePattern):
        (patternTest):
        (drawTestPattern):
        (executeTest):
        * fast/canvas/drawImage-with-invalid-args-expected.txt:
        * fast/canvas/drawImage-with-invalid-args.html:
        This test covers (among other things) cases where the source rectangle is
        _completely_ outside the bounds of the source image.  It was modified to no
        longer expect DOM exceptions
        * platform/chromium/test_expectations.txt:
        Out-dated test canvas/philip/tests/2d.drawImage.outsidesource.html
        is now expected to fail
        * platform/mac/Skipped:
        Skipping canvas/philip/tests/2d.drawImage.outsidesource.html

2011-08-18  Alexey Proskuryakov  <ap@apple.com>

        [Gtk] editing/selection/regional-indicators.html fails
        https://bugs.webkit.org/show_bug.cgi?id=66501

        * platform/gtk/editing/selection/regional-indicators-expected.txt: Land failing results.

2011-08-18  Alexey Proskuryakov  <ap@apple.com>

        Use a correct name for expected results.

        * platform/qt/editing/selection/regional-indicators-actual.txt: Removed.
        * platform/qt/editing/selection/regional-indicators-expected.txt: Copied from LayoutTests/platform/qt/editing/selection/regional-indicators-actual.txt.

2011-08-18  Alexey Proskuryakov  <ap@apple.com>

        [Qt] editing/selection/regional-indicators.html fails
        https://bugs.webkit.org/show_bug.cgi?id=66500

        * platform/qt/editing/selection/regional-indicators-actual.txt: Land failing results.

2011-08-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r93329.
        http://trac.webkit.org/changeset/93329
        https://bugs.webkit.org/show_bug.cgi?id=66497

        Turned text on chromium win blue (Requested by jamesr_ on
        #webkit).

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/ancestor-overflow-change-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-linux/compositing/images/direct-image-background-color-expected.png:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-linux/compositing/webgl/webgl-background-color-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Skip tests added by r93291 on GTK because GTK's DRT doesn't support textInputController.doCommand yet,
        which is tracked by the bug 66496.

        * platform/gtk/Skipped:

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaseline after r93221.

        * platform/gtk/editing/selection/collapse-selection-in-bidi-expected.txt:
        Copied from LayoutTests/platform/win/editing/selection/collapse-selection-in-bidi-expected.txt.

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        SimplifiedBackwardsTextIterator returns incorrect offset with first-letter rule
        https://bugs.webkit.org/show_bug.cgi?id=66086

        Reviewed by Darin Adler.

        Added a test to ensure WebKit does not hit assertions in SimplifiedBackwardsTextIterator.
        Also fixed a bug in first-letter-word-boundary.html and updated expected offsets for move backward by word
        from 0 to 1 because there is unrendered space before "hello".

        * editing/text-iterator/backward-textiterator-first-letter-crash-expected.txt: Added.
        * editing/text-iterator/backward-textiterator-first-letter-crash.html: Added.
        * editing/text-iterator/first-letter-word-boundary-expected.txt:
        * editing/text-iterator/first-letter-word-boundary.html:

2011-08-18  Alexey Proskuryakov  <ap@apple.com>

        Regional indicator symbols that are combined should behave as a single character when editing
        https://bugs.webkit.org/show_bug.cgi?id=65395

        Reviewed by Dan Bernstein.

        * editing/selection/regional-indicators-expected.txt: Added.
        * editing/selection/regional-indicators.html: Added.

2011-08-18  Kentaro Hara  <haraken@google.com>

        An EventSource constructor should throw TypeError, when the number of arguments is not enough.
        https://bugs.webkit.org/show_bug.cgi?id=66454

        Reviewed by Adam Barth.

        The spec is here: http://www.w3.org/TR/WebIDL/#es-operations.

        * fast/eventsource/eventsource-constructor-expected.txt: Changed SyntaxError to TypeError.

2011-08-18  Kentaro Hara  <haraken@google.com>

        A SharedWorker constructor should throw TypeError, when the number of arguments is not enough.
        https://bugs.webkit.org/show_bug.cgi?id=66455

        Reviewed by Adam Barth.

        The spec is here: http://www.w3.org/TR/WebIDL/#es-operations.

        * fast/workers/shared-worker-constructor-expected.txt: Changed SyntaxError to TypeError.

2011-08-18  Kentaro Hara  <haraken@google.com>

        A Worker constructor should throw TypeError, when the number of arguments is not enough
        https://bugs.webkit.org/show_bug.cgi?id=66456

        Reviewed by Adam Barth.

        Spec is here: http://www.w3.org/TR/WebIDL/#es-operations.

        * fast/workers/worker-constructor-expected.txt: Changed SyntaxError to TypeError.

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Add a test to ensure WebKit does not paste contents before
        https://bugs.webkit.org/show_bug.cgi?id=66481

        Reviewed by Alexey Proskuryakov.

        Add a regression test since this bug has been fixed by r92695.

        * editing/pasteboard/paste-delete-insertion-position-skip-paragraph-expected.txt: Added.
        * editing/pasteboard/paste-delete-insertion-position-skip-paragraph.html: Added.

2011-08-18  James Robinson  <jamesr@chromium.org>

        [chromium] Draw the root/"non-composited content" in compositor side
        https://bugs.webkit.org/show_bug.cgi?id=58834

        Reviewed by Darin Fisher.

        Update pixel baselines that changes due to subtle blending
        differences, primarily on scrollbars. I don't know why these keep
        changing.

        * compositing/checkerboard-expected.png:
        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-linux/compositing/images/direct-image-background-color-expected.png:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-linux/compositing/webgl/webgl-background-color-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:

2011-08-18  James Simonsen  <simonjam@chromium.org>

        Revalidate expired resources if they're requested after the initial document load
        https://bugs.webkit.org/show_bug.cgi?id=52153

        Reviewed by Antti Koivisto.

        * http/tests/cache/subresource-multiple-instances-expected.txt: Added.
        * http/tests/cache/subresource-multiple-instances.html: Added.

2011-08-18  Tony Chang  <tony@chromium.org>

        [chromium] Marking tests needing win/linux baselines as such in
        test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: editing/pasteboard/block-wrappers-necessary.html
        https://bugs.webkit.org/show_bug.cgi?id=66420

        Reviewed by Kent Tamura.

        Converted the test.

        * editing/pasteboard/block-wrappers-necessary-expected.txt: Added.
        * editing/pasteboard/block-wrappers-necessary.html:
        * platform/chromium-cg-mac-leopard/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/chromium-win-vista/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/block-wrappers-necessary-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/gtk/editing/pasteboard/block-wrappers-necessary-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/mac/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/mac/editing/pasteboard/block-wrappers-necessary-expected.txt: Removed.
        * platform/qt/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/qt/editing/pasteboard/block-wrappers-necessary-expected.txt: Removed.

2011-08-17  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: editing/pasteboard/5368833.html
        https://bugs.webkit.org/show_bug.cgi?id=66416

        Reviewed by Kent Tamura.

        Converted the test and also renamed the test to a more descriptive name.

        * editing/pasteboard/5368833.html: Removed.
        * editing/pasteboard/paste-blockquote-and-paragraph-break-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-and-paragraph-break.html: Copied from LayoutTests/editing/pasteboard/5368833.html.
        * platform/chromium-linux/editing/pasteboard/5368833-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5368833-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5368833-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5368833-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5368833-expected.png: Removed.
        * platform/mac/editing/pasteboard/5368833-expected.png: Removed.
        * platform/mac/editing/pasteboard/5368833-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5368833-expected.txt: Removed.

2011-08-18  Tony Chang  <tony@chromium.org>

        Update chromium gpu expected results after r93275.

        * platform/chromium-gpu-win/fast/canvas/canvas-composite-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-18  Tony Chang  <tony@chromium.org>

        Update baselines for mac and win after test changes/fixes in r93275.

        * platform/chromium-cg-mac/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-win/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-win/fast/canvas/canvas-composite-transformclip-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-18  Tony Chang  <tony@chromium.org>

        Add checksums to png results.  Still trying to find out why they
        went missing in the first place.

        * fast/frames/frame-set-scaling-3d-expected.png:
        * fast/frames/frame-set-scaling-centered-expected.png:
        * fast/frames/frame-set-scaling-expected.png:
        * fast/frames/frame-set-scaling-rotate-expected.png:
        * fast/frames/frame-set-scaling-skew-expected.png:

2011-08-17  Ryosuke Niwa  <rniwa@webkit.org>

        dump-as-markup conversion: editing/pasteboard/testcase-9507.html
        https://bugs.webkit.org/show_bug.cgi?id=66448

        Reviewed by Kent Tamura.

        Converted the test.

        * editing/pasteboard/testcase-9507-expected.txt: Added.
        * editing/pasteboard/testcase-9507.html:
        * platform/chromium-linux/editing/pasteboard/testcase-9507-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/testcase-9507-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/testcase-9507-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/testcase-9507-expected.png: Removed.
        * platform/gtk/editing/pasteboard/testcase-9507-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/testcase-9507-expected.png: Removed.
        * platform/mac/editing/pasteboard/testcase-9507-expected.png: Removed.
        * platform/mac/editing/pasteboard/testcase-9507-expected.txt: Removed.
        * platform/qt/editing/pasteboard/testcase-9507-expected.txt: Removed.

2011-08-18  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] rename webInspector.resources to webInspector.network
        https://bugs.webkit.org/show_bug.cgi?id=66460

        Reviewed by Pavel Feldman.

        * http/tests/inspector/extensions-network-redirect-expected.txt: Added.
        * http/tests/inspector/extensions-network-redirect.html: Renamed from LayoutTests/http/tests/inspector/extensions-resources-redirect.html.
        * http/tests/inspector/extensions-network-test.js: Renamed from LayoutTests/http/tests/inspector/extensions-resources-test.js.
        (extension_getRequestByUrl.onHAR):
        (extension_getRequestByUrl):
        * http/tests/inspector/extensions-resources-redirect-expected.txt: Removed.
        * http/tests/inspector/extensions-useragent-expected.txt:
        * http/tests/inspector/extensions-useragent.html:
        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-events-expected.txt:
        * inspector/extensions/extensions-events.html:
        * inspector/extensions/extensions-network-expected.txt: Renamed from LayoutTests/inspector/extensions/extensions-resources-expected.txt.
        * inspector/extensions/extensions-network.html: Renamed from LayoutTests/inspector/extensions/extensions-resources.html.

2011-08-18  Chang Shu  <cshu@webkit.org>

        [Windows] editing/input/password-echo-passnode2.html, editing/input/password-echo-passnode3.html,
        editing/input/password-echo-passnode.html, editing/input/password-echo-textnode.html
        failing on Windows since they were added
        https://bugs.webkit.org/show_bug.cgi?id=66461

        Reviewed by Adam Roben.

        Skip the above tests as window.textInputController is not supported on windows.

        * platform/win/Skipped:

2011-08-18  Andras Becsi  <abecsi@webkit.org>

        iframe and frameset scaling is broken
        https://bugs.webkit.org/show_bug.cgi?id=57785

        Add missing Qt results for tests added in r93287.

        Unreviewed gardening.

        * platform/qt/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.
        * platform/qt/fast/text/midword-break-before-surrogate-pair-2-expected.txt: Added.

2011-08-18  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: extract content loading functions from RawSourceCode to ContentProvider implementations.
        https://bugs.webkit.org/show_bug.cgi?id=66237

        Reviewed by Pavel Feldman.

        * inspector/debugger/content-providers-expected.txt: Added.
        * inspector/debugger/content-providers.html: Added.

2011-08-18  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] RenderRegion should not reference a parent RenderFlowThread
        https://bugs.webkit.org/show_bug.cgi?id=66142

        Reviewed by David Hyatt.

        * fast/regions/flows-dependency-dynamic-remove-expected.txt: Added.
        * fast/regions/flows-dependency-dynamic-remove.html: Added.
        * fast/regions/flows-dependency-same-flow-expected.txt: Added.
        * fast/regions/flows-dependency-same-flow.html: Added.

2011-08-18  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Updating test expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-18  Vitaly Repeshko  <vitalyr@chromium.org>

        [chromium] Updating test expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-18  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: add UISourceCode class.
        https://bugs.webkit.org/show_bug.cgi?id=66233

        Reviewed by Pavel Feldman.

        * inspector/debugger/ui-source-code-expected.txt: Added.
        * inspector/debugger/ui-source-code.html: Added.

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: editing/pasteboard/paste-text-010.html and editing/pasteboard/paste-text-015.html
        https://bugs.webkit.org/show_bug.cgi?id=66440

        Reviewed by Kent Tamura.

        Converted the tests.

        * editing/pasteboard/paste-text-010-expected.txt: Added.
        * editing/pasteboard/paste-text-010.html:
        * editing/pasteboard/paste-text-015-expected.txt: Added.
        * editing/pasteboard/paste-text-015.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-010-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-015-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-010-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-010-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-015-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-015-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-010-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-015-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-010-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-010-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-015-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-015-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-010-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-015-expected.txt: Removed.

2011-08-18  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: editing/pasteboard/paste-text-017.html and editing/pasteboard/paste-text-018.html
        https://bugs.webkit.org/show_bug.cgi?id=66443

        Reviewed by Kent Tamura.

        Converted the tests.

        * editing/pasteboard/paste-text-017-expected.txt: Added.
        * editing/pasteboard/paste-text-017.html:
        * editing/pasteboard/paste-text-018-expected.txt: Added.
        * editing/pasteboard/paste-text-018.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-017-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-018-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-017-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-017-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-018-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-018-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-017-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-017-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-018-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-018-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-017-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-017-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-018-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-018-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-017-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-018-expected.txt: Removed.

2011-08-18  Filip Pizlo  <fpizlo@apple.com>

        [jsfunfuzz] DFG speculative JIT does divide-by-zero checks incorrectly
        https://bugs.webkit.org/show_bug.cgi?id=66426

        Reviewed by Oliver Hunt.
        
        Added a trivial test of mod-by-zero, which fails with the previous version
        of the DFG speculative JIT.

        * fast/js/mod-by-zero-expected.txt: Added.
        * fast/js/mod-by-zero.html: Added.
        * fast/js/script-tests/mod-by-zero.js: Added.
        (mod):

2011-08-18  Steve Block  <steveblock@google.com>

        Remove TIMEOUT expectation for fast/canvas/webgl/uninitialized-test.html
        http://code.google.com/p/chromium/issues/detail?id=93044

        This test should now pass after Chromium rolled V8 to 3.5.6 in r97287.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-18  Adam Klein  <adamk@chromium.org>

        Handle "form" attribute updates in parseMappedAttribute() instead of attributeChanged() to better match HTMLElement practices
        https://bugs.webkit.org/show_bug.cgi?id=66321

        Reviewed by Darin Adler.

        Added new coverage to ensure that adding a radio button to a radio
        group in the document by removing a form attribute leaves the group in
        a valid state (no more than one button checked).

        Beefed up coverage of form associated elements to better cover
        HTMLObjectElement.

        * fast/forms/form-attribute-expected.txt:
        * fast/forms/radio-remove-form-attr-expected.txt: Added.
        * fast/forms/radio-remove-form-attr.html: Added.
        * fast/forms/script-tests/form-attribute.js:
        Added coverage of <object form=""> behavior.

2011-08-18  Chang Shu  <cshu@webkit.org>

        Add support of setPasswordEchoEnabled and setPasswordEchoDuration for password echo feature
        https://bugs.webkit.org/show_bug.cgi?id=66052

        Reviewed by Alexey Proskuryakov.

        Added tests.

        * editing/input/password-echo-passnode-expected.txt: Added.
        * editing/input/password-echo-passnode.html: Added.
        * editing/input/password-echo-passnode2-expected.txt: Added.
        * editing/input/password-echo-passnode2.html: Added.
        * editing/input/password-echo-passnode3-expected.txt: Added.
        * editing/input/password-echo-passnode3.html: Added.
        * editing/input/password-echo-textnode-expected.txt: Added.
        * editing/input/password-echo-textnode.html: Added.
        * editing/input/resources: Added.
        * editing/input/resources/password-echo.js: Added.
        (secureChar):
        (secureText):
        (log):
        (assert):
        (run.else):
        (run):
        (init):
        * platform/wk2/Skipped: No support yet.

2011-08-18  Wyatt Carss  <wcarss@chromium.org>

        Selecting all and inserting text into a page with a frameset leads to a NULL ptr
        https://bugs.webkit.org/show_bug.cgi?id=66288

        This test selects all and inserts text in a page which contains a frameset.
        It tests for a crash caused by a NULL ptr which can occur in InsertText::doApply.

        Reviewed by Tony Chang.

        * editing/inserting/insert-text-into-empty-frameset-crash-expected.txt: Added.
        * editing/inserting/insert-text-into-empty-frameset-crash.html: Added.

2011-08-18  Renata Hodovan  <reni@webkit.org>

        [Qt] Correct the path in the Skipped list after 93283.

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-18  Fady Samuel  <fsamuel@chromium.org>

        iframe and frameset scaling is broken
        https://bugs.webkit.org/show_bug.cgi?id=57785

        Added tests to verify that framesets and iframes are scaled and positioned correctly.

        Reviewed by Simon Fraser.

        * fast/frames/frame-set-scaling-3d-expected.png: Added.
        * fast/frames/frame-set-scaling-3d-expected.txt: Added.
        * fast/frames/frame-set-scaling-3d.html: Added.
        * fast/frames/frame-set-scaling-centered-expected.png: Added.
        * fast/frames/frame-set-scaling-centered-expected.txt: Added.
        * fast/frames/frame-set-scaling-centered.html: Added.
        * fast/frames/frame-set-scaling-expected.png: Added.
        * fast/frames/frame-set-scaling-expected.txt: Added.
        * fast/frames/frame-set-scaling-rotate-expected.png: Added.
        * fast/frames/frame-set-scaling-rotate-expected.txt: Added.
        * fast/frames/frame-set-scaling-rotate.html: Added.
        * fast/frames/frame-set-scaling-skew-expected.png: Added.
        * fast/frames/frame-set-scaling-skew-expected.txt: Added.
        * fast/frames/frame-set-scaling-skew.html: Added.
        * fast/frames/frame-set-scaling.html: Added.
        * fast/frames/iframe-scaling-with-scroll.html: Added.
        * platform/chromium-linux/fast/frames/iframe-scaling-with-scroll-expected.png: Added.
        * platform/chromium-linux/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/frames/iframe-scaling-with-scroll-expected.png: Added.
        * platform/mac/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.

2011-08-17  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Unreviewed gardening

        * platform/qt/Skipped: Skip new failures.

2011-08-17  Hayato Ito  <hayato@chromium.org>

        Implement proper handling of focus/blur events in regard to shadow DOM boundaries.
        https://bugs.webkit.org/show_bug.cgi?id=61421

        Reviewed by Dimitri Glazkov.

        Introduces FocusEventDispatchMediator/BlurEventDispatchMediator so
        that focus/blue events are stopped at the lowest common shadow boundary.

        * fast/dom/shadow/shadow-boundary-events.html:

2011-08-17  Ben Wells  <benwells@chromium.org>

        Canvas fill and fillRect with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
        https://bugs.webkit.org/show_bug.cgi?id=66036

        Reviewed by James Robinson.

        * fast/canvas/canvas-composite-alpha.html:
        * fast/canvas/canvas-composite-transformclip-expected.txt: Added.
        * fast/canvas/canvas-composite-transformclip.html: Added.
        * platform/chromium-linux/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-linux/fast/canvas/canvas-composite-transformclip-expected.png: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/canvas/canvas-composite-expected.png:
        * platform/mac/fast/canvas/canvas-composite-transformclip-expected.png: Added.

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] remove stale result and mark 3 new authentication tests as
        failing because chromium drt is missing a function.  Also mark
        midword-break-before-surrogate-pair-2.html as failing on mac.

        * platform/chromium-cg-mac/http/tests/misc/authentication-sent-to-redirect-expected.txt: Removed.
        * platform/chromium-win/http/tests/misc/authentication-sent-to-redirect-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] fast/text/midword-break-before-surrogate-pair-2.html is failing
        on win and linux due to missing glyph.

        * platform/chromium/test_expectations.txt:

2011-08-17  Brady Eidson  <beidson@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66354 and <rdar://problem/9965209>
        Regression:  On Lion, redirects lose HTTP authentication headers

        These have to be in different paths to prevent credentials from leaking over from test to test.
        Sad sad sad...
        
        Reviewed by Alexey Proskuryakov.

        * http/tests/misc/authentication-redirect-1: Added.
        * http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-sent-to-redirect-expected.txt.
        * http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin.html: Copied from LayoutTests/http/tests/misc/authentication-sent-to-redirect.html.
        * http/tests/misc/authentication-redirect-1/resources: Added.
        * http/tests/misc/authentication-redirect-1/resources/auth-echo.php: Copied from LayoutTests/http/tests/misc/resources/auth-echo.php.
        * http/tests/misc/authentication-redirect-1/resources/auth-then-redirect.php: Copied from LayoutTests/http/tests/misc/resources/auth-then-redirect.php.
        * http/tests/misc/authentication-redirect-2: Added.
        * http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Added.
        * http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin.html: Added.
        * http/tests/misc/authentication-redirect-2/resources: Added.
        * http/tests/misc/authentication-redirect-2/resources/auth-echo.php: Copied from LayoutTests/http/tests/misc/resources/auth-echo.php.
        * http/tests/misc/authentication-redirect-2/resources/auth-then-redirect.php: Copied from LayoutTests/http/tests/misc/resources/auth-then-redirect.php.
        * http/tests/misc/authentication-redirect-3: Added.
        * http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials-expected.txt: Added.
        * http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html: Added.
        * http/tests/misc/authentication-redirect-3/resources: Added.
        * http/tests/misc/authentication-redirect-3/resources/auth-echo.php: Copied from LayoutTests/http/tests/misc/resources/auth-echo.php.
        * http/tests/misc/authentication-redirect-3/resources/auth-then-redirect-with-url-credentials.php: Added.
        * http/tests/misc/authentication-redirect-3/resources/auth-then-redirect.php: Copied from LayoutTests/http/tests/misc/resources/auth-then-redirect.php.
        * http/tests/misc/authentication-sent-to-redirect-expected.txt: Removed.
        * http/tests/misc/authentication-sent-to-redirect.html: Removed.
        * http/tests/misc/resources/auth-echo.php: Removed.
        * http/tests/misc/resources/auth-then-redirect.php: Removed.

2011-08-17  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: editing/inserting/insert-3786362-fix.html
        https://bugs.webkit.org/show_bug.cgi?id=66396

        Reviewed by Chang Shu.

        Converted the test.

        * editing/inserting/insert-3786362-fix-expected.txt: Added.
        * editing/inserting/insert-3786362-fix.html:
        * platform/chromium-linux/editing/inserting/insert-3786362-fix-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-3786362-fix-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-3786362-fix-expected.txt: Removed.
        * platform/gtk/editing/inserting/insert-3786362-fix-expected.png: Removed.
        * platform/gtk/editing/inserting/insert-3786362-fix-expected.txt: Removed.
        * platform/mac-leopard/editing/inserting/insert-3786362-fix-expected.png: Removed.
        * platform/mac/editing/inserting/insert-3786362-fix-expected.png: Removed.
        * platform/mac/editing/inserting/insert-3786362-fix-expected.txt: Removed.
        * platform/qt/editing/inserting/insert-3786362-fix-expected.txt: Removed.

2011-08-17  Chris Fleizach  <cfleizach@apple.com>

        Accessibility stack exhaustion using role attribute
        https://bugs.webkit.org/show_bug.cgi?id=65174

        Reviewed by Darin Adler.

        * accessibility/crash-determining-aria-role-when-label-present-expected.txt: Added.
        * accessibility/crash-determining-aria-role-when-label-present.html: Added.

2011-08-17  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9971293> Mid-word breaks can occur in the middle of a surrogate pair
        https://bugs.webkit.org/show_bug.cgi?id=66402

        Reviewed by Dave Hyatt.

        * fast/text/midword-break-before-surrogate-pair-2.html: Added.

2011-08-17  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaseline for Windows, Chromium Windows, and Chromium Linux after r93221.

        * platform/win/editing/selection/collapse-selection-in-bidi-expected.txt: Added.

2011-08-17  Adam Roben  <aroben@apple.com>

        Update Windows results after r91493

        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:

2011-08-17  Adam Roben  <aroben@apple.com>

        Update Windows Results for svg/W3C-SVG-1.1-SE/text-intro-05-t.svg

        * platform/win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Copied from LayoutTests/platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png.
        * platform/win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Copied from LayoutTests/platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt.

        These results were checked in to platform/win but were really XP-specific.

        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        Updated these results for Windows 7.

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] Mark fast/canvas/webgl/data-view-crash.html as flaky
        on linux debug.

        * platform/chromium/test_expectations.txt:

2011-08-17  Abhishek Arya  <inferno@chromium.org>

        Tests that we do not crash when iterating through stylesheet
        candidate list hashset.
        https://bugs.webkit.org/show_bug.cgi?id=66335

        Reviewed by Simon Fraser.

        * svg/dom/resources/stylesheet-candidate-node-crash.svg: Added.
        * svg/dom/stylesheet-candidate-node-crash-main-expected.txt: Added.
        * svg/dom/stylesheet-candidate-node-crash-main.html: Added.

2011-08-17  Sam White  <samuel.white@rochester.edu>

        AccessibilityObject levels are inconsistent
        https://bugs.webkit.org/show_bug.cgi?id=66180
        
        This test ensures that all AccessibilityObjects that return a level value return consistent results.
        For example, a level of 0 should only be returned by a level function when it is called on an
        AccessibilityObject of the wrong type. It's especially important that we enforce this consistency
        using layout tests because these level values are not defined by the W3C but are still used by
        popular screen readers such as VoiceOver.

        Reviewed by Chris Fleizach.

        * platform/mac/accessibility/element-level-expected.txt: Added.
        * platform/mac/accessibility/element-level.html: Added.

2011-08-17  Ryosuke Niwa  <rniwa@webkit.org>

        An arrow key collapses directionless selection range in the wrong direction in BiDi
        https://bugs.webkit.org/show_bug.cgi?id=64626

        Reviewed by Darin Adler.

        Added a test to ensure collapsing directionless selection respects the direction of text around
        the selection's end points.

        * editing/selection/collapse-selection-in-bidi-expected.txt: Added.
        * editing/selection/collapse-selection-in-bidi.html: Added.

2011-08-17  Steve Block  <steveblock@google.com>

        Unreviewed, rolling out r93204.
        http://trac.webkit.org/changeset/93204
        https://bugs.webkit.org/show_bug.cgi?id=66375

        Test no longer crashing since r93171

        * platform/chromium/test_expectations.txt:

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] Add chromium baselines for tests added in r93144.

        * platform/chromium-cg-mac-leopard/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/chromium-cg-mac-leopard/fast/repaint/line-flow-with-floats-in-regions-expected.png: Added.
        * platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/chromium-cg-mac/fast/repaint/line-flow-with-floats-in-regions-expected.png: Added.
        * platform/chromium-cg-mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Added.
        * platform/chromium-win/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] Mark svg/custom/repaint-shadow.svg and
        media/media-blocked-by-beforeload.html as flaky.

        * platform/chromium/test_expectations.txt:

2011-08-17  Tony Chang  <tony@chromium.org>

        [chromium] Fix typo in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-08-17  Adam Roben  <aroben@apple.com>

        Skip another <progress> test on Windows

        * platform/win/Skipped: Added fast/dom/shadow/tree-scope-crash.html.

2011-08-17  Steve Block  <steveblock@google.com>

        Web Inspector: http/tests/inspector/network/disabled-cache-crash.html flaky
        https://bugs.webkit.org/show_bug.cgi?id=65558

        Add TIMEOUT expectation.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-17  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for text-combine-image-test.html

        Failure is tracked by <http://webkit.org/b/66376>.

        * platform/win/fast/text/international/text-combine-image-test-expected.png:
        * platform/win/fast/text/international/text-combine-image-test-expected.txt:

2011-08-17  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for new test added in r93068

        Failure is tracked by <http://webkit.org/b/66374>.

        * platform/win/editing/deleting/regional-indicators-expected.txt: Added.

2011-08-17  Adam Roben  <aroben@apple.com>

        Add Windows results for new test added in r91777

        * platform/win/fast/css/font-family-pictograph-expected.png: Added.
        * platform/win/fast/css/font-family-pictograph-expected.txt: Added.

2011-08-17  Adam Roben  <aroben@apple.com>

        Add Windows results for tests that differ from Lion due to font differences

        These tests started failing in r93107 when I made Windows fall back to Lion results instead
        of SnowLeopard results. This is good in general, but these particular tests happen to give
        SnowLeopard-ish results due to some fonts that changed in Lion.

        * platform/win/css1/font_properties/font-expected.png: Added.
        * platform/win/css1/font_properties/font-expected.txt: Copied from platform/mac-snowleopard/css1/font_properties/font-expected.txt.
        * platform/win/css2.1/t1508-c527-font-05-b-expected.png: Added.
        * platform/win/css2.1/t1508-c527-font-05-b-expected.txt: Copied from platform/mac-snowleopard/css2.1/t1508-c527-font-05-b-expected.txt: Added.
        * platform/win/css2.1/t1508-c527-font-10-c-expected.png: Added.
        * platform/win/css2.1/t1508-c527-font-10-c-expected.txt: Copied from platform/mac-snowleopard/css2.1/t1508-c527-font-10-c-expected.txt.
        * platform/win/fast/text/capitalize-boundaries-expected.png: Added.
        * platform/win/fast/text/capitalize-boundaries-expected.txt: Copied from platform/win/fast/text/capitalize-boundaries-expected.txt.

2011-08-17  Adam Roben  <aroben@apple.com>

        Add Windows expected failures results for new test added in r93144

        Failure is tracked by <http://webkit.org/b/56101>.

        * platform/win/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/win/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.

2011-08-17  Steve Block  <steveblock@google.com>

        http/tests/misc/font-face-in-multiple-segmented-faces.html assertion failure on Chromium
        https://bugs.webkit.org/show_bug.cgi?id=66375

        Sets a CRASH expectation for Windows debug.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-17  Steve Block  <steveblock@google.com>

        Set failing TEXT expectation for http/tests/security/mixedContent/insecure-plugin-in-iframe.html for all build flavors
        http://crbug.com/26042

        The test already has a failing TEXT expectation for DEBUG and for
        LINUX RELEASE, but we're now seeing failures on Mac10.6. It looks like
        it's generally flaky.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-17  Steve Block  <steveblock@google.com>

        Unreviewed, rolling out r93186.
        http://trac.webkit.org/changeset/93186
        https://bugs.webkit.org/show_bug.cgi?id=66114

        Breaks LayoutTests on Chromium canary bots

        * compositing/backface-visibility-hierarchical-transform-expected.png: Removed.
        * compositing/backface-visibility-hierarchical-transform-expected.txt: Removed.
        * compositing/backface-visibility-hierarchical-transform.html: Removed.

2011-08-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION after r93011
        https://bugs.webkit.org/show_bug.cgi?id=66212

        Unreviewed gardening.

        * platform/qt-4.8/Skipped:
         - Unskip fast/css/font-face-opentype.html.
         - Unskip http/tests/security/cross-frame-access-put.html, because it passes now.
        * platform/qt-4.8/fast/css/font-face-opentype-expected.txt: Update Qt 4.8 specific expected result.

2011-08-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped:
         - Unskip tests removed by r93095.
         - Skip fast/repaint/japanese-rl-selection-repaint-in-regions.html introduced in r93144.
        * platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.png: Added. (test introduced in r93144)
        * platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Added. (test introduced in r93144)
        * platform/qt/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Added. (test introduced in r93144)
        * platform/qt/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Added. (test introduced in r93144)

2011-08-16  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: maintain visible view hierarchy and dispatch common view events automatically
        https://bugs.webkit.org/show_bug.cgi?id=66131

        Reviewed by Pavel Feldman.

        * inspector/view-events-expected.txt: Added.
        * inspector/view-events.html: Added.

2011-08-16  Adam Barth  <abarth@webkit.org>

        Add new chromium-mac-leopard directory to match the chromium-mac that
        tony^work added.  This directory will house Skia results for Chromium Mac.

        * platform/chromium-mac-leopard: Added.

2011-08-16  Hayato Ito  <hayato@chromium.org>

        Add two sample mismatch reftests to make sure that reftests work correctly.
        https://bugs.webkit.org/show_bug.cgi?id=66218

        Reviewed by Tony Chang.

        One mismatch reftest is expected to pass, the other is expected to
        fail. The failed one is marked as 'WONTFIX' in test expectations
        in chromium port and is skipped in other ports.

        * fast/harness/sample-fail-mismatch-reftest-expected-mismatch.html: Added.
        * fast/harness/sample-fail-mismatch-reftest.html: Added.
        * fast/harness/sample-mismatch-reftest-expected-mismatch.html: Added.
        * fast/harness/sample-mismatch-reftest.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-08-16  Shawn Singh  <shawnsingh@chromium.org>

        Computing screen-space transform for LayerChromium and CCLayerImpl
        https://bugs.webkit.org/show_bug.cgi?id=66114

        Reviewed by James Robinson.

        This case tests if backface visibility properly accounts for a hierarchy
        of transforms.

        * compositing/backface-visibility-hierarchical-transform-expected.png: Added.
        * compositing/backface-visibility-hierarchical-transform-expected.txt: Added.
        * compositing/backface-visibility-hierarchical-transform.html: Added.

2011-08-16  Ryosuke Niwa  <rniwa@webkit.org>

        More rebaselines for Windows WebKit2 port.

        * platform/win-wk2/editing/deleting/delete-at-paragraph-boundaries-008-expected.txt:
        * platform/win-wk2/editing/deleting/delete-ws-fixup-003-expected.txt:
        * platform/win-wk2/editing/deleting/delete-ws-fixup-004-expected.txt:

2011-08-16  Hayato Ito  <hayato@chromium.org>

        Implement proper handling of events which happen in children of shadow hosts.
        https://bugs.webkit.org/show_bug.cgi?id=66285

        Reviewed by Dimitri Glazkov.

        Fix the issue where a shadow host stops an event propagation if an
        event happens at the children of shadow hosts, outside of the shadow root.

        * fast/dom/shadow/details-summary-mouseover-expected.txt: Removed.
        * fast/dom/shadow/details-summary-mouseover.html: Removed.
        * fast/dom/shadow/shadow-contents-event-expected.txt: Added.
        * fast/dom/shadow/shadow-contents-event.html: Added.

2011-08-16  Wyatt Carss  <wcarss@chromium.org>

        win-wk2 needs updated baselines for some editing tests
        https://bugs.webkit.org/show_bug.cgi?id=66344

        win-wk2 didn't have some necessary baselines for an earlier patch;
        they have been copied directly from LayoutTests/platform/chromium-win

        Reviewed by Ryosuke Niwa.

        * platform/win-wk2/editing/deleting: Added.
        * platform/win-wk2/editing/deleting/delete-at-paragraph-boundaries-008-expected.txt: Copied from LayoutTests/platform/chromium-win/editing/deleting/delete-at-paragraph-boundaries-008-expected.txt.
        * platform/win-wk2/editing/deleting/delete-ws-fixup-003-expected.txt: Copied from LayoutTests/platform/chromium-win/editing/deleting/delete-ws-fixup-003-expected.txt.
        * platform/win-wk2/editing/deleting/delete-ws-fixup-004-expected.txt: Copied from LayoutTests/platform/chromium-win/editing/deleting/delete-ws-fixup-004-expected.txt.
        * platform/win-wk2/editing/selection/transformed-selection-rects-expected.txt: Copied from LayoutTests/platform/chromium-win/editing/selection/transformed-selection-rects-expected.txt.

2011-08-16  Tony Chang  <tony@chromium.org>

        Add placeholder directories so the chromium canary bots can update.

        * platform/chromium-mac: Added.
        * platform/chromium-mac/fast: Added.
        * platform/chromium-mac/fast/events: Added.
        * platform/chromium-mac/http: Added.
        * platform/chromium-mac/http/tests: Added.
        * platform/chromium-mac/http/tests/workers: Added.
        * platform/chromium-mac/storage: Added.
        * platform/chromium-mac/storage/domstorage: Added.

2011-08-16  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed, unskipping the test.

        ASSERT in fast/css/custom-font-xheight.html
        https://bugs.webkit.org/show_bug.cgi?id=66328

        * platform/chromium/test_expectations.txt:
        Test should no longer ASSERT.

2011-08-16  Ryosuke Niwa  <rniwa@webkit.org>

        Skip tests modified by r93134 on WebKit2 since they now sets editing behavior explicitly,
        which WebKitTestRunner does not support yet.

        * platform/wk2/Skipped:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] fast/css/custom-font-xheight.html is asserting on all
        chromium builds.

        Also mark 2 repaint tests as failing on mac.

        * platform/chromium/test_expectations.txt:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] fast/repaint/canvas-putImageData.html is now passing
        because of the win baselines added in r93139.

        * platform/chromium/test_expectations.txt:

2011-08-16  Adam Roben  <aroben@apple.com>

        Add Windows results for scripts-panel.html

        The Windows results match the cross-platform results, not the Mac results.

        * platform/win/inspector/debugger/scripts-panel-expected.txt: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Add Windows results for overlapped-iframe-iframe.html

        The Windows results match the cross-platform results, not the Mac results.

        * platform/win/compositing/iframes/overlapped-iframe-iframe-expected.txt: Copied from compositing/iframes/overlapped-iframe-iframe-expected.txt.

2011-08-16  Adam Roben  <aroben@apple.com>

        Skip another test that relies on eventSender.scalePageBy on Windows

        * platform/win/Skipped: Added fast/repaint/background-scaling.html.

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] fast/css/custom-font-xheight.html is hitting an assert
        in debug on Linux.

        * platform/chromium/test_expectations.txt:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] Mark new tests as failing.  Will pull results from the
        bots when they cycle.

        * platform/chromium/test_expectations.txt:

2011-08-16  Mihnea Ovidenie  <mihnea@adobe.com>

        Unmatrix algorithm implementation is wrong
        https://bugs.webkit.org/show_bug.cgi?id=66080

        Reviewed by Dean Jackson.

        * animations/animation-matrix-negative-scale-unmatrix-expected.txt: Added.
        * animations/animation-matrix-negative-scale-unmatrix.html: Added.

2011-08-16  Eric Carlson  <eric.carlson@apple.com>

        Make video-controls-no-scripting.html results platform independent.

        * media/video-controls-no-scripting-expected.txt:
        * media/video-controls-no-scripting.html:
        * platform/chromium/media/video-controls-no-scripting-expected.txt: Removed.

2011-08-16  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66254

        Make regions repaint properly. Added new repaint tests.

        Reviewed by Simon Fraser.

        * fast/repaint/japanese-rl-selection-repaint-in-regions.html: Added.
        * fast/repaint/line-flow-with-floats-in-regions.html: Added.
        * fast/repaint/overflow-flipped-writing-mode-block-in-regions.html: Added.
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
        * platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.png: Added.
        * platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Added.
        * platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Added.
        * platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Add Windows expected results for some <canvas> tests

        <canvas> doesn't use accelerated compositing on Windows like it does on Lion.

        * platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Copied from platform/mac-snowleopard/compositing/layer-creation/spanOverlapsCanvas-expected.txt.
        * platform/win/fast/repaint/canvas-putImageData-expected.txt: Copied from platform/mac-snowleopard/fast/repaint/canvas-putImageData-expected.txt.

2011-08-12  Wyatt Carss  <wcarss@chromium.org>

        Programmatically set selection should not have direction on Mac
        https://bugs.webkit.org/show_bug.cgi?id=60529

        Reviewed by Ryosuke Niwa.

        Added editing/selection/programmatic-selection-on-mac-is-directionless
        to test selection direction in programmatically set selections on
        windows, unix, and mac, in plain text, editable divs, text-input
        fields, and textareas. Modified text baselines for many editing tests,
        which had a delegate change as a result of the cpp patch.

        * editing/deleting/delete-ligature-003-expected.txt:
        * editing/deleting/paragraph-in-preserveNewline-expected.txt:
        * editing/deleting/whitespace-pre-1-expected.txt:
        * editing/selection/after-line-break-expected.txt:
        * platform/mac/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
        * platform/mac/editing/deleting/delete-and-undo-expected.txt:
        * platform/mac/editing/deleting/delete-at-paragraph-boundaries-008-expected.txt:
        * platform/mac/editing/deleting/delete-br-002-expected.txt:
        * platform/mac/editing/deleting/delete-br-004-expected.txt:
        * platform/mac/editing/deleting/delete-br-005-expected.txt:
        * platform/mac/editing/deleting/delete-br-006-expected.txt:
        * platform/mac/editing/deleting/delete-br-009-expected.txt:
        * platform/mac/editing/deleting/delete-br-010-expected.txt:
        * platform/mac/editing/deleting/delete-br-011-expected.txt:
        * platform/mac/editing/deleting/delete-ws-fixup-003-expected.txt:
        * platform/mac/editing/deleting/delete-ws-fixup-004-expected.txt:
        * platform/mac/editing/deleting/smart-delete-002-expected.txt:
        * platform/mac/editing/inserting/insert-3800346-fix-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-01-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-02-expected.txt:
        * platform/mac/editing/inserting/insert-div-010-expected.txt:
        * platform/mac/editing/inserting/insert-div-013-expected.txt:
        * platform/mac/editing/inserting/insert-div-015-expected.txt:
        * platform/mac/editing/inserting/insert-div-019-expected.txt:
        * platform/mac/editing/inserting/insert-paragraph-03-expected.txt:
        * platform/mac/editing/pasteboard/3976872-expected.txt:
        * platform/mac/editing/pasteboard/4076267-2-expected.txt:
        * platform/mac/editing/pasteboard/4076267-expected.txt:
        * platform/mac/editing/pasteboard/drag-selected-image-to-contenteditable-expected.txt:
        * platform/mac/editing/pasteboard/emacs-ctrl-a-k-y-expected.txt:
        * platform/mac/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-014-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-015-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-008-expected.txt:
        * platform/mac/editing/selection/4932260-1-expected.txt:
        * platform/mac/editing/selection/anchor-focus2-expected.txt:
        * platform/mac/editing/selection/anchor-focus3-expected.txt:
        * platform/mac/editing/selection/expanding-selections-expected.txt:
        * platform/mac/editing/selection/expanding-selections2-expected.txt:
        * platform/mac/editing/selection/fake-drag-expected.txt:
        * platform/mac/editing/selection/move-by-word-001-expected.txt:
        * platform/mac/editing/selection/transformed-selection-rects-expected.txt:
        * platform/mac/editing/selection/triple-click-in-pre-expected.txt:
        * platform/mac/editing/style/create-block-for-style-008-expected.txt:
        * platform/mac/editing/undo/4063751-expected.txt:
        * platform/mac/editing/undo/undo-forward-delete-boundary-expected.txt:
        * platform/mac/editing/undo/undo-forward-delete-expected.txt:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] Mark svg/wicd/test-rightsizing-a.xhtml as flakey.

        * platform/chromium/test_expectations.txt:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] Mark fast/css/last-of-type-pseudo-class.html as flaky in
        debug (not just snowleopard).

        * platform/chromium/test_expectations.txt:

2011-08-16  Adam Roben  <aroben@apple.com>

        Add Windows expected results for resource-har-conversion.html

        While Windows and Lion both agree on the MIME type of the cached .js files, Windows has some
        extra fields in the request objects.

        * platform/win/http/tests/inspector/resource-har-conversion-expected.txt: Added.

2011-08-16  Tony Chang  <tony@chromium.org>

        Copy the results of http/tests/inspector/resource-har-conversion.html
        to the chromium platform dir.  The mac result (r93112) was getting
        picked up by the chromium port.

        * platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt: Added.

2011-08-16  Tony Chang  <tony@chromium.org>

        Move media/video-controls-no-scripting-iframe.html into the resources
        subdir since it's not a standalone test.
        
        Also add chromium baseline (the top of the video control is in a
        different place).

        * media/resources/video-controls-no-scripting-iframe.html: Renamed from LayoutTests/media/video-controls-no-scripting-iframe.html.
        * media/video-controls-no-scripting.html:
        * platform/chromium/media/video-controls-no-scripting-expected.txt: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Update Windows results for a fast/text test for Safari 5.1's AAS

        The results are now more like Mac's. Dan Bernstein says this is probably a progression.

        * platform/win/fast/text/justify-ideograph-leading-expansion-expected.txt:

2011-08-16  Tony Chang  <tony@chromium.org>

        [chromium] Mark media/video-source-error.html as flaky in Debug.

        * platform/chromium/test_expectations.txt:

2011-08-16  Adam Roben  <aroben@apple.com>

        Update Windows results after r92890

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-08-16  Adam Roben  <aroben@apple.com>

        Remove Windows-specific hyphenation test results now that hyphenation works on Windows

        * platform/win/fast/text/hyphenate-first-word-expected.txt: Removed.
        * platform/win/fast/text/hyphenate-limit-before-after-expected.txt: Removed.
        * platform/win/fast/text/hyphenate-locale-expected.txt: Removed.

2011-08-16  Tony Chang  <tony@chromium.org>

        Copy the results of http/tests/xmlhttprequest/web-apps/01[23].html
        to the chromium platform dir.  The mac failing results (r93105) were
        getting picked up by the chromium port.

        * platform/chromium/http/tests/xmlhttprequest/web-apps/012-expected.txt: Added.
        * platform/chromium/http/tests/xmlhttprequest/web-apps/013-expected.txt: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Add Lion/Windows expected results for an Inspector test

        The only difference from the cross-platform results is that the .js resources are now given
        a MIME type of "text/plain".

        This test reloads the page before dumping it in HAR format. In Lion (and Safari 5.1 on
        Windows), CFNetwork no longer uses the file extension as a fallback when determining the
        MIME type for 304 cached responses. This matches Chrome. See <rdar://problem/9313303>.

        * platform/mac-snowleopard/http/tests/inspector/resource-har-conversion-expected.txt: Copied from http/tests/inspector/resource-har-conversion-expected.txt.
        * platform/mac/http/tests/inspector/resource-har-conversion-expected.txt: Added.

2011-08-16  Eric Carlson  <eric.carlson@apple.com>

        [REGRESSION] Media controls should always be enabled when scripting is disabled
        https://bugs.webkit.org/show_bug.cgi?id=66303

        Reviewed by Dimitri Glazkov.

        * media/video-controls-no-scripting-expected.txt: Added.
        * media/video-controls-no-scripting-iframe.html: Added.
        * media/video-controls-no-scripting.html: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Stop skipping the web-apps tests I just landed results for on Lion

        * platform/mac-lion/Skipped:

2011-08-16  Adam Roben  <aroben@apple.com>

        Check in expected failure results for some web-apps tests on Lion and Windows

        Since these failures are likely due to bugs in non-WebKit components, they are tracked by
        <rdar://problem/9313271>.

        * platform/mac-snowleopard/http/tests/xmlhttprequest/web-apps/012-expected.txt: Copied from http/tests/xmlhttprequest/web-apps/012-expected.txt.
        * platform/mac-snowleopard/http/tests/xmlhttprequest/web-apps/013-expected.txt: Copied from http/tests/xmlhttprequest/web-apps/013-expected.txt.
        * platform/mac/http/tests/xmlhttprequest/web-apps/012-expected.txt: Added.
        * platform/mac/http/tests/xmlhttprequest/web-apps/013-expected.txt: Added.

2011-08-16  Adam Roben  <aroben@apple.com>

        Share Sputnik Unicode results between Lion and Windows

        Both Lion and Windows use ICU 4.6, so they have the same behavior on these tests.

        * platform/mac-lion/Skipped: Removed these tests.

        * platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Copied from LayoutTests/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt.
        * platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Copied from LayoutTests/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt.
        * platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Copied from LayoutTests/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt.
        * platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Copied from LayoutTests/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt.
        * platform/mac/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Renamed from LayoutTests/platform/win/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt.
        * platform/mac/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Renamed from LayoutTests/platform/win/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt.
        * platform/mac/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Renamed from LayoutTests/platform/win/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt.
        * platform/mac/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Renamed from LayoutTests/platform/win/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt.

2011-08-16  Adam Roben  <aroben@apple.com>

        Update Windows Sputnik results for ICU 4.6

        Windows now fails these tests due to changes in ICU. Mac fails these tests, too, though in a
        different way. Alexey tells me that these tests are silly because they check compliance with
        a particular version of Unicode. Given this, it doesn't seem that a bug is required to track
        this change in behavior.

        * platform/win/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt:
        * platform/win/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt:
        * platform/win/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt:
        * platform/win/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt:

2011-08-16  Adam Roben  <aroben@apple.com>

        Skip some tests that fail/time out on Windows with Safari 5.1's Apple Application Support (AAS)

        Since these failures are likely to be due to bugs in non-WebKit components, they are tracked
        by Radars.

        * platform/win/Skipped: Added http/tests/multipart/invalid-image-data-standalone.html,
        http/tests/cookies/simple-cookies-expired.html, and
        http/tests/cookies/simple-cookies-max-age.html.

2011-08-16  Steve Block  <steveblock@google.com>

        Set TIMEOUT expectation for fast/canvas/webgl/uninitialized-test.html on Linux dbg

        See http://code.google.com/p/chromium/issues/detail?id=93044

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-16  Steve Block  <steveblock@google.com>

        Add TIMEOUT expectation for editing/deleting/regional-indicators.html
        https://bugs.webkit.org/show_bug.cgi?id=66268

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-16  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: nuke background events collection (dead feature)
        https://bugs.webkit.org/show_bug.cgi?id=66296

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/network-test.js:
        * http/tests/inspector/network/network-clear-after-disabled-expected.txt: Removed.
        * http/tests/inspector/network/network-clear-after-disabled.html: Removed.
        * http/tests/inspector/network/network-close-load-open-expected.txt: Removed.
        * http/tests/inspector/network/network-close-load-open.html: Removed.
        * http/tests/inspector/network/network-open-load-reopen-expected.txt: Removed.
        * http/tests/inspector/network/network-open-load-reopen.html: Removed.

2011-08-16  Steve Block  <steveblock@google.com>

        Set failing expectation for fast/canvas/webgl/uninitialized-test.html on Linux dbg

        See http://code.google.com/p/chromium/issues/detail?id=93044

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-16  Andras Becsi  <abecsi@webkit.org>

        WebKitTestRunner needs a more-complete implementation of eventSender
        https://bugs.webkit.org/show_bug.cgi?id=42194

        Unreviewed gardening.

        * platform/wk2/Skipped: skip editing/input/style-change-during-input.html

2011-08-15  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: resource-tree-errors-reload.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=66217

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resource-tree/resource-tree-errors-reload.html:

2011-08-16  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Ossyize editing/deleting/regional-indicators.html since it fails after r93068
        https://bugs.webkit.org/show_bug.cgi?id=66268

        * platform/qt/Skipped:

2011-08-15  MORITA Hajime  <morrita@google.com>

        REGRESSION(r70598): [Chromium] Style changes in textInput event can prevent from updating <textarea> value.
        https://bugs.webkit.org/show_bug.cgi?id=66216

        Reviewed by Ryosuke Niwa.

        * editing/input/style-change-during-input-expected.txt: Added.
        * editing/input/style-change-during-input.html: Added.

2011-08-15  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66263
        DFG JIT does not always zero extend boolean result of DFG operations

        * fast/js/kde/operators-expected.txt:
            - erk! missed new expected results from last commit!

2011-08-15  Hayato Ito  <hayato@chromium.org>

        Fix crash when mouse moves from <summary> element to parent <details> element.
        https://bugs.webkit.org/show_bug.cgi?id=66210

        Reviewed by Dimitri Glazkov.

        This is a regression caused by r92922, which wrongly assumes that
        a shadow host always has a shadow root as an immediate child in
        ancestors chain. This assumption does not apply to <details>
        element. <details> element is implemented as a shadow host, but
        may have a <summary> element as an immediate child element in
        ancestors chain.

        * fast/dom/shadow/details-summary-mouseover-expected.txt: Added.
        * fast/dom/shadow/details-summary-mouseover.html: Added.

2011-08-15  Ryosuke Niwa  <rniwa@webkit.org>

        A mousedown event is not dispatched when clicking on a disabled INPUT
        https://bugs.webkit.org/show_bug.cgi?id=27795

        Reviewed by Alexey Proskuryakov.

        Add a regression test now that the bug no longer reproduces.

        * fast/forms/disabled-mousedown-event-expected.txt: Added.
        * fast/forms/disabled-mousedown-event.html: Added.

2011-08-15  Adam Barth  <abarth@webkit.org>

        Note that this new test fails.

        * platform/chromium/test_expectations.txt:

2011-08-15  Adam Barth  <abarth@webkit.org>

        Remove expectation for this test, which no longer exists.

        * platform/chromium/test_expectations.txt:

2011-08-15  Adam Barth  <abarth@webkit.org>

        Add new passing expectations.

        * platform/chromium/fast/js/kde/operators-expected.txt: Added.

2011-08-15  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66263
        DFG JIT does not always zero extend boolean result of DFG operations

        Reviewed by Sam Weinig.

        * fast/js/kde/script-tests/operators.js:
        (nonSpeculativeNotInner):
        (nonSpeculativeNot):
        (nonSpeculativeLessInner):
        (nonSpeculativeLess):
        (nonSpeculativeLessEqInner):
        (nonSpeculativeLessEq):
        (nonSpeculativeGreaterInner):
        (nonSpeculativeGreater):
        (nonSpeculativeGreaterEqInner):
        (nonSpeculativeGreaterEq):
        (nonSpeculativeEqualInner):
        (nonSpeculativeEqual):
        (nonSpeculativeNotEqualInner):
        (nonSpeculativeNotEqual):
        (nonSpeculativeStrictEqualInner):
        (nonSpeculativeStrictEqual):
        (nonSpeculativeStrictNotEqualInner):
        (nonSpeculativeStrictNotEqual):
            - Add tests cases that will hit the non-spec path.

2011-08-15  Alexey Proskuryakov  <ap@apple.com>

        Committed by accident, restoring the test.

        * editing/deleting/delete-3928305-fix.html:

2011-08-15  Alexey Proskuryakov  <ap@apple.com>

        Regional indicator symbols that are combined should behave as a single character when editing
        https://bugs.webkit.org/show_bug.cgi?id=65395

        Reviewed by Dan Bernstein.

        * editing/deleting/regional-indicators-expected.txt: Added.
        * editing/deleting/regional-indicators.html: Added.

2011-08-15  Chris Rogers  <crogers@google.com>

        Add shell implementation for Web Audio API's MediaElementAudioSourceNode
        https://bugs.webkit.org/show_bug.cgi?id=66175

        Reviewed by Kenneth Russell.

        * webaudio/mediaelementaudiosourcenode-expected.txt: Added.
        * webaudio/mediaelementaudiosourcenode.html: Added.

2011-08-15  Ryosuke Niwa  <rniwa@webkit.org>

        webkit-indent-blockquote is unnecessary
        https://bugs.webkit.org/show_bug.cgi?id=66195

        Reviewed by Tony Chang.

        Rebaselined the tests since WebKit longer adds class="webkit-indent-blockquote" on blockquotes
        created by execCommand('Indent') and execCommand('Outdent') after this patch.

        * editing/execCommand/19653-1-expected.txt:
        * editing/execCommand/5658933-2-expected.txt:
        * editing/execCommand/5658933-3-expected.txt:
        * editing/execCommand/indent-div-inside-list-expected.txt:
        * editing/execCommand/indent-nested-blockquotes-expected.txt:
        * editing/execCommand/indent-nested-div-expected.txt:
        * editing/execCommand/indent-paragraphs-expected.txt:
        * editing/execCommand/indent-pre-expected.txt:
        * editing/execCommand/indent-pre-list-expected.txt:
        * editing/execCommand/indent-pre-paragraphs-expected.txt:
        * editing/execCommand/indent-second-paragraph-in-blockquote-expected.txt:
        * editing/execCommand/indent-with-style-expected.txt:
        * editing/execCommand/indent-with-style2-expected.txt:

2011-08-15  Gavin Barraclough  <barraclough@apple.com>

        Crash accessing static property on sealed object
        https://bugs.webkit.org/show_bug.cgi?id=66242

        Reviewed by Sam Weinig.

        * fast/js/preventExtensions-expected.txt:
        * fast/js/script-tests/preventExtensions.js:
            - added test case.

2011-08-15  Hayato Ito  <hayato@chromium.org>

        Implement proper handling of focusin/focusout events in regard to shadow DOM boundaries.
        https://bugs.webkit.org/show_bug.cgi?id=64249

        Reviewed by Dimitri Glazkov.

        Introduces FocusInEventDispatchMediator/FocusOutEventDispatchMediator so
        that we can shrink ancestors of event target node considering shadow
        DOM boundaries before dispatching focusin/focusout events.

        * fast/dom/shadow/shadow-boundary-events-expected.txt:
        * fast/dom/shadow/shadow-boundary-events.html:

2011-08-15  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: not all of the properties have valid descriptors on all platforms.
        Includes PropertyDescriptor protocol documentation fixes.
        https://bugs.webkit.org/show_bug.cgi?id=66215

        Reviewed by Yury Semikhatsky.

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:
        * inspector/runtime/runtime-localStorage-getProperties-expected.txt: Added.
        * inspector/runtime/runtime-localStorage-getProperties.html: Added.

2011-08-14  Renata Hodovan  <reni@webkit.org>

       [QT]REGRESSION after r93011
       https://bugs.webkit.org/show_bug.cgi?id=66212

        Unreviewed gardening.

        * platform/qt-4.8/Skipped:

2011-08-13  Abhishek Arya  <inferno@chromium.org>

        Crash in HTMLTreeBuilder::processAnyOtherEndTagForInBody.
        https://bugs.webkit.org/show_bug.cgi?id=66187

        Reviewed by Adam Barth.

        * fast/html/process-end-tag-for-inbody-crash-expected.txt: Added.
        * fast/html/process-end-tag-for-inbody-crash.html: Added.

2011-08-12  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r92997 on Qt port because it uses a method on EventSender that hasn't been
        implemented by Qt port's DRT. The failure is tracked by the bug 66173.

        * platform/qt/Skipped:

2011-08-12  Adam Barth  <abarth@webkit.org>

        Update expectations to note flakiness.

        * platform/chromium/test_expectations.txt:

2011-08-12  Ryosuke Niwa  <rniwa@webkit.org>

        Apple-style-span class seems unnecessary
        https://bugs.webkit.org/show_bug.cgi?id=12248

        Reviewed by Justin Garcia.

        Rebaselined the tests because spans in these tests lost no longer have class="Apple-style-span".

        * editing/deleting/delete-br-012-expected.txt:
        * editing/deleting/delete-line-break-between-paragraphs-with-same-style-expected.txt:
        * editing/deleting/delete-select-all-001-expected.txt:
        * editing/execCommand/16049-expected.txt:
        * editing/execCommand/5685604-1.html:
        * editing/execCommand/delete-image-in-anchor-expected.txt:
        * editing/execCommand/hilitecolor-expected.txt:
        * editing/execCommand/modifyForeColorByCharacter-expected.txt:
        * editing/execCommand/query-font-size-expected.txt:
        * editing/execCommand/remove-format-multiple-elements-expected.txt:
        * editing/execCommand/script-tests/remove-format-multiple-elements.js:
        * editing/execCommand/script-tests/toggle-text-decorations.js:
        * editing/execCommand/script-tests/toggle-unlink.js:
        * editing/execCommand/toggle-style-2-expected.txt:
        * editing/execCommand/toggle-text-decorations-expected.txt:
        * editing/execCommand/toggle-unlink-expected.txt:
        * editing/inserting/5994480-2-expected.txt:
        * editing/pasteboard/5065605-expected.txt:
        * editing/pasteboard/copy-null-characters-expected.txt:
        * editing/pasteboard/copy-text-with-backgroundcolor-expected.txt:
        * editing/pasteboard/data-transfer-items-expected.txt:
        * editing/pasteboard/do-not-copy-unnecessary-styles-2-expected.txt:
        * editing/pasteboard/do-not-copy-unnecessary-styles-expected.txt:
        * editing/pasteboard/onpaste-text-html-expected.txt:
        * editing/pasteboard/paste-text-with-style-2-expected.txt:
        * editing/style/apply-font-size-to-multiple-nodes-expected.txt:
        * editing/style/block-style-004-expected.txt:
        * editing/style/block-style-005-expected.txt:
        * editing/style/block-style-006-expected.txt:
        * editing/style/fontsize-1-expected.txt:
        * editing/style/fore-color-by-name-expected.txt:
        * editing/style/highlight-insert-paragraph-expected.txt:
        * editing/style/inline-style-container-expected.txt:
        * editing/style/inline-style-extend-run-expected.txt:
        * editing/style/invalid-font-size-expected.txt:
        * editing/style/push-down-font-styles-expected.txt:
        * editing/style/script-tests/inline-style-container.js:
        * editing/style/script-tests/inline-style-extend-run.js:
        * editing/style/script-tests/push-down-font-styles.js:
        * editing/style/style-text-node-without-editable-parent-expected.txt:
        * fast/events/ondrop-text-html-expected.txt:
        * platform/chromium-win/editing/inserting/5994480-2-expected.txt:
        * platform/gtk/editing/inserting/5994480-2-expected.txt:

2011-08-12  Sadrul Habib Chowdhury  <sadrul@chromium.org>

        DRT: Add support for gesture events.
        https://bugs.webkit.org/show_bug.cgi?id=66105

        Reviewed by Darin Fisher.

        * fast/events/touch/gesture/gesture-click-expected.txt: Added.
        * fast/events/touch/gesture/gesture-click.html: Added.
        * platform/chromium/fast/events/touch/gesture/gesture-click-expected.txt: Added.

2011-08-12  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66133
        
        Make hit testing work on RenderRegions. Pass off the hit testing to the RenderFlowThread
        layer tree (just as we did with painting).

        Reviewed by Sam Weinig.

        Added hit-test-float.html to demonstrate basic hit testing of content flowed into regions.

        * fast/regions/hit-test-float-expected.txt: Added.
        * fast/regions/hit-test-float.html: Added.

2011-08-12  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r92982 on Qt since it uses a new layoutTestController method
        that hasn't been implemented by Qt DRT. The failure is tracked by the bug 66162.

        * platform/qt/Skipped:

2011-08-12  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaselines after r92890.

        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/gtk/fast/js/global-constructors-expected.txt:

2011-08-12  Ryosuke Niwa  <rniwa@webkit.org>

        Mac rebaselines after r92890.

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * platform/mac/fast/js/global-constructors-expected.txt:

2011-08-12  Andy Estes  <aestes@apple.com>

        Cancel in onbeforeunload dialog sometime causes a button to stop working.
        https://bugs.webkit.org/show_bug.cgi?id=26211

        Reviewed by Alexey Proskuryakov.

        * fast/loader/form-submission-after-beforeunload-cancel-expected.txt: Added.
        * fast/loader/form-submission-after-beforeunload-cancel.html: Added.

2011-08-12  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66130
        
        RenderRegions need to paint the entire RenderFlowThread layer tree. Instead of just calling
        paintBlock, make sure RenderRegions paint the flow thread's layer tree instead with the appropriate
        offset.
        
        Fix RenderRegions to derive from RenderReplaced instead of RenderBox, since it simplifies the code.
        They no longer have to subclass their own layout method or worry about all of the painting logic
        for anything other than the content area.

        Reviewed by Anders Carlsson.

        Existing tests have a layer tree example, and so those results are updated to show the tree now.

        * fast/regions/content-flowed-into-regions-dynamically-added-expected.png:
        * fast/regions/content-flowed-into-regions-dynamically-removed-expected.png:
        * fast/regions/content-flowed-into-regions-expected.png:
        * fast/regions/content-flowed-into-regions-with-dyn-index-expected.png:
        * fast/regions/content-flowed-into-regions-with-index-dom-expected.png:
        * fast/regions/content-flowed-into-regions-with-index-expected.png:
        * fast/regions/flow-content-basic-vertical.html:
        * fast/regions/webkit-flow-renderer-layer-expected.txt:
        * platform/mac/fast/regions/flow-content-basic-expected.png:
        * platform/mac/fast/regions/flow-content-basic-vertical-expected.png:
        * platform/mac/fast/regions/flow-content-basic-vertical-expected.txt:
        * platform/mac/fast/regions/flow-content-basic-vertical-rl-expected.png:

2011-08-12  Alexandru Chiculita  <achicu@adobe.com>

        Original patch by Mihnea Ovidenie <mihnea@adobe.com>.
        Also contains some improvements done by Dave Hyatt <hyatt@apple.com>.

        [CSSRegions]RenderFlowThread should display its content using RenderRegion
        https://bugs.webkit.org/show_bug.cgi?id=65627

        Also updated the old tests that expected an 100% by 100% RenderFlowThread. Those tests
        require at least a region attached, otherwise the RenderFlowThread would have been 0/0 in size,
        and no output would be generated for them in the render tree.

        The attached regions are now printed in the render tree, so some tests required updated results.

        Reviewed by David Hyatt.

        * fast/regions/content-flowed-into-regions-dynamically-added-expected.png: Added.
        * fast/regions/content-flowed-into-regions-dynamically-added-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-dynamically-added.html: Added.
        * fast/regions/content-flowed-into-regions-dynamically-removed-expected.png: Added.
        * fast/regions/content-flowed-into-regions-dynamically-removed-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-dynamically-removed.html: Added.
        * fast/regions/content-flowed-into-regions-expected.png: Added.
        * fast/regions/content-flowed-into-regions-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-with-dyn-index-expected.png: Added.
        * fast/regions/content-flowed-into-regions-with-dyn-index-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-with-dyn-index.html: Added.
        * fast/regions/content-flowed-into-regions-with-index-dom-expected.png: Added.
        * fast/regions/content-flowed-into-regions-with-index-dom-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-with-index-dom.html: Added.
        * fast/regions/content-flowed-into-regions-with-index-expected.png: Added.
        * fast/regions/content-flowed-into-regions-with-index-expected.txt: Added.
        * fast/regions/content-flowed-into-regions-with-index.html: Added.
        * fast/regions/content-flowed-into-regions.html: Added.
        * fast/regions/flow-content-basic-vertical-rl.html: Copied from LayoutTests/fast/regions/flow-content-basic.html.
        * fast/regions/flow-content-basic-vertical.html: Copied from LayoutTests/fast/regions/flow-content-basic.html.
        * fast/regions/flow-content-basic.html:
        * fast/regions/render-region-renderer-expected.txt:
        * fast/regions/resources/region-style.css: Added.
        (.greenBox):
        (.blueBox):
        (.orangeBox):
        (.flowArticle):
        (.regionArticle):
        (.borderBox):
        * fast/regions/webkit-flow-renderer-expected.txt:
        * fast/regions/webkit-flow-renderer-layer-expected.txt:
        * fast/regions/webkit-flow-renderer-layer.html:
        * fast/regions/webkit-flow-renderer-nested-expected.txt:
        * fast/regions/webkit-flow-renderer-nested.html:
        * fast/regions/webkit-flow-renderer.html:
        * platform/mac/fast/regions/flow-content-basic-expected.png: Added.
        * platform/mac/fast/regions/flow-content-basic-expected.txt: Added.
        * platform/mac/fast/regions/flow-content-basic-vertical-expected.png: Added.
        * platform/mac/fast/regions/flow-content-basic-vertical-expected.txt: Added.
        * platform/mac/fast/regions/flow-content-basic-vertical-rl-expected.png: Added.
        * platform/mac/fast/regions/flow-content-basic-vertical-rl-expected.txt: Added.

2011-08-12  Abhishek Arya  <inferno@chromium.org>

        Crash in WebCore::editingIgnoresContent
        https://bugs.webkit.org/show_bug.cgi?id=66125

        Reviewed by Ryosuke Niwa.

        Tests that we do not crash when we blow away the root
        during the firing of selectstart event in selection.

        * editing/selection/select-start-remove-root-crash-expected.txt: Added.
        * editing/selection/select-start-remove-root-crash.html: Added.

2011-08-12  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: expand exception properties when wrapping it as object.
        https://bugs.webkit.org/show_bug.cgi?id=66035

        Reviewed by Pavel Feldman.

        * inspector/console/console-eval-global-expected.txt:
        * inspector/console/console-eval-syntax-error-expected.txt:
        * inspector/console/console-eval-undefined-override-expected.txt:
        * inspector/extensions/extensions-eval-expected.txt:
        * inspector/runtime/runtime-setPropertyValue-expected.txt:
        * platform/chromium/inspector/console/console-eval-global-expected.txt:
        * platform/chromium/inspector/console/console-eval-syntax-error-expected.txt:
        * platform/chromium/inspector/console/console-eval-undefined-override-expected.txt:
        * platform/chromium/inspector/debugger/debugger-activation-crash2-expected.txt:

2011-08-12  Andrei Popescu  <andreip@google.com>

        [Chromium] Rebaseline these tests on Leopard.

        Unreviewed gardening.

        * LayoutTests/platform/chromium-linux/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png: Added.
        * LayoutTests/platform/chromium-mac-leopard/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png: Added.
        * LayoutTests/platform/chromium-mac-leopard/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Added.
        * LayoutTests/platform/chromium-mac/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png: Added.
        * LayoutTests/platform/chromium-mac/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Added.
        * LayoutTests/platform/chromium-win-xp/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png: Added.
        * LayoutTests/platform/chromium-win/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png: Added.
        * LayoutTests/platform/chromium-win/platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Added.

2011-08-12  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make folders optional in the Scripts' panel file selector.
        https://bugs.webkit.org/show_bug.cgi?id=66100

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/scripts-sorting-expected.txt:
        * inspector/debugger/scripts-sorting.html:
        * platform/chromium/inspector/debugger/scripts-sorting-expected.txt:

2011-08-12  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: add space between error info and error message in source frame message bubble.
        https://bugs.webkit.org/show_bug.cgi?id=65069

        Reviewed by Pavel Feldman.

        * http/tests/inspector-enabled/console-log-before-frame-navigation-expected.txt:
        * inspector/debugger/source-frame-expected.txt:

2011-08-12  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: console loses focus upon reloading the page from the inspector.
        https://bugs.webkit.org/show_bug.cgi?id=66068

        Reviewed by Yury Semikhatsky.

        * inspector/console/command-line-api-inspect.html:

2011-08-12  Csaba Osztrogonác  <ossy@webkit.org>

        Source/WebCore: Add HTMLUnknownElement interface as defined in
        http://www.w3.org/TR/html5/elements.html#elements-in-the-dom.

        https://bugs.webkit.org/show_bug.cgi?id=41841

        Unreviewed gardening after r92890.

        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Updated.

2011-08-12  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Network resource identifier should have RequestId type and requestId name in protocol.
        https://bugs.webkit.org/show_bug.cgi?id=66061

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/download.html:
        * http/tests/inspector/network/x-frame-options-deny.html:
        * inspector/timeline/timeline-load.html:
        * inspector/timeline/timeline-network-resource-expected.txt:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-test.js:
        * platform/chromium/inspector/timeline/timeline-network-resource-expected.txt:

2011-08-12  Csaba Osztrogonác  <ossy@webkit.org>

        Source/WebCore: Add HTMLUnknownElement interface as defined in
        http://www.w3.org/TR/html5/elements.html#elements-in-the-dom.

        https://bugs.webkit.org/show_bug.cgi?id=41841

        Unreviewed gardening after r92890.

        * fast/html/unknown-tag-expected.txt: Added.
        * platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt: Updated.
        * platform/qt/fast/dom/prototype-inheritance-2-expected.png: Updated.
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Updated.
        * platform/qt/fast/js/global-constructors-expected.txt: Updated.

2011-08-11  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Object store records don't need to have keys in all indexes
        https://bugs.webkit.org/show_bug.cgi?id=66049

        Reviewed by Tony Chang.

        Update test to make sure it's possible to add an object store record
        even though it doesn't yield keys in every index.

        * storage/indexeddb/index-basics-expected.txt:
        * storage/indexeddb/index-basics.html:

2011-08-10  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Overwriting key in unique index should be possible
        https://bugs.webkit.org/show_bug.cgi?id=65993

        Reviewed by Tony Chang.

        Test that it's possible to overwrite an object store record even if there
        is a derived key for that record in an index with the unique flag set.

        * storage/indexeddb/index-unique-expected.txt:
        * storage/indexeddb/index-unique.html:

2011-08-11  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Implement "protocol" attribute
        https://bugs.webkit.org/show_bug.cgi?id=65248

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hixie76/undefined-attributes-expected.txt:
        * http/tests/websocket/tests/hixie76/undefined-attributes.html:
        Added a test to check "protocol" attribute.
        * http/tests/websocket/tests/hybi/multiple-subprotocols-expected.txt:
        * http/tests/websocket/tests/hybi/multiple-subprotocols.html:
        The attribute should return an empty string at first. After the connection is established,
        it should return the value of Sec-WebSocket-Protocol header in the server's handshake response.
        * http/tests/websocket/tests/hybi/no-subprotocol-expected.txt: Added.
        * http/tests/websocket/tests/hybi/no-subprotocol.html: Added.
        * http/tests/websocket/tests/hybi/set-protocol-expected.txt: Added.
        * http/tests/websocket/tests/hybi/set-protocol.html: Added.
        * http/tests/websocket/tests/hybi/workers/multiple-subprotocols-expected.txt:
        * http/tests/websocket/tests/hybi/workers/no-subprotocol-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/no-subprotocol.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/multiple-subprotocols.js:
        (ws.onopen):
        (ws.onclose):
        (checkAfterOnClose):
        * http/tests/websocket/tests/hybi/workers/resources/no-subprotocol.js: Added.
        (ws.onopen):
        (ws.onclose):
        (checkAfterOnClose):

2011-08-11  MORITA Hajime  <morrita@google.com>

        [Chromium][DRT] editing/spelling/spelling-backspace-between-lines.html fails
        https://bugs.webkit.org/show_bug.cgi?id=45438

        Reviewed by Kent Tamura.

        Added a chromium specific expectation because chromium will use window's (wrong) expectation
        unless chromium has its own.
        
        * platform/chromium/editing/spelling/spelling-backspace-between-lines-expected.txt: Added

2011-08-11  Hayato Ito  <hayato@chromium.org>

        Implement proper handling of events with a related target in regard to shadow DOM boundaries.
        https://bugs.webkit.org/show_bug.cgi?id=65899

        Reviewed by Dimitri Glazkov.

        Fixes issues in the following corner cases:
        1. When both a target node and a relatedTarget node are immediate children of
        the same shadow root, an event is not dispatched.
        2. If a target node is an ancestor of a relatedTarget node, crossing
        shadow boundaries, or vice verse, an event is not dispatched or wrongly
        dispatched.

        * fast/dom/shadow/shadow-boundary-crossing-expected.txt: Renamed from LayoutTests/fast/events/shadow-boundary-crossing-expected.txt.
        * fast/dom/shadow/shadow-boundary-crossing.html: Renamed from LayoutTests/fast/events/shadow-boundary-crossing.html.
        * fast/dom/shadow/shadow-boundary-events-expected.txt: Added.
        * fast/dom/shadow/shadow-boundary-events.html: Added.

2011-08-11  Ryosuke Niwa  <rniwa@webkit.org>

        Share code between isStyleSpanOrSpanWithOnlyStyleAttribute, isUnstyledStyleSpan,
        isSpanWithoutAttributesOrUnstyleStyleSpan and replaceWithSpanOrRemoveIfWithoutAttributes
        https://bugs.webkit.org/show_bug.cgi?id=66091

        Reviewed by Tony Chang.

        Added a test to ensure WebKit removes implicitly styled elements such as em, b, etc...
        with class="Apple-style-span" when they're not necessary.

        * editing/style/remove-styled-element-with-style-span-expected.txt: Added.
        * editing/style/remove-styled-element-with-style-span.html: Added.

2011-08-11  Tom Zakrajsek  <tomz@codeaurora.org>

        Created tests for HTMLUnknownElement interface.
        https://bugs.webkit.org/show_bug.cgi?id=41841.

        Reviewed by Adam Barth.

        * fast/dom/prototype-inheritance-expected.txt:
        * fast/html/unknown-tag.html: Added.
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/gtk/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:

2011-08-11  Adam Barth  <abarth@webkit.org>

        pfeldman says we need to rebaseline this test.  The massively complex
        baseline fallback graph confused him when he created a platform/mac
        fallback.

        * platform/chromium-win/inspector/debugger: Added.
        * platform/chromium-win/inspector/debugger/scripts-panel-expected.txt: Added.

2011-08-11  Anders Carlsson  <andersca@apple.com>

        Move some Snow Leopard test results to the right place.

        * platform/mac-snowleopard/fast/loader/file-url-mimetypes-2-expected.txt: Removed.
        * platform/mac-snowleopard/fast/loader/file-url-mimetypes-expected.txt: Removed.
        * platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Removed.
        * platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html: Removed.
        * platform/mac-snowleopard/platform/mac/fast/loader/file-url-mimetypes-expected.txt: Copied from platform/mac-snowleopard/fast/loader/file-url-mimetypes-expected.txt.
        * platform/mac-snowleopard/platform/mac/fast/text/international: Added.
        * platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Copied from platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt.
        * platform/mac-snowleopard/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html: Copied from platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html.

2011-08-11  Adam Barth  <abarth@webkit.org>

        Record that these tests are now passing in these configurations.

        * platform/chromium/test_expectations.txt:

2011-08-11  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: inspector's scripts-panel test baseline for mac added.

        * platform/mac/inspector/debugger/scripts-panel-expected.txt: Added.

2011-08-01  Adrienne Walker  <enne@google.com>

        Enable fast path scrolling for composited iframes
        https://bugs.webkit.org/show_bug.cgi?id=65056

        Reviewed by James Robinson.

        Added test of iframe overlapping another iframe.  Mac gets its own
        incorrect expectations due to bug 63282.

        * compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
        * compositing/iframes/overlapped-iframe-iframe.html: Added.
        * platform/chromium-gpu/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
        * platform/mac/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.

2011-08-10  Adrienne Walker  <enne@google.com>

        Support creating compositing layers for scrollable frames and iframes
        https://bugs.webkit.org/show_bug.cgi?id=55257

        Reviewed by James Robinson.

        * platform/chromium/compositing/force-compositing-mode/no-overflow-iframe-layer-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/no-overflow-iframe-layer.html: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-hidden-iframe-layer-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-hidden-iframe-layer.html: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing.html: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-layer-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-layer.html: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-leave-compositing-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/overflow-iframe-leave-compositing.html: Added.
        * platform/chromium/compositing/force-compositing-mode/resources/subframe-big.html: Added.
        * platform/chromium/compositing/force-compositing-mode/resources/subframe-small.html: Added.

2011-08-11  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66075

        Fix the broken test result for layer dumping, since at the moment flow threads don't collect
        layers (this will be fixed eventually).

        Unskip the regions and exclusions tests now that they are turned on by default.

        Reviewed by James Robinson.

        * fast/regions/webkit-flow-renderer-layer-expected.txt:
        * platform/mac/Skipped:

2011-08-11  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] fast/dom/HTMLDocument/hasFocus.html fails
        https://bugs.webkit.org/show_bug.cgi?id=66076

        Unreviewed gardening.

        * platform/qt/Skipped:

2011-08-11  Adam Barth  <abarth@webkit.org>

        Merge expectations to mute flakiness.

        * platform/chromium/test_expectations.txt:

2011-08-11  Qi Zhang  <qi.2.zhang@nokia.com>

        [Qt] fast/dom/HTMLDocument/hasFocus.html failed
        https://bugs.webkit.org/show_bug.cgi?id=62126

        This test case passed under the latest revision, remove it from skip list.

        Reviewed by Chang Shu.

        * platform/qt/Skipped:

2011-08-11  Andrei Popescu  <andreip@google.com>

        [Chromium] Rebaseline these tests on Leopard.

        Unreviewed gardening.

        * platform/chromium-mac-leopard/editing/pasteboard/paste-text-016-expected.png: Added
        * platform/chromium-mac-leopard/editing/spelling/inline_spelling_markers-expected.png: Added

2011-08-11  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        WebKitTestRunner needs a more-complete implementation of eventSender
        https://bugs.webkit.org/show_bug.cgi?id=42194

        fast/encoding/mailto-always-utf-8.html needs eventSender
        Move it to the common wk2 Skipped list from the qt-wk2.

        Unreviewed gardening.

        * platform/qt-wk2/Skipped:
        * platform/wk2/Skipped:

2011-08-11  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: [Mac] search as you type does not work with the new indent in the script selector.
        https://bugs.webkit.org/show_bug.cgi?id=66039

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/scripts-panel-expected.txt:
        * platform/chromium/inspector/debugger/scripts-sorting-expected.txt:

2011-08-11  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        [WK2] Implement waitForPolicyDelegate
        https://bugs.webkit.org/show_bug.cgi?id=42330

        Reviewed by Csaba Osztrogonác.

        Unskip passing tests.

        * platform/qt-wk2/Skipped:
        * platform/wk2/Skipped:

2011-08-11  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: use source-file-replaced instead of source-file-changed event.
        https://bugs.webkit.org/show_bug.cgi?id=65551

        Reviewed by Pavel Feldman.

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/source-file-expected.txt:
        * inspector/debugger/source-file.html:
        * inspector/debugger/source-frame-count-expected.txt: Added.
        * inspector/debugger/source-frame-count.html: Added.
        * platform/chromium/test_expectations.txt:

2011-08-11  Andrei Popescu  <andreip@google.com>

        Master: Support CSS3 font feature properties
        https://bugs.webkit.org/show_bug.cgi?id=63796

        Unreviewed gardening.

        css3/font-feature-settings-rendering.html is missing expectations. Looking at the
        actual test output, it appears clearly wrong so we cannot rebaseline it either.
        We'll therefore update the expectations file to mark this test as missing expected
        results and update the bug to say it needs investigation and fixing.

        * platform/chromium/test_expectations.txt:

2011-08-11  Adam Barth  <abarth@webkit.org>

        Rebaseline these tests, as requested by morrita.

        * platform/chromium-mac/editing/pasteboard/paste-text-016-expected.png: Added.
        * platform/chromium-mac/editing/selection/move-by-character-005-expected.png: Added.
        * platform/chromium-mac/editing/spelling/inline_spelling_markers-expected.png: Added.

2011-08-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Enable WebGL by default for QtWebKit
        https://bugs.webkit.org/show_bug.cgi?id=65998

        disable failing tests after https://trac.webkit.org/changeset/92805

        * platform/qt/Skipped: Skip fast/canvas/webgl directory

2011-08-11  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Snow Leopard expectation after r92518.

        * platform/mac-snowleopard/fast/loader/file-url-mimetypes-expected.txt:

2011-08-11  Adam Barth  <abarth@webkit.org>

        Test how SpeechInputResultList behaves with not enough arguments
        https://bugs.webkit.org/show_bug.cgi?id=65812

        Reviewed by Sam Weinig.

        SpeechInputResultList is only exposed via the x-webkit-speech
        attribute, which means there is little compatibility risk in aligning
        our too-few-arguments behavior with the specification.  There's a
        question about whether all these "fake array" objects should work
        consistently, but we'll probably want the "fake array" objects we
        create in the future to match the spec, so even if we're consistent
        now, we'll end up not being consistent in the future.

        * fast/speech/speech-input-result-list-not-enough-arguments-expected.txt: Added.
        * fast/speech/speech-input-result-list-not-enough-arguments.html: Added.

2011-08-10  Ryosuke Niwa  <rniwa@webkit.org>

        Skip tests added by r92769 on WebKit2 because TestRunner doesn't support
        drag and drop by eventSender yet.

        * platform/wk2/Skipped:

2011-08-10  MORITA Hajime  <morrita@google.com>

        Unreviewed pixel expectations update. New expectations now have
        bad grammar markers. (The settings has been enabled since r82159.)

        * platform/mac/editing/pasteboard/paste-text-016-expected.png:
        * platform/mac/editing/selection/move-by-character-005-expected.png:
        * platform/mac/editing/spelling/inline_spelling_markers-expected.png:

2011-08-10  Ryosuke Niwa  <rniwa@webkit.org>

        Copying can result in span around block elements on the clipboard
        https://bugs.webkit.org/show_bug.cgi?id=34564

        Reviewed by Tony Chang.

        This patch overhauled the way we preserve styles when copying and pasting HTML contents. Many tests progressed
        and lost wrapping spans while others are observing different markup on the clipboard as expected.

        * editing/deleting/deleting-line-break-preserves-underline-color-expected.txt: span's style attribute now has
        a trailing space.
        * editing/execCommand/insert-list-with-noneditable-content-expected.txt: LightGray is now rgb(211, 211, 211).
        * editing/pasteboard/data-transfer-items-expected.txt: Different serialization.
        * editing/pasteboard/onpaste-text-html-expected.txt: Ditto.
        * editing/pasteboard/paste-4039777-fix-expected.txt: No longer nests ul erroneously or aligns the inner list
        to the right.
        * editing/pasteboard/paste-code-in-pre-expected.txt: No longer produces erroneous wrapping span.
        * editing/pasteboard/paste-pre-001-expected.txt: Ditto.
        * editing/pasteboard/paste-pre-002-expected.txt: Ditto.
        * editing/pasteboard/paste-text-012-expected.txt: Ditto.
        * editing/pasteboard/paste-text-with-style-4-expected.txt: Ditto.
        * fast/events/ondrop-text-html-expected.txt: Different serialization.
        * platform/chromium-win/editing/pasteboard/paste-code-in-pre-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-001-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-002-expected.txt: Removed.
        * platform/qt-mac/editing/pasteboard/paste-code-in-pre-expected.txt: Removed.

2011-08-10  Ryosuke Niwa  <rniwa@webkit.org>

        Skip a test added by r92769 on Windows port since drag and drop won't work well on Windows port.

        * platform/win/Skipped:

2011-08-10  Ryosuke Niwa  <rniwa@webkit.org>

        GTK and Qt rebaselines after r92792.

        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-08-10  Kent Tamura  <tkent@chromium.org>

        Move <input type=date> tests to fast/forms/date/
        https://bugs.webkit.org/show_bug.cgi?id=66029

        Reviewed by Hajime Morita.

        * fast/forms/ValidityState-rangeOverflow-expected.txt: Removed "date" part.
        * fast/forms/ValidityState-rangeUnderflow-expected.txt: ditto.
        * fast/forms/ValidityState-stepMismatch-expected.txt: ditto.
        * fast/forms/ValidityState-typeMismatch-date.html: Removed.
        * fast/forms/date: Added.
        * fast/forms/date-input-visible-strings-expected.txt: Removed.
        * fast/forms/date-input-visible-strings.html: Removed.
        * fast/forms/date/ValidityState-rangeOverflow-date-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeOverflow-expected.txt.
        * fast/forms/date/ValidityState-rangeOverflow-date.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/date/ValidityState-rangeUnderflow-date-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeUnderflow-expected.txt.
        * fast/forms/date/ValidityState-rangeUnderflow-date.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/date/ValidityState-stepMismatch-date-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-stepMismatch-expected.txt.
        * fast/forms/date/ValidityState-stepMismatch-date.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/date/ValidityState-typeMismatch-date-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-date-expected.txt.
        * fast/forms/date/ValidityState-typeMismatch-date.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-date.js.
        * fast/forms/date/date-input-type-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-type-expected.txt.
        * fast/forms/date/date-input-type.html: Copied from LayoutTests/fast/forms/week/week-input-type.html.
        * fast/forms/date/date-input-visible-strings-expected.txt: Copied from LayoutTests/fast/forms/date-input-visible-strings-expected.txt.
        * fast/forms/date/date-input-visible-strings.html: Copied from LayoutTests/fast/forms/date-input-visible-strings.html.
        * fast/forms/date/date-stepup-stepdown-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-expected.txt.
        * fast/forms/date/date-stepup-stepdown-from-renderer-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-from-renderer-expected.txt.
        * fast/forms/date/date-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/date/date-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.
        * fast/forms/date/input-valueasdate-date-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-date-expected.txt.
        * fast/forms/date/input-valueasdate-date.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-date.js.
        * fast/forms/date/input-valueasnumber-date-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-date-expected.txt.
        * fast/forms/date/input-valueasnumber-date.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-date.js.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed "date" part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: ditto.
        * fast/forms/input-type-change3-expected.txt: ditto.
        * fast/forms/input-valueasdate-date-expected.txt: Removed.
        * fast/forms/input-valueasdate-date.html: Removed.
        * fast/forms/input-valueasnumber-date-expected.txt: Removed.
        * fast/forms/input-valueasnumber-date.html: Removed.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js: Removed "date" part.
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js: ditto.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: ditto.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: ditto.
        * fast/forms/script-tests/input-stepup-stepdown.js: ditto.
        * fast/forms/script-tests/input-type-change3.js: ditto.
        * fast/forms/script-tests/input-valueasdate-date.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-date.js: Removed.

2011-08-10  Adam Barth  <abarth@webkit.org>

        Test how TouchList behaves with too few arguments
        https://bugs.webkit.org/show_bug.cgi?id=65815

        Reviewed by Sam Weinig.

        This API is very new and the compatibility cost of making this API
        match the specification is minimal.  We should align with the
        specification and (future) implementations in other browsers by making
        this argument required.

        * fast/events/touch/document-create-touch-list-expected.txt:
        * fast/events/touch/script-tests/document-create-touch-list.js:

2011-08-10  Adam Barth  <abarth@webkit.org>

        Test how AudioBufferSourceNode reacts when given too few arguments
        https://bugs.webkit.org/show_bug.cgi?id=65816

        Reviewed by Sam Weinig.

        The WebAudio API is extremely new.  It has only been available as an
        experimental API in a single browser.  The compatibility cost of
        tightening up these APIs is tiny and these APIs make very little sense
        to call with too-few arguments.

        * webaudio/audionode-expected.txt:
        * webaudio/audionode.html:

2011-08-10  Adam Barth  <abarth@webkit.org>

        Add tests of optional arguments for Geolocation
        https://bugs.webkit.org/show_bug.cgi?id=65810

        Reviewed by Sam Weinig.

        Test what happens when calling geolocation APIs with too few arguments.

        * fast/dom/Geolocation/not-enough-arguments-expected.txt: Added.
        * fast/dom/Geolocation/not-enough-arguments.html: Added.

2011-08-10  Anders Carlsson  <andersca@apple.com>

        Skip some more tests on Lion.

        * platform/mac-lion/Skipped:

2011-08-10  Tim Horton  <timothy_horton@apple.com>

        Crash when clicking an SVG <a> link to the local document
        https://bugs.webkit.org/show_bug.cgi?id=66019
        <rdar://problem/9933311>

        Reviewed by Rob Buis.

        Add a test which programmatically clicks a link referring to "#",
        and should crash between r89745 and this commit.

        * svg/custom/click-internal-anchor-with-use-crash-expected.txt: Added.
        * svg/custom/click-internal-anchor-with-use-crash.xhtml: Added.

2011-08-10  Mark Hahnenberg  <mhahnenberg@apple.com>

        JSC should always throw when function arg list is too long
        https://bugs.webkit.org/show_bug.cgi?id=65869

        Reviewed by Oliver Hunt.

        Previous change forgot to update some of the tests in fast/js/function-apply.html so we're doing it now.

        * fast/js/function-apply-expected.txt:
        * fast/js/script-tests/function-apply.js:

2011-08-10  Abhishek Arya  <inferno@chromium.org>

        Tests that we do not crash when trying to access a removed
        m_originatingLine for a float.
        https://bugs.webkit.org/show_bug.cgi?id=65938

        Reviewed by Dave Hyatt.

        * fast/block/float/float-originating-line-deleted-crash-expected.txt: Added.
        * fast/block/float/float-originating-line-deleted-crash.html: Added.

2011-08-10  Mark Hahnenberg  <mhahnenberg@apple.com>

        JSC should always throw when function arg list is too long
        https://bugs.webkit.org/show_bug.cgi?id=65869

        Reviewed by Oliver Hunt.

        Changed the tests to make sure passing too many function arguments throws an exception 
        rather than truncating the arguments.

        * fast/js/function-apply-many-args-expected.txt:
        * fast/js/script-tests/function-apply-many-args.js:

2011-08-10  James Robinson  <jamesr@chromium.org>

        Update chromium gpu baselines for r92255

        * platform/chromium-gpu-mac/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/backface-visibility-transformed-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/tiny-layer-rotated-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/ancestor-overflow-change-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.png:
        * platform/chromium-gpu-win/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium/test_expectations.txt:

2011-08-10  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=66004

        Removing ifdefs for CSS Exclusions and CSS Regions. The code is now on by default, so the new CSS
        properties are showing up in the computed style results.

        Reviewed by Adam Roben.

        * fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-08-10  Abhishek Arya  <inferno@chromium.org>

        ASSERTION FAILED: curr->isRenderInline()
        https://bugs.webkit.org/show_bug.cgi?id=66000

        Reviewed by David Hyatt.

        * svg/text/glyphref-renderer-create-crash-expected.txt: Added.
        * svg/text/glyphref-renderer-create-crash.html: Added.

2011-08-10  Noel Gordon  <noel.gordon@gmail.com>

        [Chromium] plugins/mouse-events-fixedpos.html should pass on win/mac/linux
        https://bugs.webkit.org/show_bug.cgi?id=65841

        Reviewed by Tony Chang.

        Add attribute windowPlugin="false" to the <embed> in this test to force the Chromium
        Windows and Linux ports to load the test plugin in windowless mode.  The plugin will
        then receive events and can log them to the console as required by this test.

        Also note, the Apple Mac/Win ports report 0 as the line number for all console.log()
        messages, whereas, the Chromium ports report the actual line numbers, hence the need
        for separate test results for Chromium.

        * platform/chromium-linux/plugins/mouse-events-fixedpos-expected.txt:
        * platform/chromium-mac/plugins/mouse-events-fixedpos-expected.txt:
        * platform/chromium-win/plugins/mouse-events-fixedpos-expected.txt:
        * platform/chromium/test_expectations.txt:  New expectations.
        * plugins/mouse-events-fixedpos.html:  Add <embed> attribute windowPlugin="false".

2011-08-10  Kenichi Ishibashi  <bashi@chromium.org>

        [Chromium] Implement text shaping with font-feature-settings on Linux
        https://bugs.webkit.org/show_bug.cgi?id=65903

        Adds a rendering test for -webkit-font-feature-settings.
        This tests disabled for now expect for chromium-linux port.
        FeatureTest.ttf is created from scratch by using FontForge.

        Reviewed by Adam Barth.

        * css3/font-feature-settings-rendering.html: Added.
        * css3/resources/FeatureTest.ttf: Added.
        * platform/chromium-linux/css3/font-feature-settings-rendering-expected.png: Added.
        * platform/chromium-linux/css3/font-feature-settings-rendering-expected.txt: Added.
        * platform/chromium/test_expectations.txt: Skips css3/font-feature-settings-rendering.html.
        * platform/gtk/Skipped: Ditto.
        * platform/mac/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.

2011-08-10  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Remove Network.initialContentSet from protocol, store workers content on backend.
        https://bugs.webkit.org/show_bug.cgi?id=65929

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-shared-worker-expected.txt: Added.
        * http/tests/inspector/network/network-shared-worker.html: Added.
        * http/tests/inspector/network/network-worker-expected.txt: Added.
        * http/tests/inspector/network/network-worker.html: Added.
        * http/tests/inspector/network/resources/shared-worker.js: Added.
        (onconnect):
        * http/tests/inspector/network/resources/worker.js: Added.
        * platform/chromium/test_expectations.txt:

2011-08-10  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: console messages markers are lost in Resources panel after page reload
        https://bugs.webkit.org/show_bug.cgi?id=60701

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resource-tree/resource-tree-errors-reload-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-errors-reload.html: Added.

2011-08-10  Adam Barth  <abarth@webkit.org>

        Update expectations for this test.  It's just a minor flake.

        * platform/chromium/test_expectations.txt:

2011-08-10  Benjamin Poulain  <benjamin@webkit.org>

        Unify the way we generate HTML for an image in the Clipboard
        https://bugs.webkit.org/show_bug.cgi?id=58043

        Reviewed by Ryosuke Niwa.

        Add 3 tests for dragging an image-like element to an editable area.

        * editing/pasteboard/drag-and-drop-image-contenteditable-expected.txt: Added.
        * editing/pasteboard/drag-and-drop-image-contenteditable.html: Added.
        * editing/pasteboard/drag-and-drop-inputimage-contenteditable-expected.txt: Added.
        * editing/pasteboard/drag-and-drop-inputimage-contenteditable.html: Added.
        * editing/pasteboard/drag-and-drop-objectimage-contenteditable-expected.txt: Added.
        * editing/pasteboard/drag-and-drop-objectimage-contenteditable.html: Added.
        * platform/qt/Skipped: Qt does not have support for testing drag and drop.

2011-08-10  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: auto-completion for string literals doesn't work
        https://bugs.webkit.org/show_bug.cgi?id=65701

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/debugger-completions-on-call-frame-expected.txt:
        * inspector/debugger/debugger-completions-on-call-frame.html:

2011-08-10  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: CSS editing file containing tabs leads to the whole file change in revision history.
        https://bugs.webkit.org/show_bug.cgi?id=65959

        Reviewed by Yury Semikhatsky.

        * inspector/editor/text-editor-model-replace-tabs-expected.txt: Removed.
        * inspector/editor/text-editor-model-replace-tabs.html: Removed.

2011-08-10  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: there should be a way to tell what properties are non-enumerable when expanding objects.
        https://bugs.webkit.org/show_bug.cgi?id=65518

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/debugger-expand-scope-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-getProperties-expected.txt:
        * inspector/runtime/runtime-getProperties.html:
        * platform/chromium/inspector/runtime/runtime-getProperties-expected.txt: Removed.

2011-08-10  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: [REGRESSION] Editor lost after committing a CSS property value for inline style
        https://bugs.webkit.org/show_bug.cgi?id=65918

        Reviewed by Pavel Feldman.

        * inspector/styles/styles-commit-editing.html:

2011-08-10  Kent Tamura  <tkent@chromium.org>

        Move <input type=datetime> tests to fast/forms/datetime/
        https://bugs.webkit.org/show_bug.cgi?id=65970

        Reviewed by Hajime Morita.

        * fast/forms/ValidityState-rangeOverflow-expected.txt: Removed "datetime" part.
        * fast/forms/ValidityState-rangeUnderflow-expected.txt: ditto.
        * fast/forms/ValidityState-stepMismatch-expected.txt: ditto.
        * fast/forms/ValidityState-typeMismatch-datetime-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-datetime.html: Removed.
        * fast/forms/date-input-visible-strings-expected.txt: Removed "datetime" part.
        * fast/forms/date-input-visible-strings.html: ditto.
        * fast/forms/datetime: Added.
        * fast/forms/datetime/ValidityState-rangeOverflow-datetime-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeOverflow-expected.txt.
        * fast/forms/datetime/ValidityState-rangeOverflow-datetime.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/datetime/ValidityState-rangeUnderflow-datetime-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeUnderflow-expected.txt.
        * fast/forms/datetime/ValidityState-rangeUnderflow-datetime.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/datetime/ValidityState-stepMismatch-datetime-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-stepMismatch-expected.txt.
        * fast/forms/datetime/ValidityState-stepMismatch-datetime.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/datetime/ValidityState-typeMismatch-datetime-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-datetime-expected.txt.
        * fast/forms/datetime/ValidityState-typeMismatch-datetime.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-datetime.js.
        * fast/forms/datetime/datetime-input-type-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-type-expected.txt.
        * fast/forms/datetime/datetime-input-type.html: Copied from LayoutTests/fast/forms/week/week-input-type.html.
        * fast/forms/datetime/datetime-input-visible-string-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-visible-string-expected.txt.
        * fast/forms/datetime/datetime-input-visible-string.html: Copied from LayoutTests/fast/forms/week/week-input-visible-string.html.
        * fast/forms/datetime/datetime-stepup-stepdown-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-expected.txt.
        * fast/forms/datetime/datetime-stepup-stepdown-from-renderer-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-from-renderer-expected.txt.
        * fast/forms/datetime/datetime-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/datetime/datetime-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.
        * fast/forms/datetime/input-valueasdate-datetime-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-datetime-expected.txt.
        * fast/forms/datetime/input-valueasdate-datetime.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-datetime.js.
        * fast/forms/datetime/input-valueasnumber-datetime-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-datetime-expected.txt.
        * fast/forms/datetime/input-valueasnumber-datetime.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-datetime.js.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed "datetime" part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: ditto.
        * fast/forms/input-type-change3-expected.txt: ditto.
        * fast/forms/input-valueasdate-datetime-expected.txt: Removed.
        * fast/forms/input-valueasdate-datetime.html: Removed.
        * fast/forms/input-valueasnumber-datetime-expected.txt: Removed.
        * fast/forms/input-valueasnumber-datetime.html: Removed.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js: Removed "datetime" part.
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js: ditto.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: ditto.
        * fast/forms/script-tests/ValidityState-typeMismatch-datetime.js: Removed.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Removed "datetime" part.
        * fast/forms/script-tests/input-stepup-stepdown.js: ditto.
        * fast/forms/script-tests/input-type-change3.js: ditto.
        * fast/forms/script-tests/input-valueasdate-datetime.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-datetime.js: Removed.

2011-08-10  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm fails intermittently
        https://bugs.webkit.org/show_bug.cgi?id=65969

        Unreviewed gardening.

        * platform/qt-4.8/Skipped: Remove http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm, because it isn't Qt 4.8 specific bug.
        * platform/qt/Skipped: Skip http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Update to the correct results.
        * platform/qt/test_expectations.txt: Remove http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm.

2011-08-10  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed test fix.

        * inspector/network-status-non-http-expected.txt:
        * inspector/network-status-non-http.html:

2011-08-10  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Add binaryType attribute
        https://bugs.webkit.org/show_bug.cgi?id=65967

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hixie76/undefined-attributes-expected.txt: Added.
        * http/tests/websocket/tests/hixie76/undefined-attributes.html: Added.
        * http/tests/websocket/tests/hybi/binary-type-expected.txt: Added.
        * http/tests/websocket/tests/hybi/binary-type.html: Added.

2011-08-10  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Accept multiple subprotocols
        https://bugs.webkit.org/show_bug.cgi?id=65247

        Reviewed by Kent Tamura.

        Add tests to check whether WebSocket accepts multiple subprotocols in constructor.

        * http/tests/websocket/tests/hybi/accept-first-subprotocol_wsh.py: Added.
        * http/tests/websocket/tests/hybi/invalid-subprotocol-characters-expected.txt: Added.
        * http/tests/websocket/tests/hybi/invalid-subprotocol-characters.html: Added.
        * http/tests/websocket/tests/hybi/invalid-subprotocols-expected.txt: Added.
        * http/tests/websocket/tests/hybi/invalid-subprotocols.html: Added.
        * http/tests/websocket/tests/hybi/multiple-subprotocols-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/hybi/sub-protocol-with-space-expected.txt.
        * http/tests/websocket/tests/hybi/multiple-subprotocols.html: Added.
        * http/tests/websocket/tests/hybi/sub-protocol-with-space-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/sub-protocol-with-space.html:
        Removed because hybi-10 does not allow subprotocols containing a space.
        * http/tests/websocket/tests/hybi/workers/multiple-subprotocols-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/multiple-subprotocols.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/multiple-subprotocols.js: Added.
        (ws.onopen):
        (ws.onmessage):
        (ws.onclose):
        * http/tests/websocket/tests/hybi/workers/resources/protocol-test_wsh.py: Copied from http/tests/websocket/tests/hybi/protocol-test_wsh.py.

2011-08-10  Noel Gordon  <noel.gordon@gmail.com>

        [Chromium] plugins/mouse-events.html should pass on the mac.
        https://bugs.webkit.org/show_bug.cgi?id=65957

        Reviewed by Kent Tamura.

        Cocoa plugins do not generate adjustCursorEvents.  Rebaseline this test result for the
        chromium Mac port.  Note the WebKit Mac/Win ports report 0 for the line number for all
        console.log() events.  The Chromium port reports the actual line number, and hence the
        need for separate test results for Chromium.  Following bug 61721, this test now runs,
        and passes on all the Chromium ports.  The test confirms user-plugin interactivity, so
        we don't regress sites like youtube.com.  Refer to bug 11517.

        * platform/chromium-mac/plugins/mouse-events-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-08-10  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: Network panel always displays file:// resources as "(pending)"
        https://bugs.webkit.org/show_bug.cgi?id=65784

        Reviewed by Pavel Feldman.

        * inspector/network-status-non-http-expected.txt: Added.
        * inspector/network-status-non-http.html: Added.

2011-08-09  Kent Tamura  <tkent@chromium.org>

        Move <input type=datetime-local> tests to fast/forms/datetimelocal/
        https://bugs.webkit.org/show_bug.cgi?id=65958

        Reviewed by Hajime Morita.

        * fast/forms/ValidityState-rangeOverflow-expected.txt: Removed datetime-local part.
        * fast/forms/ValidityState-rangeUnderflow-expected.txt: ditto.
        * fast/forms/ValidityState-stepMismatch-expected.txt: ditto.
        * fast/forms/ValidityState-typeMismatch-datetimelocal-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-datetimelocal.html: Removed.
        * fast/forms/date-input-visible-strings-expected.txt: Removed datetime-local and time parts.
        * fast/forms/date-input-visible-strings.html: ditto.
        * fast/forms/datetimelocal: Added.
        * fast/forms/datetimelocal/ValidityState-rangeOverflow-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeOverflow-expected.txt.
        * fast/forms/datetimelocal/ValidityState-rangeOverflow-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/datetimelocal/ValidityState-rangeUnderflow-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeUnderflow-expected.txt.
        * fast/forms/datetimelocal/ValidityState-rangeUnderflow-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/datetimelocal/ValidityState-stepMismatch-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-stepMismatch-expected.txt.
        * fast/forms/datetimelocal/ValidityState-stepMismatch-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/datetimelocal/ValidityState-typeMismatch-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-datetimelocal-expected.txt.
        * fast/forms/datetimelocal/ValidityState-typeMismatch-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-datetimelocal.js.
        * fast/forms/datetimelocal/datetimelocal-input-type-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-type-expected.txt.
        * fast/forms/datetimelocal/datetimelocal-input-type.html: Copied from LayoutTests/fast/forms/week/week-input-type.html.
        * fast/forms/datetimelocal/datetimelocal-input-visible-string-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-visible-string-expected.txt.
        * fast/forms/datetimelocal/datetimelocal-input-visible-string.html: Copied from LayoutTests/fast/forms/week/week-input-visible-string.html.
        * fast/forms/datetimelocal/datetimelocal-stepup-stepdown-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-expected.txt.
        * fast/forms/datetimelocal/datetimelocal-stepup-stepdown-from-renderer-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-from-renderer-expected.txt.
        * fast/forms/datetimelocal/datetimelocal-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/datetimelocal/datetimelocal-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.
        * fast/forms/datetimelocal/input-valueasdate-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-datetimelocal-expected.txt.
        * fast/forms/datetimelocal/input-valueasdate-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-datetimelocal.js.
        * fast/forms/datetimelocal/input-valueasnumber-datetimelocal-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-datetimelocal-expected.txt.
        * fast/forms/datetimelocal/input-valueasnumber-datetimelocal.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-datetimelocal.js.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed datetime-local part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: ditto.
        * fast/forms/input-type-change3-expected.txt: ditto.
        * fast/forms/input-valueasdate-datetimelocal-expected.txt: Removed.
        * fast/forms/input-valueasdate-datetimelocal.html: Removed.
        * fast/forms/input-valueasnumber-datetimelocal-expected.txt: Removed.
        * fast/forms/input-valueasnumber-datetimelocal.html: Removed.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js: Removed datetime-local part.
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js: ditto.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: ditto.
        * fast/forms/script-tests/ValidityState-typeMismatch-datetimelocal.js: Removed.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Removed datetime-local part.
        * fast/forms/script-tests/input-stepup-stepdown.js: Removed datetime-local part.
        * fast/forms/script-tests/input-type-change3.js: Removed datetime-local part.
        * fast/forms/script-tests/input-valueasdate-datetimelocal.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-datetimelocal.js: Removed.

2011-08-10  Adam Barth  <abarth@webkit.org>

        Updated results after http://trac.webkit.org/changeset/92744.

        * platform/chromium-linux/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/chromium-linux/fast/css-generated-content/table-table-before-after-child-add-expected.png:
        * platform/chromium-mac-leopard/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/chromium-mac-leopard/fast/css-generated-content/table-table-before-after-child-add-expected.png:
        * platform/chromium-mac/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/chromium-mac/fast/css-generated-content/table-table-before-after-child-add-expected.png:
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/chromium-win/fast/css-generated-content/table-table-before-after-child-add-expected.png:

2011-08-09  Dominic Cooney  <dominicc@chromium.org>

        [V8] The prototype property of DOM constructors should be read-only.
        https://bugs.webkit.org/show_bug.cgi?id=39655

        Reviewed by Dimitri Glazkov.

        * platform/chromium/test_expectations.txt: Unskip test for prototypes.

2011-08-09  Kent Tamura  <tkent@chromium.org>

        Move <input type=time> tests to fast/forms/time/
        https://bugs.webkit.org/show_bug.cgi?id=65955

        Reviewed by Hajime Morita.

        * fast/forms/ValidityState-rangeOverflow-expected.txt: Removed 'time' part.
        * fast/forms/ValidityState-rangeUnderflow-expected.txt: ditto.
        * fast/forms/ValidityState-stepMismatch-expected.txt: ditto.
        * fast/forms/ValidityState-typeMismatch-time-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-time.html: Removed.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed 'time' part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: ditto.
        * fast/forms/input-type-change3-expected.txt: ditto.
        * fast/forms/input-valueasdate-time-expected.txt: Removed.
        * fast/forms/input-valueasdate-time.html: Removed.
        * fast/forms/input-valueasnumber-time-expected.txt: Removed.
        * fast/forms/input-valueasnumber-time.html: Removed.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js: Removed 'time' part.
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js: ditto.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: ditto.
        * fast/forms/script-tests/ValidityState-typeMismatch-time.js: Removed.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Removed 'time' part.
        * fast/forms/script-tests/input-stepup-stepdown.js: ditto.
        * fast/forms/script-tests/input-type-change3.js: ditto.
        * fast/forms/script-tests/input-valueasdate-time.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-time.js: Removed.
        * fast/forms/time: Added.
        * fast/forms/time/ValidityState-rangeOverflow-time-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeOverflow-expected.txt.
        * fast/forms/time/ValidityState-rangeOverflow-time.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/time/ValidityState-rangeUnderflow-time-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-rangeUnderflow-expected.txt.
        * fast/forms/time/ValidityState-rangeUnderflow-time.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/time/ValidityState-stepMismatch-time-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-stepMismatch-expected.txt.
        * fast/forms/time/ValidityState-stepMismatch-time.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/time/ValidityState-typeMismatch-time-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-time-expected.txt.
        * fast/forms/time/ValidityState-typeMismatch-time.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-time.js.
        * fast/forms/time/input-valueasdate-time-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-time-expected.txt.
        * fast/forms/time/input-valueasdate-time.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-time.js.
        * fast/forms/time/input-valueasnumber-time-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-time-expected.txt.
        * fast/forms/time/input-valueasnumber-time.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-time.js.
        * fast/forms/time/time-input-type-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-type-expected.txt.
        * fast/forms/time/time-input-type.html: Copied from LayoutTests/fast/forms/week/week-input-type.html.
        * fast/forms/time/time-input-visible-string-expected.txt: Copied from LayoutTests/fast/forms/week/week-input-visible-string-expected.txt.
        * fast/forms/time/time-input-visible-string.html: Copied from LayoutTests/fast/forms/week/week-input-visible-string.html.
        * fast/forms/time/time-stepup-stepdown-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-expected.txt.
        * fast/forms/time/time-stepup-stepdown-from-renderer-expected.txt: Copied from LayoutTests/fast/forms/input-stepup-stepdown-from-renderer-expected.txt.
        * fast/forms/time/time-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/time/time-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.

2011-08-09  Abhishek Arya  <inferno@chromium.org>

        Fix functional bug where style change was not getting propogated to before, after
        content.
        https://bugs.webkit.org/show_bug.cgi?id=51862

        Reviewed by Simon Fraser.

        * platform/mac/fast/css-generated-content/table-row-before-after-child-add-expected.png:
        * platform/mac/fast/css-generated-content/table-table-before-after-child-add-expected.png:

2011-08-09  Kent Tamura  <tkent@chromium.org>

        Another follow-up for r92728.
        https://bugs.webkit.org/show_bug.cgi?id=65916

        * fast/forms/month/ValidityState-stepMismatch-month-expected.txt: Updated.

2011-08-09  Kent Tamura  <tkent@chromium.org>

        Add a missing </script> for r92728.

        * fast/forms/month/ValidityState-stepMismatch-month.html:

2011-08-09  Jian Li  <jianli@chromium.org>

        Unreviewed, mark 2 webaudio tests as failed on chromium win.

        * platform/chromium/test_expectations.txt:

2011-08-09  Kent Tamura  <tkent@chromium.org>

        Move <input type=month> tests to fast/forms/month/
        https://bugs.webkit.org/show_bug.cgi?id=65916

        Reviewed by Tony Chang.

        * fast/forms/ValidityState-rangeOverflow-expected.txt: Removed month part.
        * fast/forms/ValidityState-rangeUnderflow-expected.txt: Removed month part.
        * fast/forms/ValidityState-stepMismatch-expected.txt: Removed month part.
        * fast/forms/ValidityState-typeMismatch-month-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-month.html: Removed.
        * fast/forms/date-input-visible-strings-expected.txt: Removed month part.
        * fast/forms/date-input-visible-strings.html: Removed month part.
        * fast/forms/input-stepup-stepdown-expected.txt: Removed month part.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: Removed month part.
        * fast/forms/input-type-change3-expected.txt: Removed month part.
        * fast/forms/input-valueasdate-expected.txt: Removed.
        * fast/forms/input-valueasdate-month-expected.txt: Removed.
        * fast/forms/input-valueasdate-month.html: Removed.
        * fast/forms/input-valueasdate.html: Removed.
        * fast/forms/input-valueasnumber-month-expected.txt: Removed.
        * fast/forms/input-valueasnumber-month.html: Removed.
        * fast/forms/month: Added.
        * fast/forms/month/ValidityState-rangeOverflow-month-expected.txt: Added.
        * fast/forms/month/ValidityState-rangeOverflow-month.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/month/ValidityState-rangeUnderflow-month-expected.txt: Added.
        * fast/forms/month/ValidityState-rangeUnderflow-month.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/month/ValidityState-stepMismatch-month-expected.txt: Added.
        * fast/forms/month/ValidityState-stepMismatch-month.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/month/ValidityState-typeMismatch-month-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-month-expected.txt.
        * fast/forms/month/ValidityState-typeMismatch-month.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-month.js.
        * fast/forms/month/input-valueasdate-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-expected.txt.
        * fast/forms/month/input-valueasdate-month-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-month-expected.txt.
        * fast/forms/month/input-valueasdate-month.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-month.js.
        * fast/forms/month/input-valueasdate.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate.js.
        * fast/forms/month/input-valueasnumber-month-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-month-expected.txt.
        * fast/forms/month/input-valueasnumber-month.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-month.js.
        * fast/forms/month/month-input-type-expected.txt: Added.
        * fast/forms/month/month-input-type.html: Copied from LayoutTests/fast/forms/week/week-input-type.html.
        * fast/forms/month/month-input-visible-string-expected.txt: Added.
        * fast/forms/month/month-input-visible-string.html: Copied from LayoutTests/fast/forms/week/week-input-visible-string.html.
        * fast/forms/month/month-stepup-stepdown-expected.txt: Added.
        * fast/forms/month/month-stepup-stepdown-from-renderer-expected.txt: Added.
        * fast/forms/month/month-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/month/month-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js: Removed month part.
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js: Removed month part.
        * fast/forms/script-tests/ValidityState-stepMismatch.js: Removed month part.
        * fast/forms/script-tests/ValidityState-typeMismatch-month.js: Removed.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Removed month part.
        * fast/forms/script-tests/input-stepup-stepdown.js: Removed month part.
        * fast/forms/script-tests/input-type-change3.js: Removed month part.
        * fast/forms/script-tests/input-valueasdate-month.js: Removed.
        * fast/forms/script-tests/input-valueasdate.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-month.js: Removed.

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Add the final batch of Lion specific SVG test results.

        * platform/mac-snowleopard/svg/W3C-SVG-1.1: Added.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Copied from platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Copied from platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/text-intro-05-t-expected.png: Copied from platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.png.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Copied from platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt.
        * platform/mac-snowleopard/svg/text: Added.
        * platform/mac-snowleopard/svg/text/text-intro-05-t-expected.png: Copied from platform/mac/svg/text/text-intro-05-t-expected.png.
        * platform/mac-snowleopard/svg/text/text-intro-05-t-expected.txt: Copied from platform/mac/svg/text/text-intro-05-t-expected.txt.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt:
        * platform/mac/svg/text/text-intro-05-t-expected.png:
        * platform/mac/svg/text/text-intro-05-t-expected.txt:

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Skip a couple of SVG tests that are missing parts of the content for some odd reason.

        * platform/mac-lion/Skipped:

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Add Lion tests results for a couple of bidi SVG tests.

        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-no-markup-expected.txt.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt:
        * platform/mac/svg/W3C-I18N/text-anchor-no-markup-expected.txt:

2011-08-09  Andy Estes  <aestes@apple.com>

        Add a Radar number to a skipped test.

        * platform/mac-lion/Skipped:

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Add an expected result for svg/W3C-I18N/text-anchor-dirLTR-anchorEnd.svg and check if it's
        possible to have a pixel test result in a different platform directory from a text result.

        * platform/mac-snowleopard/svg/W3C-I18N: Added.
        * platform/mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Copied from platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt:

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Tweak an expected result.

        * platform/mac-snowleopard/fast/loader/file-url-mimetypes-expected.txt:

2011-08-09  Filip Pizlo  <fpizlo@apple.com>

        DFG JIT failure loading web site
        https://bugs.webkit.org/show_bug.cgi?id=65930

        Reviewed by Oliver Hunt.
        
        Reproduced the failure seen in
        http://www.skinnytaste.com/2011/06/ricotta-cheese-chocolate-chip-muffins.html

        * fast/js/boxed-double-to-int-expected.txt: Added.
        * fast/js/boxed-double-to-int.html: Added.
        * fast/js/script-tests/boxed-double-to-int.js: Added.
        (boxedDoubleToInt):

2011-08-09  Anders Carlsson  <andersca@apple.com>

        Add updated media test results for Lion.

        * platform/mac-snowleopard/media: Added.
        * platform/mac-snowleopard/media/controls-strict-expected.png: Copied from platform/mac/media/controls-strict-expected.png.
        * platform/mac-snowleopard/media/controls-strict-expected.txt: Copied from platform/mac/media/controls-strict-expected.txt.
        * platform/mac-snowleopard/media/video-controls-rendering-expected.png: Copied from platform/mac/media/video-controls-rendering-expected.png.
        * platform/mac-snowleopard/media/video-controls-rendering-expected.txt: Copied from platform/mac/media/video-controls-rendering-expected.txt.
        * platform/mac-snowleopard/media/video-display-toggle-expected.png: Copied from platform/mac/media/video-display-toggle-expected.png.
        * platform/mac-snowleopard/media/video-display-toggle-expected.txt: Copied from platform/mac/media/video-display-toggle-expected.txt.
        * platform/mac-snowleopard/media/video-layer-crash-expected.png: Copied from platform/mac/media/video-layer-crash-expected.png.
        * platform/mac-snowleopard/media/video-layer-crash-expected.txt: Copied from platform/mac/media/video-layer-crash-expected.txt.
        * platform/mac-snowleopard/media/video-no-audio-expected.png: Copied from platform/mac/media/video-no-audio-expected.png.
        * platform/mac-snowleopard/media/video-no-audio-expected.txt: Copied from platform/mac/media/video-no-audio-expected.txt.
        * platform/mac/media/controls-strict-expected.png:
        * platform/mac/media/controls-strict-expected.txt:
        * platform/mac/media/video-controls-rendering-expected.png:
        * platform/mac/media/video-controls-rendering-expected.txt:
        * platform/mac/media/video-display-toggle-expected.png:
        * platform/mac/media/video-display-toggle-expected.txt:
        * platform/mac/media/video-layer-crash-expected.png:
        * platform/mac/media/video-no-audio-expected.png:
        * platform/mac/media/video-no-audio-expected.txt:

2011-08-09  Chris Rogers  <crogers@google.com>

        Add more Web Audio layout tests
        https://bugs.webkit.org/show_bug.cgi?id=65786

        Reviewed by Kenneth Russell.

        * webaudio/audiobuffersource-expected.wav: Added.
        * webaudio/audiobuffersource-playbackrate-expected.wav: Added.
        * webaudio/audiobuffersource-playbackrate.html: Added.
        * webaudio/audiobuffersource.html: Added.
        * webaudio/mixing-expected.wav: Added.
        * webaudio/mixing.html: Added.
        * webaudio/resources/hyper-reality: Added.
        * webaudio/resources/hyper-reality/br-jam-loop.wav: Added.
        * webaudio/resources/hyper-reality/laughter.wav: Added.
        * webaudio/sample-accurate-scheduling-expected.txt: Added.
        * webaudio/sample-accurate-scheduling.html: Added.

2011-08-09  Anders Carlsson  <andersca@apple.com>

        More Lion skipped list goodness.

        * platform/mac-lion/Skipped:

2011-08-09  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: XHRs end up in the resources panel.
        https://bugs.webkit.org/show_bug.cgi?id=60321

        Reviewed by Pavel Feldman.

        * http/tests/inspector/console-xhr-logging-expected.txt:
        * http/tests/inspector/resource-tree/resource-tree-no-xhrs-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-no-xhrs.html: Added.

2011-08-08  Adrienne Walker  <enne@google.com>

        Add testing for --force-compositing-mode to windows.internal
        https://bugs.webkit.org/show_bug.cgi?id=65777

        Reviewed by Adam Barth.

        Add empty page to test that the root gets a graphics layer.

        * platform/chromium/compositing/force-compositing-mode/force-composite-empty-expected.txt: Added.
        * platform/chromium/compositing/force-compositing-mode/force-composite-empty.html: Added.

2011-08-08  Ryosuke Niwa  <rniwa@webkit.org>

        Repeated copy and paste result in nested style elements such as b and font
        https://bugs.webkit.org/show_bug.cgi?id=65824

        Reviewed by Tony Chang.

        Added tests to ensure WebKit does not nest styling elements and does not remove elements with non-editing styles.
        Also rebaselined several tests.

        Because WebKit serializes all editing inheritable styles on copy, we should be able to remove all inline styles
        at the insertion point on paste. And this patch removes inline style elements such as font and b more aggressively.
        WebKit erroneously bolded the last words in paste-after-inline-style-element.html and paste-with-redundant-style.html
        before this change set but this is no longer the case.

        * editing/pasteboard/5065605-expected.txt: Lost wrapping font and span elements.
        * editing/pasteboard/merge-end-1-expected.txt: Span is split but visually identical.
        * editing/pasteboard/merge-end-2-expected.txt: Ditto.
        * editing/pasteboard/paste-after-inline-style-element-expected.txt: No longer bolds "line 2" erroneously.
        * editing/pasteboard/paste-text-011-expected.txt: Lost wrapping font, b, and span elements.
        * editing/pasteboard/paste-text-with-style-2-expected.txt: Added.
        * editing/pasteboard/paste-text-with-style-2.html: Added.
        * editing/pasteboard/paste-text-with-style-3-expected.txt: Added.
        * editing/pasteboard/paste-text-with-style-3.html: Added.
        * editing/pasteboard/paste-text-with-style-4-expected.txt: Added.
        * editing/pasteboard/paste-text-with-style-4.html: Added.
        * editing/pasteboard/paste-with-redundant-style-expected.txt: Lost wrapping b.
        * editing/pasteboard/paste-with-redundant-style.html: Updated comments per rebaseline.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Removed.

2011-08-09  Abhishek Arya  <inferno@chromium.org>

        Tests that we do not crash when trying to dirty line boxes on
        a RenderInline needing full relayout.
        https://bugs.webkit.org/show_bug.cgi?id=65924

        Reviewed by Dave Hyatt.

        * fast/inline/update-always-create-line-boxes-full-layout-crash-expected.txt: Added.
        * fast/inline/update-always-create-line-boxes-full-layout-crash.html: Added.

2011-08-09  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: rebaselining inspector test.

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:

2011-08-09  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: files from different domains are mixed in the file selector in Scripts panel
        https://bugs.webkit.org/show_bug.cgi?id=65601

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/scripts-panel-expected.txt:
        * platform/chromium/inspector/debugger/scripts-sorting-expected.txt:

2011-08-09  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: fix inspector tests

        * inspector/styles/show-user-agent-styles.html:

2011-08-09  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: provide a way to hide user agent styles
        https://bugs.webkit.org/show_bug.cgi?id=37766

        Reviewed by Yury Semikhatsky.

        * inspector/styles/show-user-agent-styles-expected.txt: Added.
        * inspector/styles/show-user-agent-styles.html: Added.

2011-08-09  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: REGRESSION (r92672): http/tests/inspector/resource-main-cookies.php failing on Qt Linux Release
        https://bugs.webkit.org/show_bug.cgi?id=65911

        Unreviewed. Skipped test failing on qt.

        * platform/qt/Skipped:

2011-08-09  Andrei Popescu  <andreip@google.com>

        [Chromium] Update test expectations for fast/writing-mode/japanese-rl-text-with-broken-font.html

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-09  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Resources panel does not show main resource cookies.
        https://bugs.webkit.org/show_bug.cgi?id=65770

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resource-main-cookies-expected.txt: Added.
        * http/tests/inspector/resource-main-cookies.php: Added.
        * platform/chromium/test_expectations.txt:

2011-08-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r92670.
        http://trac.webkit.org/changeset/92670
        https://bugs.webkit.org/show_bug.cgi?id=65905

        It broke 3 inspector tests (Requested by Ossy on #webkit).

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-getProperties-expected.txt:
        * inspector/runtime/runtime-getProperties.html:
        * platform/chromium/inspector/runtime/runtime-getProperties-expected.txt: Added.

2011-08-09  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: there should be a way to tell what properties are non-enumerable when expanding objects.
        https://bugs.webkit.org/show_bug.cgi?id=65518

        Reviewed by Yury Semikhatsky.

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-getProperties-expected.txt:
        * inspector/runtime/runtime-getProperties.html:

2011-08-09  Nikolas Zimmermann  <nzimmermann@rim.com>

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        Not reviewed. More gtk/win gardening.

        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Rebaseline, same result on both gtk 32 bit debug/release and 64bit.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Taken from Win7 bot, WinXP still seems to have a problem.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Removed.

2011-08-09  Renata Hodovan  <reni@webkit.org>

        [Qt]REGRESSION(r92554): It made one test failed.

        Unreviewed gardening.

        * platform/qt-4.8/Skipped: Skip the failed test.

2011-08-08  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update baseline files for r92585.

        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-08-08  Kent Tamura  <tkent@chromium.org>

        [Windows] input-number-size.html is expected to fail because of no spin-button.

        * platform/win/Skipped:

2011-08-08  Kent Tamura  <tkent@chromium.org>

        [Qt] Grouping spin-button related tests.
        https://bugs.webkit.org/show_bug.cgi?id=65896

        * platform/qt/Skipped:

2011-08-08  Adam Barth  <abarth@webkit.org>

        This should actually be the correct fix for
        fast/js/regexp-overflow.html.  The bug in bulk-optimize-baselines is
        https://bugs.webkit.org/show_bug.cgi?id=65891.

        * platform/chromium/fast/js/regexp-overflow-expected.txt:

2011-08-08  Adam Barth  <abarth@webkit.org>

        Add fast/js/regexp-overflow.html result back for Chromium.  I'm not
        sure why bulk-rebaseline-tests remove it.  There's some bug in the
        script I need to track down.

        * platform/chromium/fast/js/regexp-overflow-expected.txt: Added.

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, mark gradient-after-transparent-border.html as failed on chromium.

        * platform/chromium/test_expectations.txt:

2011-08-08  Adam Barth  <abarth@webkit.org>

        Optimize baselines for fast/js.
        This patch was created with webkit-patch bulk-optimize-baselines.

        * fast/js/exception-linenums-in-html-3-expected.txt: Added.
        * fast/js/global-constructors-expected.txt: Removed.
        * fast/js/missing-style-end-tag-js-expected.txt: Added.
        * platform/chromium-mac/fast/js/array-every-expected.txt: Removed.
        * platform/chromium-mac/fast/js/array-foreach-expected.txt: Removed.
        * platform/chromium-mac/fast/js/array-functions-non-arrays-expected.txt: Removed.
        * platform/chromium-mac/fast/js/array-some-expected.txt: Removed.
        * platform/chromium-mac/fast/js/assign-expected.txt: Removed.
        * platform/chromium-mac/fast/js/break-ASI-expected.txt: Removed.
        * platform/chromium-mac/fast/js/const-expected.txt: Removed.
        * platform/chromium-mac/fast/js/constructor-attributes-expected.txt: Removed.
        * platform/chromium-mac/fast/js/cyclic-proto-expected.txt: Removed.
        * platform/chromium-mac/fast/js/cyclic-prototypes-expected.txt: Removed.
        * platform/chromium-mac/fast/js/date-proto-generic-invocation-expected.txt: Removed.
        * platform/chromium-mac/fast/js/date-toisostring-expected.txt: Removed.
        * platform/chromium-mac/fast/js/deep-recursion-test-expected.txt: Removed.
        * platform/chromium-mac/fast/js/delete-getters-setters-expected.txt: Removed.
        * platform/chromium-mac/fast/js/exception-codegen-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/js/exception-for-nonobject-expected.txt: Removed.
        * platform/chromium-mac/fast/js/exception-sequencing-binops2-expected.txt: Removed.
        * platform/chromium-mac/fast/js/exception-thrown-from-new-expected.txt: Removed.
        * platform/chromium-mac/fast/js/exceptions-thrown-in-callbacks-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-declaration-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-dot-arguments-and-caller-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-prototype-descriptor-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-toString-object-literals-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-toString-parentheses-expected.txt: Removed.
        * platform/chromium-mac/fast/js/function-toString-semicolon-insertion-expected.txt: Removed.
        * platform/chromium-mac/fast/js/instance-of-immediates-expected.txt: Removed.
        * platform/chromium-mac/fast/js/invalid-syntax-for-function-expected.txt: Removed.
        * platform/chromium-mac/fast/js/js-continue-break-restrictions-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/RegExp-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/StringObject-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/encode_decode_uri-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/function-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/garbage-n-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/lval-exceptions-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/parse-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/string-1-n-expected.txt: Removed.
        * platform/chromium-mac/fast/js/kde/string-2-n-expected.txt: Removed.
        * platform/chromium-mac/fast/js/modify-non-references-expected.txt: Removed.
        * platform/chromium-mac/fast/js/no-semi-insertion-at-end-of-script-expected.txt: Removed.
        * platform/chromium-mac/fast/js/number-toString-expected.txt: Removed.
        * platform/chromium-mac/fast/js/number-tofixed-expected.txt: Removed.
        * platform/chromium-mac/fast/js/object-extra-comma-expected.txt: Removed.
        * platform/chromium-mac/fast/js/postfix-syntax-expected.txt: Removed.
        * platform/chromium-mac/fast/js/prefix-syntax-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-compile-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-compile-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-no-extensions-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-overflow-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-range-out-of-order-expected.txt: Removed.
        * platform/chromium-mac/fast/js/regexp-test-null-string-expected.txt: Removed.
        * platform/chromium-mac/fast/js/string-capitalization-expected.txt: Removed.
        * platform/chromium-mac/fast/js/toString-and-valueOf-override-expected.txt: Removed.
        * platform/chromium-mac/fast/js/toString-prefix-postfix-preserve-parens-expected.txt: Removed.
        * platform/chromium-mac/fast/js/toString-stack-overflow-expected.txt: Removed.
        * platform/chromium-mac/fast/js/uncaught-exception-line-number-expected.txt: Removed.
        * platform/chromium-win/fast/js/array-every-expected.txt: Removed.
        * platform/chromium-win/fast/js/array-foreach-expected.txt: Removed.
        * platform/chromium-win/fast/js/array-functions-non-arrays-expected.txt: Removed.
        * platform/chromium-win/fast/js/array-some-expected.txt: Removed.
        * platform/chromium-win/fast/js/assign-expected.txt: Removed.
        * platform/chromium-win/fast/js/break-ASI-expected.txt: Removed.
        * platform/chromium-win/fast/js/const-expected.txt: Removed.
        * platform/chromium-win/fast/js/constructor-attributes-expected.txt: Removed.
        * platform/chromium-win/fast/js/cyclic-proto-expected.txt: Removed.
        * platform/chromium-win/fast/js/cyclic-prototypes-expected.txt: Removed.
        * platform/chromium-win/fast/js/date-proto-generic-invocation-expected.txt: Removed.
        * platform/chromium-win/fast/js/date-toisostring-expected.txt: Removed.
        * platform/chromium-win/fast/js/deep-recursion-test-expected.txt: Removed.
        * platform/chromium-win/fast/js/delete-getters-setters-expected.txt: Removed.
        * platform/chromium-win/fast/js/exception-codegen-crash-expected.txt: Removed.
        * platform/chromium-win/fast/js/exception-for-nonobject-expected.txt: Removed.
        * platform/chromium-win/fast/js/exception-sequencing-binops2-expected.txt: Removed.
        * platform/chromium-win/fast/js/exception-thrown-from-new-expected.txt: Removed.
        * platform/chromium-win/fast/js/exceptions-thrown-in-callbacks-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-declaration-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-dot-arguments-and-caller-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-prototype-descriptor-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-toString-object-literals-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-toString-parentheses-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-toString-semicolon-insertion-expected.txt: Removed.
        * platform/chromium-win/fast/js/instance-of-immediates-expected.txt: Removed.
        * platform/chromium-win/fast/js/invalid-syntax-for-function-expected.txt: Removed.
        * platform/chromium-win/fast/js/js-continue-break-restrictions-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/RegExp-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/StringObject-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/encode_decode_uri-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/function-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/garbage-n-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/lval-exceptions-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/parse-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/string-1-n-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/string-2-n-expected.txt: Removed.
        * platform/chromium-win/fast/js/modify-non-references-expected.txt: Removed.
        * platform/chromium-win/fast/js/no-semi-insertion-at-end-of-script-expected.txt: Removed.
        * platform/chromium-win/fast/js/number-toString-expected.txt: Removed.
        * platform/chromium-win/fast/js/number-tofixed-expected.txt: Removed.
        * platform/chromium-win/fast/js/object-extra-comma-expected.txt: Removed.
        * platform/chromium-win/fast/js/postfix-syntax-expected.txt: Removed.
        * platform/chromium-win/fast/js/prefix-syntax-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-compile-crash-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-compile-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-no-extensions-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-overflow-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-range-out-of-order-expected.txt: Removed.
        * platform/chromium-win/fast/js/regexp-test-null-string-expected.txt: Removed.
        * platform/chromium-win/fast/js/string-capitalization-expected.txt: Removed.
        * platform/chromium-win/fast/js/toString-and-valueOf-override-expected.txt: Removed.
        * platform/chromium-win/fast/js/toString-prefix-postfix-preserve-parens-expected.txt: Removed.
        * platform/chromium-win/fast/js/toString-stack-overflow-expected.txt: Removed.
        * platform/chromium-win/fast/js/uncaught-exception-line-number-expected.txt: Removed.
        * platform/chromium/fast/js/array-every-expected.txt: Added.
        * platform/chromium/fast/js/array-foreach-expected.txt: Added.
        * platform/chromium/fast/js/array-functions-non-arrays-expected.txt: Added.
        * platform/chromium/fast/js/array-some-expected.txt: Added.
        * platform/chromium/fast/js/assign-expected.txt: Added.
        * platform/chromium/fast/js/break-ASI-expected.txt: Added.
        * platform/chromium/fast/js/const-expected.txt: Added.
        * platform/chromium/fast/js/constructor-attributes-expected.txt: Added.
        * platform/chromium/fast/js/cyclic-proto-expected.txt: Added.
        * platform/chromium/fast/js/cyclic-prototypes-expected.txt: Added.
        * platform/chromium/fast/js/date-proto-generic-invocation-expected.txt: Added.
        * platform/chromium/fast/js/date-toisostring-expected.txt: Added.
        * platform/chromium/fast/js/deep-recursion-test-expected.txt: Added.
        * platform/chromium/fast/js/delete-getters-setters-expected.txt: Added.
        * platform/chromium/fast/js/exception-codegen-crash-expected.txt: Added.
        * platform/chromium/fast/js/exception-for-nonobject-expected.txt: Added.
        * platform/chromium/fast/js/exception-sequencing-binops2-expected.txt: Added.
        * platform/chromium/fast/js/exception-thrown-from-new-expected.txt: Added.
        * platform/chromium/fast/js/exceptions-thrown-in-callbacks-expected.txt: Added.
        * platform/chromium/fast/js/function-declaration-expected.txt: Added.
        * platform/chromium/fast/js/function-dot-arguments-and-caller-expected.txt: Added.
        * platform/chromium/fast/js/function-prototype-descriptor-expected.txt: Added.
        * platform/chromium/fast/js/function-toString-object-literals-expected.txt: Added.
        * platform/chromium/fast/js/function-toString-parentheses-expected.txt: Added.
        * platform/chromium/fast/js/function-toString-semicolon-insertion-expected.txt: Added.
        * platform/chromium/fast/js/instance-of-immediates-expected.txt: Added.
        * platform/chromium/fast/js/invalid-syntax-for-function-expected.txt: Added.
        * platform/chromium/fast/js/js-continue-break-restrictions-expected.txt: Added.
        * platform/chromium/fast/js/kde: Added.
        * platform/chromium/fast/js/kde/RegExp-expected.txt: Added.
        * platform/chromium/fast/js/kde/StringObject-expected.txt: Added.
        * platform/chromium/fast/js/kde/encode_decode_uri-expected.txt: Added.
        * platform/chromium/fast/js/kde/function-expected.txt: Added.
        * platform/chromium/fast/js/kde/garbage-n-expected.txt: Added.
        * platform/chromium/fast/js/kde/lval-exceptions-expected.txt: Added.
        * platform/chromium/fast/js/kde/parse-expected.txt: Added.
        * platform/chromium/fast/js/kde/string-1-n-expected.txt: Added.
        * platform/chromium/fast/js/kde/string-2-n-expected.txt: Added.
        * platform/chromium/fast/js/modify-non-references-expected.txt: Added.
        * platform/chromium/fast/js/mozilla/strict/11.1.5-expected.txt: Removed.
        * platform/chromium/fast/js/no-semi-insertion-at-end-of-script-expected.txt: Added.
        * platform/chromium/fast/js/number-toString-expected.txt: Added.
        * platform/chromium/fast/js/number-tofixed-expected.txt: Added.
        * platform/chromium/fast/js/object-extra-comma-expected.txt: Added.
        * platform/chromium/fast/js/postfix-syntax-expected.txt: Added.
        * platform/chromium/fast/js/prefix-syntax-expected.txt: Added.
        * platform/chromium/fast/js/regexp-compile-crash-expected.txt: Added.
        * platform/chromium/fast/js/regexp-compile-expected.txt: Added.
        * platform/chromium/fast/js/regexp-no-extensions-expected.txt: Added.
        * platform/chromium/fast/js/regexp-overflow-expected.txt: Removed.
        * platform/chromium/fast/js/regexp-range-out-of-order-expected.txt: Added.
        * platform/chromium/fast/js/regexp-test-null-string-expected.txt: Added.
        * platform/chromium/fast/js/string-capitalization-expected.txt: Added.
        * platform/chromium/fast/js/toString-and-valueOf-override-expected.txt: Added.
        * platform/chromium/fast/js/toString-prefix-postfix-preserve-parens-expected.txt: Added.
        * platform/chromium/fast/js/toString-stack-overflow-expected.txt: Added.
        * platform/chromium/fast/js/uncaught-exception-line-number-expected.txt: Added.
        * platform/gtk/fast/js/exception-linenums-in-html-3-expected.txt: Removed.
        * platform/gtk/fast/js/missing-style-end-tag-js-expected.txt: Removed.
        * platform/mac/fast/js/exception-linenums-in-html-3-expected.txt: Removed.
        * platform/mac/fast/js/global-constructors-expected.txt: Added.
        * platform/mac/fast/js/missing-style-end-tag-js-expected.txt: Removed.
        * platform/qt/fast/js/exception-linenums-in-html-3-expected.txt: Removed.
        * platform/qt/fast/js/missing-style-end-tag-js-expected.txt: Removed.

2011-08-08  Adam Barth  <abarth@webkit.org>

        Optimize baselines for fast/inspector-support.
        This patch was created with webkit-patch bulk-optimize-baselines.

        * fast/inspector-support/style-expected.txt: Added.
        * platform/chromium-mac/fast/inspector-support: Removed.
        * platform/chromium-mac/fast/inspector-support/uncaught-dom1-exception-expected.txt: Removed.
        * platform/chromium-mac/fast/inspector-support/uncaught-dom3-exception-expected.txt: Removed.
        * platform/chromium-mac/fast/inspector-support/uncaught-dom8-exception-expected.txt: Removed.
        * platform/chromium-win/fast/inspector-support/uncaught-dom1-exception-expected.txt: Removed.
        * platform/chromium-win/fast/inspector-support/uncaught-dom3-exception-expected.txt: Removed.
        * platform/chromium-win/fast/inspector-support/uncaught-dom8-exception-expected.txt: Removed.
        * platform/chromium/fast/inspector-support: Added.
        * platform/chromium/fast/inspector-support/uncaught-dom1-exception-expected.txt: Added.
        * platform/chromium/fast/inspector-support/uncaught-dom3-exception-expected.txt: Added.
        * platform/chromium/fast/inspector-support/uncaught-dom8-exception-expected.txt: Added.
        * platform/gtk/fast/inspector-support/style-expected.txt: Removed.
        * platform/mac/fast/inspector-support/style-expected.txt: Removed.
        * platform/qt/fast/inspector-support/style-expected.txt: Removed.

2011-08-08  Adam Barth  <abarth@webkit.org>

        Optimize baselines for fast/dom/HTMLAnchorElement and fast/dom/Window.
        This patch was created with webkit-patch bulk-optimize-baselines.
        (Note: I massaged the two results that enumerate the global object to
        leave the "base" results as matching mac even though the tool wanted to
        push those results down into the mac directory.)

        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-hostname-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-pathname-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-port-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-search-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/element-constructors-on-window-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/get-set-properties-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/window-custom-prototype-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/window-postmessage-args-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/window-properties-device-orientation-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/window-properties-geolocation-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Window/window-property-shadowing-expected.txt: Removed.
        * platform/chromium-win/fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt: Removed.
        * platform/chromium-win/fast/dom/HTMLAnchorElement/set-href-attribute-pathname-expected.txt: Removed.
        * platform/chromium-win/fast/dom/HTMLAnchorElement/set-href-attribute-port-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/element-constructors-on-window-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/get-set-properties-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/window-custom-prototype-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/window-postmessage-args-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/window-postmessage-clone-frames-expected.txt: Added.
        * platform/chromium-win/fast/dom/Window/window-properties-device-orientation-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/window-properties-geolocation-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Window/window-property-shadowing-expected.txt: Removed.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt: Added.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-hostname-expected.txt: Added.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-pathname-expected.txt: Added.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-port-expected.txt: Added.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-search-expected.txt: Added.
        * platform/chromium/fast/dom/Window/element-constructors-on-window-expected.txt: Added.
        * platform/chromium/fast/dom/Window/get-set-properties-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-custom-prototype-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-postmessage-args-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-postmessage-clone-frames-expected.txt: Removed.
        * platform/chromium/fast/dom/Window/window-properties-device-orientation-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-properties-geolocation-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-property-shadowing-expected.txt: Added.

2011-08-08  Adam Barth  <abarth@webkit.org>

        Optimize baselines for fast/dom/DOMException.
        This patch was created with webkit-patch bulk-optimize-baselines.
        (I've manually remove the README file because we don't use these sorts
        of README files anymore.)

        * platform/chromium-mac/fast/dom/DOMException: Removed.
        * platform/chromium-mac/fast/dom/DOMException/EventException-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/DOMException/README: Removed.
        * platform/chromium-mac/fast/dom/DOMException/RangeException-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/DOMException/XPathException-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/DOMException/prototype-object-expected.txt: Removed.
        * platform/chromium-win/fast/dom/DOMException: Removed.
        * platform/chromium-win/fast/dom/DOMException/EventException-expected.txt: Removed.
        * platform/chromium-win/fast/dom/DOMException/README: Removed.
        * platform/chromium-win/fast/dom/DOMException/RangeException-expected.txt: Removed.
        * platform/chromium-win/fast/dom/DOMException/XPathException-expected.txt: Removed.
        * platform/chromium-win/fast/dom/DOMException/prototype-object-expected.txt: Removed.
        * platform/chromium/fast/dom/DOMException: Added.
        * platform/chromium/fast/dom/DOMException/EventException-expected.txt: Added.
        * platform/chromium/fast/dom/DOMException/RangeException-expected.txt: Added.
        * platform/chromium/fast/dom/DOMException/XPathException-expected.txt: Added.
        * platform/chromium/fast/dom/DOMException/prototype-object-expected.txt: Added.

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, mark preventExtensions.html as failed on chromium.

        * platform/chromium/test_expectations.txt:

2011-08-08  Tony Chang  <tony@chromium.org>

        implement basic horizontal flexing
        https://bugs.webkit.org/show_bug.cgi?id=65045

        Reviewed by David Hyatt.

        * css3/flexbox/001-expected.txt: Added.
        * css3/flexbox/001.html: Added.
        * css3/flexbox/resources/flexbox.js: Added. I plan on using this file for other tests.
        (insertAfter):
        (checkHorizontalBoxen):

2011-08-08  Ryosuke Niwa  <rniwa@webkit.org>

        Remove redundant inline styles from the pasted contents more aggressively
        https://bugs.webkit.org/show_bug.cgi?id=65833

        Reviewed by Tony Chang.

        Added a test to paste contents with many redundant styles. WebKit should remove as much style spans as possible
        (all of this in this case).

        * editing/pasteboard/4930986-2-expected.txt: style attribute now has a trailing space.
        * editing/pasteboard/interchange-newline-1-expected.txt: No longer has a wrapping span without any attributes.
        * editing/pasteboard/nested-blocks-with-text-area-expected.txt: Ditto.
        * editing/pasteboard/nested-blocks-with-text-field-expected.txt: Ditto.
        * editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Ditto.
        * editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Ditto.
        * editing/pasteboard/prevent-block-nesting-01-expected.txt: Ditto.
        * editing/pasteboard/paste-with-redundant-style-expected.txt: Added.
        * editing/pasteboard/paste-with-redundant-style.html: Added.

2011-08-08  Oliver Hunt  <oliver@apple.com>

        Non-extensibility does not prevent mutating [[Prototype]]
        https://bugs.webkit.org/show_bug.cgi?id=65832

        Reviewed by Gavin Barraclough.

        Add tests to ensure we can't assign to __proto__ when an object
        is not extensible.

        * fast/js/preventExtensions-expected.txt:
        * fast/js/script-tests/preventExtensions.js:

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, mark 1 test as flaky in chromium.

        * platform/chromium/test_expectations.txt:

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test_expectations.

        * platform/chromium/test_expectations.txt:

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, mark some tests as flaky on chromium.

        * platform/chromium/test_expectations.txt:

2011-08-08  Zan Dobersek  <zandobersek@gmail.com>

        [Cairo][Gtk] Get more of the philip suite of canvas tests passing
        https://bugs.webkit.org/show_bug.cgi?id=54458

        Reviewed by Martin Robinson.

        Update the list of skipped canvas tests and describe why platform-specific
        failures occur.

        * platform/gtk/Skipped:

2011-08-08  Anders Carlsson  <andersca@apple.com>

        More Lion specific results.

        * platform/mac-lion/Skipped:
        * platform/mac-snowleopard/editing: Added.
        * platform/mac-snowleopard/editing/input: Added.
        * platform/mac-snowleopard/editing/input/devanagari-ligature-expected.png: Copied from platform/mac/editing/input/devanagari-ligature-expected.png.
        * platform/mac-snowleopard/editing/input/devanagari-ligature-expected.txt: Copied from platform/mac/editing/input/devanagari-ligature-expected.txt.
        * platform/mac-snowleopard/fast/xsl: Added.
        * platform/mac-snowleopard/fast/xsl/sort-locale-expected.txt: Added.
        * platform/mac/editing/input/devanagari-ligature-expected.png:
        * platform/mac/editing/input/devanagari-ligature-expected.txt:
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.txt:
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.txt:
        * platform/mac/fast/xsl/sort-locale-expected.txt: Added.

2011-08-08  Jian Li  <jianli@chromium.org>

        Unreviewed, fix more typo in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-08-08  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: unreviewed, build fix for r92598.

        * inspector/debugger/script-formatter.html:

2011-08-08  Andrei Popescu  <andreip@google.com>

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        Unreviewed gardening.

        Fix typo in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-08-08  Andrei Popescu  <andreip@google.com>

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        Unreviewed gardening.

        Marks the tests as failing on Chromium.

        * platform/chromium/test_expectations.txt:

2011-08-08  Andras Becsi  <abecsi@webkit.org>

        [Qt] fast/forms/input-number-size.html added in r92589 fails
        https://bugs.webkit.org/show_bug.cgi?id=65851

        Unreviewed gardening.

        * platform/qt/Skipped: Skip the test.

2011-08-08  John Knottenbelt  <jknotten@chromium.org>

        Adjust test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=65847

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-08  Shinya Kawanaka  <shinyak@google.com>

        Added the test to check the width of input[type=number].
        https://bugs.webkit.org/show_bug.cgi?id=60673

        Reviewed by Kent Tamura.

        * fast/forms/input-number-size-expected.txt: Added.
        * fast/forms/input-number-size.html: Added.

2011-08-07  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Skip divergent tests
        https://bugs.webkit.org/show_bug.cgi?id=65831

        * platform/qt/Skipped:

2011-07-28  Kent Tamura  <tkent@chromium.org>

        [Chromium] Make form validation bubble fit with Chrome UI style
        https://bugs.webkit.org/show_bug.cgi?id=65359

        Reviewed by Hajime Morita.

        * fast/forms/validation-message-appearance.html:
          Need to wait for a litle because of image loading.
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/forms/validation-message-appearance-expected.png:
        * platform/mac/fast/forms/validation-message-appearance-expected.txt:

2011-08-07  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/loader/ping-error.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=65754

        Unreviewed chromium test_expectations.txt update
        No more failure as r92439 was rolled out by r92453

        * platform/chromium/test_expectations.txt:

2011-08-07  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed test fix after r92578. I accidentally added the call to dumpAsText(true).

        * editing/pasteboard/nested-blocks-with-text-area.html:

2011-08-07  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: paste-blockquote-into-blockquote.html and prevent-block-nesting-01.html
        https://bugs.webkit.org/show_bug.cgi?id=65837

        Reviewed by Kent Tamura.

        Converted the tests to dump-as-markup tests to improve the readability of the expected results.

        * editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-into-blockquote.html:
        * editing/pasteboard/prevent-block-nesting-01-expected.txt: Added.
        * editing/pasteboard/prevent-block-nesting-01.html:
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-into-blockquote-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/prevent-block-nesting-01-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/prevent-block-nesting-01-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/prevent-block-nesting-01-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/prevent-block-nesting-01-expected.png: Removed.
        * platform/gtk/editing/pasteboard/prevent-block-nesting-01-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-blockquote-into-blockquote-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/prevent-block-nesting-01-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Removed.
        * platform/mac/editing/pasteboard/prevent-block-nesting-01-expected.png: Removed.
        * platform/mac/editing/pasteboard/prevent-block-nesting-01-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-into-blockquote-expected.txt: Removed.
        * platform/qt/editing/pasteboard/prevent-block-nesting-01-expected.txt: Removed.

2011-08-07  Noel Gordon  <noel.gordon@gmail.com>

        Layout Test fast/xsl/xslt-import-depth.xml is failing
        https://bugs.webkit.org/show_bug.cgi?id=65758

        Test is now green on chromium and webkit build bots.

        Reviewed by Kent Tamura.

        * platform/chromium/test_expectations.txt:

2011-08-07  Ryosuke Niwa  <rniwa@webkit.org>

        Dump-as-markup conversion: nested-blocks-with-text-area.html and nested-blocks-with-text-field.html
        https://bugs.webkit.org/show_bug.cgi?id=65836

        Reviewed by Kent Tamura.

        Converted the tests to dump-as-markup tests to improve the readability of the expected results.

        * editing/pasteboard/nested-blocks-with-text-area-expected.txt: Added.
        * editing/pasteboard/nested-blocks-with-text-area.html:
        * editing/pasteboard/nested-blocks-with-text-field-expected.txt: Added.
        * editing/pasteboard/nested-blocks-with-text-field.html:
        * platform/chromium-linux/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/nested-blocks-with-text-area-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/nested-blocks-with-text-field-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/gtk/editing/pasteboard/nested-blocks-with-text-area-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/gtk/editing/pasteboard/nested-blocks-with-text-field-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.txt: Removed.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.txt: Removed.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-area-expected.png: Removed.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-area-expected.txt: Removed.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-field-expected.png: Removed.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-field-expected.txt: Removed.
        * platform/win/editing/pasteboard/nested-blocks-with-text-area-expected.txt: Removed.

2011-08-07  Noel Gordon  <noel.gordon@gmail.com>

        Layout Test fast/xsl/import-after-comment.xml is failing
        https://bugs.webkit.org/show_bug.cgi?id=65757

        This test and the others mentioned in the bug are now green on chromium
        and webkit build bots.

        Reviewed by Kent Tamura.

        * platform/chromium/test_expectations.txt:

2011-08-07  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] svg/zoom/page/zoom-svg-through-* results diverging between bots
        https://bugs.webkit.org/show_bug.cgi?id=65831

        Unreviewed Qt gardening.

        * platform/qt/Skipped:

2011-08-07  Sam White  <samuel.white@rochester.edu>

        Add the ability to search the AccessibilityObject cache
        https://bugs.webkit.org/show_bug.cgi?id=64994
        
        Tests for the new AccessibilityObject cache search API and the additional
        functionality in the AccessibilityObject class that makes AccessibilityObject
        cache searching possible.
        
        Additional tests for finding frames, misspellings, and visited links will be
        included in a subsequent patch.

        Reviewed by Chris Fleizach.

        * platform/mac/accessibility/bounds-for-range-expected.txt:
        * platform/mac/accessibility/search-predicate-expected.txt: Added.
        * platform/mac/accessibility/search-predicate.html: Added.

2011-08-07  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a test on GTK+ for which r92554 checked in an
        incorrect result.

        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Update results.
        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Ditto.

2011-08-06  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening.
        Fix environmental differencies in the results added in r92564.
        I was in the wrong chroot.

        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:

2011-08-06  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening.
        Add missing Qt results.

        * platform/qt/Skipped:
        * platform/qt/fast/writing-mode/border-styles-vertical-lr-expected.png: Added.
        * platform/qt/fast/writing-mode/border-styles-vertical-lr-expected.txt: Added.
        * platform/qt/fast/writing-mode/border-styles-vertical-rl-expected.png: Added.
        * platform/qt/fast/writing-mode/border-styles-vertical-rl-expected.txt: Added.
        * platform/qt/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.png: Added.
        * platform/qt/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/qt/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.png: Added.
        * platform/qt/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.
        * platform/qt/svg/as-object/embedded-svg-size-changes-no-layout-triggers-expected.png: Added.
        * platform/qt/svg/as-object/embedded-svg-size-changes-no-layout-triggers-expected.txt: Added.
        * platform/qt/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.png: Added.
        * platform/qt/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/qt/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.png: Added.
        * platform/qt/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.

2011-08-06  Adam Barth  <abarth@webkit.org>

        Fix baselines for cross-origin-xsl-BLOCKED.html.  These results
        uncovered a subtle bug in webkit-patch bulk-optimize-baselines, which
        I'll fix in a follow-up patch.

        * platform/chromium-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Added.
        * platform/chromium-win/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Added.

2011-08-06  Adam Barth  <abarth@webkit.org>

        Optimize expected results for editing.
        This patch was created with webkit-patch bulk-optimize-baselines.

        * platform/chromium-mac/editing/pasteboard/copy-paste-float-expected.txt: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-blockquote-before-blockquote-expected.txt: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt: Removed.
        * platform/chromium-win-xp/editing/pasteboard/block-wrappers-necessary-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/copy-paste-float-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-before-blockquote-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt: Removed.
        * platform/chromium/editing/pasteboard/5761530-1-expected.txt: Removed.
        * platform/chromium/editing/pasteboard/copy-paste-float-expected.txt: Added.
        * platform/chromium/editing/pasteboard/paste-blockquote-before-blockquote-expected.txt: Added.
        * platform/chromium/editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt: Added.

2011-08-06  Adam Barth  <abarth@webkit.org>

        Optimize expected results for animations.
        This patch was created with webkit-patch bulk-optimize-baselines.

        * platform/chromium-mac/animations/keyframes-rule-expected.txt: Removed.
        * platform/chromium-mac/animations/opacity-transform-animation-expected.png: Added.
        * platform/chromium-win/animations/keyframes-rule-expected.txt: Removed.
        * platform/chromium/animations/keyframes-rule-expected.txt: Added.
        * platform/chromium/animations/opacity-transform-animation-expected.png: Removed.

2011-08-06  Adam Barth  <abarth@webkit.org>

        Optimize expected results for http/tests/security.
        This patch was created with webkit-patch optimize-baselines.

        * platform/chromium-mac/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-enumeration-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-get-override-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-history-get-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-history-get-override-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-history-put-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-location-get-override-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-location-put-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/listener/xss-window-onclick-shortcut-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/xss-DENIED-frame-name-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/xss-eval-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-enumeration-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-get-override-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-history-get-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-history-get-override-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-history-put-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-location-get-override-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-location-put-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/listener/xss-window-onclick-shortcut-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/xss-DENIED-frame-name-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/xss-eval-expected.txt: Removed.
        * platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Added.
        * platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-enumeration-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-get-override-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-history-get-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-history-get-override-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-history-put-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-location-get-override-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-location-put-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Removed.
        * platform/chromium/http/tests/security/dataURL: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Added.
        * platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt: Added.
        * platform/chromium/http/tests/security/frameNavigation: Added.
        * platform/chromium/http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt: Added.
        * platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt: Added.
        * platform/chromium/http/tests/security/listener: Added.
        * platform/chromium/http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt: Added.
        * platform/chromium/http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt: Added.
        * platform/chromium/http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt: Added.
        * platform/chromium/http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt: Added.
        * platform/chromium/http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt: Added.
        * platform/chromium/http/tests/security/listener/xss-window-onclick-shortcut-expected.txt: Added.
        * platform/chromium/http/tests/security/xss-DENIED-frame-name-expected.txt: Added.
        * platform/chromium/http/tests/security/xss-eval-expected.txt: Added.

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        Rebaseline some tests on Leopard/gtk/qt in order to get the bots greener.

        Not reviewed.
    
        * platform/gtk/Skipped:
        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
        * platform/mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Removed.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
        * platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Removed.

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        It turns out r92545 only partly resolved flakiness on non-mac platforms (especially gtk)
        - try reentering event loop after zooming, by calling notifyDone() using a 0ms timeout.

        Rubber-stamped by Antti Koivisto.

        * svg/zoom/resources/testPageZoom.js:
        (.setTimeout.): Reenter event loop after calling zoomPageIn/Out, before calling layoutTestController.notifyDone().

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        More gardening: Fix mac-leopard/mac-wk2 failing SVG tests.
        
        Not reviewed.

        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * platform/mac-wk2/svg/W3C-SVG-1.1: Added.
        * platform/mac-wk2/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt: Added.
        * platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Added.
        * platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Added.
        * platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Added.

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        Win gardening: Rebaseline four svg tests that only needed an update, win7/winxp svg results are clean again.

        Not reviewed.

        * platform/win/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        Follow-up for r92545.
        Rebaseline some tests on gtk/qt and win.

        Not reviewed.

        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
        * platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Removed.

2011-08-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        REGRESSION(87526): ASSERT(!needsLayout()) followed by graphical glitches on google charts (svg loaded in iframe)
        https://bugs.webkit.org/show_bug.cgi?id=64974

        svg/zoom/page/zoom-svg-through-object-with-*.xhtml are flaky
        https://bugs.webkit.org/show_bug.cgi?id=63186

        Reviewed by Zoltan Herczeg.

        Rollout r89484, which disabled some svg/zoom/page tests, to see whether the flakiness is gone now.
        Add several new tests in svg/as-object - covering bug 64974.

        * platform/mac/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.png: Added.
        * platform/mac/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/mac/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.png: Added.
        * platform/mac/svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.
        * platform/mac/svg/as-object/embedded-svg-immediate-offsetWidth-query-expected.png: Added.
        * platform/mac/svg/as-object/embedded-svg-size-changes-expected.png: Added.
        * platform/mac/svg/as-object/embedded-svg-size-changes-no-layout-triggers-expected.png: Added.
        * platform/mac/svg/as-object/embedded-svg-size-changes-no-layout-triggers-expected.txt: Added.
        * platform/mac/svg/as-object/nested-embedded-svg-size-changes-expected.png: Added.
        * platform/mac/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.png: Added.
        * platform/mac/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt: Added.
        * platform/mac/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.png: Added.
        * platform/mac/svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt: Added.
        * svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-1.html: Added.
        * svg/as-object/deep-nested-embedded-svg-size-changes-no-layout-triggers-2.html: Added.
        * svg/as-object/embedded-svg-immediate-offsetWidth-query-expected.txt: Added.
        * svg/as-object/embedded-svg-immediate-offsetWidth-query.html: Added.
        * svg/as-object/embedded-svg-size-changes-expected.txt: Added.
        * svg/as-object/embedded-svg-size-changes-no-layout-triggers.html: Added.
        * svg/as-object/embedded-svg-size-changes.html: Added.
        * svg/as-object/nested-embedded-svg-size-changes-expected.txt: Added.
        * svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1.html: Added.
        * svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2.html: Added.
        * svg/as-object/nested-embedded-svg-size-changes.html: Added.
        * svg/as-object/resources: Added.
        * svg/as-object/resources/embedded-svg-size-changes-no-layout-triggers.svg: Added.
        * svg/as-object/resources/embedded-svg-size-changes.svg: Added.
        * svg/as-object/resources/nested-embedded-svg-size-changes-target-no-layout-triggers-1.html: Added.
        * svg/as-object/resources/nested-embedded-svg-size-changes-target-no-layout-triggers-2.html: Added.
        * svg/as-object/resources/nested-embedded-svg-size-changes-target.html: Added.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml-disabled: Removed.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml-disabled: Removed.
        * svg/zoom/page/zoom-svg-through-object-with-auto-size.html: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-auto-size.html-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-auto-size.html-disabled: Removed.
        * svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml-disabled: Removed.
        * svg/zoom/page/zoom-svg-through-object-with-override-size.html: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-override-size.html-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-override-size.html-disabled: Removed.
        * svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml: Copied from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml-disabled.
        * svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml-disabled: Removed.

2011-08-05  Dan Bernstein  <mitz@apple.com>

        Renamed fast/blockflow to fast/writing-mode.

        Rubber-stamped by Sam Weinig.

        * fast/blockflow: Removed.
        * fast/writing-mode: Copied from fast/blockflow.
        * platform/chromium-linux/fast/blockflow: Removed.
        * platform/chromium-linux/fast/writing-mode: Copied from platform/chromium-linux/fast/blockflow.
        * platform/chromium-mac-leopard/fast/blockflow: Removed.
        * platform/chromium-mac-leopard/fast/writing-mode: Copied from platform/chromium-mac-leopard/fast/blockflow.
        * platform/chromium-mac/fast/blockflow: Removed.
        * platform/chromium-mac/fast/writing-mode: Copied from platform/chromium-mac/fast/blockflow.
        * platform/chromium-win-vista/fast/blockflow: Removed.
        * platform/chromium-win-vista/fast/writing-mode: Copied from platform/chromium-win-vista/fast/blockflow.
        * platform/chromium-win-xp/fast/blockflow: Removed.
        * platform/chromium-win-xp/fast/writing-mode: Copied from platform/chromium-win-xp/fast/blockflow.
        * platform/chromium-win/fast/blockflow: Removed.
        * platform/chromium-win/fast/writing-mode: Copied from platform/chromium-win/fast/blockflow.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/blockflow: Removed.
        * platform/gtk/fast/writing-mode: Copied from platform/gtk/fast/blockflow.
        * platform/mac-leopard/fast/blockflow: Removed.
        * platform/mac-leopard/fast/writing-mode: Copied from platform/mac-leopard/fast/blockflow.
        * platform/mac-wk2/fast/blockflow: Removed.
        * platform/mac-wk2/fast/writing-mode: Copied from platform/mac-wk2/fast/blockflow.
        * platform/mac/Skipped:
        * platform/mac/fast/blockflow: Removed.
        * platform/mac/fast/writing-mode: Copied from platform/mac/fast/blockflow.
        * platform/qt-mac/Skipped:
        * platform/qt/Skipped:
        * platform/qt/fast/blockflow: Removed.
        * platform/qt/fast/writing-mode: Copied from platform/qt/fast/blockflow.
        * platform/win/fast/blockflow: Removed.
        * platform/win/fast/writing-mode: Copied from platform/win/fast/blockflow.
        * platform/wk2/Skipped:

2011-08-05  Ryosuke Niwa  <rniwa@webkit.org>

        r92330 has been rolled out so its rebaseline needs to be reverted as well
        https://bugs.webkit.org/show_bug.cgi?id=65805

        * platform/chromium-win/editing/pasteboard/paste-pre-001-expected.txt: Added.
        * platform/chromium-win/editing/pasteboard/paste-pre-002-expected.txt: Added.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Added.

2011-08-05  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r92330.
        http://trac.webkit.org/changeset/92330
        https://bugs.webkit.org/show_bug.cgi?id=65804

        caused various regressions in paste (Requested by rniwa on
        #webkit).

        * editing/pasteboard/5065605-expected.txt:
        * editing/pasteboard/copy-paste-text-in-h1-expected.txt: Removed.
        * editing/pasteboard/copy-paste-text-in-h1.html: Removed.
        * editing/pasteboard/display-block-on-spans-expected.txt:
        * editing/pasteboard/paste-pre-001-expected.txt:
        * editing/pasteboard/paste-pre-002-expected.txt:
        * editing/pasteboard/paste-text-011-expected.txt:

2011-08-05  Ryosuke Niwa  <rniwa@webkit.org>

        Skip a failing test added by r92526 to Qt's skipped list.
        The failure is tracked by the bug 65801.

        * platform/qt/Skipped:

2011-08-05  Jian Li  <jianli@chromium.org>

        Skip test eeza-Pro-vertical-metrics-adjustment.html in chromium.

        * platform/chromium/test_expectations.txt:

2011-08-05  Ryosuke Niwa  <rniwa@webkit.org>

        Upwards cursor movement incorrect when previous block ends with <br>
        https://bugs.webkit.org/show_bug.cgi?id=33247

        Reviewed by Tony Chang.

        Added tests to ensure WebKit lets user move caret up in strict mode and in RTL content
        when the previous line ends with a br.

        * editing/execCommand/move-selection-back-line-rtl-expected.txt: Copied from
        LayoutTests/editing/execCommand/move-selection-back-line-expected.txt.
        * editing/execCommand/move-selection-back-line-rtl.html: Copied from
        LayoutTests/editing/execCommand/move-selection-back-line.html.
        * editing/execCommand/move-selection-back-line-strict-expected.txt: Copied from
        LayoutTests/editing/execCommand/move-selection-back-line-expected.txt.
        * editing/execCommand/move-selection-back-line-strict.html: Copied from
        LayoutTests/editing/execCommand/move-selection-back-line.html.

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Add more Lion specific test results and add more tests to the skipped list.

        * platform/mac-lion/Skipped:
        * platform/mac-snowleopard/fast/dom: Added.
        * platform/mac-snowleopard/fast/dom/52776-expected.png: Copied from platform/mac/fast/dom/52776-expected.png.
        * platform/mac-snowleopard/fast/dom/52776-expected.txt: Copied from platform/mac/fast/dom/52776-expected.txt.
        * platform/mac-snowleopard/fast/loader: Added.
        * platform/mac-snowleopard/fast/preloader: Added.
        * platform/mac-snowleopard/fast/preloader/document-write-2-expected.txt: Copied from fast/preloader/document-write-2-expected.txt.
        * platform/mac-snowleopard/fast/preloader/document-write-expected.txt: Copied from fast/preloader/document-write-expected.txt.
        * platform/mac-snowleopard/fast/preloader/script-expected.txt: Copied from fast/preloader/script-expected.txt.
        * platform/mac/fast/dom/52776-expected.png:
        * platform/mac/fast/dom/52776-expected.txt:
        * platform/mac/fast/loader/file-url-mimetypes-2-expected.txt:
        * platform/mac/fast/loader/file-url-mimetypes-expected.txt:
        * platform/mac/fast/preloader: Added.
        * platform/mac/fast/preloader/document-write-2-expected.txt: Added.
        * platform/mac/fast/preloader/document-write-expected.txt: Added.
        * platform/mac/fast/preloader/script-expected.txt: Added.

2011-08-05  Jian Li  <jianli@chromium.org>

        Skip canvas-putImageData.html in chromium.

        * platform/chromium/test_expectations.txt:

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Future proof an Objective-C test
        https://bugs.webkit.org/show_bug.cgi?id=65788

        Don't check explicitly for class names; just check that the objects are instances of the right classes.

        * platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
        * platform/mac/fast/dom/wrapper-classes-objc.html:

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Add a Lion specific test for fast/repaint/canvas-putImageData.html

        * platform/mac-snowleopard/fast/repaint: Added.
        * platform/mac-snowleopard/fast/repaint/canvas-putImageData-expected.txt: Copied from fast/repaint/canvas-putImageData-expected.txt.
        * platform/mac/fast/repaint/canvas-putImageData-expected.txt: Added.

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Add more Lion specific test results.

        * platform/mac-snowleopard/fast/text/capitalize-boundaries-expected.png: Copied from platform/mac/fast/text/capitalize-boundaries-expected.png.
        * platform/mac-snowleopard/fast/text/capitalize-boundaries-expected.txt: Copied from platform/mac/fast/text/capitalize-boundaries-expected.txt.
        * platform/mac-snowleopard/fast/text/complex-text-opacity-expected.png: Copied from platform/mac/fast/text/complex-text-opacity-expected.png.
        * platform/mac-snowleopard/fast/text/complex-text-opacity-expected.txt: Copied from platform/mac/fast/text/complex-text-opacity-expected.txt.
        * platform/mac-snowleopard/fast/text/international: Added.
        * platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Copied from platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt.
        * platform/mac-snowleopard/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html: Copied from platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html.
        * platform/mac-snowleopard/fast/text/international/bidi-AN-after-L-expected.png: Copied from platform/mac/fast/text/international/bidi-AN-after-L-expected.png.
        * platform/mac-snowleopard/fast/text/international/bidi-AN-after-L-expected.txt: Copied from platform/mac/fast/text/international/bidi-AN-after-L-expected.txt.
        * platform/mac-snowleopard/fast/text/international/bidi-AN-after-empty-run-expected.png: Copied from platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png.
        * platform/mac-snowleopard/fast/text/international/bidi-AN-after-empty-run-expected.txt: Copied from platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt.
        * platform/mac-snowleopard/fast/text/international/bidi-CS-after-AN-expected.png: Copied from platform/mac/fast/text/international/bidi-CS-after-AN-expected.png.
        * platform/mac-snowleopard/fast/text/international/bidi-CS-after-AN-expected.txt: Copied from platform/mac/fast/text/international/bidi-CS-after-AN-expected.txt.
        * platform/mac-snowleopard/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png: Copied from platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png.
        * platform/mac-snowleopard/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt: Copied from platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt.
        * platform/mac-snowleopard/fast/text/international/bidi-neutral-run-expected.png: Copied from platform/mac/fast/text/international/bidi-neutral-run-expected.png.
        * platform/mac-snowleopard/fast/text/international/bidi-neutral-run-expected.txt: Copied from platform/mac/fast/text/international/bidi-neutral-run-expected.txt.
        * platform/mac-snowleopard/fast/text/international/bold-bengali-expected.png: Copied from platform/mac/fast/text/international/bold-bengali-expected.png.
        * platform/mac-snowleopard/fast/text/international/bold-bengali-expected.txt: Copied from platform/mac/fast/text/international/bold-bengali-expected.txt.
        * platform/mac-snowleopard/fast/text/international/khmer-selection-expected.png: Copied from platform/mac/fast/text/international/khmer-selection-expected.png.
        * platform/mac-snowleopard/fast/text/international/khmer-selection-expected.txt: Copied from platform/mac/fast/text/international/khmer-selection-expected.txt.
        * platform/mac/fast/text/capitalize-boundaries-expected.png:
        * platform/mac/fast/text/capitalize-boundaries-expected.txt:
        * platform/mac/fast/text/complex-text-opacity-expected.png:
        * platform/mac/fast/text/complex-text-opacity-expected.txt:
        * platform/mac/fast/text/hyphenate-locale-expected.txt:
        * platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.png:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.txt:
        * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png:
        * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.png:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.txt:
        * platform/mac/fast/text/international/bold-bengali-expected.png:
        * platform/mac/fast/text/international/bold-bengali-expected.txt:
        * platform/mac/fast/text/international/khmer-selection-expected.png:
        * platform/mac/fast/text/international/khmer-selection-expected.txt:
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png:
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.txt:
        * platform/mac/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png:

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Add two fast/text tests to the skipped list.

        * platform/mac-lion/Skipped:

2011-08-05  Anders Carlsson  <andersca@apple.com>

        Add Lion specific test results for css1 and css2.1.

        * platform/mac-snowleopard/css1: Added.
        * platform/mac-snowleopard/css1/font_properties: Added.
        * platform/mac-snowleopard/css1/font_properties/font-expected.png: Copied from platform/mac/css1/font_properties/font-expected.png.
        * platform/mac-snowleopard/css1/font_properties/font-expected.txt: Copied from platform/mac/css1/font_properties/font-expected.txt.
        * platform/mac-snowleopard/css2.1: Added.
        * platform/mac-snowleopard/css2.1/t1202-counter-09-b-expected.png: Copied from platform/mac/css2.1/t1202-counter-09-b-expected.png.
        * platform/mac-snowleopard/css2.1/t1202-counter-09-b-expected.txt: Copied from platform/mac/css2.1/t1202-counter-09-b-expected.txt.
        * platform/mac-snowleopard/css2.1/t1202-counters-09-b-expected.png: Copied from platform/mac/css2.1/t1202-counters-09-b-expected.png.
        * platform/mac-snowleopard/css2.1/t1202-counters-09-b-expected.txt: Copied from platform/mac/css2.1/t1202-counters-09-b-expected.txt.
        * platform/mac-snowleopard/css2.1/t1508-c527-font-05-b-expected.png: Copied from platform/mac/css2.1/t1508-c527-font-05-b-expected.png.
        * platform/mac-snowleopard/css2.1/t1508-c527-font-05-b-expected.txt: Copied from platform/mac/css2.1/t1508-c527-font-05-b-expected.txt.
        * platform/mac-snowleopard/css2.1/t1508-c527-font-10-c-expected.png: Copied from platform/mac/css2.1/t1508-c527-font-10-c-expected.png.
        * platform/mac-snowleopard/css2.1/t1508-c527-font-10-c-expected.txt: Copied from platform/mac/css2.1/t1508-c527-font-10-c-expected.txt.
        * platform/mac/css1/font_properties/font-expected.png:
        * platform/mac/css1/font_properties/font-expected.txt:
        * platform/mac/css2.1/t1202-counter-09-b-expected.png:
        * platform/mac/css2.1/t1202-counter-09-b-expected.txt:
        * platform/mac/css2.1/t1202-counters-09-b-expected.png:
        * platform/mac/css2.1/t1202-counters-09-b-expected.txt:
        * platform/mac/css2.1/t1508-c527-font-05-b-expected.png:
        * platform/mac/css2.1/t1508-c527-font-05-b-expected.txt:
        * platform/mac/css2.1/t1508-c527-font-10-c-expected.png:
        * platform/mac/css2.1/t1508-c527-font-10-c-expected.txt:

2011-08-05  Jian Li  <jianli@chromium.org>

        Unreviewed, skip those tests still failing on chromium due to incomplete
        baseline caused by r92466.

        * platform/chromium/test_expectations.txt:

2011-08-05  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r92433): media/video-src-change.html fails
        https://bugs.webkit.org/show_bug.cgi?id=65771

        Reviewed by Dimitri Glazkov.

        Give the listener as the second argument to removeEventListener.

        * media/video-src-change.html:

2011-08-05  Ami Fischman  <fischman@chromium.org>

        compositing/video/video-background-color.html test does not produce correct output
        https://bugs.webkit.org/show_bug.cgi?id=55519

        Unreviewed.
        
        Chromium doesn't support video codecs that support alpha, so stop
        running (and failing) a test that depends on codecs supporting alpha.

        * platform/chromium/test_expectations.txt:

2011-08-05  Yael Aharon  <yael.aharon@nokia.com>

        dir=auto needs to work on value of input and textarea elements
        https://bugs.webkit.org/show_bug.cgi?id=65428

        Reviewed by Darin Adler.

        * fast/dom/HTMLElement/attr-dir-auto-changed-text-form-control-expected.txt: Added.
        * fast/dom/HTMLElement/attr-dir-auto-changed-text-form-control.html: Added.
        * fast/dom/HTMLElement/attr-dir-auto-text-form-control-child-expected.txt: Added.
        * fast/dom/HTMLElement/attr-dir-auto-text-form-control-child.html: Added.
        * fast/dom/HTMLElement/attr-dir-auto-text-form-control-expected.txt: Added.
        * fast/dom/HTMLElement/attr-dir-auto-text-form-control.html: Added.

2011-08-05  Vsevolod Vlasov  <vsevik@chromium.org>

        [Qt]Web Inspector: REGRESSION(r91928): It made 2 tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65364

        Unreviewed: unskipping tests now that the test was fixed.

        * platform/qt/Skipped:

2011-08-05  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: constrain maximum depth for returnByValue objects
        https://bugs.webkit.org/show_bug.cgi?id=65761

        Reviewed by Pavel Feldman.

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:

2011-08-05  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Skip 2 crashy tests on Qt SnowLeopard Intel Release bot to make a green world,

        * platform/qt-mac/Skipped:

2011-08-05  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Add http/tests/inspector/resource-tree/resource-tree-non-unique-url.html
        to Skiplist because it makes ARMv5 Linux Qt Release weepy.

        * platform/qt-arm/Skipped:

2011-08-05  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Ossyize fast/forms/enter-clicks-buttons.html because
        it makes Qt SnowLeopard Intel Release bot bleeding after r92375.

        * platform/qt-mac/Skipped:

2011-08-05  David Reveman  <reveman@chromium.org>

        [chromium] Rebaseline following r92255.
        https://bugs.webkit.org/show_bug.cgi?id=65736

        Reviewed by James Robinson.

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/ancestor-overflow-change-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-linux/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-linux/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/media/video-transformed-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/backface-visibility-transformed-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/tiny-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-mac/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/ancestor-overflow-change-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-mac/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-mac/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/backface-visibility-transformed-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/tiny-layer-rotated-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/ancestor-overflow-change-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.png:
        * platform/chromium-gpu-win/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-win/media/video-transformed-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/backface-visibility-transformed-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/tiny-layer-rotated-expected.png:
        * platform/chromium/test_expectations.txt:

2011-08-05  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/xsl/xslt-import-depth.xml is failing
        https://bugs.webkit.org/show_bug.cgi?id=65758

        Chromium test_expectations.txt update

        * platform/chromium/test_expectations.txt:

2011-08-05  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/xsl/import-after-comment.xml is failing
        https://bugs.webkit.org/show_bug.cgi?id=65757

        Chromium test_expectations.txt update

        * platform/chromium/test_expectations.txt:

2011-08-05  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/loader/ping-error.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=65754

        Chromium test_expectations.txt update

        * platform/chromium/test_expectations.txt:

2011-08-05  Kenichi Ishibashi  <bashi@chromium.org>

        Parsing CSS3 font-feature-settings property
        https://bugs.webkit.org/show_bug.cgi?id=63618

        Add parsing test case for -webkit-font-feature-settings property.

        Reviewed by Shinichiro Hamaji.

        * css3/font-feature-settings-parsing-expected.txt: Added.
        * css3/font-feature-settings-parsing.html: Added.

2011-08-05  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r92439.
        http://trac.webkit.org/changeset/92439
        https://bugs.webkit.org/show_bug.cgi?id=65753

        Caused 9 tests to fail on Qt (Requested by abarth on #webkit).

        * loader/document-destruction-within-unload-expected.txt: Removed.
        * loader/document-destruction-within-unload.html: Removed.
        * loader/resources/document-destruction-within-unload-iframe.html: Removed.
        * loader/resources/document-destruction-within-unload.svg: Removed.

2011-08-04  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update after r92341.

        * platform/chromium/test_expectations.txt:

2011-08-04  Scott Graham  <scottmg@chromium.org>

        Bad interaction between document destruction and unload events
        https://bugs.webkit.org/show_bug.cgi?id=64741

        Reviewed by Adam Barth.

        * loader/document-destruction-within-unload-expected.txt: Added.
        * loader/document-destruction-within-unload.html: Added.
        * loader/resources/document-destruction-within-unload-iframe.html: Added.
        * loader/resources/document-destruction-within-unload.svg: Added.

2011-08-04  Kent Tamura  <tkent@chromium.org>

        Move <input type=week> tests to fast/forms/week/
        https://bugs.webkit.org/show_bug.cgi?id=65676

        Reviewed by Tony Chang.

        * fast/forms/ValidityState-rangeOverflow-expected.txt:
        * fast/forms/ValidityState-rangeUnderflow-expected.txt:
        * fast/forms/ValidityState-stepMismatch-expected.txt:
        * fast/forms/ValidityState-typeMismatch-week-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-week.html: Removed.
        * fast/forms/date-input-visible-strings-expected.txt:
        * fast/forms/date-input-visible-strings.html:
        * fast/forms/input-stepup-stepdown-expected.txt:
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt:
        * fast/forms/input-type-change3-expected.txt:
        * fast/forms/input-valueasdate-week-expected.txt: Removed.
        * fast/forms/input-valueasdate-week.html: Removed.
        * fast/forms/input-valueasnumber-week-expected.txt: Removed.
        * fast/forms/input-valueasnumber-week.html: Removed.
        * fast/forms/script-tests/ValidityState-rangeOverflow.js:
        * fast/forms/script-tests/ValidityState-rangeUnderflow.js:
        * fast/forms/script-tests/ValidityState-stepMismatch.js:
        * fast/forms/script-tests/ValidityState-typeMismatch-week.js: Removed.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js:
        * fast/forms/script-tests/input-stepup-stepdown.js:
        * fast/forms/script-tests/input-type-change3.js:
        * fast/forms/script-tests/input-valueasdate-week.js: Removed.
        * fast/forms/script-tests/input-valueasnumber-week.js: Removed.
        * fast/forms/week: Added.
        * fast/forms/week/ValidityState-rangeOverflow-week-expected.txt: Added.
        * fast/forms/week/ValidityState-rangeOverflow-week.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeOverflow.js.
        * fast/forms/week/ValidityState-rangeUnderflow-week-expected.txt: Added.
        * fast/forms/week/ValidityState-rangeUnderflow-week.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-rangeUnderflow.js.
        * fast/forms/week/ValidityState-stepMismatch-week-expected.txt: Added.
        * fast/forms/week/ValidityState-stepMismatch-week.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-stepMismatch.js.
        * fast/forms/week/ValidityState-typeMismatch-week-expected.txt: Copied from LayoutTests/fast/forms/ValidityState-typeMismatch-week-expected.txt.
        * fast/forms/week/ValidityState-typeMismatch-week.html: Copied from LayoutTests/fast/forms/script-tests/ValidityState-typeMismatch-week.js.
        * fast/forms/week/input-valueasdate-week-expected.txt: Copied from LayoutTests/fast/forms/input-valueasdate-week-expected.txt.
        * fast/forms/week/input-valueasdate-week.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasdate-week.js.
        * fast/forms/week/input-valueasnumber-week-expected.txt: Copied from LayoutTests/fast/forms/input-valueasnumber-week-expected.txt.
        * fast/forms/week/input-valueasnumber-week.html: Copied from LayoutTests/fast/forms/script-tests/input-valueasnumber-week.js.
        * fast/forms/week/week-input-type-expected.txt: Added.
        * fast/forms/week/week-input-type.html: Copied from LayoutTests/fast/forms/script-tests/input-type-change3.js.
        * fast/forms/week/week-input-visible-string-expected.txt: Added.
        * fast/forms/week/week-input-visible-string.html: Copied from LayoutTests/fast/forms/date-input-visible-strings.html.
        * fast/forms/week/week-stepup-stepdown-expected.txt: Added.
        * fast/forms/week/week-stepup-stepdown-from-renderer-expected.txt: Added.
        * fast/forms/week/week-stepup-stepdown-from-renderer.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown-from-renderer.js.
        * fast/forms/week/week-stepup-stepdown.html: Copied from LayoutTests/fast/forms/script-tests/input-stepup-stepdown.js.

2011-08-04  Tim Horton  <timothy_horton@apple.com>

        Reviewed by Nikolas Zimmerman.

        Errors encountered within SVG documents should be reported to the console
        https://bugs.webkit.org/show_bug.cgi?id=62599
        <rdar://problem/9727074>

        Adjust SVG error tests to expect new console output on unexpected input.

        * platform/chromium-win/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/001-expected.txt:
        * platform/gtk/svg/hixie/error/007-expected.txt:
        * platform/gtk/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/015-expected.txt:
        * platform/mac/svg/hixie/error/001-expected.txt:
        * platform/mac/svg/hixie/error/007-expected.txt:
        * platform/mac/svg/hixie/error/013-expected.txt:
        * platform/mac/svg/hixie/error/015-expected.txt:
        * platform/qt/svg/hixie/error/001-expected.txt:
        * platform/qt/svg/hixie/error/007-expected.txt:
        * platform/qt/svg/hixie/error/013-expected.txt:
        * platform/qt/svg/hixie/error/015-expected.txt:
        * svg/custom/invalid-length-units-expected.txt:
        * svg/custom/svg-parse-overflow-1-expected.txt:
        * svg/custom/svg-parse-overflow-2-expected.txt:
        * svg/custom/svg-parse-overflow-3-expected.txt:
        * svg/custom/svg-parse-overflow-4-expected.txt:
        * svg/custom/svg-parse-overflow-5-expected.txt:

2011-08-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r92419.
        http://trac.webkit.org/changeset/92419
        https://bugs.webkit.org/show_bug.cgi?id=65726

        "committed partially to branch" (Requested by thorton on
        #webkit).

        * platform/chromium-win/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/001-expected.txt:
        * platform/gtk/svg/hixie/error/007-expected.txt:
        * platform/gtk/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/015-expected.txt:
        * platform/mac/svg/hixie/error/001-expected.txt:
        * platform/mac/svg/hixie/error/007-expected.txt:
        * platform/mac/svg/hixie/error/013-expected.txt:
        * platform/mac/svg/hixie/error/015-expected.txt:
        * platform/qt/svg/hixie/error/001-expected.txt:
        * platform/qt/svg/hixie/error/007-expected.txt:
        * platform/qt/svg/hixie/error/013-expected.txt:
        * platform/qt/svg/hixie/error/015-expected.txt:
        * svg/custom/invalid-length-units-expected.txt:
        * svg/custom/svg-parse-overflow-1-expected.txt:
        * svg/custom/svg-parse-overflow-2-expected.txt:
        * svg/custom/svg-parse-overflow-3-expected.txt:
        * svg/custom/svg-parse-overflow-4-expected.txt:
        * svg/custom/svg-parse-overflow-5-expected.txt:

2011-08-04  Tim Horton  <timothy_horton@apple.com>

        Reviewed by Nikolas Zimmerman.

        Errors encountered within SVG documents should be reported to the console
        https://bugs.webkit.org/show_bug.cgi?id=62599
        <rdar://problem/9727074>

        Adjust SVG error tests to expect new console output on unexpected input.

        * platform/chromium-win/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/001-expected.txt:
        * platform/gtk/svg/hixie/error/007-expected.txt:
        * platform/gtk/svg/hixie/error/013-expected.txt:
        * platform/gtk/svg/hixie/error/015-expected.txt:
        * platform/mac/svg/hixie/error/001-expected.txt:
        * platform/mac/svg/hixie/error/007-expected.txt:
        * platform/mac/svg/hixie/error/013-expected.txt:
        * platform/mac/svg/hixie/error/015-expected.txt:
        * platform/qt/svg/hixie/error/001-expected.txt:
        * platform/qt/svg/hixie/error/007-expected.txt:
        * platform/qt/svg/hixie/error/013-expected.txt:
        * platform/qt/svg/hixie/error/015-expected.txt:
        * svg/custom/invalid-length-units-expected.txt:
        * svg/custom/svg-parse-overflow-1-expected.txt:
        * svg/custom/svg-parse-overflow-2-expected.txt:
        * svg/custom/svg-parse-overflow-3-expected.txt:
        * svg/custom/svg-parse-overflow-4-expected.txt:
        * svg/custom/svg-parse-overflow-5-expected.txt:

2011-08-04  Fady Samuel  <fsamuel@chromium.org>

        Background Does Not Scale Correctly with Page

        Scaling is applied twice to the background (the paint area is doubly scaled).
        This patch fixes this issue by passing the unscaled document rect to paintFillLayers
        in paintRootBoxFillLayers.

        https://bugs.webkit.org/show_bug.cgi?id=65690

        Reviewed by Simon Fraser.

        * fast/repaint/background-scaling-expected.png: Added.
        * fast/repaint/background-scaling-expected.txt: Added.
        * fast/repaint/background-scaling.html: Added.

2011-08-04  Yael Aharon  <yael.aharon@nokia.com>

        [Qt] 69 tests failing after http://trac.webkit.org/changeset/92375
        https://bugs.webkit.org/show_bug.cgi?id=65721

        Unreviewed.
        
        Skipping tests until rebaseline.

        * platform/qt/Skipped:

2011-08-04  Sergey Glazunov  <serg.glazunov@gmail.com>

        Fix integer overflow in custom bindings for WebGLRenderingContext
        https://bugs.webkit.org/show_bug.cgi?id=65646

        Reviewed by Kenneth Russell.

        * fast/canvas/webgl/resources/floatArrayUniformShader.vert: Added.
        * fast/canvas/webgl/resources/intArrayUniformShader2.vert: Added.
        * fast/canvas/webgl/uniform-array-length-overflow-expected.txt: Added.
        * fast/canvas/webgl/uniform-array-length-overflow.html: Added.

2011-08-04  Adam Barth  <abarth@webkit.org>

        Refine some test expectations to account for flakiness.

        * platform/chromium/test_expectations.txt:

2011-08-04  Anders Carlsson  <andersca@apple.com>

        Make fast/css/import-and-insert-rule-no-update.html less flaky
        https://bugs.webkit.org/show_bug.cgi?id=65713

        Reviewed by Dan Bernstein.

        Wait until the @imported style sheet has finished loading before running the test.

        * fast/css/import-and-insert-rule-no-update.html:

2011-08-04  Anders Carlsson  <andersca@apple.com>

        Add more failing tests to the skipped list.

        * platform/mac-lion/Skipped:

2011-08-03  Adam Roben  <aroben@apple.com>

        Test that a 2^25x2^25 pixel layer doesn't cause a crash

        Test for <http://webkit.org/b/65637> <rdar://problem/9784849> Crash beneath
        PlatformCALayerWinInternal::updateTiles when zooming on Google Maps

        Reviewed by Sam Weinig.

        * compositing/tiling/crash-huge-layer-expected.txt: Added.
        * compositing/tiling/crash-huge-layer.html: Added.

2011-08-04  Jian Li  <jianli@chromium.org>

        Unreviewed, mark gain.html as flaky on Linux chromium.

        * platform/chromium/test_expectations.txt:

2011-08-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 crashing tests on GTK. See bug 65699 and 65702.

        * platform/gtk/Skipped:

2011-08-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip some svg tests on GTK, likely affected by bug 39022.

        * platform/gtk/Skipped:

2011-08-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline and test_expectations update (2 tests
        now passing).

        * platform/gtk/fast/text/international/unicode-bidi-plaintext-expected.txt:
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
        * platform/gtk/test_expectations.txt:

2011-08-04  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Normalize test_expectations.txt file.

        * platform/chromium/test_expectations.txt: Ran webkit-path optimize-expectations.

2011-08-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK new baselines for new tests.

        * platform/gtk/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.txt: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.png: Added.
        * platform/gtk/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-add-in-static-position-block-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-add-in-static-position-block-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-add-in-static-position-block2-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.txt: Added.
        * platform/gtk/fast/blockflow/broken-ideograph-small-caps-expected.png: Added.
        * platform/gtk/fast/blockflow/broken-ideographic-font-expected.png: Added.
        * platform/gtk/fast/borders/only-one-border-with-width-expected.png: Added.
        * platform/gtk/fast/borders/only-one-border-with-width-expected.txt: Added.
        * platform/gtk/fast/css/color-leakage-expected.png: Added.
        * platform/gtk/fast/css/color-leakage-expected.txt: Added.
        * platform/gtk/fast/css/font-family-pictograph-expected.png: Added.
        * platform/gtk/fast/css/font-family-pictograph-expected.txt: Added.
        * platform/gtk/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Added.
        * platform/gtk/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Added.
        * platform/gtk/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/gtk/fast/forms/input-appearance-number-rtl-expected.txt: Added.
        * platform/gtk/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
        * platform/gtk/fast/forms/textarea-placeholder-wrapping-expected.txt: Added.
        * platform/gtk/fast/forms/textfield-overflow-by-value-update-expected.png: Added.
        * platform/gtk/fast/forms/textfield-overflow-by-value-update-expected.txt: Added.
        * platform/gtk/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/gtk/fast/multicol/span/span-as-nested-inline-block-child-expected.txt: Added.
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-expected.png: Added.
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-expected.txt: Added.
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/gtk/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.
        * platform/gtk/fast/text/midword-break-before-surrogate-pair-expected.png: Added.
        * platform/gtk/fast/text/midword-break-before-surrogate-pair-expected.txt: Added.
        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Added.
        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
        * platform/gtk/svg/as-border-image/svg-as-border-image-expected.png: Added.
        * platform/gtk/svg/as-border-image/svg-as-border-image-expected.txt: Added.
        * platform/gtk/svg/custom/absolute-root-position-masking-expected.png: Added.
        * platform/gtk/svg/custom/absolute-root-position-masking-expected.txt: Added.
        * platform/gtk/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/gtk/svg/custom/linking-uri-01-b-expected.txt: Added.
        * platform/gtk/svg/custom/repaint-shadow-expected.png: Added.
        * platform/gtk/svg/custom/repaint-shadow-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/gtk/svg/custom/svg-fonts-fallback-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-segmented-expected.png: Added.
        * platform/gtk/svg/custom/svg-fonts-segmented-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/gtk/svg/custom/svg-fonts-word-spacing-expected.txt: Added.
        * platform/gtk/svg/custom/text-tref-03-b-change-href-dom-expected.png: Added.
        * platform/gtk/svg/custom/text-tref-03-b-change-href-dom-expected.txt: Added.
        * platform/gtk/svg/custom/text-tref-03-b-change-href-expected.png: Added.
        * platform/gtk/svg/custom/text-tref-03-b-change-href-expected.txt: Added.
        * platform/gtk/svg/custom/text-tref-03-b-referenced-element-removal-expected.png: Added.
        * platform/gtk/svg/custom/text-tref-03-b-referenced-element-removal-expected.txt: Added.
        * platform/gtk/svg/custom/text-tref-03-b-tref-removal-expected.png: Added.
        * platform/gtk/svg/custom/text-tref-03-b-tref-removal-expected.txt: Added.
        * platform/gtk/svg/custom/tref-own-content-removal-expected.png: Added.
        * platform/gtk/svg/custom/tref-own-content-removal-expected.txt: Added.
        * platform/gtk/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/gtk/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.

2011-08-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Pretty print JSONP in network panel preview tab.
        https://bugs.webkit.org/show_bug.cgi?id=65559

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-preview-json-expected.txt: Added.
        * http/tests/inspector/network/network-preview-json.html: Added.

2011-08-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: replace isRegex with urlRegex in setBreakpointByUrl
        https://bugs.webkit.org/show_bug.cgi?id=65684

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/debugger-set-breakpoint-regex-expected.txt:
        * inspector/debugger/debugger-set-breakpoint-regex.html:

2011-08-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Rename sourceId -> scriptId in the protocol and the source code.
        https://bugs.webkit.org/show_bug.cgi?id=65682

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/source-file.html:

2011-08-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline.

        * platform/gtk/fast/dom/Range/getBoundingClientRect-expected.txt:
        * platform/gtk/fast/dom/Range/getClientRects-expected.txt:
        * platform/gtk/fast/dom/Window/window-postmessage-clone-expected.txt:
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt: Added.
        * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt: Added.
        * platform/gtk/fast/dom/prototype-inheritance-expected.txt: Added.
        * platform/gtk/fast/js/global-constructors-expected.txt: Added.

2011-08-04  Shinichiro Hamaji  <hamaji@chromium.org>

        [Chromium] Needs eventSender.scalePageBy()
        https://bugs.webkit.org/show_bug.cgi?id=58013

        Unreviewed chromium test_expectations.txt update

        * platform/chromium/test_expectations.txt:

2011-08-02  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Fix index data invalidation bugs.
        https://bugs.webkit.org/show_bug.cgi?id=65547

        Reviewed by Tony Chang.

        Add layout test to verify that update object store data causes old
        index data to be invalidated.

        * storage/indexeddb/index-unique.html: Added.

2011-08-04  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/box-shadow/box-shadow-clipped-slices.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=65666

        Chromium test_expectations.txt update

        * platform/chromium/test_expectations.txt:

2011-08-04  Shinichiro Hamaji  <hamaji@chromium.org>

        [Chromium] Needs eventSender.scalePageBy()
        https://bugs.webkit.org/show_bug.cgi?id=58013

        Chromium test rebaselining

        * platform/chromium-gpu-win/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-mac-leopard/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-mac/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-win/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-08-04  Adam Barth  <abarth@webkit.org>

        Test progression after <http://trac.webkit.org/changeset/92341>.

        * platform/chromium-mac/fast/dom/Element/scale-page-client-rects-expected.txt:
        * platform/chromium-mac/fast/dom/Range/scale-page-client-rects-expected.txt:

2011-08-04  Adam Barth  <abarth@webkit.org>

        Update baselines after <http://trac.webkit.org/changeset/92340>.

        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-vertical-expected.png:

2011-08-04  Adam Barth  <abarth@webkit.org>

        This test triggers a crasher on some ports.  The crasher is filed already.

        * platform/qt/Skipped:

2011-08-03  Alice Boxhall  <aboxhall@chromium.org>

        An element with role=textbox should have settable AXValue unless read-only
        https://bugs.webkit.org/show_bug.cgi?id=65664

        Reviewed by Chris Fleizach.

        * accessibility/aria-readonly-expected.txt:
        * accessibility/aria-readonly.html:

2011-08-03  Kentaro Hara  <haraken@google.com>

        Implement EventSender.scalePageBy()
        https://bugs.webkit.org/show_bug.cgi?id=58013

        Reviewed by Darin Fisher.

        Implemented EventSender.scalePageBy(f, x, y), which scales a page by a factor of f
        and then sets a scroll position to (x, y). Enabled the tests that had been waiting
        for the implementation of EventSender.scalePageBy(f, x, y).

        * platform/chromium-linux/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-linux/fast/repaint/scale-page-shrink-expected.png: Added.
        * platform/chromium-linux/fast/repaint/scale-page-shrink-expected.txt: Added.
        * platform/chromium-mac/fast/dom/Element/scale-page-bounding-client-rect-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/Range/scale-page-bounding-client-rect-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Element/scale-page-bounding-client-rect-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Element/scale-page-client-rects-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Range/scale-page-bounding-client-rect-expected.txt: Removed.
        * platform/chromium-win/fast/dom/Range/scale-page-client-rects-expected.txt: Removed.
        * platform/chromium/test_expectations.txt: Enabled one test. Enabled two tests for chromium-linux.

2011-08-03  Ian Henderson  <ianh@apple.com>

        Draw rectangular box shadow for elements with border-radius if no corners are visible
        https://bugs.webkit.org/show_bug.cgi?id=65006

        Reviewed by Simon Fraser.

        * fast/box-shadow/box-shadow-clipped-slices.html: Added.
        * platform/mac/fast/box-shadow/box-shadow-clipped-slices-expected.png: Added.
        * platform/mac/fast/box-shadow/box-shadow-clipped-slices-expected.txt: Added.

2011-08-03  Noel Gordon  <noel.gordon@gmail.com>

        [Chromium] fast/dom/resource-locations-in-created-html-document.html fails on win32
        https://bugs.webkit.org/show_bug.cgi?id=65521

        Reviewed by Adam Barth.

        file: scheme URI paths on Windows include the disk drive reference (C: for example).
        Refer to http://blogs.msdn.com/b/ie/archive/2006/12/06/file-uris-in-windows.aspx.

        * fast/dom/resource-locations-in-created-html-document.html:
        * platform/chromium/test_expectations.txt:

2011-08-03  Ryosuke Niwa  <rniwa@webkit.org>

        Revert an erroneous rebaseline from r92315.

        * fast/dom/navigator-detached-no-crash-expected.txt:

2011-08-03  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Windows and Linux rebaselines after r92330.

        * platform/chromium-win/editing/pasteboard/paste-pre-001-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-002-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Removed.

2011-08-03  Ryosuke Niwa  <rniwa@webkit.org>

        select-all, copy, paste of specialAncestorElements (e.g. pre, h1, etc) nests the element inside itself
        https://bugs.webkit.org/show_bug.cgi?id=26483

        Reviewed by Enrica Casucci.

        * editing/pasteboard/5065605-expected.txt:
        * editing/pasteboard/copy-paste-text-in-h1-expected.txt: Added.
        * editing/pasteboard/copy-paste-text-in-h1.html: Added.
        * editing/pasteboard/display-block-on-spans-expected.txt:
        * editing/pasteboard/paste-pre-001-expected.txt:
        * editing/pasteboard/paste-pre-002-expected.txt:
        * editing/pasteboard/paste-text-011-expected.txt:

2011-08-03  Mark Pilgrim  <pilgrim@chromium.org>

        Remove LegacyDefaultOptionalArguments flag from HTML DOM IDL files
        https://bugs.webkit.org/show_bug.cgi?id=65338

        Reviewed by Adam Barth.

        * fast/files/create-blob-url-crash-expected.txt:
        * fast/files/create-blob-url-crash.html:
        * fast/files/revoke-blob-url-expected.txt:
        * fast/files/revoke-blob-url.html:
        * fast/forms/ValidityState-customError-expected.txt:
        * fast/forms/ValidityState-customError.html:

2011-08-03  Mark Pilgrim  <pilgrim@chromium.org>

        Remove LegacyDefaultOptionalArguments flag from navigator IDL files
        https://bugs.webkit.org/show_bug.cgi?id=65370

        Reviewed by Adam Barth.

        * fast/dom/navigator-detached-no-crash-expected.txt:
        * platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:

2011-08-03  Zhenyao Mo  <zmo@google.com>

        Unreviewed, fix an error in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-08-03  Zhenyao Mo  <zmo@google.com>

        Unreviewed, skip fast/loader/reload-zero-byte-plugin.html for now, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-08-03  Tommy Widenflycht  <tommyw@google.com>

        MediaStream API: Implement PeerConnection and SignalingCallback
        https://bugs.webkit.org/show_bug.cgi?id=65101

        Reviewed by Adam Barth.

        LayoutTests will be provided by a follow-up CL, see <https://bugs.webkit.org/show_bug.cgi?id=56587>.

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-08-03  Adam Barth  <abarth@webkit.org>

        Crash in DocumentWriter::endIfNotLoadingMainResource
        https://bugs.webkit.org/show_bug.cgi?id=65581

        Reviewed by Nate Chapin.

        * fast/loader/reload-zero-byte-plugin-expected.txt: Added.
        * fast/loader/reload-zero-byte-plugin.html: Added.

2011-08-03  Anders Carlsson  <andersca@apple.com>

        Add a Mac Lion skipped list.

        * platform/mac-lion: Added.
        * platform/mac-lion/Skipped: Added.

2011-08-03  Stephen White  <senorblanco@chromium.org>

        [chromium] Added two compositing tests whose pixel results on the
        Mesa bots are different following
        http://trac.webkit.org/changeset/92255.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-03  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for media/media-controls-clone.html.

        * platform/gtk/media/media-controls-clone-expected.png: Added.
        * platform/gtk/media/media-controls-clone-expected.txt: Added.

2011-08-03  Kent Tamura  <tkent@chromium.org>

        [Chromium] Remove flaky failures of fast/speech/input-appearance-*.html.

        * platform/chromium/test_expectations.txt:

2011-08-03  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]REGRESSION(r92254): It made 2 tests timeout
        https://bugs.webkit.org/show_bug.cgi?id=65609

        [Qt]REGRESSION(r92224): It made editing/text-iterator/basic-iteration.html timeout
        https://bugs.webkit.org/show_bug.cgi?id=65605


        * platform/qt/Skipped: Skip failing tests:
         - fast/frames/lots-of-objects.html
         - fast/frames/lots-of-iframes.html
         - editing/text-iterator/basic-iteration.html

2011-08-03  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK svg rebaseline after r92047.

        * platform/gtk/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt:
        * platform/gtk/svg/batik/filters/feTile-expected.txt:
        * platform/gtk/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
        * platform/gtk/svg/batik/paints/patternRegionA-expected.txt:
        * platform/gtk/svg/batik/paints/patternRegions-expected.txt:
        * platform/gtk/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
        * platform/gtk/svg/batik/text/longTextOnPath-expected.txt:
        * platform/gtk/svg/batik/text/smallFonts-expected.txt:
        * platform/gtk/svg/batik/text/textAnchor-expected.txt:
        * platform/gtk/svg/batik/text/textDecoration-expected.txt:
        * platform/gtk/svg/batik/text/textEffect-expected.txt:
        * platform/gtk/svg/batik/text/textEffect2-expected.txt:
        * platform/gtk/svg/batik/text/textEffect3-expected.txt:
        * platform/gtk/svg/batik/text/textFeatures-expected.txt:
        * platform/gtk/svg/batik/text/textLayout-expected.txt:
        * platform/gtk/svg/batik/text/textLayout2-expected.txt:
        * platform/gtk/svg/batik/text/textLength-expected.txt:
        * platform/gtk/svg/batik/text/textOnPath-expected.txt:
        * platform/gtk/svg/batik/text/textOnPathSpaces-expected.txt:
        * platform/gtk/svg/batik/text/textPosition-expected.txt:
        * platform/gtk/svg/batik/text/textPosition2-expected.txt:
        * platform/gtk/svg/batik/text/textProperties-expected.txt:
        * platform/gtk/svg/batik/text/textProperties2-expected.txt:
        * platform/gtk/svg/batik/text/textStyles-expected.txt:
        * platform/gtk/svg/batik/text/verticalText-expected.txt:
        * platform/gtk/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/gtk/svg/custom/external-paintserver-reference-expected.txt: Added.
        * platform/gtk/svg/custom/linking-base-external-reference-expected.txt: Added.
        * platform/gtk/svg/custom/text-linking-expected.txt:
        * platform/gtk/svg/custom/zero-path-square-cap-rendering2-expected.txt: Added.
        * platform/gtk/svg/hixie/error/014-expected.txt:
        * platform/gtk/svg/hixie/use/002-expected.txt:

2011-08-03  Takashi Toyoshima  <toyoshim@chromium.org>

        WebSocket: Could not handle zero length text frame.
        https://bugs.webkit.org/show_bug.cgi?id=65592

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/zero-length-text-expected.txt: Added.
        * http/tests/websocket/tests/hybi/zero-length-text.html: Added.
        * http/tests/websocket/tests/hybi/zero-length-text_wsh.py: Added.

2011-08-02  Takashi Toyoshima  <toyoshim@chromium.org>

        WebSocket: Should be closed by receiving invalid continuation frame.

        https://bugs.webkit.org/show_bug.cgi?id=65527

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/invalid-continuation-expected.txt: Added.
        * http/tests/websocket/tests/hybi/invalid-continuation.html: Added.
        * http/tests/websocket/tests/hybi/invalid-continuation_wsh.py: Added.

2011-08-02  James Robinson  <jamesr@chromium.org>

        More expectation updates for r92255

        * platform/chromium/test_expectations.txt:

2011-08-02  James Robinson  <jamesr@chromium.org>

        Expectation follow-up for r92255

        * platform/chromium/test_expectations.txt:

2011-08-02  David Reveman  <reveman@chromium.org>

        [Chromium] Use edge-distance method for layer anti-aliasing.
        https://bugs.webkit.org/show_bug.cgi?id=64942

        Reviewed by James Robinson.

        Update expected results.

        * platform/chromium/test_expectations.txt:

2011-08-02  Zhenyao Mo  <zmo@google.com>

        Unreviewed, test expectations update, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-08-02  Anders Carlsson  <andersca@apple.com>

        Add scrollbars/scrollbar-drag-thumb-with-large-content.html to the Skipped list.

        * platform/mac/Skipped:

2011-08-02  Zhenyao Mo  <zmo@google.com>

        Unreviewed, test expectations update, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-08-02  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        * fast/blockflow/japanese-rl-text-with-broken-font.html:
        This test would create an empty RenderText after the change to make it asynchronous.
        Fix this by putting the script inside the head.

2011-08-02  Van Lam  <vanlam@google.com>

        --webkit-visual-word: ctrl-arrow is not able to reach the boundary of line
        https://bugs.webkit.org/show_bug.cgi?id=61346

        Reviewed by Ryosuke Niwa.

        Updated test cases to check for visual word movement to the end-of-line
        position.

        * editing/selection/move-by-word-visually-multi-line-expected.txt:
        * editing/selection/move-by-word-visually-multi-line.html:
        * editing/selection/move-by-word-visually-multi-space-expected.txt:
        * editing/selection/move-by-word-visually-multi-space.html:
        * editing/selection/move-by-word-visually-single-space-inline-element-expected.txt:
        * editing/selection/move-by-word-visually-single-space-inline-element.html:
        * editing/selection/move-by-word-visually-single-space-one-element-expected.txt:
        * editing/selection/move-by-word-visually-single-space-one-element.html:

2011-08-02  Zhenyao Mo  <zmo@google.com>

        Unreviewed, test expectations update, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-08-02  Jochen Eisinger  <jochen@chromium.org>

        Add a test for FrameLoaderClient::allowPlugins
        https://bugs.webkit.org/show_bug.cgi?id=33991

        Reviewed by Adam Barth.

        * platform/chromium/permissionclient/plugin-permission-expected.txt: Added.
        * platform/chromium/permissionclient/plugin-permission.html: Added.

2011-08-02  Zhenyao Mo  <zmo@google.com>

        Unreviewed, rebaseline, gardener stuff.

        * platform/chromium-win-xp/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/chromium-win-xp/fast/text/justify-ideograph-leading-expansion-expected.png:
        * platform/chromium/test_expectations.txt:

2011-08-02  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Remove initator column for JSC, fix network resource initiator tests.
        https://bugs.webkit.org/show_bug.cgi?id=65534

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-initiator-expected.txt:
        * http/tests/inspector/network/network-initiator.html:
        * platform/chromium/http/tests/inspector/network/network-initiator-expected.txt: Copied from LayoutTests/http/tests/inspector/network/network-initiator-expected.txt.

2011-08-02  Zhenyao Mo  <zmo@google.com>

        Unreviewed, test expectation updates, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-08-02  Anders Carlsson  <andersca@apple.com>

        Add Snow Leopard specific test results.

        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt: Added.
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt: Added.
        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-1-expected.txt: Added.
        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-2-expected.txt: Added.

2011-08-02  Ryosuke Niwa  <rniwa@webkit.org>

        Remove time out expectation since media/track has been added to the skipped list on GTK.

        * platform/gtk/test_expectations.txt:

2011-08-02  Adrienne Walker  <enne@google.com>

        [chromium] Remove expectations for no longer crashing tests.
        https://bugs.webkit.org/show_bug.cgi?id=65155

        Unreviewed expectation update.

        These were fixed after Chromium r94376, r94374, r94373.

        * platform/chromium/test_expectations.txt:

2011-08-02  Mihnea Ovidenie  <mihnea@adobe.com>

        hover then un-hover makes state change
        https://bugs.webkit.org/show_bug.cgi?id=56401

        Reviewed by David Hyatt.

        * fast/dynamic/hover-before-position-after-style-change-expected.txt: Added.
        * fast/dynamic/hover-before-position-after-style-change.html: Added.
        * fast/dynamic/hover-before-position-after-style-change2-expected.txt: Added.
        * fast/dynamic/hover-before-position-after-style-change2.html: Added.

2011-07-30  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: merge FormattedSourceFile into SourceFile.
        https://bugs.webkit.org/show_bug.cgi?id=65411

        Reviewed by Pavel Feldman.

        Prepare for splitting SourceFile into RawSourceCode and UISourceCode:
         * merge FormattedSourceFile into SourceFile
         * rename SourceFile to RawSourceCode
         * hide formatter worker lazy creation in ScriptFormatter

        * inspector/debugger/source-file.html:

2011-08-01  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: [REGRESSION] Console evaluations leading to resource loading cause errors.
        https://bugs.webkit.org/show_bug.cgi?id=65466

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-initiator-from-console-expected.txt: Added.
        * http/tests/inspector/network/network-initiator-from-console.html: Added.

2011-08-02  Csaba Osztrogonác  <ossy@webkit.org>

        Web Inspector: REGRESSION(r92105): It made 2 tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65525

        * platform/qt/Skipped: Unskip tests, because r92185 fixed the bug.

2011-08-02  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: img[width=90] or align attributes shouldnt be shown above element.style block (as they have lower specificity)
        https://bugs.webkit.org/show_bug.cgi?id=65514

        Reviewed by Pavel Feldman.

        * inspector/elements/elements-panel-styles-expected.txt:
        * inspector/elements/elements-panel-styles.html:

2011-08-01  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] webInspector.inspectedPage.reload() is broken
        https://bugs.webkit.org/show_bug.cgi?id=65476

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/extensions-useragent-expected.txt: Added.
        * http/tests/inspector/extensions-useragent.html: Added.

2011-08-02  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: fixing inspector tests.

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:
        * inspector/debugger/scripts-sorting-expected.txt:
        * platform/chromium/inspector/debugger/scripts-sorting-expected.txt: Copied from LayoutTests/inspector/debugger/scripts-sorting-expected.txt.

2011-08-02  Shinichiro Hamaji  <hamaji@chromium.org>

        Malformed chromium test expectation fix, again. Sorry for the spam...

        * platform/chromium/test_expectations.txt:

2011-08-02  Shinichiro Hamaji  <hamaji@chromium.org>

        Fix malformed chromium test expectation introduced by r92173

        * platform/chromium/test_expectations.txt:

2011-08-02  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening. Paint the Qt Snow Leopard bot green.

        * platform/qt-mac/Skipped: Skip a failing test.

2011-08-02  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/Skipped: Add comment after r92175.

2011-08-02  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Paint the Qt bot green.

        * platform/qt/Skipped: Skip failing tests.

2011-08-02  Shinichiro Hamaji  <hamaji@chromium.org>

        Chromium test_expectations.txt update for r92165

        * platform/chromium/test_expectations.txt:

2011-08-02  Shinichiro Hamaji  <hamaji@chromium.org>

        Layout Test fast/text/international/bidi-mirror-he-ar.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=65524

        Just update test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-08-02  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r92127.

        * platform/qt/editing/selection/4397952-expected.png: Updated.
        * platform/qt/editing/selection/4397952-expected.txt: Updated.

2011-08-01  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: button + "New style rule"
        https://bugs.webkit.org/show_bug.cgi?id=65409

        Reviewed by Yury Semikhatsky.

        * inspector/styles/styles-add-new-rule-expected.txt: Added.
        * inspector/styles/styles-add-new-rule.html: Added.

2011-08-01  Anders Carlsson  <andersca@apple.com>

        Update Lion specific test results.

        * platform/mac/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:

2011-08-01  Tim Horton  <timothy_horton@apple.com>

        Unreviewed, rebaseline test results for recently added test.

        * platform/chromium-linux/svg/custom/repaint-shadow-expected.png: Added.
        * platform/qt/svg/custom/repaint-shadow-expected.txt: Added.

2011-08-01  Zhenyao Mo  <zmo@google.com>

        Unreviewed, rebaseline, webkit gardener stuff.

        * platform/chromium-win-vista/fast/text/international/hindi-spacing-expected.png: Removed.
        * platform/chromium-win-vista/fast/text/international/khmer-selection-expected.png: Removed.
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-euc-expected.png:
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-expected.png:
        * platform/chromium-win-xp/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-win-xp/fast/text/international/khmer-selection-expected.png:
        * platform/chromium-win-xp/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-euc-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-expected.png:
        * platform/chromium-win/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-win/fast/text/international/khmer-selection-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
        * platform/chromium-win/svg/batik/filters/feTile-expected.png:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.png:
        * platform/chromium-win/svg/batik/text/longTextOnPath-expected.png:
        * platform/chromium-win/svg/batik/text/textAnchor-expected.png:
        * platform/chromium-win/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-win/svg/batik/text/textLayout-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties2-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:

2011-08-01  Alice Boxhall  <aboxhall@chromium.org>

        WAI-ARIA textbox role should be AXTextArea for aria-multiline=true, AXTextField for aria-multiline=false
        https://bugs.webkit.org/show_bug.cgi?id=65451

        Reviewed by Chris Fleizach.

        * accessibility/aria-roles.html:
        * platform/mac/accessibility/aria-multiline.html:
        * platform/mac/accessibility/aria-roles-expected.txt:

2011-08-01  Zhenyao Mo  <zmo@google.com>

        Unreviewed, rebaseline, webkit gardener stuff.

        * platform/chromium-mac/svg/custom/repaint-shadow-expected.png: Added.
        * platform/chromium-win/svg/custom/repaint-shadow-expected.png: Added.

2011-08-01  Tim Horton  <timothy_horton@apple.com>

        Severe shadow repaint issues with SVGText elements
        https://bugs.webkit.org/show_bug.cgi?id=63648
        <rdar://problem/7632269>

        Reviewed by Darin Adler.

        Make SVG elements which inherit from RenderSVGBlock take text-shadow
        overflow into account when determining whether or not they should draw

        * platform/mac/svg/custom/repaint-shadow-expected.png: Added.
        * platform/mac/svg/custom/repaint-shadow-expected.txt: Added.
        * svg/custom/repaint-shadow.svg: Added.

2011-08-01  Chris Rogers  <crogers@google.com>

        One more test_expectations.txt fix for windows web audio
        https://bugs.webkit.org/show_bug.cgi?id=65496

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-08-01  Zhenyao Mo  <zmo@google.com>

        Unreviewed, rolling out r92022.
        http://trac.webkit.org/changeset/92022
        https://bugs.webkit.org/show_bug.cgi?id=65203

        try to see if this is causing a bunch of browser tests failues
        on win bots - will recommit if not

        * platform/chromium/test_expectations.txt:

2011-08-01  Ryosuke Niwa  <rniwa@webkit.org>

        Remove time out expectation since media/track has been added to the skipped list on Qt.

        * platform/qt/test_expectations.txt:

2011-08-01  Chris Rogers  <crogers@google.com>

        Add audionode.html and gain.html web audio layout tests
        https://bugs.webkit.org/show_bug.cgi?id=65276

        Reviewed by Kenneth Russell.

        * webaudio/audionode-expected.txt: Added.
        * webaudio/audionode.html: Added.
        * webaudio/gain-expected.wav: Added.
        * webaudio/gain.html: Added.
        * webaudio/resources/buffer-loader.js: Added.
        (BufferLoader):
        (BufferLoader.prototype.loadBuffer.request.onload):
        (BufferLoader.prototype.loadBuffer.request.onerror):
        (BufferLoader.prototype.loadBuffer):
        (BufferLoader.prototype.load):

2011-08-01  Scott Graham  <scottmg@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=61006

        Test for CachedResourceLoader. Not caused by cache-disabling but very
        difficult to reproduce when cache is active, so use cache disable in
        inspector to exercise code.

        Reviewed by Antti Koivisto.

        * http/tests/inspector/network/disabled-cache-crash-expected.txt: Added.
        * http/tests/inspector/network/disabled-cache-crash.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-08-01  Jochen Eisinger  <jochen@chromium.org>

        Require explicit user action to override the policy URL on form submissions.
        https://bugs.webkit.org/show_bug.cgi?id=61809

        Reviewed by Adam Barth.

        * http/tests/loading/redirect-methods-expected.txt:
        * http/tests/security/cookies/resources/set-a-cookie.php: Added.
        * http/tests/security/cookies/third-party-cookie-blocking-expected.txt: Added.
        * http/tests/security/cookies/third-party-cookie-blocking-main-frame-expected.txt: Added.
        * http/tests/security/cookies/third-party-cookie-blocking-main-frame.html: Added.
        * http/tests/security/cookies/third-party-cookie-blocking-user-action-expected.txt: Added.
        * http/tests/security/cookies/third-party-cookie-blocking-user-action.html: Added.
        * http/tests/security/cookies/third-party-cookie-blocking.html: Added.

2011-08-01  Anna Cavender  <annacc@chromium.org>

        media/track tests should be skipped on all platforms until feature is fully implemented.
        https://bugs.webkit.org/show_bug.cgi?id=65482

        Reviewed by Ryosuke Niwa.

        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-08-01  Ryosuke Niwa  <rniwa@webkit.org>

        Search field in designMode causes a crash
        https://bugs.webkit.org/show_bug.cgi?id=65362

        Reviewed by Dimitri Glazkov.

        Add a test to ensure WebKit doesn't crash when a user tries to delete inside
        an empty search field in the design mode.

        * editing/input/search-field-crash-in-designmode-expected.txt: Added.
        * editing/input/search-field-crash-in-designmode.html: Added.

2011-07-28  Abhishek Arya  <inferno@chromium.org>

        Regression(82144): Crash in TrailingObjects::updateMidpointsForTrailingBoxes
        https://bugs.webkit.org/show_bug.cgi?id=65137

        ASSERTION FAILED: trailingSpaceMidpoint >= 0

        Reviewed by Dave Hyatt.

        * fast/block/update-midpoints-for-trailing-boxes-crash-expected.txt: Added.
        * fast/block/update-midpoints-for-trailing-boxes-crash.html: Added.

2011-08-01  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r92127.

        * platform/qt-4.8/css2.1/t0602-c13-inh-underlin-00-e-expected.png: Added.
        * platform/qt-4.8/css2.1/t0602-c13-inh-underlin-00-e-expected.txt: Added.
        * platform/qt-4.8/editing/selection/4397952-expected.png: Added.
        * platform/qt-4.8/editing/selection/4397952-expected.txt: Added.
        * platform/qt-mac/Skipped: Skip failing tests.
        * platform/qt-wk2/Skipped: Skip failing tests.

2011-08-01  Anders Carlsson  <andersca@apple.com>

        Add fast/forms/selection-direction.html to the Skipped list.

        * platform/wk2/Skipped:

2011-08-01  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        [Qt] Update expected results and unskip now passing tests.

        Reviewed by Csaba Osztrogonác.

        * platform/qt/Skipped:
        * platform/qt/css2.1/ [...]: Updated.
        * platform/qt/editing/ [...]: Updated.

2011-08-01  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: unflake inspector test that was just added.

        * inspector/debugger/scripts-sorting-expected.txt:
        * inspector/debugger/scripts-sorting.html:
        * platform/chromium/test_expectations.txt:

2011-08-01  Hayato Ito  <hayato@chromium.org>

        Add support for getting an element in shadow root by its id into a window.internals object.
        https://bugs.webkit.org/show_bug.cgi?id=64587

        Reviewed by Hajime Morita.

        * fast/dom/shadow/get-element-by-id-in-shadow-root-expected.txt: Added.
        * fast/dom/shadow/get-element-by-id-in-shadow-root.html: Added.
        * fast/dom/shadow/resources/create-dom.js: Added.
        (createShadow):
        (createDom):

2011-08-01  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: typing an expression in an iframe leads to multiple "Unsafe JavaScript attempt to access frame..." errors
        https://bugs.webkit.org/show_bug.cgi?id=65457

        Reviewed by Pavel Feldman.

        * http/tests/inspector/console-cd-completions-expected.txt: Added.
        * http/tests/inspector/console-cd-completions.html: Added.
        * http/tests/inspector/resources/console-cd-completions-iframe.html: Added.

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] http/tests/inspector/resource-tree/resource-tree-document-url.html occasionally times out
        https://bugs.webkit.org/show_bug.cgi?id=65463

        Unreviewed expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] http/tests/cache/history-only-cached-subresource-loads-max-age-https.html frequently times out on Vista
        https://bugs.webkit.org/show_bug.cgi?id=65462

        Unreviewed expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Temporarily expect scripts-sorting.html to fail
        https://bugs.webkit.org/show_bug.cgi?id=65461

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-08-01  Mihnea Ovidenie  <mihnea@adobe.com>

        BORDER attribute with the object tag, using percentage values not working.
        https://bugs.webkit.org/show_bug.cgi?id=65176

        Reviewed by Hajime Morita.

        Added the tests with border width with percentages in a new file. Moved them
        from images border test file.

        * fast/borders/border-width-percent-expected.txt: Added.
        * fast/borders/border-width-percent.html: Added.
        * fast/images/border-expected.txt:
        * fast/images/script-tests/border.js:

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Update expectations for fast/text/international/bidi-mirror-he-ar.html
        https://bugs.webkit.org/show_bug.cgi?id=65460

        Unreviewed expectations update.

        * platform/chromium-win/fast/text/international/bidi-mirror-he-ar-expected.png:

2011-08-01  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add network panel sidebar width test.
        https://bugs.webkit.org/show_bug.cgi?id=65314

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/network/network-sidebar-width-expected.txt: Added.
        * http/tests/inspector/network/network-sidebar-width.html: Added.

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        http/tests/inspector/resource-tree/resource-tree-reload.html is flaky on chromium win
        https://bugs.webkit.org/show_bug.cgi?id=60110

        Marking it flaky on Linux as well.

        * platform/chromium/test_expectations.txt:

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        Fix windows text rendering expectations for fast/text/justify-ideograph-leading-expansion.html
        https://bugs.webkit.org/show_bug.cgi?id=65455

        Unreviewed expectations update.

        * platform/chromium-win-xp/fast/text/justify-ideograph-leading-expansion-expected.png: Copied from LayoutTests/platform/chromium-win/fast/text/justify-ideograph-leading-expansion-expected.png.
        * platform/chromium-win/fast/text/justify-ideograph-leading-expansion-expected.png:

2011-08-01  Csaba Osztrogonác  <ossy@webkit.org>

        REGRESSION (r92048): svg/custom/external-paintserver-reference.svg, svg/custom/linking-base-external-reference.xhtml failing on SnowLeopard Intel Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=65432

        Revert accidentally committed changes, and update Qt specific expected results.

        * platform/qt/svg/custom/external-paintserver-reference-expected.png: Copied from LayoutTests/svg/custom/external-paintserver-reference-expected.png.
        * platform/qt/svg/custom/external-paintserver-reference-expected.txt: Copied from LayoutTests/svg/custom/external-paintserver-reference-expected.txt.
        * platform/qt/svg/custom/linking-base-external-reference-expected.png: Copied from LayoutTests/svg/custom/linking-base-external-reference-expected.png.
        * platform/qt/svg/custom/linking-base-external-reference-expected.txt: Copied from LayoutTests/svg/custom/linking-base-external-reference-expected.txt.
        * svg/custom/external-paintserver-reference-expected.png: Revert r92048.
        * svg/custom/external-paintserver-reference-expected.txt: Revert r92048.
        * svg/custom/linking-base-external-reference-expected.png: Revert r92048.
        * svg/custom/linking-base-external-reference-expected.txt: Revert r92048.

2011-08-01  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: unflake inspector test that was just added.

        * inspector/debugger/scripts-sorting-expected.txt:
        * inspector/debugger/scripts-sorting.html:

2011-08-01  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] fast/css/outline-auto-empty-rects.html broken by r92059
        https://bugs.webkit.org/show_bug.cgi?id=65453

        This patch just expects the test to fail for now.

        Unreviewed expectations update.

        * platform/chromium/test_expectations.txt:

2011-08-01  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: group scripts by folder in the scripts selector.
        https://bugs.webkit.org/show_bug.cgi?id=65321

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/scripts-sorting-expected.txt: Added.
        * inspector/debugger/scripts-sorting.html: Added.

2011-07-28  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: [protocol] methods where all parameters are optional should not require empty params object.
        https://bugs.webkit.org/show_bug.cgi?id=65331

        Reviewed by Yury Semikhatsky.

        * inspector/report-protocol-errors-expected.txt:

2011-07-31  Adam Barth  <abarth@webkit.org>

        These results appear to differ only in text rendering.

        * platform/chromium-win-xp/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/chromium-win-xp/fast/text/justify-ideograph-leading-expansion-expected.png: Removed.
        * platform/chromium-win/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/chromium-win/fast/text/justify-ideograph-leading-expansion-expected.png:

2011-07-31  Adam Barth  <abarth@webkit.org>

        Adding expected results.  These results appear to differ only in the scrollbar.

        * platform/chromium-linux/svg/custom/external-paintserver-reference-expected.png: Added.
        * platform/chromium-linux/svg/custom/linking-base-external-reference-expected.png: Added.
        * platform/chromium-mac/svg/custom/external-paintserver-reference-expected.png: Added.
        * platform/chromium-mac/svg/custom/external-paintserver-reference-expected.txt: Added.
        * platform/chromium-mac/svg/custom/linking-base-external-reference-expected.png: Added.
        * platform/chromium-mac/svg/custom/linking-base-external-reference-expected.txt: Added.
        * platform/chromium-win/svg/custom/external-paintserver-reference-expected.png: Added.
        * platform/chromium-win/svg/custom/external-paintserver-reference-expected.txt: Added.
        * platform/chromium-win/svg/custom/linking-base-external-reference-expected.png: Added.
        * platform/chromium-win/svg/custom/linking-base-external-reference-expected.txt: Added.

2011-07-31  Adam Barth  <abarth@webkit.org>

        Update baseline.  This patch might cause Linux to start failing, but in
        that case, we can add a more specific Linux result.  This approach is
        somewhat of an exploration of this automated rebaselining algorithm.

        * platform/chromium-win/svg/batik/text/textLength-expected.txt:

2011-07-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r92094.
        http://trac.webkit.org/changeset/92094
        https://bugs.webkit.org/show_bug.cgi?id=65443

        Triggered many asserts (Requested by abarth on #webkit).

        * fast/events/event-target-reset-expected.txt: Removed.
        * fast/events/event-target-reset.html: Removed.

2011-07-31  Dominic Cooney  <dominicc@chromium.org>

        Event target set to null post event dispatch
        https://bugs.webkit.org/show_bug.cgi?id=63934

        Reviewed by Dimitri Glazkov.

        * fast/events/event-target-reset-expected.txt: Added.
        * fast/events/event-target-reset.html: Added.

2011-07-31  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64679
        Fix bugs in Array.prototype this handling.

        Unreviewed - rolling out r91290.

        Checking in failing results - we can't fix this bug just yet
        for web compatibility reasons.

        * fast/js/array-prototype-properties-expected.txt:
        * ietestcenter/Javascript/15.4.4.14-5-28-expected.txt:
        * ietestcenter/Javascript/15.4.4.15-5-28-expected.txt:

2011-07-31  Ryosuke Niwa  <rniwa@webkit.org>

        Fix fast/dom/Range/getBoundingClientRect.html after r92089.

        * fast/dom/Range/getBoundingClientRect.html:

2011-07-31  Ryosuke Niwa  <rniwa@webkit.org>

        [Chromium] editing/execCommand/4786404-1.html,editing/execCommand/break-out-of-empty-list-item.html are slow/timeout
        https://bugs.webkit.org/show_bug.cgi?id=65019

        This bug was invalid; neither test is slow nor timing out.

        * platform/chromium/test_expectations.txt:

2011-07-31  Sam Weinig  <sam@webkit.org>

        REGRESSION: getBoundingClientRect() method of Range incorrectly returns null for collapsed Range
        https://bugs.webkit.org/show_bug.cgi?id=65324

        Reviewed by Ryosuke Niwa.

        * fast/dom/Range/getBoundingClientRect-expected.txt:
        * fast/dom/Range/getBoundingClientRect.html:
        * fast/dom/Range/getClientRects-expected.txt:
        * fast/dom/Range/getClientRects.html:
        Add test cases for empty and collapsed ranges.

2011-07-29  Ryosuke Niwa  <rniwa@webkit.org>

        [HTML5] Implement the selectionDirection property on input and textarea
        https://bugs.webkit.org/show_bug.cgi?id=60403

        Reviewed by Darin Adler.

        Added a test to ensure WebKit sets and gets selectionDirection property.

        Also added a test to ensure WebKit throws exceptions when retrieving or assigning values to selectionStart,
        selectionEnd, and selectionDirection property of the input element when the element isn't a text field.

        * fast/forms/selection-direction-expected.txt: Added.
        * fast/forms/selection-direction.html: Added.
        * fast/forms/selection-wrongtype-expected.txt: Added.
        * fast/forms/selection-wrongtype.html: Added.
        * platform/mac/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt: Copied from
        editing/deleting/delete-all-text-in-text-field-assertion-expected.txt; editing delegate change.
        * platform/win/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt: Copied from
        editing/deleting/delete-all-text-in-text-field-assertion-expected.txt since Windows port fallbacks to Mac.

2011-07-31  Dan Bernstein  <mitz@apple.com>

        Add expected results for Snow Leopard and earlier for fast/css/font-family-pictograph.html

        Fixes REGRESSION (r91777): fast/css/font-family-pictograph.html failing on SnowLeopard Intel Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=65433

        * platform/mac-snowleopard/fast/css: Added.
        * platform/mac-snowleopard/fast/css/font-family-pictograph-expected.txt: Added.

2011-07-30  Adam Barth  <abarth@webkit.org>

        Update baselines.  This patch cleans up after http://trac.webkit.org/changeset/92042.

        * platform/chromium-mac/fast/repaint/absolute-position-change-containing-block-expected.png: Added.
        * platform/chromium-mac/fast/repaint/absolute-position-changed-expected.png: Added.
        * platform/chromium-mac/fast/repaint/absolute-position-moved-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-to-relative-position-with-absolute-child-expected.png: Added.
        * platform/chromium-mac/fast/repaint/nested-iframe-scroll-inner-expected.png: Added.
        * platform/chromium-mac/fast/repaint/nested-iframe-scroll-outer-expected.png: Added.
        * platform/chromium-mac/fast/repaint/overflow-hide-expected.png: Added.
        * platform/chromium-mac/fast/repaint/overflow-show-expected.png: Added.
        * platform/chromium-win/fast/repaint/absolute-position-changed-expected.png: Added.
        * platform/chromium-win/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Added.
        * platform/chromium-win/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Added.
        * platform/chromium-win/fast/repaint/nested-iframe-scroll-inner-expected.png: Added.
        * platform/chromium-win/fast/repaint/nested-iframe-scroll-outer-expected.png: Added.
        * platform/chromium-win/fast/repaint/overflow-hide-expected.png: Added.
        * platform/chromium-win/fast/repaint/overflow-show-expected.png: Added.
        * platform/chromium/fast/repaint/absolute-position-changed-expected.png: Removed.
        * platform/chromium/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Removed.
        * platform/chromium/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Removed.
        * platform/chromium/fast/repaint/nested-iframe-scroll-inner-expected.png: Removed.
        * platform/chromium/fast/repaint/nested-iframe-scroll-outer-expected.png: Removed.
        * platform/chromium/fast/repaint/overflow-hide-expected.png: Removed.
        * platform/chromium/fast/repaint/overflow-show-expected.png: Removed.

2011-07-30  Adam Barth  <abarth@webkit.org>

        Update more baselines.  This completes the cleanup after
        http://trac.webkit.org/changeset/92047.

        * platform/chromium-win-xp/svg/batik/paints/patternRegions-positioned-objects-expected.png: Removed.
        * platform/chromium-win/svg/batik/filters/feTile-expected.png:
        * platform/chromium-win/svg/batik/filters/feTile-expected.txt:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.png:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.txt:
        * platform/chromium-win/svg/batik/paints/gradientLimit-expected.txt:
        * platform/chromium-win/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
        * platform/chromium-win/svg/batik/paints/patternRegionA-expected.txt:
        * platform/chromium-win/svg/batik/paints/patternRegions-expected.txt:
        * platform/chromium-win/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
        * platform/chromium-win/svg/batik/text/textEffect2-expected.txt:
        * platform/chromium-win/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-win/svg/batik/text/textFeatures-expected.txt:
        * platform/chromium-win/svg/batik/text/textLayout-expected.png:
        * platform/chromium-win/svg/batik/text/textLayout-expected.txt:
        * platform/chromium-win/svg/batik/text/verticalTextOnPath-expected.txt:

2011-07-30  Adam Barth  <abarth@webkit.org>

        More baseline updates.  (I'm going slowly because I'm using a new
        toolchain to do the rebaselining.)

        * platform/chromium-linux/svg/batik/text/textOnPath-expected.png:
        * platform/chromium-linux/svg/batik/text/textPosition2-expected.txt:
        * platform/chromium-linux/svg/batik/text/verticalText-expected.txt: Removed.
        * platform/chromium-win-xp/svg/batik/text/verticalText-expected.txt: Removed.
        * platform/chromium-win/svg/batik/text/longTextOnPath-expected.png:
        * platform/chromium-win/svg/batik/text/longTextOnPath-expected.txt:
        * platform/chromium-win/svg/batik/text/textAnchor-expected.png:
        * platform/chromium-win/svg/batik/text/textAnchor-expected.txt:
        * platform/chromium-win/svg/batik/text/textDecoration-expected.txt:
        * platform/chromium-win/svg/batik/text/textOnPath-expected.txt:
        * platform/chromium-win/svg/batik/text/textPosition2-expected.txt:
        * platform/chromium-win/svg/batik/text/textProperties-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties-expected.txt:
        * platform/chromium-win/svg/batik/text/textProperties2-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties2-expected.txt:
        * platform/chromium-win/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.txt:
        * platform/chromium-win/svg/batik/text/verticalText-expected.txt:

2011-07-30  Adam Barth  <abarth@webkit.org>

        More baseline updates.  (I'm going slowly because I'm using a new
        toolchain to do the rebaselining.)

        * platform/chromium-linux/svg/batik/text/textPosition-expected.txt:
        * platform/chromium-win/svg/batik/text/textLayout2-expected.txt:
        * platform/chromium-win/svg/batik/text/textOnPathSpaces-expected.txt:
        * platform/chromium-win/svg/batik/text/textPosition-expected.txt:

2011-07-30  Adam Barth  <abarth@webkit.org>

        Update baseline.

        * platform/chromium-win/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt:

2011-07-30  Enrica Casucci  <enrica@apple.com>

        REGRESSION: culledInlineAbsoluteRects needs to translate a 0,0 point to absolute
        coordinates so that the top left position is accurate.
        https://bugs.webkit.org/show_bug.cgi?id=65419
        <rdar://problem/9408862>

        Reviewed by Dan Bernstein.

        * fast/inline/skipped-whitespace-boundingBox-expected.txt: Added.
        * fast/inline/skipped-whitespace-boundingBox.html: Added.

2011-07-26  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: move location conversion functions to SourceFile.
        https://bugs.webkit.org/show_bug.cgi?id=65185

        Reviewed by Pavel Feldman.

        * inspector/debugger/source-file-expected.txt: Added.
        * inspector/debugger/source-file.html: Added.

2011-07-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected files after r92047.

        * platform/qt-4.8/svg/batik/filters/filterRegions-expected.txt:
        * platform/qt-4.8/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
        * platform/qt-4.8/svg/batik/paints/patternRegionA-expected.txt:
        * platform/qt-4.8/svg/batik/paints/patternRegions-expected.txt:
        * platform/qt-4.8/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
        * platform/qt-4.8/svg/batik/text/longTextOnPath-expected.txt:
        * platform/qt-4.8/svg/batik/text/smallFonts-expected.txt:
        * platform/qt-4.8/svg/batik/text/textAnchor-expected.txt:
        * platform/qt-4.8/svg/batik/text/textDecoration-expected.txt:
        * platform/qt-4.8/svg/batik/text/textEffect-expected.txt:
        * platform/qt-4.8/svg/batik/text/textEffect2-expected.txt:
        * platform/qt-4.8/svg/batik/text/textEffect3-expected.txt:
        * platform/qt-4.8/svg/batik/text/textFeatures-expected.txt:
        * platform/qt-4.8/svg/batik/text/textLayout2-expected.txt:
        * platform/qt-4.8/svg/batik/text/textLength-expected.txt:
        * platform/qt-4.8/svg/batik/text/textOnPath-expected.txt:
        * platform/qt-4.8/svg/batik/text/textPosition-expected.txt:
        * platform/qt-4.8/svg/batik/text/textPosition2-expected.txt:
        * platform/qt-4.8/svg/batik/text/textProperties-expected.txt:
        * platform/qt-4.8/svg/batik/text/textProperties2-expected.txt:
        * platform/qt-4.8/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/qt-mac/Skipped: Skip failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected files after r92047.

        * platform/qt/svg/W3C-SVG-1.1/struct-use-05-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt:
        * platform/qt/svg/batik/filters/filterRegions-expected.txt:
        * platform/qt/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
        * platform/qt/svg/batik/paints/patternRegionA-expected.txt:
        * platform/qt/svg/batik/paints/patternRegions-expected.txt:
        * platform/qt/svg/batik/paints/patternRegions-positioned-objects-expected.png:
        * platform/qt/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
        * platform/qt/svg/batik/text/longTextOnPath-expected.txt:
        * platform/qt/svg/batik/text/smallFonts-expected.txt:
        * platform/qt/svg/batik/text/textAnchor-expected.txt:
        * platform/qt/svg/batik/text/textDecoration-expected.png:
        * platform/qt/svg/batik/text/textDecoration-expected.txt:
        * platform/qt/svg/batik/text/textEffect-expected.txt:
        * platform/qt/svg/batik/text/textEffect2-expected.txt:
        * platform/qt/svg/batik/text/textEffect3-expected.txt:
        * platform/qt/svg/batik/text/textFeatures-expected.txt:
        * platform/qt/svg/batik/text/textLayout2-expected.txt:
        * platform/qt/svg/batik/text/textLength-expected.txt:
        * platform/qt/svg/batik/text/textOnPath-expected.txt:
        * platform/qt/svg/batik/text/textPosition-expected.txt:
        * platform/qt/svg/batik/text/textPosition2-expected.txt:
        * platform/qt/svg/batik/text/textProperties-expected.txt:
        * platform/qt/svg/batik/text/textProperties2-expected.txt:
        * platform/qt/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/qt/svg/hixie/error/014-expected.txt:
        * platform/qt/svg/hixie/use/002-expected.txt:
        * svg/custom/external-paintserver-reference-expected.png:
        * svg/custom/external-paintserver-reference-expected.txt:
        * svg/custom/linking-base-external-reference-expected.png:
        * svg/custom/linking-base-external-reference-expected.txt:

2011-07-29  Rob Buis  <rbuis@rim.com>

        URL references are completely broken in SVG
        https://bugs.webkit.org/show_bug.cgi?id=63283

        Reviewed by Nikolas Zimmermann.

        * platform/mac/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt:
        * platform/mac/svg/batik/filters/feTile-expected.txt:
        * platform/mac/svg/batik/filters/filterRegions-expected.txt:
        * platform/mac/svg/batik/masking/maskRegions-expected.txt:
        * platform/mac/svg/batik/paints/gradientLimit-expected.txt:
        * platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
        * platform/mac/svg/batik/paints/patternRegionA-expected.txt:
        * platform/mac/svg/batik/paints/patternRegions-expected.txt:
        * platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
        * platform/mac/svg/batik/text/longTextOnPath-expected.txt:
        * platform/mac/svg/batik/text/smallFonts-expected.txt:
        * platform/mac/svg/batik/text/textAnchor-expected.txt:
        * platform/mac/svg/batik/text/textDecoration-expected.txt:
        * platform/mac/svg/batik/text/textEffect-expected.txt:
        * platform/mac/svg/batik/text/textEffect2-expected.txt:
        * platform/mac/svg/batik/text/textEffect3-expected.txt:
        * platform/mac/svg/batik/text/textFeatures-expected.txt:
        * platform/mac/svg/batik/text/textLayout-expected.txt:
        * platform/mac/svg/batik/text/textLayout2-expected.txt:
        * platform/mac/svg/batik/text/textLength-expected.txt:
        * platform/mac/svg/batik/text/textOnPath-expected.txt:
        * platform/mac/svg/batik/text/textOnPathSpaces-expected.txt:
        * platform/mac/svg/batik/text/textPosition-expected.txt:
        * platform/mac/svg/batik/text/textPosition2-expected.txt:
        * platform/mac/svg/batik/text/textProperties-expected.txt:
        * platform/mac/svg/batik/text/textProperties2-expected.txt:
        * platform/mac/svg/batik/text/textStyles-expected.txt:
        * platform/mac/svg/batik/text/verticalText-expected.txt:
        * platform/mac/svg/batik/text/verticalTextOnPath-expected.txt:
        * platform/mac/svg/hixie/error/014-expected.txt:
        * platform/mac/svg/hixie/use/002-expected.txt:
        * svg/custom/external-paintserver-reference-expected.png: Added.
        * svg/custom/external-paintserver-reference-expected.txt: Added.
        * svg/custom/external-paintserver-reference.svg: Added.
        * svg/custom/linking-base-external-reference-expected.png: Added.
        * svg/custom/linking-base-external-reference-expected.txt: Added.
        * svg/custom/linking-base-external-reference.xhtml: Added.
        * svg/custom/uri-reference-handling-expected.png: Added.
        * svg/custom/uri-reference-handling-expected.txt: Added.
        * svg/custom/uri-reference-handling.svg: Added.

2011-07-29  Zhenyao Mo  <zmo@google.com>

        Unreviewed, rebaseline, gardener stuff.

        * platform/chromium-win-vista/fast/text/backslash-to-yen-sign-expected.png: Removed.
        * platform/chromium-win-vista/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-win-vista/fast/text/international/khmer-selection-expected.png: Added.
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-euc-expected.png:
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-expected.png:
        * platform/chromium-win-xp/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-win-xp/fast/text/international/khmer-selection-expected.png:
        * platform/chromium-win-xp/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-euc-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-expected.png:
        * platform/chromium-win/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-win/fast/text/international/khmer-selection-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
        * platform/chromium-win/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:

2011-07-29  Julien Chaffraix  <jchaffraix@webkit.org>

        Add more testing to RenderLayer [ct'd]
        https://bugs.webkit.org/show_bug.cgi?id=65059

        Reviewed by James Robinson.

        This change adds testing with <iframe>, position: absolute elements and scrolling.

        * fast/repaint/absolute-position-change-containing-block.html: Added.
        * fast/repaint/absolute-position-changed.html: Added.
        * fast/repaint/absolute-position-moved.html: Added.
        * fast/repaint/fixed-and-absolute-position-scrolled.html: Added.
        * fast/repaint/fixed-position-transparency-with-overflow.html: Added.
        * fast/repaint/fixed-to-relative-position-with-absolute-child.html: Added.
        * fast/repaint/nested-iframe-scroll-inner.html: Added.
        * fast/repaint/nested-iframe-scroll-outer.html: Added.
        * fast/repaint/overflow-hide.html: Added.
        * fast/repaint/overflow-show.html: Added.
        New test cases.

        * fast/repaint/resources/iframe-inner.html: Added.
        * fast/repaint/resources/iframe-outer.html: Added.

        * fast/repaint/resources/default.css:
        Added more shared code here.

        * fast/repaint/absolute-position-change-containing-block-expected.png: Added.
        * fast/repaint/absolute-position-change-containing-block-expected.txt: Added.
        * fast/repaint/absolute-position-changed-expected.txt: Added.
        * fast/repaint/absolute-position-moved-expected.png: Added.
        * fast/repaint/absolute-position-moved-expected.txt: Added.
        * fast/repaint/fixed-and-absolute-position-scrolled-expected.txt: Added.
        * fast/repaint/fixed-position-transparency-with-overflow-expected.txt: Added.
        * fast/repaint/fixed-to-relative-position-with-absolute-child-expected.png: Added.
        * fast/repaint/fixed-to-relative-position-with-absolute-child-expected.txt: Added.
        * fast/repaint/nested-iframe-scroll-inner-expected.txt: Added.
        * fast/repaint/nested-iframe-scroll-outer-expected.txt: Added.
        * fast/repaint/overflow-hide-expected.txt: Added.
        * fast/repaint/overflow-show-expected.txt: Added.

        * platform/chromium/fast/repaint/absolute-position-changed-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Added.
        * platform/chromium/fast/repaint/nested-iframe-scroll-inner-expected.png: Added.
        * platform/chromium/fast/repaint/nested-iframe-scroll-outer-expected.png: Added.
        * platform/chromium/fast/repaint/overflow-hide-expected.png: Added.
        * platform/chromium/fast/repaint/overflow-show-expected.png: Added.
        * platform/mac/fast/repaint/absolute-position-changed-expected.png: Added.
        * platform/mac/fast/repaint/fixed-and-absolute-position-scrolled-expected.png: Added.
        * platform/mac/fast/repaint/fixed-position-transparency-with-overflow-expected.png: Added.
        * platform/mac/fast/repaint/nested-iframe-scroll-inner-expected.png: Added.
        * platform/mac/fast/repaint/nested-iframe-scroll-outer-expected.png: Added.

        * platform/mac/fast/repaint/overflow-hide-expected.png: Added.
        * platform/mac/fast/repaint/overflow-show-expected.png: Added.
        Those 2 results are strange and a bug will be opened about them.

2011-07-29  Filip Pizlo  <fpizlo@apple.com>

        LayoutTests does not have a test for array speculation pathologies in the JavaScriptCore DFG JIT.
        https://bugs.webkit.org/show_bug.cgi?id=65397

        Reviewed by Darin Adler.
        
        This test reproduces the crash seen in https://bugs.webkit.org/show_bug.cgi?id=65327, and is
        designed to guard itself against possible variants of array speculation failure.  It will
        test both the case where a speculate-array value is actually a non-array object, and the
        case where it is a number.  Particular care is taken to increase the likelihood that the
        test remains relevant if the JIT performs speculation based on actual argument types and
        values at the time of compilation.

        * fast/js/array-type-speculation-expected.txt: Added.
        * fast/js/array-type-speculation.html: Added.
        * fast/js/script-tests/array-type-speculation.js: Added.

2011-07-29  Zhenyao Mo  <zmo@google.com>

        Unreviewed, test expectations update, gardener stuff.

        * platform/chromium/test_expectations.txt:

2011-07-29  Emil A Eklund  <eae@chromium.org>

        -webkit-marquee with anonymous node causes segmentation fault in Node::document
        https://bugs.webkit.org/show_bug.cgi?id=64693

        Reviewed by Simon Fraser.

        * fast/css/webkit-marquee-anonymous-node-crash-expected.txt: Added.
        * fast/css/webkit-marquee-anonymous-node-crash.html: Added.
        Add test for using -webkit-marquee with an anonymous node.

2011-07-29  Mike Reed  <reed@google.com>

        [skia] never draw with GDI, so that all text can be gpu-accelerated
        https://bugs.webkit.org/show_bug.cgi?id=65203

        Reviewed by Kenneth Russell.

        * platform/chromium/test_expectations.txt:

2011-07-29  Dan Bernstein  <mitz@apple.com>

        Test for <rdar://problem/9864578> Regional indicator symbols do not combine into national flags
        https://bugs.webkit.org/show_bug.cgi?id=65380

        Reviewed by Anders Carlsson.

        * fast/text/regional-indicator-symobls-expected.txt: Added.
        * fast/text/regional-indicator-symobls.html: Added.

2011-07-29  Anna Cavender  <annacc@chromium.org>

        Tests for validating a new WebVTT parser for <track>
        https://bugs.webkit.org/show_bug.cgi?id=64921

        Reviewed by Eric Carlson.

        * media/track/captions/tc000_empty.vtt: Added.
        * media/track/captions/tc001_iso2022jp3.vtt: Added.
        * media/track/captions/tc001_utf8.vtt: Added.
        * media/track/captions/tc002_bom.vtt: Added.
        * media/track/captions/tc003_newlines.vtt: Added.
        * media/track/captions/tc003_nonewlineateof.vtt: Added.
        * media/track/captions/tc004_nowebvtt.vtt: Added.
        * media/track/captions/tc004_webvttfile.vtt: Added.
        * media/track/captions/tc004_webvttrubbish.vtt: Added.
        * media/track/captions/tc005_defaultstyles.vtt: Added.
        * media/track/captions/tc005_metadataarea.vtt: Added.
        * media/track/captions/tc006_cueid.vtt: Added.
        * media/track/captions/tc006_cueiderror.vtt: Added.
        * media/track/captions/tc007_cuenoid.vtt: Added.
        * media/track/captions/tc007_cuenoiderror.vtt: Added.
        * media/track/captions/tc008_timingsnohour.vtt: Added.
        * media/track/captions/tc008_timingsnohourerrors.vtt: Added.
        * media/track/captions/tc009_timingshour.vtt: Added.
        * media/track/captions/tc009_timingshourerror.vtt: Added.
        * media/track/captions/tc010_notimings.vtt: Added.
        * media/track/captions/tc011_cues.vtt: Added.
        * media/track/captions/tc011_cuesnosep.vtt: Added.
        * media/track/captions/tc012_outoforder.vtt: Added.
        * media/track/captions/tc013_settings.vtt: Added.
        * media/track/captions/tc013_settingsbadsep.vtt: Added.
        * media/track/track-webvtt-tc000-empty-expected.txt: Added.
        * media/track/track-webvtt-tc000-empty.html: Added.
        * media/track/track-webvtt-tc001-utf8-expected.txt: Added.
        * media/track/track-webvtt-tc001-utf8.html: Added.
        * media/track/track-webvtt-tc002-bom-expected.txt: Added.
        * media/track/track-webvtt-tc002-bom.html: Added.
        * media/track/track-webvtt-tc003-newlines-expected.txt: Added.
        * media/track/track-webvtt-tc003-newlines.html: Added.
        * media/track/track-webvtt-tc004-magicheader-expected.txt: Added.
        * media/track/track-webvtt-tc004-magicheader.html: Added.
        * media/track/track-webvtt-tc005-headercomment-expected.txt: Added.
        * media/track/track-webvtt-tc005-headercomment.html: Added.
        * media/track/track-webvtt-tc006-cueidentifiers-expected.txt: Added.
        * media/track/track-webvtt-tc006-cueidentifiers.html: Added.
        * media/track/track-webvtt-tc007-cuenoid-expected.txt: Added.
        * media/track/track-webvtt-tc007-cuenoid.html: Added.
        * media/track/track-webvtt-tc008-timingsnohours-expected.txt: Added.
        * media/track/track-webvtt-tc008-timingsnohours.html: Added.
        * media/track/track-webvtt-tc009-timingshour-expected.txt: Added.
        * media/track/track-webvtt-tc009-timingshour.html: Added.
        * media/track/track-webvtt-tc010-notimings-expected.txt: Added.
        * media/track/track-webvtt-tc010-notimings.html: Added.
        * media/track/track-webvtt-tc011-blanklines-expected.txt: Added.
        * media/track/track-webvtt-tc011-blanklines.html: Added.
        * media/track/track-webvtt-tc012-outoforder-expected.txt: Added.
        * media/track/track-webvtt-tc012-outoforder.html: Added.
        * media/track/track-webvtt-tc013-settings-expected.txt: Added.
        * media/track/track-webvtt-tc013-settings.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:
        * platform/qt/test_expectations.txt:
        * platform/wk2/Skipped:

2011-07-29  Tony Chang  <tony@chromium.org>

        rename css3/flexbox/display-property.html to css3/flexbox/css-properties.html
        https://bugs.webkit.org/show_bug.cgi?id=65343

        Reviewed by Mihai Parparita.

        I plan on adding more tests for the other flexbox properties
        (flex-order, flex-direction, flex-pack, flex-align) to this file.

        * css3/flexbox/css-properties-expected.txt: Copied from LayoutTests/css3/flexbox/display-property-expected.txt.
        * css3/flexbox/css-properties.html: Copied from LayoutTests/css3/flexbox/display-property.html.
        * css3/flexbox/display-property-expected.txt: Removed.
        * css3/flexbox/display-property.html: Removed.
        * css3/flexbox/script-tests/css-properties.js: Copied from LayoutTests/css3/flexbox/script-tests/display-property.js.
        * css3/flexbox/script-tests/display-property.js: Removed.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed typo fix.

        * platform/qt/Skipped:

2011-07-29  Stephen White  <senorblanco@chromium.org>

        [Chromium] Marking some media tests as passing and removing from
        expectations.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r91986

        * platform/qt-arm/Skipped: Skip failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r91986

        * platform/qt-mac/Skipped: Skip one more failing test.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Couple of tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        https://bugs.webkit.org/show_bug.cgi?id=52810

        * platform/qt/Skipped: Add 4 new failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][ARM]REGRESSION(r91752): It made audio related tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65369

        * platform/qt-arm/Skipped: Skip failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r91986

        * platform/qt-4.8/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1/masking-path-04-b-expected.png: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt: Added.
        * platform/qt-4.8/svg/batik/filters/filterRegions-expected.png: Added.
        * platform/qt-4.8/svg/batik/filters/filterRegions-expected.txt: Added.
        * platform/qt-4.8/svg/batik/masking/maskRegions-expected.png: Added.
        * platform/qt-4.8/svg/batik/masking/maskRegions-expected.txt: Added.
        * platform/qt-4.8/svg/batik/paints/patternPreserveAspectRatioA-expected.png: Added.
        * platform/qt-4.8/svg/batik/paints/patternPreserveAspectRatioA-expected.txt: Added.
        * platform/qt-4.8/svg/batik/paints/patternRegionA-expected.png: Added.
        * platform/qt-4.8/svg/batik/paints/patternRegionA-expected.txt: Added.
        * platform/qt-4.8/svg/batik/paints/patternRegions-expected.png: Added.
        * platform/qt-4.8/svg/batik/paints/patternRegions-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/longTextOnPath-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/longTextOnPath-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/smallFonts-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/smallFonts-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor3-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textAnchor3-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textDecoration2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textDecoration2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textEffect-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textEffect-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textEffect2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textEffect2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textEffect3-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textEffect3-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textFeatures-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textFeatures-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textGlyphOrientationHorizontal-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textGlyphOrientationHorizontal-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textLayout2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textLayout2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textLength-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textLength-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath3-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textOnPath3-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textPCDATA-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textPCDATA-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textPosition-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textPosition-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textPosition2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textPosition2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textProperties-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textProperties-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/textProperties2-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/textProperties2-expected.txt: Added.
        * platform/qt-4.8/svg/batik/text/verticalTextOnPath-expected.png: Added.
        * platform/qt-4.8/svg/batik/text/verticalTextOnPath-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/button-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/button-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/colourpicker-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/colourpicker-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/combobox-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/combobox-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/scrollbar-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/scrollbar-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/selectionlist-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/selectionlist-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/slider-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/slider-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/tabgroup-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/tabgroup-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/textbox-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/textbox-expected.txt: Added.
        * platform/qt-4.8/svg/carto.net/window-expected.png: Added.
        * platform/qt-4.8/svg/carto.net/window-expected.txt: Added.
        * platform/qt-mac/Skipped: Skip failing tests.
        * platform/qt-wk2/Skipped: Skip failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening after r91984

        * platform/qt-4.8/fast/block/positioning/047-expected.png: Added.
        * platform/qt-4.8/fast/block/positioning/047-expected.txt: Added.
        * platform/qt-4.8/fast/block/positioning/051-expected.png: Added.
        * platform/qt-4.8/fast/block/positioning/051-expected.txt: Added.
        * platform/qt-4.8/fast/invalid/019-expected.png: Added.
        * platform/qt-4.8/fast/invalid/019-expected.txt: Added.
        * platform/qt-4.8/fast/lists/003-expected.png: Added.
        * platform/qt-4.8/fast/lists/003-expected.txt: Added.
        * platform/qt-4.8/fast/text/basic/generic-family-reset-expected.png: Added.
        * platform/qt-4.8/fast/text/basic/generic-family-reset-expected.txt: Added.
        * platform/qt-mac/Skipped: Skip failing tests.
        * platform/qt-wk2/Skipped: Skip failing tests.

2011-07-29  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        [Qt] Add platform specific expected results

        Reviewed by Csaba Osztrogonác.

        * platform/qt/Skipped: Unskip passing tests.
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/linking-a-03-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/linking-a-03-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/masking-path-04-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/struct-frag-01-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/struct-frag-01-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/struct-use-01-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/struct-use-01-t-expected.txt: Added.
        * platform/qt/svg/batik/filters/filterRegions-expected.png: Added.
        * platform/qt/svg/batik/filters/filterRegions-expected.txt: Added.
        * platform/qt/svg/batik/masking/maskRegions-expected.png: Added.
        * platform/qt/svg/batik/masking/maskRegions-expected.txt: Added.
        * platform/qt/svg/batik/paints/patternPreserveAspectRatioA-expected.png: Added.
        * platform/qt/svg/batik/paints/patternPreserveAspectRatioA-expected.txt: Added.
        * platform/qt/svg/batik/paints/patternRegionA-expected.png: Added.
        * platform/qt/svg/batik/paints/patternRegionA-expected.txt: Added.
        * platform/qt/svg/batik/paints/patternRegions-expected.png: Added.
        * platform/qt/svg/batik/paints/patternRegions-expected.txt: Added.
        * platform/qt/svg/batik/text/longTextOnPath-expected.png: Added.
        * platform/qt/svg/batik/text/longTextOnPath-expected.txt: Added.
        * platform/qt/svg/batik/text/smallFonts-expected.png: Added.
        * platform/qt/svg/batik/text/smallFonts-expected.txt: Added.
        * platform/qt/svg/batik/text/textAnchor-expected.png: Added.
        * platform/qt/svg/batik/text/textAnchor-expected.txt: Added.
        * platform/qt/svg/batik/text/textAnchor2-expected.png: Added.
        * platform/qt/svg/batik/text/textAnchor2-expected.txt: Added.
        * platform/qt/svg/batik/text/textAnchor3-expected.png: Added.
        * platform/qt/svg/batik/text/textAnchor3-expected.txt: Added.
        * platform/qt/svg/batik/text/textDecoration2-expected.png: Added.
        * platform/qt/svg/batik/text/textDecoration2-expected.txt: Added.
        * platform/qt/svg/batik/text/textEffect-expected.png: Added.
        * platform/qt/svg/batik/text/textEffect-expected.txt: Added.
        * platform/qt/svg/batik/text/textEffect2-expected.png: Added.
        * platform/qt/svg/batik/text/textEffect2-expected.txt: Added.
        * platform/qt/svg/batik/text/textEffect3-expected.png: Added.
        * platform/qt/svg/batik/text/textEffect3-expected.txt: Added.
        * platform/qt/svg/batik/text/textFeatures-expected.png: Added.
        * platform/qt/svg/batik/text/textFeatures-expected.txt: Added.
        * platform/qt/svg/batik/text/textGlyphOrientationHorizontal-expected.png: Added.
        * platform/qt/svg/batik/text/textGlyphOrientationHorizontal-expected.txt: Added.
        * platform/qt/svg/batik/text/textLayout2-expected.png: Added.
        * platform/qt/svg/batik/text/textLayout2-expected.txt: Added.
        * platform/qt/svg/batik/text/textLength-expected.png: Added.
        * platform/qt/svg/batik/text/textLength-expected.txt: Added.
        * platform/qt/svg/batik/text/textOnPath-expected.png: Added.
        * platform/qt/svg/batik/text/textOnPath-expected.txt: Added.
        * platform/qt/svg/batik/text/textOnPath2-expected.png: Added.
        * platform/qt/svg/batik/text/textOnPath2-expected.txt: Added.
        * platform/qt/svg/batik/text/textOnPath3-expected.png: Added.
        * platform/qt/svg/batik/text/textOnPath3-expected.txt: Added.
        * platform/qt/svg/batik/text/textPCDATA-expected.png: Added.
        * platform/qt/svg/batik/text/textPCDATA-expected.txt: Added.
        * platform/qt/svg/batik/text/textPosition-expected.png: Added.
        * platform/qt/svg/batik/text/textPosition-expected.txt: Added.
        * platform/qt/svg/batik/text/textPosition2-expected.png: Added.
        * platform/qt/svg/batik/text/textPosition2-expected.txt: Added.
        * platform/qt/svg/batik/text/textProperties-expected.png: Added.
        * platform/qt/svg/batik/text/textProperties-expected.txt: Added.
        * platform/qt/svg/batik/text/textProperties2-expected.png: Added.
        * platform/qt/svg/batik/text/textProperties2-expected.txt: Added.
        * platform/qt/svg/batik/text/verticalTextOnPath-expected.png: Added.
        * platform/qt/svg/batik/text/verticalTextOnPath-expected.txt: Added.
        * platform/qt/svg/carto.net/button-expected.png: Added.
        * platform/qt/svg/carto.net/button-expected.txt: Added.
        * platform/qt/svg/carto.net/colourpicker-expected.png: Added.
        * platform/qt/svg/carto.net/colourpicker-expected.txt: Added.
        * platform/qt/svg/carto.net/combobox-expected.png: Added.
        * platform/qt/svg/carto.net/combobox-expected.txt: Added.
        * platform/qt/svg/carto.net/scrollbar-expected.png: Added.
        * platform/qt/svg/carto.net/scrollbar-expected.txt: Added.
        * platform/qt/svg/carto.net/selectionlist-expected.png: Added.
        * platform/qt/svg/carto.net/selectionlist-expected.txt: Added.
        * platform/qt/svg/carto.net/slider-expected.png: Added.
        * platform/qt/svg/carto.net/slider-expected.txt: Added.
        * platform/qt/svg/carto.net/tabgroup-expected.png: Added.
        * platform/qt/svg/carto.net/tabgroup-expected.txt: Added.
        * platform/qt/svg/carto.net/textbox-expected.png: Added.
        * platform/qt/svg/carto.net/textbox-expected.txt: Added.
        * platform/qt/svg/carto.net/window-expected.png: Added.
        * platform/qt/svg/carto.net/window-expected.txt: Added.
        * platform/qt/svg/css/css-box-min-width-expected.png: Added.
        * platform/qt/svg/css/css-box-min-width-expected.txt: Added.
        * platform/qt/svg/css/getComputedStyle-basic-expected.png: Added.
        * platform/qt/svg/custom/foreign-object-skew-expected.png: Added.
        * platform/qt/svg/custom/foreign-object-skew-expected.txt: Added.
        * platform/qt/svg/custom/grayscale-gradient-mask-expected.png: Added.
        * platform/qt/svg/custom/grayscale-gradient-mask-expected.txt: Added.
        * platform/qt/svg/custom/group-opacity-expected.png: Added.
        * platform/qt/svg/custom/group-opacity-expected.txt: Added.
        * platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.png: Added.
        * platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt: Added.
        * platform/qt/svg/custom/js-late-clipPath-creation-expected.png: Added.
        * platform/qt/svg/custom/js-late-clipPath-creation-expected.txt: Added.
        * platform/qt/svg/custom/percentage-rect-expected.png: Added.
        * platform/qt/svg/custom/percentage-rect-expected.txt: Added.
        * platform/qt/svg/custom/pointer-events-image-expected.png: Added.
        * platform/qt/svg/custom/pointer-events-image-expected.txt: Added.
        * platform/qt/svg/custom/text-linking-expected.png: Added.
        * platform/qt/svg/custom/text-linking-expected.txt: Added.
        * platform/qt/svg/dom/SVGRectElement/rect-modify-rx-expected.png: Added.
        * platform/qt/svg/hixie/cascade/001-broken-expected.png: Added.
        * platform/qt/svg/hixie/cascade/001-broken-expected.txt: Added.
        * platform/qt/svg/hixie/data-types/001-expected.png: Added.
        * platform/qt/svg/hixie/data-types/001-expected.txt: Added.
        * platform/qt/svg/hixie/dynamic/002-expected.png: Added.
        * platform/qt/svg/hixie/dynamic/002-expected.txt:
        * platform/qt/svg/hixie/dynamic/003-expected.png: Added.
        * platform/qt/svg/hixie/dynamic/003-expected.txt: Added.
        * platform/qt/svg/hixie/dynamic/004-expected.png: Added.
        * platform/qt/svg/hixie/dynamic/004-expected.txt: Added.
        * platform/qt/svg/hixie/dynamic/005-expected.png: Added.
        * platform/qt/svg/hixie/dynamic/005-expected.txt: Added.
        * platform/qt/svg/hixie/dynamic/006-expected.png: Added.
        * platform/qt/svg/hixie/dynamic/006-expected.txt: Added.
        * platform/qt/svg/hixie/error/001-expected.png: Added.
        * platform/qt/svg/hixie/error/001-expected.txt: Added.
        * platform/qt/svg/hixie/error/002-expected.png: Added.
        * platform/qt/svg/hixie/error/002-expected.txt: Added.
        * platform/qt/svg/hixie/error/003-expected.png: Added.
        * platform/qt/svg/hixie/error/003-expected.txt: Added.
        * platform/qt/svg/hixie/error/007-expected.png: Added.
        * platform/qt/svg/hixie/error/007-expected.txt: Added.
        * platform/qt/svg/hixie/error/008-expected.png: Added.
        * platform/qt/svg/hixie/error/008-expected.txt: Added.
        * platform/qt/svg/hixie/error/009-expected.png: Added.
        * platform/qt/svg/hixie/error/009-expected.txt: Added.
        * platform/qt/svg/hixie/error/010-expected.png: Added.
        * platform/qt/svg/hixie/error/010-expected.txt: Added.
        * platform/qt/svg/hixie/error/011-expected.png: Added.
        * platform/qt/svg/hixie/error/011-expected.txt: Added.
        * platform/qt/svg/hixie/error/013-expected.png: Added.
        * platform/qt/svg/hixie/error/013-expected.txt: Added.
        * platform/qt/svg/hixie/error/014-expected.png: Added.
        * platform/qt/svg/hixie/error/014-expected.txt: Added.
        * platform/qt/svg/hixie/error/014-test-expected.png: Added.
        * platform/qt/svg/hixie/error/014-test-expected.txt: Added.
        * platform/qt/svg/hixie/error/015-expected.png: Added.
        * platform/qt/svg/hixie/error/015-expected.txt: Added.
        * platform/qt/svg/hixie/error/016-expected.png: Added.
        * platform/qt/svg/hixie/error/016-expected.txt: Added.
        * platform/qt/svg/hixie/error/017-expected.png: Added.
        * platform/qt/svg/hixie/error/017-expected.txt: Added.
        * platform/qt/svg/hixie/links/001-expected.png: Added.
        * platform/qt/svg/hixie/links/001-expected.txt: Added.
        * platform/qt/svg/hixie/links/002-expected.png: Added.
        * platform/qt/svg/hixie/links/002-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/003-expected.png: Added.
        * platform/qt/svg/hixie/mixed/003-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/004-expected.png: Added.
        * platform/qt/svg/hixie/mixed/004-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/005-expected.png: Added.
        * platform/qt/svg/hixie/mixed/005-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/006-expected.png: Added.
        * platform/qt/svg/hixie/mixed/006-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/007-expected.png: Added.
        * platform/qt/svg/hixie/mixed/007-expected.txt:
        * platform/qt/svg/hixie/mixed/008-expected.png: Added.
        * platform/qt/svg/hixie/mixed/008-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/009-expected.png: Added.
        * platform/qt/svg/hixie/mixed/009-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/010-expected.png: Added.
        * platform/qt/svg/hixie/mixed/010-expected.txt: Added.
        * platform/qt/svg/hixie/mixed/011-expected.png: Added.
        * platform/qt/svg/hixie/mixed/011-expected.txt: Added.
        * platform/qt/svg/hixie/painting/001-expected.png: Added.
        * platform/qt/svg/hixie/painting/001-expected.txt: Added.
        * platform/qt/svg/hixie/perf/001-expected.png: Added.
        * platform/qt/svg/hixie/perf/001-expected.txt: Added.
        * platform/qt/svg/hixie/perf/002-expected.png: Added.
        * platform/qt/svg/hixie/perf/002-expected.txt: Added.
        * platform/qt/svg/hixie/perf/003-expected.png: Added.
        * platform/qt/svg/hixie/perf/003-expected.txt: Added.
        * platform/qt/svg/hixie/perf/004-expected.png: Added.
        * platform/qt/svg/hixie/perf/004-expected.txt: Added.
        * platform/qt/svg/hixie/perf/005-expected.png: Added.
        * platform/qt/svg/hixie/perf/005-expected.txt: Added.
        * platform/qt/svg/hixie/perf/006-expected.png: Added.
        * platform/qt/svg/hixie/perf/006-expected.txt: Added.
        * platform/qt/svg/hixie/perf/007-expected.png: Added.
        * platform/qt/svg/hixie/perf/007-expected.txt: Added.
        * platform/qt/svg/hixie/processing-model/003-expected.png: Added.
        * platform/qt/svg/hixie/processing-model/003-expected.txt:
        * platform/qt/svg/hixie/processing-model/004-expected.png: Added.
        * platform/qt/svg/hixie/processing-model/004-expected.txt:
        * platform/qt/svg/hixie/processing-model/005-expected.png: Added.
        * platform/qt/svg/hixie/processing-model/005-expected.txt: Added.
        * platform/qt/svg/hixie/rendering-model/001-expected.png: Added.
        * platform/qt/svg/hixie/rendering-model/001-expected.txt: Added.
        * platform/qt/svg/hixie/rendering-model/002-expected.png: Added.
        * platform/qt/svg/hixie/rendering-model/002-expected.txt: Added.
        * platform/qt/svg/hixie/rendering-model/003-expected.png: Added.
        * platform/qt/svg/hixie/rendering-model/003-expected.txt: Added.
        * platform/qt/svg/hixie/rendering-model/003a-expected.png: Added.
        * platform/qt/svg/hixie/rendering-model/003a-expected.txt: Added.
        * platform/qt/svg/hixie/rendering-model/004-expected.png: Added.
        * platform/qt/svg/hixie/rendering-model/004-expected.txt: Added.
        * platform/qt/svg/hixie/shapes/path/001-expected.png: Added.
        * platform/qt/svg/hixie/shapes/path/001-expected.txt: Added.
        * platform/qt/svg/hixie/text/002-expected.png: Added.
        * platform/qt/svg/hixie/text/002-expected.txt: Added.
        * platform/qt/svg/hixie/text/003-expected.png: Added.
        * platform/qt/svg/hixie/text/003-expected.txt: Added.
        * platform/qt/svg/hixie/text/003a-expected.png: Added.
        * platform/qt/svg/hixie/text/003a-expected.txt: Added.
        * platform/qt/svg/hixie/text/003b-expected.png: Added.
        * platform/qt/svg/hixie/text/003b-expected.txt: Added.
        * platform/qt/svg/hixie/transform/001-expected.png: Added.
        * platform/qt/svg/hixie/transform/001-expected.txt: Added.
        * platform/qt/svg/hixie/use/001-expected.png: Added.
        * platform/qt/svg/hixie/use/001-expected.txt: Added.
        * platform/qt/svg/hixie/use/002-expected.png: Added.
        * platform/qt/svg/hixie/use/002-expected.txt: Added.
        * platform/qt/svg/hixie/use/002-test-expected.png: Added.
        * platform/qt/svg/hixie/use/002-test-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/001-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/001-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/002-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/002-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/003-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/003-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/004-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/004-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/preserveAspectRatio/001-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt: Added.
        * platform/qt/svg/hixie/viewbox/preserveAspectRatio/002-expected.png: Added.
        * platform/qt/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt: Added.

2011-07-29  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        [Qt] Update platform specific expected results

        Reviewed by Csaba Osztrogonác.

        * platform/qt/Skipped: Unskip passing tests.
        * platform/qt/fast/backgrounds/opacity-on-document-element-expected.png: Added.
        * platform/qt/fast/backgrounds/opacity-on-document-element-expected.txt:
        * platform/qt/fast/block/basic/010-expected.png: Added.
        * platform/qt/fast/block/basic/010-expected.txt:
        * platform/qt/fast/block/float/004-expected.png: Added.
        * platform/qt/fast/block/float/004-expected.txt:
        * platform/qt/fast/block/float/010-expected.png: Added.
        * platform/qt/fast/block/float/010-expected.txt:
        * platform/qt/fast/block/float/017-expected.png: Added.
        * platform/qt/fast/block/float/017-expected.txt:
        * platform/qt/fast/block/float/021-expected.png: Added.
        * platform/qt/fast/block/float/021-expected.txt:
        * platform/qt/fast/block/float/032-expected.png: Added.
        * platform/qt/fast/block/float/032-expected.txt:
        * platform/qt/fast/block/float/br-with-clear-expected.png: Added.
        * platform/qt/fast/block/float/br-with-clear-expected.txt: Added.
        * platform/qt/fast/block/float/float-in-float-hit-testing-expected.png: Added.
        * platform/qt/fast/block/float/float-in-float-hit-testing-expected.txt:
        * platform/qt/fast/block/margin-collapse/006-expected.png: Added.
        * platform/qt/fast/block/margin-collapse/006-expected.txt:
        * platform/qt/fast/block/margin-collapse/055-expected.png: Added.
        * platform/qt/fast/block/margin-collapse/055-expected.txt:
        * platform/qt/fast/block/positioning/047-expected.png: Added.
        * platform/qt/fast/block/positioning/047-expected.txt:
        * platform/qt/fast/block/positioning/051-expected.png: Added.
        * platform/qt/fast/block/positioning/051-expected.txt:
        * platform/qt/fast/block/positioning/056-expected.png: Added.
        * platform/qt/fast/block/positioning/056-expected.txt:
        * platform/qt/fast/block/positioning/061-expected.png: Added.
        * platform/qt/fast/block/positioning/061-expected.txt:
        * platform/qt/fast/block/positioning/move-with-auto-width-expected.png: Added.
        * platform/qt/fast/block/positioning/move-with-auto-width-expected.txt: Added.
        * platform/qt/fast/css/beforeSelectorOnCodeElement-expected.png: Added.
        * platform/qt/fast/css/beforeSelectorOnCodeElement-expected.txt:
        * platform/qt/fast/dynamic/containing-block-change-expected.png: Added.
        * platform/qt/fast/dynamic/containing-block-change-expected.txt:
        * platform/qt/fast/dynamic/floating-to-positioned-2-expected.png: Added.
        * platform/qt/fast/dynamic/floating-to-positioned-2-expected.txt: Added.
        * platform/qt/fast/dynamic/floating-to-positioned-expected.png: Added.
        * platform/qt/fast/dynamic/floating-to-positioned-expected.txt: Added.
        * platform/qt/fast/events/focusingUnloadedFrame-expected.png: Added.
        * platform/qt/fast/flexbox/002-expected.png: Added.
        * platform/qt/fast/flexbox/002-expected.txt:
        * platform/qt/fast/flexbox/003-expected.png: Added.
        * platform/qt/fast/flexbox/003-expected.txt:
        * platform/qt/fast/forms/listbox-clip-expected.png: Added.
        * platform/qt/fast/forms/listbox-clip-expected.txt:
        * platform/qt/fast/forms/menulist-clip-expected.png: Added.
        * platform/qt/fast/forms/menulist-clip-expected.txt:
        * platform/qt/fast/forms/minWidthPercent-expected.png: Added.
        * platform/qt/fast/forms/minWidthPercent-expected.txt:
        * platform/qt/fast/forms/onchange-enter-submit-expected.png: Added.
        * platform/qt/fast/gradients/background-clipped-expected.png: Added.
        * platform/qt/fast/gradients/background-clipped-expected.txt: Added.
        * platform/qt/fast/gradients/generated-gradients-expected.png: Added.
        * platform/qt/fast/gradients/generated-gradients-expected.txt: Added.
        * platform/qt/fast/gradients/simple-gradients-expected.png: Added.
        * platform/qt/fast/gradients/simple-gradients-expected.txt: Added.
        * platform/qt/fast/inline-block/001-expected.png: Added.
        * platform/qt/fast/inline-block/001-expected.txt:
        * platform/qt/fast/inline/continuation-outlines-expected.png: Added.
        * platform/qt/fast/inline/continuation-outlines-expected.txt:
        * platform/qt/fast/inline/continuation-outlines-with-layers-expected.png: Added.
        * platform/qt/fast/inline/continuation-outlines-with-layers-expected.txt:
        * platform/qt/fast/inline/drawStyledEmptyInlinesWithWS-expected.png: Added.
        * platform/qt/fast/inline/drawStyledEmptyInlinesWithWS-expected.txt: Added.
        * platform/qt/fast/invalid/019-expected.png: Added.
        * platform/qt/fast/invalid/019-expected.txt:
        * platform/qt/fast/layers/add-layer-with-nested-stacking-expected.png: Added.
        * platform/qt/fast/layers/add-layer-with-nested-stacking-expected.txt: Added.
        * platform/qt/fast/layers/inline-dirty-z-order-lists-expected.png: Added.
        * platform/qt/fast/layers/inline-dirty-z-order-lists-expected.txt: Added.
        * platform/qt/fast/layers/remove-layer-with-nested-stacking-expected.png: Added.
        * platform/qt/fast/layers/remove-layer-with-nested-stacking-expected.txt: Added.
        * platform/qt/fast/layers/self-painting-outline-expected.png: Added.
        * platform/qt/fast/layers/self-painting-outline-expected.txt: Added.
        * platform/qt/fast/lists/003-expected.png: Added.
        * platform/qt/fast/lists/003-expected.txt:
        * platform/qt/fast/media/mq-animation-expected.png: Added.
        * platform/qt/fast/media/mq-animation-expected.txt: Added.
        * platform/qt/fast/media/mq-js-media-except-01-expected.png: Added.
        * platform/qt/fast/media/mq-js-media-except-01-expected.txt:
        * platform/qt/fast/media/mq-js-media-except-02-expected.png: Added.
        * platform/qt/fast/media/mq-js-media-except-02-expected.txt:
        * platform/qt/fast/overflow/table-overflow-float-expected.png: Added.
        * platform/qt/fast/overflow/table-overflow-float-expected.txt:
        * platform/qt/fast/repaint/4774354-expected.png: Added.
        * platform/qt/fast/repaint/4774354-expected.txt:
        * platform/qt/fast/repaint/4776765-expected.png: Added.
        * platform/qt/fast/repaint/4776765-expected.txt:
        * platform/qt/fast/repaint/backgroundSizeRepaint-expected.png: Added.
        * platform/qt/fast/repaint/backgroundSizeRepaint-expected.txt:
        * platform/qt/fast/repaint/body-background-image-expected.png: Added.
        * platform/qt/fast/repaint/body-background-image-expected.txt:
        * platform/qt/fast/repaint/border-fit-lines-expected.png: Added.
        * platform/qt/fast/repaint/border-fit-lines-expected.txt:
        * platform/qt/fast/repaint/border-radius-repaint-expected.png: Added.
        * platform/qt/fast/repaint/border-radius-repaint-expected.txt:
        * platform/qt/fast/repaint/border-repaint-glitch-expected.png: Added.
        * platform/qt/fast/repaint/border-repaint-glitch-expected.txt:
        * platform/qt/fast/repaint/box-shadow-dynamic-expected.png: Added.
        * platform/qt/fast/repaint/box-shadow-dynamic-expected.txt:
        * platform/qt/fast/repaint/bugzilla-3509-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-3509-expected.txt:
        * platform/qt/fast/repaint/bugzilla-5699-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-5699-expected.txt:
        * platform/qt/fast/repaint/bugzilla-6278-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-6278-expected.txt:
        * platform/qt/fast/repaint/bugzilla-6388-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-6388-expected.txt:
        * platform/qt/fast/repaint/bugzilla-6473-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-6473-expected.txt:
        * platform/qt/fast/repaint/bugzilla-7235-expected.png: Added.
        * platform/qt/fast/repaint/bugzilla-7235-expected.txt:
        * platform/qt/fast/repaint/caret-outside-block-expected.png: Added.
        * platform/qt/fast/repaint/caret-outside-block-expected.txt: Added.
        * platform/qt/fast/repaint/change-transform-expected.png: Added.
        * platform/qt/fast/repaint/change-transform-expected.txt: Added.
        * platform/qt/fast/repaint/clip-with-layout-delta-expected.png: Added.
        * platform/qt/fast/repaint/clip-with-layout-delta-expected.txt: Added.
        * platform/qt/fast/repaint/clipped-relative-expected.png: Added.
        * platform/qt/fast/repaint/clipped-relative-expected.txt:
        * platform/qt/fast/repaint/containing-block-position-change-expected.png: Added.
        * platform/qt/fast/repaint/containing-block-position-change-expected.txt:
        * platform/qt/fast/repaint/continuation-after-outline-expected.png: Added.
        * platform/qt/fast/repaint/continuation-after-outline-expected.txt:
        * platform/qt/fast/repaint/create-layer-repaint-expected.png: Added.
        * platform/qt/fast/repaint/create-layer-repaint-expected.txt: Added.
        * platform/qt/fast/repaint/delete-into-nested-block-expected.png: Added.
        * platform/qt/fast/repaint/delete-into-nested-block-expected.txt:
        * platform/qt/fast/repaint/dynamic-table-vertical-alignment-change-expected.png: Added.
        * platform/qt/fast/repaint/dynamic-table-vertical-alignment-change-expected.txt: Added.
        * platform/qt/fast/repaint/float-move-during-layout-expected.png: Added.
        * platform/qt/fast/repaint/float-move-during-layout-expected.txt:
        * platform/qt/fast/repaint/float-overflow-expected.png: Added.
        * platform/qt/fast/repaint/float-overflow-expected.txt:
        * platform/qt/fast/repaint/float-overflow-right-expected.png: Added.
        * platform/qt/fast/repaint/float-overflow-right-expected.txt:
        * platform/qt/fast/repaint/focus-layers-expected.png: Added.
        * platform/qt/fast/repaint/focus-layers-expected.txt:
        * platform/qt/fast/repaint/inline-color-change-expected.png: Added.
        * platform/qt/fast/repaint/inline-color-change-expected.txt: Added.
        * platform/qt/fast/repaint/invisible-objects-expected.png: Added.
        * platform/qt/fast/repaint/invisible-objects-expected.txt: Added.
        * platform/qt/fast/repaint/layout-state-only-positioned-expected.png: Added.
        * platform/qt/fast/repaint/layout-state-only-positioned-expected.txt: Added.
        * platform/qt/fast/repaint/layout-state-relative-expected.png: Added.
        * platform/qt/fast/repaint/layout-state-relative-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-1-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-1-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-10-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-10-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-2-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-2-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-3-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-3-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-4-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-4-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-5-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-5-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-6-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-6-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-7-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-7-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-8-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-8-expected.txt: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-9-expected.png: Added.
        * platform/qt/fast/repaint/line-flow-with-floats-9-expected.txt: Added.
        * platform/qt/fast/repaint/line-overflow-expected.png: Added.
        * platform/qt/fast/repaint/line-overflow-expected.txt:
        * platform/qt/fast/repaint/lines-with-layout-delta-expected.png: Added.
        * platform/qt/fast/repaint/lines-with-layout-delta-expected.txt: Added.
        * platform/qt/fast/repaint/list-marker-2-expected.png: Added.
        * platform/qt/fast/repaint/list-marker-2-expected.txt:
        * platform/qt/fast/repaint/make-children-non-inline-expected.png: Added.
        * platform/qt/fast/repaint/make-children-non-inline-expected.txt: Added.
        * platform/qt/fast/repaint/opacity-change-on-overflow-float-expected.png: Added.
        * platform/qt/fast/repaint/opacity-change-on-overflow-float-expected.txt: Added.
        * platform/qt/fast/repaint/outline-child-repaint-expected.png: Added.
        * platform/qt/fast/repaint/outline-child-repaint-expected.txt: Added.
        * platform/qt/fast/repaint/outline-inset-expected.png: Added.
        * platform/qt/fast/repaint/outline-inset-expected.txt:
        * platform/qt/fast/repaint/outline-repaint-glitch-expected.png: Added.
        * platform/qt/fast/repaint/outline-repaint-glitch-expected.txt:
        * platform/qt/fast/repaint/outline-shrinking-expected.png: Added.
        * platform/qt/fast/repaint/outline-shrinking-expected.txt:
        * platform/qt/fast/repaint/overflow-clip-subtree-layout-expected.png: Added.
        * platform/qt/fast/repaint/overflow-clip-subtree-layout-expected.txt: Added.
        * platform/qt/fast/repaint/overflow-delete-line-expected.png: Added.
        * platform/qt/fast/repaint/overflow-delete-line-expected.txt:
        * platform/qt/fast/repaint/overflow-scroll-body-appear-expected.png: Added.
        * platform/qt/fast/repaint/overflow-scroll-body-appear-expected.txt: Added.
        * platform/qt/fast/repaint/overflow-scroll-delete-expected.png: Added.
        * platform/qt/fast/repaint/overflow-scroll-delete-expected.txt: Added.
        * platform/qt/fast/repaint/reflection-redraw-expected.png: Added.
        * platform/qt/fast/repaint/reflection-redraw-expected.txt: Added.
        * platform/qt/fast/repaint/reflection-repaint-test-expected.png: Added.
        * platform/qt/fast/repaint/reflection-repaint-test-expected.txt: Added.
        * platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png: Added.
        * platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt: Added.
        * platform/qt/fast/repaint/repaint-resized-overflow-expected.png: Added.
        * platform/qt/fast/repaint/repaint-resized-overflow-expected.txt:
        * platform/qt/fast/repaint/selected-replaced-expected.png: Added.
        * platform/qt/fast/repaint/selected-replaced-expected.txt: Added.
        * platform/qt/fast/repaint/selection-clear-expected.png: Added.
        * platform/qt/fast/repaint/selection-clear-expected.txt: Added.
        * platform/qt/fast/repaint/static-to-positioned-expected.png: Added.
        * platform/qt/fast/repaint/static-to-positioned-expected.txt:
        * platform/qt/fast/repaint/subtree-root-clip-2-expected.png: Added.
        * platform/qt/fast/repaint/subtree-root-clip-2-expected.txt: Added.
        * platform/qt/fast/repaint/subtree-root-clip-3-expected.png: Added.
        * platform/qt/fast/repaint/subtree-root-clip-3-expected.txt: Added.
        * platform/qt/fast/repaint/subtree-root-clip-expected.png: Added.
        * platform/qt/fast/repaint/subtree-root-clip-expected.txt: Added.
        * platform/qt/fast/repaint/subtree-root-skipped-expected.png: Added.
        * platform/qt/fast/repaint/subtree-root-skipped-expected.txt: Added.
        * platform/qt/fast/repaint/table-cell-collapsed-border-expected.png: Added.
        * platform/qt/fast/repaint/table-cell-collapsed-border-expected.txt:
        * platform/qt/fast/repaint/table-cell-move-expected.png: Added.
        * platform/qt/fast/repaint/table-cell-move-expected.txt:
        * platform/qt/fast/repaint/table-collapsed-border-expected.png: Added.
        * platform/qt/fast/repaint/table-collapsed-border-expected.txt:
        * platform/qt/fast/repaint/table-extra-bottom-grow-expected.png: Added.
        * platform/qt/fast/repaint/table-extra-bottom-grow-expected.txt:
        * platform/qt/fast/repaint/table-two-pass-layout-overpaint-expected.png: Added.
        * platform/qt/fast/repaint/table-two-pass-layout-overpaint-expected.txt: Added.
        * platform/qt/fast/repaint/text-append-dirty-lines-expected.png: Added.
        * platform/qt/fast/repaint/text-append-dirty-lines-expected.txt: Added.
        * platform/qt/fast/repaint/transform-absolute-child-expected.png: Added.
        * platform/qt/fast/repaint/transform-absolute-child-expected.txt: Added.
        * platform/qt/fast/repaint/transform-absolute-in-positioned-container-expected.png: Added.
        * platform/qt/fast/repaint/transform-absolute-in-positioned-container-expected.txt: Added.
        * platform/qt/fast/repaint/transform-disable-layoutstate-expected.png: Added.
        * platform/qt/fast/repaint/transform-disable-layoutstate-expected.txt: Added.
        * platform/qt/fast/repaint/transform-layout-repaint-expected.png: Added.
        * platform/qt/fast/repaint/transform-layout-repaint-expected.txt: Added.
        * platform/qt/fast/repaint/transform-relative-position-expected.png: Added.
        * platform/qt/fast/repaint/transform-relative-position-expected.txt: Added.
        * platform/qt/fast/repaint/transform-repaint-descendants-expected.png: Added.
        * platform/qt/fast/repaint/transform-repaint-descendants-expected.txt: Added.
        * platform/qt/fast/repaint/transform-replaced-shadows-expected.png: Added.
        * platform/qt/fast/repaint/transform-replaced-shadows-expected.txt: Added.
        * platform/qt/fast/repaint/transform-translate-expected.png: Added.
        * platform/qt/fast/repaint/transform-translate-expected.txt: Added.
        * platform/qt/fast/text/apply-start-width-after-skipped-text-expected.png: Added.
        * platform/qt/fast/text/apply-start-width-after-skipped-text-expected.txt: Added.
        * platform/qt/fast/text/basic/generic-family-reset-expected.png: Added.
        * platform/qt/fast/text/basic/generic-family-reset-expected.txt:
        * platform/qt/fast/text/whitespace/002-expected.png: Added.
        * platform/qt/fast/text/whitespace/002-expected.txt:
        * platform/qt/fast/text/whitespace/003-expected.png: Added.
        * platform/qt/fast/text/whitespace/003-expected.txt:

2011-07-29  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Fail new fast/js/parseInt.html test
        https://bugs.webkit.org/show_bug.cgi?id=65366

        Unreviewed expectaions update.

        * platform/chromium/test_expectations.txt:

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.
        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]Web Inspector: REGRESSION(r91928): It made 2 tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65364

        * platform/qt/Skipped: Skip failing tests.

2011-07-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.

2011-07-28  Kent Tamura  <tkent@chromium.org>

        [Qt] Fix style errors of test_expectations.txt.

        * platform/qt/test_expectations.txt:

2011-07-28  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=65325
        Performance tweak to parseInt

        Reviewed by Oliver Hunt.

        * fast/js/parseInt-expected.txt: Added.
        * fast/js/parseInt.html: Added.
        * fast/js/script-tests/parseInt.js: Added.
            - Added test cases.
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.2_parseInt/S15.1.2.2_A1_T2-expected.txt:
            - Fixed.

2011-07-28  Anders Carlsson  <andersca@apple.com>

        Unreviewed, rolling out r88601. (Requested by Sam Weinig).
        http://trac.webkit.org/changeset/88601
        https://bugs.webkit.org/show_bug.cgi?id=62230

        Caused a regression, see https://bugs.webkit.org/show_bug.cgi?id=64378

        * fast/dom/body-link-decl-parent-crash-expected.txt: Removed.
        * fast/dom/body-link-decl-parent-crash.html: Removed.
        * fast/dom/styled-inline-style-decl-parent-crash-expected.txt: Removed.
        * fast/dom/styled-inline-style-decl-parent-crash.html: Removed.

2011-07-28  Luke Zarko  <lukezarko@gmail.com>

        V8 should correctly serialize Boolean, Number and String objects.

        https://bugs.webkit.org/show_bug.cgi?id=65286

        Reviewed by David Levin.

        - Check that Boolean, Number and String objects are correctly serialized.
        - Check that a native error is not serialized.
        - Fix an expectation that a native error can be serialized.

        * fast/dom/Window/script-tests/postmessage-clone.js:
        * fast/dom/Window/script-tests/postmessage-test.js:
        * fast/dom/Window/window-postmessage-clone-expected.txt:
        * fast/loader/stateobjects/pushstate-object-types-expected.txt:
        * fast/loader/stateobjects/pushstate-object-types.html:
        * platform/chromium/fast/dom/Window/window-postmessage-clone-expected.txt:

2011-07-28  Adam Barth  <abarth@webkit.org>

        Old code about empty security origins could use a bath
        https://bugs.webkit.org/show_bug.cgi?id=64735

        Reviewed by Dimitri Glazkov.

        * http/tests/security/inactive-document-with-empty-security-origin-expected.txt: Added.
        * http/tests/security/inactive-document-with-empty-security-origin.html: Added.
        * http/tests/security/resources/post-done-to-opener.html: Added.

2011-07-28  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]Add basic RenderRegion support
        https://bugs.webkit.org/show_bug.cgi?id=64689

        Reviewed by David Hyatt.

        * fast/regions/region-element-display-restriction-expected.txt: Added.
        * fast/regions/region-element-display-restriction.html: Added.
        * fast/regions/region-element-dynamic-attach-flow-expected.txt: Added.
        * fast/regions/region-element-dynamic-attach-flow.html: Added.
        * fast/regions/region-element-dynamic-detach-flow-expected.txt: Added.
        * fast/regions/region-element-dynamic-detach-flow.html: Added.
        * fast/regions/render-region-renderer-expected.txt: Added.
        * fast/regions/render-region-renderer.html: Added.
        * fast/regions/script-tests/region-element-display-restriction.js: Added.

2011-07-28  Adrienne Walker  <enne@google.com>

        [chromium] chromium-win-xp test updates after r91945.

        Unreviewed gardening.

        See also r91946, r91948.

        * platform/chromium-win-xp/fast/blockflow/japanese-ruby-horizontal-bt-expected.png: Added.
        * platform/chromium-win-xp/fast/css/line-height-determined-by-primary-font-expected.png: Added.
        * platform/chromium-win-xp/fast/ruby/nested-ruby-expected.png: Added.
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-euc-expected.png: Added.
        * platform/chromium-win-xp/fast/text/backslash-to-yen-sign-euc-expected.txt: Added.
        * platform/chromium-win-xp/fast/text/international/khmer-selection-expected.png: Added.
        * platform/chromium-win-xp/fast/text/international/khmer-selection-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win-xp/svg/text/bidi-text-query-expected.png: Added.
        * platform/chromium-win-xp/svg/text/bidi-text-query-expected.txt: Added.

2011-07-28  Stephen White  <senorblanco@chromium.org>

        Yet more chromium test updates.  Vista tests were broken by the win7
        results (same fallback problem as linux).  Some tests just needed a
        baseline.  And some checked-in SVG masks test results were wrong.

        Unreviewed.

        * platform/chromium-linux/svg/zoom/page/zoom-mask-with-percentages-expected.png: Removed.
        * platform/chromium-linux/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/image-rescale-clip-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/image-rescale-scroll-expected.png: Added.
        * platform/chromium-mac/svg/custom/image-rescale-clip-expected.png: Added.
        * platform/chromium-mac/svg/custom/image-rescale-scroll-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Added.
        * platform/chromium-win-vista/svg/text/bidi-tspans-expected.png: Added.
        * platform/chromium-win-vista/svg/text/bidi-tspans-expected.txt: Added.
        * platform/chromium-win/svg/custom/image-rescale-clip-expected.png: Added.
        * platform/chromium-win/svg/custom/image-rescale-clip-expected.txt: Added.
        * platform/chromium-win/svg/custom/image-rescale-scroll-expected.png: Added.
        * platform/chromium-win/svg/custom/image-rescale-scroll-expected.txt: Added.
        * platform/chromium-win/svg/zoom/page/zoom-mask-with-percentages-expected.png: Removed.
        * platform/chromium-win/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-07-28  Rob Buis  <rbuis@rim.com>

        Mac svg gardening.

        RS=Nikolas Zimmerman.

        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
        * platform/mac/svg/custom/text-linking-expected.png:
        * platform/mac/svg/filters/feGaussianBlur-expected.png:
        * platform/mac/svg/text/text-altglyph-01-b-expected.png:

2011-07-28  Stephen White  <senorblanco@chromium.org>

        New chromium linux text results.  These results used to match the XP
        results, but since we now have (correct) win7 results with different
        DOM trees, the fallback no longer works, and we need them here.

        Unreviewed.

        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/chromium-linux/svg/custom/circular-marker-reference-1-expected.txt: Added.
        * platform/chromium-linux/svg/custom/circular-marker-reference-3-expected.txt: Added.
        * platform/chromium-linux/svg/text/bidi-tspans-expected.txt: Added.

2011-07-28  Stephen White  <senorblanco@chromium.org>

        Rebaseline many chromium win7 and vista tests.  This also revealed some
        incorrect results checked into the tree, which I've deleted.

        Unreviewed.

        * platform/chromium-linux/fast/text/international/hindi-whitespace-expected.png: Removed.
        * platform/chromium-linux/fast/text/international/hindi-whitespace-expected.txt: Removed.
        * platform/chromium-linux/svg/batik/masking/maskRegions-expected.png: Removed.
        * platform/chromium-linux/svg/batik/masking/maskRegions-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/hindi-whitespace-expected.png: Removed.
        * platform/chromium-win-vista/css2.1/t1202-counter-09-b-expected.png: Removed.
        * platform/chromium-win-vista/css2.1/t1202-counters-09-b-expected.png: Removed.
        * platform/chromium-win-vista/editing/pasteboard/block-wrappers-necessary-expected.png:
        * platform/chromium-win-vista/fast/text/drawBidiText-expected.png:
        * platform/chromium-win-vista/fast/text/international/danda-space-expected.png: Added.
        * platform/chromium-win-vista/fast/text/international/hindi-whitespace-expected.png: Removed.
        * platform/chromium-win-vista/fast/text/international/hindi-whitespace-expected.txt: Removed.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/js-late-pattern-and-object-creation-expected.png:
        * platform/chromium-win-vista/svg/text/bidi-text-query-expected.png: Added.
        * platform/chromium-win-vista/svg/text/bidi-text-query-expected.txt: Added.
        * platform/chromium-win-xp/fast/text/international/hindi-whitespace-expected.png: Removed.
        * platform/chromium-win-xp/fast/text/international/hindi-whitespace-expected.txt: Removed.
        * platform/chromium-win-xp/svg/batik/masking/maskRegions-expected.png: Removed.
        * platform/chromium-win-xp/svg/batik/masking/maskRegions-expected.txt: Removed.
        * platform/chromium-win/css2.1/t1202-counter-09-b-expected.png: Added.
        * platform/chromium-win/css2.1/t1202-counters-09-b-expected.png: Added.
        * platform/chromium-win/editing/pasteboard/block-wrappers-necessary-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-lr/007-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-rl/007-expected.png:
        * platform/chromium-win/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/chromium-win/fast/blockflow/japanese-ruby-horizontal-bt-expected.png:
        * platform/chromium-win/fast/blockflow/vertical-baseline-alignment-expected.png:
        * platform/chromium-win/fast/css/first-letter-first-line-hover-expected.png: Added.
        * platform/chromium-win/fast/css/first-letter-first-line-hover-expected.txt: Added.
        * platform/chromium-win/fast/css/line-height-determined-by-primary-font-expected.png:
        * platform/chromium-win/fast/dynamic/text-combine-expected.png:
        * platform/chromium-win/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/chromium-win/fast/ruby/base-shorter-than-text-expected.png:
        * platform/chromium-win/fast/ruby/nested-ruby-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-euc-expected.png:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-euc-expected.txt:
        * platform/chromium-win/fast/text/backslash-to-yen-sign-expected.png: Added.
        * platform/chromium-win/fast/text/backslash-to-yen-sign-expected.txt: Added.
        * platform/chromium-win/fast/text/drawBidiText-expected.png:
        * platform/chromium-win/fast/text/international/bidi-mirror-he-ar-expected.png: Added.
        * platform/chromium-win/fast/text/international/bidi-mirror-he-ar-expected.txt: Added.
        * platform/chromium-win/fast/text/international/hindi-spacing-expected.png: Added.
        * platform/chromium-win/fast/text/international/khmer-selection-expected.png:
        * platform/chromium-win/fast/text/international/khmer-selection-expected.txt:
        * platform/chromium-win/fast/text/international/plane2-expected.png: Added.
        * platform/chromium-win/fast/text/international/plane2-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubNone-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubNone-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubNone-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubNone-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt:
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png:
        * platform/chromium-win/svg/batik/paints/patternRegions-positioned-objects-expected.png:
        * platform/chromium-win/svg/custom/circular-marker-reference-1-expected.txt: Added.
        * platform/chromium-win/svg/custom/circular-marker-reference-3-expected.txt: Added.
        * platform/chromium-win/svg/custom/circular-marker-reference-4-expected.txt: Added.
        * platform/chromium-win/svg/custom/js-late-gradient-and-object-creation-expected.png:
        * platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
        * platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.txt: Added.
        * platform/chromium-win/svg/custom/nested-pattern-boundingBoxModeContent-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGPatternElement-dom-patternContentUnits-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGPatternElement-svgdom-patternContentUnits-prop-expected.png:
        * platform/chromium-win/svg/text/bidi-tspans-expected.png:
        * platform/chromium-win/svg/text/bidi-tspans-expected.txt:
        * platform/chromium-win/svg/zoom/page/zoom-mask-with-percentages-expected.png:
        * platform/chromium-win/svg/zoom/page/zoom-mask-with-percentages-expected.txt:
        * platform/chromium-win/svg/zoom/text/zoom-foreignObject-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-28  Stephen White  <senorblanco@chromium.org>

        Chromium test_expectations update:  remove a bunch of commented-out
        expectations.  Some of these were introduced by me, some were not.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-28  Stephen White  <senorblanco@chromium.org>

        New chromium baselines after skia r1960.

        Unreviewed.

        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-win-vista/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-win-vista/fast/text/stroking-decorations-expected.png:
        * platform/chromium-win-vista/fast/text/stroking-expected.png:
        * platform/chromium-win-vista/svg/batik/text/verticalText-expected.png: Removed.
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
        * platform/chromium-win-xp/fast/blockflow/japanese-ruby-vertical-lr-expected.png:
        * platform/chromium-win-xp/fast/blockflow/japanese-ruby-vertical-rl-expected.png:
        * platform/chromium-win-xp/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-win/fast/blockflow/japanese-ruby-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/japanese-ruby-vertical-rl-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-vertical-expected.png:
        * platform/chromium-win/fast/text/stroking-decorations-expected.png:
        * platform/chromium-win/fast/text/stroking-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/svg/batik/text/verticalText-expected.png: Added.
        * platform/chromium-win/svg/batik/text/verticalText-expected.txt: Added.
        * platform/chromium-win/svg/css/group-with-shadow-expected.png:
        * platform/chromium-win/svg/css/text-gradient-shadow-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-28  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] New expectations after r91924
        https://bugs.webkit.org/show_bug.cgi?id=65320

        Unreviewed expectations update.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: My last attempt to paint Qt-Mac bot green.

2011-07-28  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add resource initiator column to network panel.
        https://bugs.webkit.org/show_bug.cgi?id=65105

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-initiator-expected.txt: Added.
        * http/tests/inspector/network/network-initiator.html: Added.
        * http/tests/inspector/network/resources/initiator.css: Added.
        (.image-background):
        (.image-background-2):

2011-07-28  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] New expectations for r91915
        https://bugs.webkit.org/show_bug.cgi?id=65317

        Unreviewed expections update.

        * platform/chromium-win/svg/custom/zero-path-square-cap-rendering2-expected.png: Added.
        * platform/chromium-win/svg/custom/zero-path-square-cap-rendering2-expected.txt: Added.

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: One more attempt to paint Qt-Mac bot green.

2011-07-28  Stephen White  <senorblanco@chromium.org>

        Uncomment some suppressions we'll need for the upcoming skia roll.

        Unreviewed; chromium test_expectations update.

        * platform/chromium/test_expectations.txt:

2011-07-28  Rob Buis  <rbuis@rim.com>

        Use styling test from ietestcenter fails
        https://bugs.webkit.org/show_bug.cgi?id=62147 

        Reviewed by Nikolas Zimmermann.

        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-11-f-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/struct-use-11-f.svg: Added.

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/fast/forms/textfield-overflow-by-value-update-expected.txt: Added.
        * platform/qt/test_expectations.txt:

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Paint the bot green with skipping all failing and crashing tests.

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed gardening.

        [Qt][WK2]REGRESSION(r91863): It made 388 editing tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65310

        [Qt] svg/W3C-SVG-1.1-SE/styling-pres-02-f.svg fails
        https://bugs.webkit.org/show_bug.cgi?id=65266

        REGRESSION (r91125): Google Drawings is broken
        https://bugs.webkit.org/show_bug.cgi?id=65257

        * platform/qt-wk2/Skipped: Skip two failing fast test.
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Updated.
        * platform/qt/Skipped:
         - Typo fix: Add missing bugzilla link - https://bugs.webkit.org/show_bug.cgi?id=65266
         - Skip svg/custom/zero-path-square-cap-rendering2.svg until fix.

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2]REGRESSION(r91863): It made 388 editing tests fail
        https://bugs.webkit.org/show_bug.cgi?id=65310

        * platform/qt-wk2/Skipped: Skip failing editing tests.

2011-07-28  Patrick Dubroy  <dubroy@chromium.org>

        Rebaseline pixel tests for file upload controls on chromium-win.
        https://bugs.webkit.org/show_bug.cgi?id=65245

        Reviewed by Gustavo Noronha Silva.

        r91759 changed the appearance of file upload controls on gtk,
        chromium-win and chromium-linux. New baselines were already committed
        for chromium-linux (same changeset) and gtk (r91759).

        * platform/chromium-win/fast/forms/box-shadow-override-expected.png:
        * platform/chromium-win/fast/forms/file-input-direction-expected.png:
        * platform/chromium-win/fast/forms/file-input-disabled-expected.png:
        * platform/chromium-win/fast/forms/form-element-geometry-expected.png:
        * platform/chromium-win/fast/forms/input-appearance-height-expected.png:
        * platform/chromium-win/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-win/fast/forms/input-value-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected result for a new test.

        * platform/qt/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/qt/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.

2011-07-28  Rob Buis  <rbuis@rim.com>

        REGRESSION (r91125): Google Drawings is broken
        https://bugs.webkit.org/show_bug.cgi?id=65257

        Reviewed by Darin Adler.

        * svg/custom/zero-path-square-cap-rendering2-expected.png: Added.
        * svg/custom/zero-path-square-cap-rendering2-expected.txt: Added.
        * svg/custom/zero-path-square-cap-rendering2.svg: Added.

2011-07-22  Martin Robinson  <mrobinson@igalia.com>

        [Cairo] Switch from ContextShadow to ShadowBlur
        https://bugs.webkit.org/show_bug.cgi?id=64744

        Update test results, which are now correct after switch to ShadowBlur.

        Reviewed by Dirk Schulze.

        * fast/box-shadow/box-shadow-radius-expected.png: Added.
        * fast/box-shadow/box-shadow-transformed-expected.png: Added.
        * fast/box-shadow/inset-box-shadow-radius-expected.png: Added.
        * fast/box-shadow/inset-shadow-large-offset-expected.png:
        * fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Added.
        * fast/box-shadow/scaled-box-shadow-expected.png: Added.
        * fast/box-shadow/shadow-tiling-artifact-expected.png: Added.
        * fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * fast/box-shadow/spread-multiple-normal-expected.png: Added.
        * platform/gtk/Skipped: Skip a test, which now has a bug revealed.
        * platform/gtk/fast/box-shadow/basic-shadows-expected.png:
        * platform/gtk/fast/box-shadow/border-radius-big-expected.png:
        * platform/gtk/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/gtk/fast/box-shadow/inset-expected.png:
        * platform/gtk/fast/box-shadow/shadow-buffer-partial-expected.png:
        * platform/gtk/fast/box-shadow/single-pixel-shadow-expected.png:
        * platform/gtk/fast/box-shadow/spread-expected.png:
        * platform/gtk/fast/box-shadow/transform-fringing-expected.png:

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Chromium Windows test expectations after r91897.

        * platform/chromium/test_expectations.txt:

2011-07-27  Ben Wells  <benwells@chromium.org>

        Rebaseline extra test for bug 61369 (skia drawConvexPolygon antialiasing)
        https://bugs.webkit.org/show_bug.cgi?id=65299

        Reviewed by James Robinson.

        * platform/chromium-linux/fast/layers/opacity-transforms-expected.png:
        * platform/chromium-win/fast/layers/opacity-transforms-expected.png: Added.
        * platform/chromium-win/fast/layers/opacity-transforms-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Calling window.find immediately after mutating the document crashes WebKit.
        https://bugs.webkit.org/show_bug.cgi?id=65296

        Reviewed by Darin Adler.

        Added a test to ensure WebKit doesn't crash when searching for string after mutating the document.

        * editing/text-iterator/find-after-mutation-expected.txt: Added.
        * editing/text-iterator/find-after-mutation.html: Added.

2011-07-27  Ben Wells  <benwells@chromium.org>

        Remove skia special case for outline rendering code
        https://bugs.webkit.org/show_bug.cgi?id=65295

        Reviewed by James Robinson.

        * platform/chromium/test_expectations.txt:

2011-07-27  Mike Reed  <reed@google.com>

        [skia] fix clipping of some glyphs on windows
        https://bugs.webkit.org/show_bug.cgi?id=65262

        Reviewed by Stephen White.

        * platform/chromium/test_expectations.txt:

2011-07-27  MORITA Hajime  <morrita@google.com>

        Inconsistent state of TreeScope reference.
        https://bugs.webkit.org/show_bug.cgi?id=65235

        Reviewed by Dimitri Glazkov.

        * fast/dom/shadow/tree-scope-crash-expected.txt: Added.
        * fast/dom/shadow/tree-scope-crash.html: Added.

2011-07-27  Rachel Blum  <groby@chromium.org>

        Implement sizes attribute for link tag from HTML5
        https://bugs.webkit.org/show_bug.cgi?id=37674

        Reviewed by Dimitri Glazkov.

        * fast/dom/icon-size-property-expected.txt: Added.
        * fast/dom/icon-size-property.html: Added.

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Chromium test expectations for http://crbug.com/88911

        * platform/chromium/test_expectations.txt:

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline after r91879.

        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/chromium-mac-leopard/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Marking leviw's new unicode-bidi-plaintext test as failing

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Mark another flaky crasher.
        https://bugs.webkit.org/show_bug.cgi?id=65155

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-27  Levi Weintraub  <leviw@chromium.org>

        unicode-bidi:-webkit-plaintext does not work on <textarea>
        https://bugs.webkit.org/show_bug.cgi?id=65074

        Reviewed by Ryosuke Niwa.

        Fixing unicode-bidi propagation into text controls.

        * fast/text/international/unicode-bidi-plaintext-in-textarea.html: Added.
        * platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png: Added.
        * platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Mark another webgl flaky test.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Rebaseline absolute-child-with-percent-etc-etc-etc.

        Unreviewed gardening.

        * platform/chromium-mac-leopard/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png: Added.
        * platform/chromium-mac/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png: Added.
        * platform/chromium-win/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-07-27  Eric Carlson  <eric.carlson@apple.com>

        Load delegate not consulted before loading some poster images
        https://bugs.webkit.org/show_bug.cgi?id=65270

        Reviewed by Darin Adler.

        * media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
        * media/video-poster-blocked-by-willsendrequest.html: Added.

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines for r89627 and r91497.

        * platform/chromium-linux/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/chromium-linux/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/chromium-linux/fast/multicol/scrolling-overflow-expected.png:
        * platform/chromium-linux/fast/multicol/single-line-expected.png:
        * platform/chromium-linux/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-margin-collapsing-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/float-multicol-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/single-line-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-child-generated-content-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/span-margin-collapsing-expected.png: Added.
        * platform/chromium-mac/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/chromium-mac/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/chromium-mac/fast/multicol/float-multicol-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/single-line-expected.png: Added.
        * platform/chromium-mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-nested-columns-child-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/vertical-lr/float-multicol-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/vertical-rl/float-multicol-expected.png: Removed.
        * platform/chromium-win/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/chromium-win/editing/selection/extend-inside-transforms-backward-expected.txt: Added.
        * platform/chromium-win/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/chromium-win/editing/selection/extend-inside-transforms-forward-expected.txt: Added.
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.png:
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.txt:
        * platform/chromium-win/fast/multicol/single-line-expected.png:
        * platform/chromium-win/fast/multicol/single-line-expected.txt:
        * platform/chromium-win/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-win/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/chromium-win/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/chromium-win/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-margin-collapsing-expected.png:
        * platform/chromium-win/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-27  Xiaomei Ji  <xji@chromium.org>

        editing/selection/move-by-word-visually* tests timing out
        https://bugs.webkit.org/show_bug.cgi?id=65241

        Split the 2 tests into 4 tests. But need to find a way to improve
        performance eventually.

        * editing/selection/move-by-word-visually-multi-line-expected.txt: Copied from LayoutTests/editing/selection/move-by-word-visually-others-expected.txt.
        * editing/selection/move-by-word-visually-multi-line.html: Copied from LayoutTests/editing/selection/move-by-word-visually-others.html.
        * editing/selection/move-by-word-visually-multi-space-expected.txt: Copied from LayoutTests/editing/selection/move-by-word-visually-others-expected.txt.
        * editing/selection/move-by-word-visually-multi-space.html: Copied from LayoutTests/editing/selection/move-by-word-visually-others.html.
        * editing/selection/move-by-word-visually-others-expected.txt: Removed.
        * editing/selection/move-by-word-visually-others.html: Removed.
        * editing/selection/move-by-word-visually-single-space-inline-element-expected.txt: Copied from LayoutTests/editing/selection/move-by-word-visually-single-space-sigle-line-expected.txt.
        * editing/selection/move-by-word-visually-single-space-inline-element.html: Copied from LayoutTests/editing/selection/move-by-word-visually-single-space-sigle-line.html.
        * editing/selection/move-by-word-visually-single-space-one-element-expected.txt: Copied from LayoutTests/editing/selection/move-by-word-visually-single-space-sigle-line-expected.txt.
        * editing/selection/move-by-word-visually-single-space-one-element.html: Copied from LayoutTests/editing/selection/move-by-word-visually-single-space-sigle-line.html.
        * editing/selection/move-by-word-visually-single-space-sigle-line-expected.txt: Removed.
        * editing/selection/move-by-word-visually-single-space-sigle-line.html: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/qt/Skipped:

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Wrong image height in absolutely positioned div in relatively positioned parent with bottom padding
        https://bugs.webkit.org/show_bug.cgi?id=64046

        Reviewed by David Hyatt.

        Add pixel test results.

        * platform/mac/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png: Added.

2011-07-27  Ryosuke Niwa  <rniwa@webkit.org>

        Mac pixel rebaselines after r91497.

        * platform/mac/fast/multicol/float-multicol-expected.png:
        * platform/mac/fast/multicol/scrolling-overflow-expected.png:
        * platform/mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.png:
        * platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/mac/fast/multicol/span/span-margin-collapsing-expected.png:
        * platform/mac/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/mac/fast/multicol/vertical-rl/float-multicol-expected.png:

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Mark data-view-test.html as flaky in non-debug configs too.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-27  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Disable cache option should only clear memory cache, not disable it.
        https://bugs.webkit.org/show_bug.cgi?id=65184

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-disable-cache-memory-expected.txt:
        * http/tests/inspector/network/network-disable-cache-memory.html:
        * http/tests/inspector/network/resources/random-script.php: Added.

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Update Qt 4.8 specific expected files.

        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added.
        * platform/qt-wk2/Skipped: Skip failing test.

2011-07-27  Adrienne Walker  <enne@google.com>

        [chromium] Add baselines for struct-dom-11-f.svg.

        Unreviewed gardening.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added.

2011-07-27  Adrienne Walker  <enne@google.com>

        [Chromium] Mark more tests as being flaky.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] svg/W3C-SVG-1.1-SE/styling-pres-02-f.svg fails
        https://bugs.webkit.org/show_bug.cgi?id=65266

        [Qt] Unreviewed gardening. Update Qt 4.8 specific expected files.

        * platform/qt-4.8/fast/css/font-face-opentype-expected.png: Added.
        * platform/qt-4.8/fast/css/font-face-opentype-expected.txt: Added.
        * platform/qt-4.8/fast/css/font-family-pictograph-expected.png: Added.
        * platform/qt-4.8/fast/css/font-family-pictograph-expected.txt: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/qt-4.8/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
        * platform/qt-4.8/svg/custom/tref-own-content-removal-expected.png: Added.
        * platform/qt-4.8/svg/custom/tref-own-content-removal-expected.txt: Added.
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Remove window.XSLTProcessor entries.
        * platform/qt/Skipped: Skip a failing test: svg/W3C-SVG-1.1-SE/styling-pres-02-f.svg.
        * platform/qt/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Removed.
        * platform/qt/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added after r91850.
        * platform/qt/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added after r91850.
        * platform/qt/svg/custom/tref-own-content-removal-expected.png: Added.

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-wk2/Skipped: Skip failing tests after migration to Qt5.
        * platform/qt/test_expectations.txt: Mark fast/js/array-sort-modifying-tostring.html as TIMEOUT PASS flakey test in debug mode.

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Unreviewed gardening.

        * platform/qt-wk2/Skipped: Skip new failing tests.
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Update after r91300.
        * platform/wk2/Skipped: Skip tests because of missing layoutTestController implementation.

2011-07-27  Rob Buis  <rbuis@rim.com>

        Implement getIntersectionList(), getEnclosureList(), checkIntersection() and checkEnclosure() in SVGSVGElement
        https://bugs.webkit.org/show_bug.cgi?id=11274

        Reviewed by Nikolas Zimmermann.

        Add tests for this new functionality.

        * platform/mac/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-dom-11-f-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/struct-dom-11-f.svg: Added.
        * svg/custom/intersection-list-clipping-expected.txt: Added.
        * svg/custom/intersection-list-clipping.svg: Added.
        * svg/custom/intersection-list-nested-svg-expected.txt: Added.
        * svg/custom/intersection-list-nested-svg.svg: Added.

2011-07-27  Stephen White  <senorblanco@chromium.org>

        Tighten up some chromium test expectations to green up the bots.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-27  Stephen White  <senorblanco@chromium.org>

        Rebaseline one Chromium GPU test on Linux after
        http://code.google.com/p/skia/source/detail?r=1924.

        Unreviewed.

        * platform/chromium-gpu-linux/compositing/shadows/shadow-drawing-expected.png:

2011-07-27  Stephen White  <senorblanco@chromium.org>

        New chromium-linux baselines after skia change
        http://code.google.com/p/skia/source/detail?r=1924.

        Unreviewed.

        * platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-linux/fast/forms/placeholder-position-expected.png:
        * platform/chromium-linux/fast/transforms/transform-on-inline-expected.png:
        * platform/chromium-linux/fast/transforms/transform-table-row-expected.png:
        * platform/chromium-linux/fast/transforms/transformed-document-element-expected.png:
        * platform/chromium-linux/fonts/cursive-expected.txt: Added.
        * platform/chromium-linux/fonts/fantasy-expected.txt:
        * platform/chromium-linux/media/audio-repaint-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-text-07-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
        * platform/chromium-linux/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
        * platform/chromium-linux/svg/batik/text/textLayout2-expected.png:
        * platform/chromium-linux/svg/batik/text/textOnPath2-expected.png:
        * platform/chromium-linux/svg/batik/text/textOnPath3-expected.png:
        * platform/chromium-linux/svg/batik/text/textOnPathSpaces-expected.png:
        * platform/chromium-linux/svg/batik/text/verticalText-expected.png:
        * platform/chromium-linux/svg/batik/text/verticalTextOnPath-expected.png:
        * platform/chromium-linux/svg/custom/focus-ring-expected.png:
        * platform/chromium-linux/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-linux/svg/custom/linking-a-03-b-all-expected.png:
        * platform/chromium-linux/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/chromium-linux/svg/custom/text-dom-01-f-expected.png:
        * platform/chromium-linux/svg/custom/text-linking-expected.png:
        * platform/chromium-linux/svg/custom/text-rotated-gradient-expected.png:
        * platform/chromium-linux/svg/custom/text-rotation-expected.png:
        * platform/chromium-linux/svg/custom/use-on-disallowed-foreign-object-1-expected.png:
        * platform/chromium-linux/svg/custom/use-on-disallowed-foreign-object-2-expected.png:
        * platform/chromium-linux/svg/custom/use-on-disallowed-foreign-object-4-expected.png:
        * platform/chromium-linux/svg/custom/use-on-disallowed-foreign-object-5-expected.png:
        * platform/chromium-linux/svg/custom/use-on-disallowed-foreign-object-6-expected.png:
        * platform/chromium-linux/svg/custom/use-on-non-svg-namespaced-element-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png:
        * platform/chromium-linux/svg/text/text-path-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-path-middle-align-expected.png:
        * platform/chromium-linux/svg/text/text-text-07-t-expected.png:
        * platform/chromium-linux/svg/wicd/test-scalable-background-image2-expected.png:
        * platform/chromium-linux/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/chromium-linux/svg/zoom/text/zoom-foreignObject-expected.png:
        * platform/chromium-linux/transforms/2d/compound-transforms-vs-containers-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Couple of tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        https://bugs.webkit.org/show_bug.cgi?id=52810

        * platform/qt/Skipped: Skip a new failing test: svg/custom/image-with-transform-clip-filter.svg

2011-07-27  Yury Semikhatsky  <yurys@chromium.org>

        Inspector should support cd(window) in the command line
        https://bugs.webkit.org/show_bug.cgi?id=19872

        Added a test for console evaluation in an iframe.

        Reviewed by Pavel Feldman.

        * http/tests/inspector/console-cd-expected.txt: Added.
        * http/tests/inspector/console-cd.html: Added.
        * http/tests/inspector/resources/console-cd-iframe.html: Added.

2011-07-27  Shinya Kawanaka  <shinyak@google.com>

        Added a test to normalize option.text.
        https://bugs.webkit.org/show_bug.cgi?id=57746

        Reviewed by Kent Tamura.

        * fast/forms/option-strip-unicode-spaces-expected.txt: Added.
        * fast/forms/option-strip-unicode-spaces.html: Added.

2011-07-27  Csaba Osztrogonác  <ossy@webkit.org>

        Add Qt specific expected result for a new test introduced in r91777.

        * platform/qt/fast/css/font-family-pictograph-expected.png: Added.
        * platform/qt/fast/css/font-family-pictograph-expected.txt: Added.

2011-07-27  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, forgotten GTK pixel test results for
        fast/forms/input-file-re-render.html after r91833.

        * platform/gtk/fast/forms/input-file-re-render-expected.png: Added.

2011-07-27  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK pixel tests rebaseline after r91759.

        * platform/gtk/fast/forms/box-shadow-override-expected.png:
        * platform/gtk/fast/forms/file-input-direction-expected.png:
        * platform/gtk/fast/forms/file-input-disabled-expected.png:
        * platform/gtk/fast/forms/form-element-geometry-expected.png:
        * platform/gtk/fast/forms/input-appearance-height-expected.png:
        * platform/gtk/fast/forms/input-value-expected.png:
        * platform/gtk/test_expectations.txt:

2011-07-27  Tony Gentilcore  <tonyg@chromium.org>

        editing/selection/move-by-word-visually* tests timing out
        https://bugs.webkit.org/show_bug.cgi?id=65241

        Unreviewed build fix.

        * platform/chromium/test_expectations.txt:

2011-07-27  Shinya Kawanaka  <shinyak@google.com>

        Knob of a disabled or readonly range control should not be draggable.
        https://bugs.webkit.org/show_bug.cgi?id=54820

        Reviewed by Kent Tamura.

        Added tests to confirm disabled or readonly range control is undraggable.

        * fast/forms/range-drag-expected.txt: Added.
        * fast/forms/range-drag.html: Added.

2011-07-27  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
        https://bugs.webkit.org/show_bug.cgi?id=65232

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hybi/workers/resources/worker-simple.js:
        (runTests): Check the value of closeEvent.wasClean.
        * http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt:
        * http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt:

2011-07-26  Mark Hahnenberg  <mhahnenberg@apple.com>

        reduce and reduceRight bind callback's this to null rather than undefined
        https://bugs.webkit.org/show_bug.cgi?id=62264

        Reviewed by Oliver Hunt.

        Added additional tests to test Array.prototype.reduce and Array.prototype.reduceRight
        when calling the callback function without an argument for this, which means it should 
        be undefined according to ES 15.4.4.21 and 15.4.4.22.

        * fast/js/array-reduce-expected.txt:
        * fast/js/array-reduceRight-expected.txt:
        * fast/js/script-tests/array-reduce.js:
        * fast/js/script-tests/array-reduceRight.js:

2011-07-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91805.
        http://trac.webkit.org/changeset/91805
        https://bugs.webkit.org/show_bug.cgi?id=65226

        Breaks @ symbols and changes other font rendering on Windows
        (Requested by enne on #webkit).

        * platform/chromium/test_expectations.txt:

2011-07-26  Adam Barth  <abarth@webkit.org>

        enne tells me that they already rebaselined this test.  The 10.5 bot is
        just behind because dglazkov broke NRWT on Python 2.5.

        * platform/chromium/test_expectations.txt:

2011-07-26  Adam Barth  <abarth@webkit.org>

        This test appears to fail on Leopard only.

        * platform/chromium/test_expectations.txt:

2011-07-26  Kenneth Russell  <kbr@google.com>

        Float32Array(ArrayBuffer, index, length) constructor working incorrectly.
        https://bugs.webkit.org/show_bug.cgi?id=57042

        Reviewed by James Robinson.

        * fast/canvas/webgl/array-unit-tests-expected.txt:
        * fast/canvas/webgl/array-unit-tests.html:

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] Check in expectations for font-family-pictograph.
        https://bugs.webkit.org/show_bug.cgi?id=65197

        Unreviewed gardening.

        * platform/chromium-linux/fast/css/font-family-pictograph-expected.png: Added.
        * platform/chromium-linux/fast/css/font-family-pictograph-expected.txt: Added.
        * platform/chromium-mac/fast/css/font-family-pictograph-expected.png: Added.
        * platform/chromium-mac/fast/css/font-family-pictograph-expected.txt: Added.
        * platform/chromium-win/fast/css/font-family-pictograph-expected.png: Added.
        * platform/chromium-win/fast/css/font-family-pictograph-expected.txt: Added.

2011-07-26  Sadrul Habib Chowdhury  <sadrul@chromium.org>

        Add support for download='filename' attribute in anchors.
        https://bugs.webkit.org/show_bug.cgi?id=64580

        Reviewed by Adam Barth.

        * fast/dom/HTMLAnchorElement/anchor-download-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/anchor-download.html: Added.
        * fast/dom/HTMLAnchorElement/anchor-nodownload-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/anchor-nodownload.html: Added.
        * fast/dom/HTMLAnchorElement/anchor-download-unset-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/anchor-download-unset.html: Added.
        * fast/dom/HTMLAnchorElement/anchor-nodownload-set-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/anchor-nodownload-set.html: Added.

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] Mark webaudio/test-basic as crashing on Windows.
        https://bugs.webkit.org/show_bug.cgi?id=65219.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Oliver Hunt  <oliver@apple.com>

        Buffer overflow creating error messages for JSON.parse
        https://bugs.webkit.org/show_bug.cgi?id=65211

        Reviewed by Darin Adler.

        Update testcase to reflect actual expected output.

        * fast/js/JSON-parse-expected.txt:

2011-07-26  Xiaomei Ji  <xji@chromium.org>

        --webkit-visual-word does not work in multi-line
        https://bugs.webkit.org/show_bug.cgi?id=61344

        Reviewed by Ryosuke Niwa.

        Add test for multiple-line.

        * editing/selection/move-by-word-visually-null-box.html:
        * editing/selection/move-by-word-visually-others-expected.txt:
        * editing/selection/move-by-word-visually-others.html: Add tests for multi-line. Shorten
        test id.
        * editing/selection/move-by-word-visually-single-space-sigle-line.html: Shorten test id.
        * editing/selection/resources/move-by-word-visually.js:
        (moveByWordForEveryPosition):
        (setWidth):
        (runMoveLeftRight):

2011-07-26  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=60778

        Use after free because of line box culling optimization regression.

        In the case of a child with no line box being removed (typically
        a <br> in quirks mode), if there is no previous sibling with a line
        box, then we have a potential problem with the culling optimization.

        The culled inline may still have other leaf line box children, but
        they may follow the removed <br>. In this case we can't rely on
        them, since we need a line box that comes before the <br>.

        The fix is to simply recur up to the parent if we are a culled inline
        and could not find a previous line box.

        Reviewed by Dan Bernstein.

        Added editing/execCommand/crash-line-break-after-outdent.html

        * editing/execCommand/crash-line-break-after-outdent-expected.txt: Added.
        * editing/execCommand/crash-line-break-after-outdent.html: Added.

2011-07-26  Chris Rogers  <crogers@google.com>

        Add first basic layout test for the web audio API
        https://bugs.webkit.org/show_bug.cgi?id=57977

        Reviewed by Tony Chang.

        * webaudio: Added.
        * webaudio/resources: Added.
        * webaudio/resources/audio-testing.js: Added.
        (writeString):
        (writeInt16):
        (writeInt32):
        (writeAudioBuffer):
        (createWaveFileData):
        (createAudioData):
        (finishAudioTest):
        * webaudio/test-basic-expected.wav: Added.
        * webaudio/test-basic.html: Added.

2011-07-26  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9842889> Add a generic pictograph font family
        https://bugs.webkit.org/show_bug.cgi?id=65197

        Reviewed by Anders Carlsson.

        * fast/css/font-family-pictograph.html: Added.
        * platform/mac/fast/css/font-family-pictograph-expected.png: Added.
        * platform/mac/fast/css/font-family-pictograph-expected.txt: Added.

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] getClientRects now fails similarly on Mac after r91763.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] Fix accidental duplicate expectation from r91772.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] Mark test as flaky after r91738.
        https://bugs.webkit.org/show_bug.cgi?id=65199

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] More flaky crashers.
        https://bugs.webkit.org/show_bug.cgi?id=65155

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Juan C. Montemayor  <jmont@apple.com>

        JSON errors should be informative
        https://bugs.webkit.org/show_bug.cgi?id=63339

        Updated expected test results.

        Reviewed by Oliver Hunt.

        * fast/js/JSON-parse-expected.txt:
        * platform/chromium/fast/js/JSON-parse-expected.txt: Added.

2011-07-26  Emil A Eklund  <eae@chromium.org>

        RenderText::absoluteRectsForRange() and absoluteQuadsForRange() have nearly duplicate code
        https://bugs.webkit.org/show_bug.cgi?id=62478

        Reviewed by Simon Fraser.

        * fast/dom/Range/getClientRects-expected.txt:
        * fast/dom/Range/getClientRects.html:
        Add test for vertical text.

2011-07-26  Adrienne Walker  <enne@google.com>

        [chromium] Mark media-controls-clone as flaky crashing on other platforms.
        https://bugs.webkit.org/show_bug.cgi?id=65129

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-26  Alexandru Chiculita  <achicu@adobe.com>

        [CSSRegions] Collect flowed elements in different render element
        https://bugs.webkit.org/show_bug.cgi?id=64516

        Reviewed by Simon Fraser.

        * fast/regions/webkit-flow-renderer-expected.txt: Added.
        * fast/regions/webkit-flow-renderer-layer-expected.txt: Added.
        * fast/regions/webkit-flow-renderer-layer.html: Added.
        * fast/regions/webkit-flow-renderer-nested-expected.txt: Added.
        * fast/regions/webkit-flow-renderer-nested.html: Added.
        * fast/regions/webkit-flow-renderer.html: Added.

2011-07-26  Patrick Dubroy  <dubroy@chromium.org>

        In file upload controls, filename text was misaligned with button text.
        Update chromium-linux with the new baseline images, and add temporary
        exceptions for chromium-win and gtk until they can be rebaselined.

        https://bugs.webkit.org/show_bug.cgi?id=64692

        Reviewed by Dimitri Glazkov.

        * platform/chromium-linux/fast/forms/box-shadow-override-expected.png:
        * platform/chromium-linux/fast/forms/file-input-direction-expected.png:
        * platform/chromium-linux/fast/forms/file-input-disabled-expected.png:
        * platform/chromium-linux/fast/forms/form-element-geometry-expected.png:
        * platform/chromium-linux/fast/forms/input-appearance-height-expected.png:
        * platform/chromium-linux/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-linux/fast/forms/input-value-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:

2011-07-26  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: inspector test rebaselines.

        * inspector/console/console-format-expected.txt:
        * inspector/runtime/runtime-getProperties-expected.txt:
        * platform/chromium/inspector/runtime/runtime-getProperties-expected.txt: Copied from LayoutTests/inspector/runtime/runtime-getProperties-expected.txt.

2011-07-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91746.
        http://trac.webkit.org/changeset/91746
        https://bugs.webkit.org/show_bug.cgi?id=65180

        It broke SL build (Requested by Ossy on #webkit).

        * fast/forms/option-strip-unicode-spaces-expected.txt: Removed.
        * fast/forms/option-strip-unicode-spaces.html: Removed.

2011-07-26  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Better represent custom getters in the properties pane
        https://bugs.webkit.org/show_bug.cgi?id=16734

        Reviewed by Yury Semikhatsky.

        * inspector/runtime/runtime-getProperties-expected.txt: Added.
        * inspector/runtime/runtime-getProperties.html: Added.

2011-07-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/fast/css/font-face-opentype-expected.png: Added.
        * platform/qt/fast/css/font-face-opentype-expected.txt: Updated after r91738.
        * platform/qt/svg/custom/image-with-transform-clip-filter-expected.png: Updated after r91748.
        * platform/qt/svg/custom/image-with-transform-clip-filter-expected.txt: Updated after r91748.

2011-07-26  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Implement setPropertyValue using evaluate and callFunctionOn
        https://bugs.webkit.org/show_bug.cgi?id=65112

        Reviewed by Yury Semikhatsky.

        * inspector/runtime/runtime-setPropertyValue-expected.txt: Added.
        * inspector/runtime/runtime-setPropertyValue.html: Added.

2011-07-26  Pavel Feldman  <pfeldman@google.com>

        Re-applying r91665 and r91668 with JSC issues fixed.

        Web Inspector: use dedicated type for object id in the protocol.
        Web Inspector: refactor remote object structure to contain value for primitive values.

        https://bugs.webkit.org/show_bug.cgi?id=65103
        https://bugs.webkit.org/show_bug.cgi?id=65110

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.InspectorTest.runExtensionTests):
        (initialize_ExtensionsTest):
        * inspector/console/console-format-expected.txt:
        * inspector/console/console-format.html:
        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-callFunctionOn-expected.txt:
        * inspector/runtime/runtime-callFunctionOn.html:

2011-07-26  Hans Wennborg  <hans@chromium.org>

        Update another test that relied on fonts loading synchronously.
        https://bugs.webkit.org/show_bug.cgi?id=65169

        Not Reviewed, tests fix.

        * platform/chromium-linux/fast/text/international/arabic-vertical-offset.html:

2011-07-26  Shinya Kawanaka  <shinyak@google.com>

        Added a test to normalize option.text.
        https://bugs.webkit.org/show_bug.cgi?id=57746

        Reviewed by Kent Tamura.

        * fast/forms/option-strip-unicode-spaces-expected.txt: Added.
        * fast/forms/option-strip-unicode-spaces.html: Added.

2011-07-26  Noel Gordon  <noel.gordon@gmail.com>

        Add regression test for :empty { display: none }
        https://bugs.webkit.org/show_bug.cgi?id=26570

        Reviewed by Alexey Proskuryakov.

        * fast/css/pseudo-empty-display-none-expected.txt: Added.
        * fast/css/pseudo-empty-display-none.html: Added.

2011-07-25  Dan Bernstein  <mitz@apple.com>

        Updated three more tests that relied on fonts loading synchronously.

        * fast/blockflow/japanese-rl-text-with-broken-font.html:
        * platform/mac/fast/text/myanmar-shaping.html:
        * platform/mac/fast/text/thai-combining-mark-positioning.html:

2011-07-25  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9835028> Font loading during layout can cause layout code to be re-entered via resource load delegate
        https://bugs.webkit.org/show_bug.cgi?id=65123

        Reviewed by Darin Adler.

        Updated tests that depended on fonts loading synchronously during layout.
        Unfortunately, font loading does not fire any DOM events, so in most cases
        a constant timeout had to be introduced.

        * fast/blockflow/broken-ideograph-small-caps.html:
        * fast/css/color-leakage.html:
        * fast/css/custom-font-xheight.html:
        * fast/css/font-face-multiple-faces.html:
        * fast/css/font-face-multiple-remote-sources.html:
        * fast/css/font-face-remote.html:
        * fast/css/font-face-woff.html:
        * svg/W3C-SVG-1.1-SE/text-intro-09-b.svg:
        * svg/W3C-SVG-1.1/fonts-elem-07-b.svg:
        * svg/custom/svg-fonts-fallback.xhtml:
        * svg/custom/svg-fonts-in-html.html:
        * svg/custom/svg-fonts-segmented.xhtml:
        * svg/custom/svg-fonts-with-no-element-reference.html:
        * svg/custom/svg-fonts-without-missing-glyph.xhtml:
        * svg/text/text-overflow-ellipsis-svgfont.html:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark fast/cyclic-prototypes.html as a flaky crasher.
        https://bugs.webkit.org/show_bug.cgi?id=65152

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] draw-arrays-out-of-bounds.html is a non-GPU flaky crasher.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark fast/selectors/001.html as a flaky crasher.
        https://bugs.webkit.org/show_bug.cgi?id=65155

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark fast/cyclic-proto.html as a flaky crasher.
        https://bugs.webkit.org/show_bug.cgi?id=65152

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark user-script-image-document as a flaky crasher on Linux

        * platform/chromium/test_expectations.txt:

        Unreviewed gardening.

2011-07-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91686.
        http://trac.webkit.org/changeset/91686
        https://bugs.webkit.org/show_bug.cgi?id=65144

        1.5% regression in JSC (Requested by jmontemayor on #webkit).

        * fast/js/JSON-parse-expected.txt:
        * platform/chromium/fast/js/JSON-parse-expected.txt: Removed.

2011-07-25  Chris Rogers  <crogers@google.com>

        Disable web audio layout tests on all platforms except chromium - as initial tests are added
        https://bugs.webkit.org/show_bug.cgi?id=65142

        Unreviewed.

        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-07  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Gustavo Noronha Silva.

        [GTK] Use WebCore scrollbars for the DRT instead of GtkScrolledWindow
        https://bugs.webkit.org/show_bug.cgi?id=62252

        Unskip tests which are now passing and update results for tests which
        previously had incorrect results.

        * platform/gtk/Skipped: Unskip now-passing tests.
        * platform/gtk/fast/css/MarqueeLayoutTest-expected.png:
        * platform/gtk/fast/css/MarqueeLayoutTest-expected.txt:
        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/gtk/fast/dom/vertical-scrollbar-in-rtl-expected.txt:
        * platform/gtk/fast/dynamic/window-resize-scrollbars-test-expected.png:
        * platform/gtk/fast/dynamic/window-resize-scrollbars-test-expected.txt:
        * platform/gtk/fast/flexbox/flex-hang-expected.png:
        * platform/gtk/fast/flexbox/flex-hang-expected.txt:
        * platform/gtk/fast/forms/search-vertical-alignment-expected.png:
        * platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
        * platform/gtk/fast/forms/searchfield-heights-expected.png:
        * platform/gtk/fast/forms/searchfield-heights-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.png:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/frames/flattening/frameset-flattening-advanced-expected.png: Added.
        * platform/gtk/fast/frames/flattening/frameset-flattening-advanced-expected.txt:
        * platform/gtk/fast/frames/flattening/frameset-flattening-simple-expected.png: Added.
        * platform/gtk/fast/frames/flattening/frameset-flattening-simple-expected.txt:
        * platform/gtk/fast/frames/flattening/frameset-flattening-subframesets-expected.png: Added.
        * platform/gtk/fast/frames/flattening/frameset-flattening-subframesets-expected.txt:
        * platform/gtk/fast/frames/inline-object-inside-frameset-expected.png: Added.
        * platform/gtk/fast/frames/inline-object-inside-frameset-expected.txt:
        * platform/gtk/fast/lists/001-vertical-expected.png: Added.
        * platform/gtk/fast/lists/001-vertical-expected.txt:
        * platform/gtk/fast/multicol/float-multicol-expected.png: Added.
        * platform/gtk/fast/multicol/float-multicol-expected.txt:
        * platform/gtk/fast/multicol/table-vertical-align-expected.png: Added.
        * platform/gtk/fast/multicol/table-vertical-align-expected.txt:
        * platform/gtk/fast/table/border-collapsing/004-vertical-expected.png:
        * platform/gtk/fast/table/border-collapsing/004-vertical-expected.txt:
        * platform/gtk/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
        * platform/gtk/scrollbars/custom-scrollbar-with-incomplete-style-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug145572-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug145572-expected.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] media-controls-clone started flaky crashing on mac.

        * platform/chromium/test_expectations.txt:

        Unreviewed gardening.

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] More WebGL flaky crashers on Linux.

        * platform/chromium/test_expectations.txt:

        Unreviewed gardening.

2011-07-25  Daniel Bates  <dbates@rim.com>

        Rename expected results file after changeset <http://trac.webkit.org/changeset/91689>.

        * fast/block/positioning/relayout-nested-positioned-elements-crash-expected.txt: Copied from LayoutTests/fast/block/positioning/relayout-nested-positioned-elements-expected-crash.txt.
        * fast/block/positioning/relayout-nested-positioned-elements-expected-crash.txt: Removed.

2011-07-25  Martin Robinson  <mrobinson@igalia.com>

        Update baselines for GTK+ after several revisions.

        * platform/gtk/fast/dom/Window/window-postmessage-clone-expected.txt: Added.
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/gtk/fast/events/offsetX-offsetY-expected.txt:
        * platform/gtk/fast/forms/input-appearance-range-expected.txt:
        * platform/gtk/fast/multicol/client-rects-expected.txt:
        * platform/gtk/fast/multicol/float-avoidance-expected.png:
        * platform/gtk/fast/multicol/float-avoidance-expected.txt:
        * platform/gtk/fast/multicol/float-multicol-expected.txt:
        * platform/gtk/fast/multicol/scrolling-overflow-expected.png:
        * platform/gtk/fast/multicol/scrolling-overflow-expected.txt:
        * platform/gtk/fast/multicol/single-line-expected.txt:
        * platform/gtk/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/gtk/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/gtk/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/gtk/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/gtk/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/gtk/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/gtk/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/gtk/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/gtk/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/gtk/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt:
        * platform/gtk/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] More ICU roll test failures from the slow windows bot
        https://bugs.webkit.org/show_bug.cgi?id=65124

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] japanese-rl-selection-repaint also broken by ICU roll
        https://bugs.webkit.org/show_bug.cgi?id=65124

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Daniel Bates  <dbates@rim.com>

        REGRESSION (r85964): Improper relayout of some nested positioned elements
        https://bugs.webkit.org/show_bug.cgi?id=64286

        Reviewed by David Hyatt.

        Add test case to ensure we don't regress relayout of nested positioned elements.

        * fast/block/positioning/relayout-nested-positioned-elements-expected-crash.txt: Added.
        * fast/block/positioning/relayout-nested-positioned-elements-crash.html: Added.

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] japanese-rl-selection-clear broken by ICU roll
        https://bugs.webkit.org/show_bug.cgi?id=65124

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Juan C. Montemayor  <jmont@apple.com>

        JSON errors should be informative
        https://bugs.webkit.org/show_bug.cgi?id=63339

        Updated expected test results.

        Reviewed by Oliver Hunt.

        * fast/js/JSON-parse-expected.txt:
        * platform/chromium/fast/js/JSON-parse-expected.txt: Added.

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark media/remove-from-document as another flaky crasher.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] More WebGL flaky crashers on Linux.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark some media tests as being crashers on Linux.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Alexandru Chiculita  <achicu@adobe.com>

        [CSS Exclusions] Use HANDLE_INHERIT_AND_INITIAL when parsing -webkit-wrap-shape
        https://bugs.webkit.org/show_bug.cgi?id=65096

        Fixed 'inherit' test to copy the value from the parent. Also, added new tests
        for 'inerhit' with no value in the parent.

        Reviewed by Tony Chang.

        * fast/exclusions/parsing-wrap-shape-expected.txt:
        * fast/exclusions/script-tests/parsing-wrap-shape.js:

2011-07-25  Mike Reed  <reed@google.com>

        disable tests pending rebaseline with rotated text fix
        https://bugs.webkit.org/show_bug.cgi?id=65114

        Reviewed by Stephen White.

        * platform/chromium/test_expectations.txt:

2011-07-25  Adrienne Walker  <enne@google.com>

        [chromium] Mark gl-enum-enable-test as a flaky crasher.

        Unreviewed gardening.

        * platform/chromium/test_expectations.txt:

2011-07-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91665.
        http://trac.webkit.org/changeset/91665
        https://bugs.webkit.org/show_bug.cgi?id=65118

        Breaks inspector tests on JSC (Requested by pfeldman on
        #webkit).

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-callFunctionOn.html:

2011-07-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91668.
        http://trac.webkit.org/changeset/91668
        https://bugs.webkit.org/show_bug.cgi?id=65117

        Breaks inspector tests on JSC (Requested by pfeldman on
        #webkit).

        * inspector/runtime/runtime-callFunctionOn-expected.txt:
        * inspector/runtime/runtime-callFunctionOn.html:

2011-07-25  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: unreviewed, fix pause-in-internal-script expectations.
        https://bugs.webkit.org/show_bug.cgi?id=65078

        * inspector/debugger/pause-in-internal-script-expected.txt:
        * platform/chromium/inspector/debugger/pause-in-internal-script-expected.txt: Copied from LayoutTests/inspector/debugger/pause-in-internal-script-expected.txt.
        * platform/qt/Skipped:

2011-07-25  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: use dedicated type for object id in the protocol.
        https://bugs.webkit.org/show_bug.cgi?id=65110

        Reviewed by Yury Semikhatsky.

        * inspector/runtime/runtime-callFunctionOn-expected.txt:
        * inspector/runtime/runtime-callFunctionOn.html:

2011-07-25  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: refactor remote object structure to contain value for primitive values.
        https://bugs.webkit.org/show_bug.cgi?id=65103

        Reviewed by Yury Semikhatsky.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/runtime/runtime-callFunctionOn.html:

2011-07-25  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Lot of RenderTree mismatches in fast/multicol
        https://bugs.webkit.org/show_bug.cgi?id=65077

        Unreviewed gardening. Add Qt specific expected results after r91474.

        * platform/qt/Skipped:
        * platform/qt/fast/multicol/client-rects-expected.txt:
        * platform/qt/fast/multicol/float-avoidance-expected.png: Added.
        * platform/qt/fast/multicol/float-avoidance-expected.txt:
        * platform/qt/fast/multicol/float-multicol-expected.png: Added.
        * platform/qt/fast/multicol/float-multicol-expected.txt:
        * platform/qt/fast/multicol/scrolling-overflow-expected.png:
        * platform/qt/fast/multicol/scrolling-overflow-expected.txt:
        * platform/qt/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/qt/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/qt/fast/multicol/span/anonymous-split-block-crash-expected.png:
        * platform/qt/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/qt/fast/multicol/span/anonymous-style-inheritance-expected.png:
        * platform/qt/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/qt/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png:
        * platform/qt/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-child-generated-content-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png:
        * platform/qt/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/qt/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/qt/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/qt/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/qt/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/qt/fast/multicol/span/span-as-nested-inline-block-child-expected.png:
        * platform/qt/fast/multicol/span/span-as-nested-inline-block-child-expected.txt:
        * platform/qt/fast/multicol/span/span-margin-collapsing-expected.png:
        * platform/qt/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/qt/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/qt/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/qt/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/qt/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/qt/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/qt/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/qt/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/qt/fast/multicol/vertical-rl/float-multicol-expected.txt:

2011-07-24  Kent Tamura  <tkent@chromium.org>

        [Chromium] Leftover of r91633 (SVG test move)

        * platform/chromium-linux/fast/borders/svg-as-border-image-expected.png: Removed.
        * platform/chromium-linux/svg/as-border-image/svg-as-border-image-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/borders/svg-as-border-image-expected.png.
        * platform/chromium-win/fast/borders/svg-as-border-image-expected.png: Removed.
        * platform/chromium-win/fast/borders/svg-as-border-image-expected.txt: Removed.
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.png: Copied from LayoutTests/platform/chromium-win/fast/borders/svg-as-border-image-expected.png.
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/borders/svg-as-border-image-expected.txt.

2011-07-24  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r91637.

        * platform/chromium-linux/svg/custom/text-linking-expected.png:
        * platform/chromium-linux/svg/custom/tref-own-content-removal-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.png:
        * platform/chromium-mac-leopard/svg/custom/text-linking-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.png: Added.
        * platform/chromium-mac/svg/custom/text-linking-expected.png: Added.
        * platform/chromium-win/svg/custom/text-linking-expected.png:
        * platform/chromium-win/svg/custom/text-linking-expected.txt:
        * platform/chromium-win/svg/custom/tref-own-content-removal-expected.png: Added.
        * platform/chromium-win/svg/custom/tref-own-content-removal-expected.txt: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.png:

2011-07-24  Kent Tamura  <tkent@chromium.org>

        Validation message bubble position is incorrect if the containing block has paddings.
        https://bugs.webkit.org/show_bug.cgi?id=65091

        Reviewed by Hajime Morita.

        * fast/forms/validation-message-in-relative-body.html: Update the test to cover a padding case.

2011-07-24  Rob Buis  <rbuis@rim.com>

        Crash in SVGUseElement::updateContainerOffsets on <use> with no parent
        https://bugs.webkit.org/show_bug.cgi?id=63646

        Reviewed by Darin Adler.

        * svg/custom/use-shadow-root-parent-removal-expected.txt: Added.
        * svg/custom/use-shadow-root-parent-removal.svg: Added.

2011-07-24  Balazs Kelemen  <kbalazs@webkit.org>

        Yet another unreviewed Qt fixery for the weekend.

        Don't use test_expectations until all of the Qt platforms switched to NRWT.
        * platform/qt/Skipped:
        * platform/qt/test_expectations.txt:

2011-07-24  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening for Qt.

        * platform/qt/svg/custom/tref-own-content-removal-expected.txt: Added.

2011-07-24  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] inspector/debugger/pause-in-internal-script.html fails
        https://bugs.webkit.org/show_bug.cgi?id=65078

        Unreviewed gardening for Qt.

        * platform/qt/test_expectations.txt: Mark the test as expected TEXT failure.

2011-07-24  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Lot of RenderTree mismatches in fast/multicol
        https://bugs.webkit.org/show_bug.cgi?id=65077

        Unreviewed gardening for Qt.

        * platform/qt/test_expectations.txt: Add expected TEXT failures.

2011-07-24  Rob Buis  <rbuis@rim.com>

        SVG <use> element is not repositioned when moved to x=0 y=0 through script 
        https://bugs.webkit.org/show_bug.cgi?id=53767

        Reviewed by Nikolas Zimmermann.

        * svg/custom/use-move-to-offset-expected.png: Added.
        * svg/custom/use-move-to-offset-expected.txt: Added.
        * svg/custom/use-move-to-offset.svg: Added.

2011-07-23  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r91636.

        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-win/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-win/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-23  Rob Buis  <rbuis@rim.com>

        Freed SVGTRefElement used in SVGStyledElement::buildPendingResourcesIfNeeded
        https://bugs.webkit.org/show_bug.cgi?id=64758

        Reviewed by Nikolas Zimmermann.

        Test that removing <tref> children does not crash. Changed results are improvements.

        * platform/mac/svg/custom/text-linking-expected.txt:
        * platform/mac/svg/custom/tref-own-content-removal-expected.png: Added.
        * platform/mac/svg/custom/tref-own-content-removal-expected.txt: Added.
        * platform/mac/svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.png:
        * svg/custom/invalid-text-content-expected.txt:
        * svg/custom/text-tref-03-b-dynamic-expected.txt:
        * svg/custom/text-tref-03-b-dynamic2-expected.txt:
        * svg/custom/tref-own-content-removal.svg: Added.
        * svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.txt:
        * svg/dynamic-updates/script-tests/SVGTRefElement-dom-href-attr.js:
        (executeTest):

2011-07-23  Shinya Kawanaka  <shinyak@google.com>

        Marked fast/speech/input-appearance-numberandspeech.html flaky on Mac and Windows.
        https://bugs.webkit.org/show_bug.cgi?id=65064

        Reviewed by Kent Tamura.

        * platform/chromium/test_expectations.txt:
          Mark fast/speech/input-appearance-numberandspeech.html flaky on Mac and Windows.

2011-07-23  Nikolas Zimmermann  <nzimmermann@rim.com>

        Move several SVG specific tests out of fast/(backgrounds|borders) into svg/(as-background-image|as-border-image) as
        we're only running pixel tests for the svg/ subdirectory on a daily base. Also it's easier to spot errors this way.
        Updated all Skipped/test_expectations.txt files as well.

        Rubber-stamped by Maciej Stachowiak.

        * fast/backgrounds/animated-svg-as-background.html: Removed.
        * fast/backgrounds/resources/animated-rect-fixed-size.svg: Removed.
        * fast/backgrounds/resources/balloon.svg: Removed.
        * fast/backgrounds/resources/eyes.svg: Removed.
        * fast/backgrounds/resources/hearts.svg: Removed.
        * fast/backgrounds/resources/map.svg: Removed.
        * fast/backgrounds/resources/mouse-repel.svg: Removed.
        * fast/backgrounds/svg-as-background-1.html: Removed.
        * fast/backgrounds/svg-as-background-2.html: Removed.
        * fast/backgrounds/svg-as-background-3.html: Removed.
        * fast/backgrounds/svg-as-background-4.html: Removed.
        * fast/backgrounds/svg-as-background-5.html: Removed.
        * fast/backgrounds/svg-as-background-6.html: Removed.
        * fast/borders/resources/large-tiles.png: Removed.
        * fast/borders/resources/tiles-fixed-size.svg: Removed.
        * fast/borders/resources/tiles-relative-size.svg: Removed.
        * fast/borders/resources/tiles.png: Removed.
        * fast/borders/svg-as-border-image-2.html: Removed.
        * fast/borders/svg-as-border-image.html: Removed.
        * platform/chromium-linux/fast/backgrounds/animated-svg-as-background-expected.png: Removed.
        * platform/chromium-linux/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/chromium-linux/fast/backgrounds/svg-as-background-2-expected.png: Removed.
        * platform/chromium-linux/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/chromium-linux/fast/backgrounds/svg-as-background-4-expected.png: Removed.
        * platform/chromium-linux/fast/backgrounds/svg-as-background-5-expected.png: Removed.
        * platform/chromium-linux/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/chromium-linux/svg/as-background-image: Added.
        * platform/chromium-linux/svg/as-background-image/animated-svg-as-background-expected.png: Copied from platform/chromium-linux/fast/backgrounds/animated-svg-as-background-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/chromium-linux/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-2-expected.png: Copied from platform/chromium-linux/fast/backgrounds/svg-as-background-2-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/chromium-linux/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-4-expected.png: Copied from platform/chromium-linux/fast/backgrounds/svg-as-background-4-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-5-expected.png: Copied from platform/chromium-linux/fast/backgrounds/svg-as-background-5-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/chromium-linux/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/chromium-linux/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-linux/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/chromium-linux/svg/as-border-image: Added.
        * platform/chromium-linux/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/chromium-linux/fast/borders/svg-as-border-image-2-expected.png.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/chromium-linux/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/as-background-image: Added.
        * platform/chromium-mac-leopard/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/chromium-mac-leopard/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/chromium-mac-leopard/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/chromium-mac-leopard/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/chromium-mac-leopard/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/chromium-mac-leopard/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/chromium-mac-leopard/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/chromium-mac-leopard/svg/as-border-image: Added.
        * platform/chromium-mac-leopard/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/chromium-mac-leopard/fast/borders/svg-as-border-image-2-expected.png.
        * platform/chromium-mac-leopard/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-mac/fast/backgrounds/animated-svg-as-background-expected.png: Removed.
        * platform/chromium-mac/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/chromium-mac/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/chromium-mac/svg/as-background-image: Added.
        * platform/chromium-mac/svg/as-background-image/animated-svg-as-background-expected.png: Copied from platform/chromium-mac/fast/backgrounds/animated-svg-as-background-expected.png.
        * platform/chromium-mac/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/chromium-mac/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/chromium-mac/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/chromium-mac/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/chromium-mac/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-mac/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/chromium-mac/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/animated-svg-as-background-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/animated-svg-as-background-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-1-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-2-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-2-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-3-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-5-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-5-expected.txt: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-6-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/svg-as-background-6-expected.txt: Removed.
        * platform/chromium-win/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/chromium-win/fast/borders/svg-as-border-image-2-expected.txt: Removed.
        * platform/chromium-win/svg/as-background-image: Added.
        * platform/chromium-win/svg/as-background-image/animated-svg-as-background-expected.png: Copied from platform/chromium-win/fast/backgrounds/animated-svg-as-background-expected.png.
        * platform/chromium-win/svg/as-background-image/animated-svg-as-background-expected.txt: Copied from platform/chromium-win/fast/backgrounds/animated-svg-as-background-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-1-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-1-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-2-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-2-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-2-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-2-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-3-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-3-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-4-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-4-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-5-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-5-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-5-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-5-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-6-expected.png: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-6-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-6-expected.txt: Copied from platform/chromium-win/fast/backgrounds/svg-as-background-6-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-as-background-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-as-background-with-relative-size-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-background-with-viewBox-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-as-background-with-viewBox-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-as-tiled-background-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-as-tiled-background-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/chromium-win/svg/as-background-image/svg-background-partial-redraw-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.txt.
        * platform/chromium-win/svg/as-background-image/svg-width-100p-as-background-expected.txt: Copied from platform/chromium-win/svg/as-image/svg-width-100p-as-background-expected.txt.
        * platform/chromium-win/svg/as-border-image: Added.
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/chromium-win/fast/borders/svg-as-border-image-2-expected.png.
        * platform/chromium-win/svg/as-border-image/svg-as-border-image-2-expected.txt: Copied from platform/chromium-win/fast/borders/svg-as-border-image-2-expected.txt.
        * platform/chromium-win/svg/as-image/svg-as-background-expected.txt: Removed.
        * platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/chromium-win/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/chromium-win/svg/as-image/svg-as-tiled-background-expected.txt: Removed.
        * platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.txt: Removed.
        * platform/chromium-win/svg/as-image/svg-width-100p-as-background-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/backgrounds/animated-svg-as-background-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-1-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-2-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-3-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-4-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-5-expected.txt: Removed.
        * platform/gtk/fast/backgrounds/svg-as-background-6-expected.txt: Removed.
        * platform/gtk/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/gtk/fast/borders/svg-as-border-image-2-expected.txt: Removed.
        * platform/gtk/svg/as-background-image: Added.
        * platform/gtk/svg/as-background-image/animated-svg-as-background-expected.txt: Copied from platform/gtk/fast/backgrounds/animated-svg-as-background-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-1-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-1-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-2-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-2-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-3-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-3-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-4-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-4-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-5-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-5-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-6-expected.txt: Copied from platform/gtk/fast/backgrounds/svg-as-background-6-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-expected.png: Copied from platform/gtk/svg/as-image/svg-as-background-expected.png.
        * platform/gtk/svg/as-background-image/svg-as-background-expected.txt: Copied from platform/gtk/svg/as-image/svg-as-background-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/gtk/svg/as-background-image/svg-as-background-with-relative-size-expected.txt: Copied from platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-background-with-viewBox-expected.png: Copied from platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.png.
        * platform/gtk/svg/as-background-image/svg-as-background-with-viewBox-expected.txt: Copied from platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.txt.
        * platform/gtk/svg/as-background-image/svg-as-tiled-background-expected.png: Copied from platform/gtk/svg/as-image/svg-as-tiled-background-expected.png.
        * platform/gtk/svg/as-background-image/svg-as-tiled-background-expected.txt: Copied from platform/gtk/svg/as-image/svg-as-tiled-background-expected.txt.
        * platform/gtk/svg/as-background-image/svg-background-partial-redraw-expected.txt: Copied from platform/gtk/svg/as-image/svg-background-partial-redraw-expected.txt.
        * platform/gtk/svg/as-background-image/svg-width-100p-as-background-expected.png: Copied from platform/gtk/svg/as-image/svg-width-100p-as-background-expected.png.
        * platform/gtk/svg/as-background-image/svg-width-100p-as-background-expected.txt: Copied from platform/gtk/svg/as-image/svg-width-100p-as-background-expected.txt.
        * platform/gtk/svg/as-border-image: Added.
        * platform/gtk/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/gtk/fast/borders/svg-as-border-image-2-expected.png.
        * platform/gtk/svg/as-border-image/svg-as-border-image-2-expected.txt: Copied from platform/gtk/fast/borders/svg-as-border-image-2-expected.txt.
        * platform/gtk/svg/as-image/svg-as-background-expected.png: Removed.
        * platform/gtk/svg/as-image/svg-as-background-expected.txt: Removed.
        * platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.png: Removed.
        * platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/gtk/svg/as-image/svg-as-tiled-background-expected.png: Removed.
        * platform/gtk/svg/as-image/svg-as-tiled-background-expected.txt: Removed.
        * platform/gtk/svg/as-image/svg-background-partial-redraw-expected.txt: Removed.
        * platform/gtk/svg/as-image/svg-width-100p-as-background-expected.png: Removed.
        * platform/gtk/svg/as-image/svg-width-100p-as-background-expected.txt: Removed.
        * platform/mac-leopard/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/mac-leopard/fast/backgrounds/svg-as-background-2-expected.png: Removed.
        * platform/mac-leopard/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/mac-leopard/fast/backgrounds/svg-as-background-5-expected.png: Removed.
        * platform/mac-leopard/fast/backgrounds/svg-as-background-6-expected.png: Removed.
        * platform/mac-leopard/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/mac-leopard/svg/as-background-image: Added.
        * platform/mac-leopard/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/mac-leopard/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/mac-leopard/svg/as-background-image/svg-as-background-2-expected.png: Copied from platform/mac-leopard/fast/backgrounds/svg-as-background-2-expected.png.
        * platform/mac-leopard/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/mac-leopard/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/mac-leopard/svg/as-background-image/svg-as-background-5-expected.png: Copied from platform/mac-leopard/fast/backgrounds/svg-as-background-5-expected.png.
        * platform/mac-leopard/svg/as-background-image/svg-as-background-6-expected.png: Copied from platform/mac-leopard/fast/backgrounds/svg-as-background-6-expected.png.
        * platform/mac-leopard/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/mac-leopard/svg/as-border-image: Added.
        * platform/mac-leopard/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/mac-leopard/fast/borders/svg-as-border-image-2-expected.png.
        * platform/mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.png: Removed.
        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-1-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-1-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-2-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-2-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-3-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-3-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-4-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-4-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-5-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-5-expected.txt: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-6-expected.png: Removed.
        * platform/mac/fast/backgrounds/svg-as-background-6-expected.txt: Removed.
        * platform/mac/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/mac/fast/borders/svg-as-border-image-2-expected.txt: Removed.
        * platform/mac/fast/borders/svg-as-border-image-expected.png: Removed.
        * platform/mac/fast/borders/svg-as-border-image-expected.txt: Removed.
        * platform/mac/svg/as-background-image: Added.
        * platform/mac/svg/as-background-image/animated-svg-as-background-expected.png: Copied from platform/mac/fast/backgrounds/animated-svg-as-background-expected.png.
        * platform/mac/svg/as-background-image/animated-svg-as-background-expected.txt: Copied from platform/mac/fast/backgrounds/animated-svg-as-background-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-1-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-1-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-1-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-1-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-2-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-2-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-2-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-2-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-3-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-3-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-3-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-3-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-4-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-4-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-4-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-4-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-5-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-5-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-5-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-5-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-6-expected.png: Copied from platform/mac/fast/backgrounds/svg-as-background-6-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-6-expected.txt: Copied from platform/mac/fast/backgrounds/svg-as-background-6-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-expected.png: Copied from platform/mac/svg/as-image/svg-as-background-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-expected.txt: Copied from platform/mac/svg/as-image/svg-as-background-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-with-relative-size-expected.txt: Copied from platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-background-with-viewBox-expected.png: Copied from platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.png.
        * platform/mac/svg/as-background-image/svg-as-background-with-viewBox-expected.txt: Copied from platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.txt.
        * platform/mac/svg/as-background-image/svg-as-tiled-background-expected.png: Copied from platform/mac/svg/as-image/svg-as-tiled-background-expected.png.
        * platform/mac/svg/as-background-image/svg-as-tiled-background-expected.txt: Copied from platform/mac/svg/as-image/svg-as-tiled-background-expected.txt.
        * platform/mac/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/mac/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/mac/svg/as-background-image/svg-background-partial-redraw-expected.txt: Copied from platform/mac/svg/as-image/svg-background-partial-redraw-expected.txt.
        * platform/mac/svg/as-background-image/svg-width-100p-as-background-expected.png: Copied from platform/mac/svg/as-image/svg-width-100p-as-background-expected.png.
        * platform/mac/svg/as-background-image/svg-width-100p-as-background-expected.txt: Copied from platform/mac/svg/as-image/svg-width-100p-as-background-expected.txt.
        * platform/mac/svg/as-border-image: Added.
        * platform/mac/svg/as-border-image/svg-as-border-image-2-expected.png: Copied from platform/mac/fast/borders/svg-as-border-image-2-expected.png.
        * platform/mac/svg/as-border-image/svg-as-border-image-2-expected.txt: Copied from platform/mac/fast/borders/svg-as-border-image-2-expected.txt.
        * platform/mac/svg/as-border-image/svg-as-border-image-expected.png: Copied from platform/mac/fast/borders/svg-as-border-image-expected.png.
        * platform/mac/svg/as-border-image/svg-as-border-image-expected.txt: Copied from platform/mac/fast/borders/svg-as-border-image-expected.txt.
        * platform/mac/svg/as-image/svg-as-background-expected.png: Removed.
        * platform/mac/svg/as-image/svg-as-background-expected.txt: Removed.
        * platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.png: Removed.
        * platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/mac/svg/as-image/svg-as-tiled-background-expected.png: Removed.
        * platform/mac/svg/as-image/svg-as-tiled-background-expected.txt: Removed.
        * platform/mac/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/mac/svg/as-image/svg-background-partial-redraw-expected.txt: Removed.
        * platform/mac/svg/as-image/svg-width-100p-as-background-expected.png: Removed.
        * platform/mac/svg/as-image/svg-width-100p-as-background-expected.txt: Removed.
        * platform/qt-mac/Skipped:
        * platform/qt/Skipped:
        * platform/qt/fast/backgrounds/animated-svg-as-background-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-1-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-2-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-3-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-4-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-5-expected.txt: Removed.
        * platform/qt/fast/backgrounds/svg-as-background-6-expected.txt: Removed.
        * platform/qt/svg/as-background-image: Added.
        * platform/qt/svg/as-background-image/animated-svg-as-background-expected.txt: Copied from platform/qt/fast/backgrounds/animated-svg-as-background-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-1-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-1-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-2-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-2-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-3-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-3-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-4-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-4-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-5-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-5-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-6-expected.txt: Copied from platform/qt/fast/backgrounds/svg-as-background-6-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-expected.txt: Copied from platform/qt/svg/as-image/svg-as-background-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-with-relative-size-expected.png: Copied from platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.png.
        * platform/qt/svg/as-background-image/svg-as-background-with-relative-size-expected.txt: Copied from platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-background-with-viewBox-expected.png: Copied from platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.png.
        * platform/qt/svg/as-background-image/svg-as-background-with-viewBox-expected.txt: Copied from platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.txt.
        * platform/qt/svg/as-background-image/svg-as-tiled-background-expected.txt: Copied from platform/qt/svg/as-image/svg-as-tiled-background-expected.txt.
        * platform/qt/svg/as-background-image/svg-background-partial-redraw-expected.png: Copied from platform/qt/svg/as-image/svg-background-partial-redraw-expected.png.
        * platform/qt/svg/as-background-image/svg-background-partial-redraw-expected.txt: Copied from platform/qt/svg/as-image/svg-background-partial-redraw-expected.txt.
        * platform/qt/svg/as-background-image/svg-width-100p-as-background-expected.txt: Copied from platform/qt/svg/as-image/svg-width-100p-as-background-expected.txt.
        * platform/qt/svg/as-image/svg-as-background-expected.txt: Removed.
        * platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.png: Removed.
        * platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/qt/svg/as-image/svg-as-tiled-background-expected.txt: Removed.
        * platform/qt/svg/as-image/svg-background-partial-redraw-expected.png: Removed.
        * platform/qt/svg/as-image/svg-background-partial-redraw-expected.txt: Removed.
        * platform/qt/svg/as-image/svg-width-100p-as-background-expected.txt: Removed.
        * svg/as-background-image: Added.
        * svg/as-background-image/animated-svg-as-background.html: Copied from fast/backgrounds/animated-svg-as-background.html.
        * svg/as-background-image/resources: Added.
        * svg/as-background-image/resources/animated-rect-relative-size.svg: Copied from fast/backgrounds/resources/animated-rect-relative-size.svg.
        * svg/as-background-image/resources/balloon.svg: Copied from fast/backgrounds/resources/balloon.svg.
        * svg/as-background-image/resources/butterfly.svg: Copied from svg/as-image/resources/butterfly.svg.
        * svg/as-background-image/resources/circle.svg: Copied from svg/as-image/resources/circle.svg.
        * svg/as-background-image/resources/eyes.svg: Copied from fast/backgrounds/resources/eyes.svg.
        * svg/as-background-image/resources/green-fixed-size-rect.svg: Copied from svg/as-image/resources/green-fixed-size-rect.svg.
        * svg/as-background-image/resources/green-relative-size-rect-with-viewBox.svg: Copied from svg/as-image/resources/green-relative-size-rect-with-viewBox.svg.
        * svg/as-background-image/resources/hearts.svg: Copied from fast/backgrounds/resources/hearts.svg.
        * svg/as-background-image/resources/linguistics.svg: Copied from fast/backgrounds/resources/linguistics.svg.
        * svg/as-background-image/resources/map.svg: Copied from fast/backgrounds/resources/map.svg.
        * svg/as-background-image/resources/mouse-repel.svg: Copied from fast/backgrounds/resources/mouse-repel.svg.
        * svg/as-background-image/resources/svg-as-background-with-relative-size.svg: Copied from svg/as-image/resources/svg-as-background-with-relative-size.svg.
        * svg/as-background-image/resources/width-100-percent.svg: Copied from svg/as-image/resources/width-100-percent.svg.
        * svg/as-background-image/svg-as-background-1.html: Copied from fast/backgrounds/svg-as-background-1.html.
        * svg/as-background-image/svg-as-background-2.html: Copied from fast/backgrounds/svg-as-background-2.html.
        * svg/as-background-image/svg-as-background-3.html: Copied from fast/backgrounds/svg-as-background-3.html.
        * svg/as-background-image/svg-as-background-4.html: Copied from fast/backgrounds/svg-as-background-4.html.
        * svg/as-background-image/svg-as-background-5.html: Copied from fast/backgrounds/svg-as-background-5.html.
        * svg/as-background-image/svg-as-background-6.html: Copied from fast/backgrounds/svg-as-background-6.html.
        * svg/as-background-image/svg-as-background-with-relative-size.html: Copied from svg/as-image/svg-as-background-with-relative-size.html.
        * svg/as-background-image/svg-as-background-with-viewBox.html: Copied from svg/as-image/svg-as-background-with-viewBox.html.
        * svg/as-background-image/svg-as-background.html: Copied from svg/as-image/svg-as-background.html.
        * svg/as-background-image/svg-as-tiled-background.html: Copied from svg/as-image/svg-as-tiled-background.html.
        * svg/as-background-image/svg-background-crash-on-refresh-expected.txt: Copied from svg/as-image/svg-background-crash-on-refresh-expected.txt.
        * svg/as-background-image/svg-background-crash-on-refresh.html: Copied from svg/as-image/svg-background-crash-on-refresh.html.
        * svg/as-background-image/svg-background-partial-redraw.html: Copied from svg/as-image/svg-background-partial-redraw.html.
        * svg/as-background-image/svg-width-100p-as-background.html: Copied from svg/as-image/svg-width-100p-as-background.html.
        * svg/as-border-image: Added.
        * svg/as-border-image/resources: Added.
        * svg/as-border-image/resources/large-tiles.png: Copied from fast/borders/resources/large-tiles.png.
        * svg/as-border-image/resources/tiles-fixed-size.svg: Copied from fast/borders/resources/tiles-fixed-size.svg.
        * svg/as-border-image/resources/tiles-relative-size.svg: Copied from fast/borders/resources/tiles-relative-size.svg.
        * svg/as-border-image/resources/tiles.png: Copied from fast/borders/resources/tiles.png.
        * svg/as-border-image/svg-as-border-image-2.html: Copied from fast/borders/svg-as-border-image-2.html.
        * svg/as-border-image/svg-as-border-image.html: Copied from fast/borders/svg-as-border-image.html.
        * svg/as-image/resources/butterfly.svg: Removed.
        * svg/as-image/resources/green-relative-size-rect-with-viewBox.svg: Removed.
        * svg/as-image/resources/svg-as-background-with-relative-size.svg: Removed.
        * svg/as-image/resources/width-100-percent.svg: Removed.
        * svg/as-image/svg-as-background-with-relative-size.html: Removed.
        * svg/as-image/svg-as-background-with-viewBox.html: Removed.
        * svg/as-image/svg-as-background.html: Removed.
        * svg/as-image/svg-as-tiled-background.html: Removed.
        * svg/as-image/svg-background-crash-on-refresh-expected.txt: Removed.
        * svg/as-image/svg-background-crash-on-refresh.html: Removed.
        * svg/as-image/svg-background-partial-redraw.html: Removed.
        * svg/as-image/svg-width-100p-as-background.html: Removed.

2011-07-23  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r91574.

        * platform/chromium-win/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-win/fast/forms/input-appearance-range-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>

        Add crashing and failing expectations for canvas and css tests after r91628.
        The failures are tracked by the bug 65063.

        * platform/chromium/test_expectations.txt:

2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>

        Add crash expectation for http/tests/media/video-error-abort.html on Chromium Mac and Chromium Windows,
        tracked by the bug 65062.

        * platform/chromium/test_expectations.txt:

2011-07-22  Kenneth Russell  <kbr@google.com>

        HTMLImageElement::crossOrigin is hard to use because of caching
        https://bugs.webkit.org/show_bug.cgi?id=64813

        Reviewed by Adam Barth.

        * http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed-expected.txt: Added.
        * http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed.html: Added.

2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac rebaseline after r91605.

        * platform/chromium-mac/fast/repaint/fixed-after-scroll-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-scale-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-table-cell-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-table-overflow-expected.png: Added.
        * platform/chromium-mac/fast/repaint/fixed-table-overflow-zindex-expected.png: Added.

2011-07-22  Sergey Glazunov  <serg.glazunov@gmail.com>

        Perform the JavaScript navigation check on a complete URL
        https://bugs.webkit.org/show_bug.cgi?id=65038

        Reviewed by Adam Barth.

        * http/tests/security/xss-DENIED-document-baseURI-javascript-expected.txt: Added.
        * http/tests/security/xss-DENIED-document-baseURI-javascript.html: Added.

2011-07-22  Julien Chaffraix  <jchaffraix@webkit.org>

        RenderLayer fixed position logic needs more basic testing
        https://bugs.webkit.org/show_bug.cgi?id=64650

        Reviewed by James Robinson.

        Those test checks that basic repainting with position: fixed and
        scrolling works correctly. The tests are mostly platform-agnostic as they
        don't use any text or native controls.

        * fast/repaint/resources/default.css: Added.
        Default style sheet for the following tests. This style sheet sets the default size to
        avoid complicated calculation and adds some neat classes.

        * fast/repaint/fixed-scroll-simple.html: Added.
        Filed https://bugs.webkit.org/show_bug.cgi?id=64639 about this test as we repaint too much.

        * fast/repaint/fixed-after-scroll-expected.txt: Added.
        * fast/repaint/fixed-after-scroll.html: Added.
        * fast/repaint/fixed-scale.html: Added.
        * fast/repaint/fixed-table-cell.html: Added.
        * fast/repaint/fixed-table-overflow-zindex.html: Added.
        * fast/repaint/fixed-table-overflow.html: Added.
        Added those new repaint dumpAsText(true) tests.

        * fast/repaint/fixed-scale-expected.txt: Added.
        * fast/repaint/fixed-scroll-simple-expected.txt: Added.
        * fast/repaint/fixed-table-cell-expected.txt: Added.
        * fast/repaint/fixed-table-overflow-expected.txt: Added.
        * fast/repaint/fixed-table-overflow-zindex-expected.txt: Added.
        * platform/chromium/fast/repaint/fixed-after-scroll-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-scale-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-scroll-simple-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-table-cell-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-table-overflow-expected.png: Added.
        * platform/chromium/fast/repaint/fixed-table-overflow-zindex-expected.png: Added.
        * platform/mac/fast/repaint/fixed-after-scroll-expected.png: Added.
        * platform/mac/fast/repaint/fixed-scale-expected.png: Added.
        * platform/mac/fast/repaint/fixed-scroll-simple-expected.png: Added.
        * platform/mac/fast/repaint/fixed-table-cell-expected.png: Added.
        * platform/mac/fast/repaint/fixed-table-overflow-expected.png: Added.
        * platform/mac/fast/repaint/fixed-table-overflow-zindex-expected.png: Added.
        * platform/qt/fast/repaint/fixed-after-scroll-expected.png: Added.
        * platform/qt/fast/repaint/fixed-scale-expected.png: Added.
        * platform/qt/fast/repaint/fixed-scroll-simple-expected.png: Added.
        * platform/qt/fast/repaint/fixed-table-cell-expected.png: Added.
        * platform/qt/fast/repaint/fixed-table-overflow-expected.png: Added.
        * platform/qt/fast/repaint/fixed-table-overflow-zindex-expected.png: Added.

2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update; also rebaseline a test after r91574.

        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-22  Mihnea Ovidenie  <mihnea@adobe.com>

        BORDER attribute with the IMG tag, using percentage values not working.
        https://bugs.webkit.org/show_bug.cgi?id=20226

        Reviewed by Simon Fraser.

        When border presentational attribute of image element has % in it, it should be parsed using
        HTML parser rules. In this case, the algorithm is the one used described in:
        http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-non-negative-integers

        * fast/images/border-expected.txt:
        * fast/images/script-tests/border.js:

2011-07-22  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium expectations update.
        media/adopt-node-crash.html hasn't been flaky recently.

        * platform/chromium/test_expectations.txt:

2011-07-21  Adrienne Walker  <enne@google.com>

        Fix repainting of composited fixed position elements in iframes
        https://bugs.webkit.org/show_bug.cgi?id=64010

        Reviewed by Simon Fraser.

        * compositing/iframes/fixed-position-iframe-expected.png: Added.
        * compositing/iframes/fixed-position-iframe-expected.txt: Added.
        * compositing/iframes/fixed-position-iframe.html: Added.
        * compositing/iframes/resources/fixed-position-subframe.html: Added.

2011-07-22  Sam Weinig  <sam@webkit.org>

        Update results after change to make columns and column-span establish
        formatting contexts in r91497

        * fast/multicol/single-line-expected.txt:
        * platform/mac/fast/multicol/float-multicol-expected.txt:
        * platform/mac/fast/multicol/scrolling-overflow-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-split-block-crash-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-multicol-expected.txt:

2011-07-22  Nate Chapin  <japhet@chromium.org>

        Test for https://bugs.webkit.org/show_bug.cgi?id=64895.

        Reviewed by Mihai Parparita.

        * fast/loader/child-frame-add-after-back-forward-expected.txt: Added.
        * fast/loader/child-frame-add-after-back-forward.html: Added.

2011-07-22  Mark Hahnenberg  <mhahnenberg@apple.com>

        Date.prototype.toISOString doesn't handle negative years or years > 9999 correctly.
        https://bugs.webkit.org/show_bug.cgi?id=63986

        Reviewed by Geoffrey Garen.

        Changed the implementation of Date.prototype.toISOString() to use the extended year
        format (+/-yyyyyy) for years outside of [0,9999] to be in compliance with ES 15.9.1.15.1.
        Altered one test that tested for incorrect behavior on years > 9999, and added another test for 
        years < 0 (i.e. BCE).

        * fast/js/date-toisostring-expected.txt:
        * fast/js/script-tests/date-toisostring.js:

2011-07-22  Kent Tamura  <tkent@google.com>

        REGRESSION(r88757): The thumb of a vertical range slider is offset to the right on non-Mac.
        https://bugs.webkit.org/show_bug.cgi?id=65011

        Reviewed by Dimitri Glazkov.

        * platform/chromium-linux/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-linux/fast/forms/input-appearance-range-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-22  Kent Tamura  <tkent@chromium.org>

        Validation message bubble is incorrectly positioned in a relative body.
        https://bugs.webkit.org/show_bug.cgi?id=65018

        Reviewed by Dimitri Glazkov.

        * fast/forms/validation-message-in-relative-body-expected.txt: Added.
        * fast/forms/validation-message-in-relative-body.html: Added.
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-07-22  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] add webInspector.resources.onContentEdited
        https://bugs.webkit.org/show_bug.cgi?id=65024

        Reviewed Pavel Feldman.

        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-resources-expected.txt:
        * inspector/extensions/extensions-resources.html:

2011-07-22  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: fix exception when paused in internal script.
        https://bugs.webkit.org/show_bug.cgi?id=64995

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/pause-in-internal-script-expected.txt: Added.
        * inspector/debugger/pause-in-internal-script.html: Added.

2011-07-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: sometimes ReceiveResponse event is attached to wrong parent.
        https://bugs.webkit.org/show_bug.cgi?id=65016

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.dump):
        * inspector/timeline/resources/anImage.png: Added.
        * inspector/timeline/resources/anotherImage.png: Added.
        * inspector/timeline/timeline-receive-response-event-expected.txt: Added.
        * inspector/timeline/timeline-receive-response-event.html: Added.
        * platform/chromium/inspector/timeline/timeline-receive-response-event-expected.txt: Added.

2011-07-22  Kentaro Hara  <haraken@google.com>

        REGRESSION(r89535): Form reset does not repaint a file upload control.
        https://bugs.webkit.org/show_bug.cgi?id=65008

        Reviewed by Kent Tamura.

        This patch fixes the code so that the file upload control is repainted
        in updateFromElement() if no files are selected. The added test checks
        if the label next to the file chooser button becomes "No file chosen"
        when we press the reset button.

        * fast/forms/file-input-reset-expected.html: Added.
        * fast/forms/file-input-reset.html: Added.

2011-07-22  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Adjust test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=65020

        Create WebKit bug for slow/timing out layout tests:
        editing/execCommand/4786404-1.html and
        editing/execCommand/break-out-of-empty-list-item.html

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>

        Another Chromium rebaselines after r91493.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Removed.

2011-07-21  Kent Tamura  <tkent@chromium.org>

        A trivial fix for r91550.
        https://bugs.webkit.org/show_bug.cgi?id=65001

        * platform/chromium/test_expectations.txt:

2011-07-21  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64875
        Use of `yield` keyword is broken

        Reviewed by Sam Weinig.

        * fast/js/reserved-words-as-property-expected.txt:
        * fast/js/script-tests/reserved-words-as-property.js:
            - Make this test more comprehensive, to cover future-reserved & non-reserved words.

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Add a failing expectation for fast/forms/placeholder-in-invisible-elements.html
        added by r91550 on Chromium. The failure is tracked by the bug 65010.

        * platform/chromium/test_expectations.txt:

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Remove wrong test expectation added in r91490.

        Also add failing test expectation for scrollbar-drag-thumb-with-large-content.html, tracked by the bug 65009.

        * platform/chromium-win-xp/fast/events/offsetX-offsetY-expected.txt: Removed.
        * platform/chromium/test_expectations.txt

2011-07-21  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r90971): Placeholder and search cancel button are visible even in elements with visibility:hidden.
        https://bugs.webkit.org/show_bug.cgi?id=65001

        Reviewed by Dimitri Glazkov.

        * fast/forms/placeholder-in-invisible-elements-expected.html: Added.
        * fast/forms/placeholder-in-invisible-elements.html: Added.
        * fast/forms/search-cancel-in-invisible-elements-expected.html: Added.
        * fast/forms/search-cancel-in-invisible-elements.html: Added.

2011-07-21  Shinya Kawanaka  <shinyak@google.com>

        The input[type="number"] with step="any" should not suffer from step mismatch.
        https://bugs.webkit.org/show_bug.cgi?id=64858

        Reviewed by Kent Tamura.

        Added test cases of input[type="number"] with step="any"

        * fast/forms/input-stepup-stepdown-expected.txt: added the test cases.
        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: ditto.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: ditto.
        * fast/forms/script-tests/input-stepup-stepdown.js: ditto.

2011-07-21  Robin Qiu  <robin.qiu.dev@gmail.com>

        https://bugs.webkit.org/show_bug.cgi?id=60737

        ThumbPosition() in ScrollbarTheme should be ceiled before returned.
        Otherwise, some topest/leftest content can not be shown by dragging
        scrollbar thumb.

        Reviewed by Antonio Gomes.

        * scrollbars/scrollbar-drag-thumb-with-large-content-expected.txt: Added.
        * scrollbars/scrollbar-drag-thumb-with-large-content.html: Added.

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update after r91533.
        fast/css/absolute-child-with-percent-height-inside-relative-parent.html is missing a pixel result.
        A patch to add the pixel result has been uploaded to the bug 64046.

        * platform/chromium/test_expectations.txt:

2011-07-21  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        Test to cover absolutely positioned child with percentage height
        in relatively positioned parent with bottom padding.
        https://bugs.webkit.org/show_bug.cgi?id=64046

        Reviewed by David Hyatt.

        * fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
        * fast/css/absolute-child-with-percent-height-inside-relative-parent.html: Added.

2011-07-21  Gavin Peters  <gavinp@chromium.org>

        Extend the protector of a CSS style sheet.  Because checkLoaded() can recursively delete
        parent style elements, the protector should be extended to include the parent call.

        https://bugs.webkit.org/show_bug.cgi?id=64736

        Reviewed by Simon Fraser.

        * fast/css/css-imports-2-expected.txt: Added.
        * fast/css/css-imports-2.html: Added.

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Temporarily add failing test expectation for multi column tests after r91497.

        * platform/chromium/test_expectations.txt:

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update for svg/W3C-SVG-1.1-SE/color-prop-05-t.svg.

        * platform/chromium/test_expectations.txt:

2011-07-21  Jessie Berlin  <jberlin@apple.com>

        Implement spinbutton support in RenderThemeSafari.
        https://bugs.webkit.org/show_bug.cgi?id=54662

        Yet another spinbutton test ...

        * platform/win/Skipped:

2011-07-21  Jessie Berlin  <jberlin@apple.com>

        Implement spinbutton support in RenderThemeSafari.
        https://bugs.webkit.org/show_bug.cgi?id=54662

        Add another spinbutton test to the Skipped list to get the bots green.

        * platform/win/Skipped:

2011-07-21  Kenneth Russell  <kbr@google.com>

        Update webglcontextlost / webglcontextrestored delivery to match spec changes
        https://bugs.webkit.org/show_bug.cgi?id=58621

        Reviewed by James Robinson.

        Updated layout test to test spec compliant behavior.

        * fast/canvas/webgl/context-lost-restored-expected.txt:
        * fast/canvas/webgl/context-lost-restored.html:

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines after r91493.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/chromium-win-xp/svg/W3C-SVG-1.1-SE: Added.
        * platform/chromium-win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectations update after rolling out r91285 and r91332.

        * platform/chromium/test_expectations.txt:

2011-07-21  Rob Buis  <rbuis@rim.com>

        Fix SVG Font resources link in W3C SVG 1.1SE tests
        https://bugs.webkit.org/show_bug.cgi?id=64953

        Reviewed by Dirk schulze.

        * platform/mac/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt:
        * svg/W3C-SVG-1.1-SE/color-prop-05-t.svg:
        * svg/W3C-SVG-1.1-SE/filters-felem-01-b.svg:
        * svg/W3C-SVG-1.1-SE/interact-pointer-03-t.svg:
        * svg/W3C-SVG-1.1-SE/linking-uri-01-b.svg:
        * svg/W3C-SVG-1.1-SE/painting-control-04-f.svg:
        * svg/W3C-SVG-1.1-SE/painting-marker-07-f.svg:
        * svg/W3C-SVG-1.1-SE/struct-use-14-f.svg:
        * svg/W3C-SVG-1.1-SE/styling-css-04-f.svg:
        * svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg:
        * svg/W3C-SVG-1.1-SE/text-intro-02-b.svg:
        * svg/W3C-SVG-1.1-SE/text-intro-05-t.svg:
        * svg/W3C-SVG-1.1-SE/text-intro-09-b.svg:
        * svg/W3C-SVG-1.1-SE/text-tref-03-b.svg:
        * svg/W3C-SVG-1.1-SE/text-tspan-02-b.svg:

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        More Chromium rebaselines for r91474.

        * platform/chromium-linux/fast/multicol/float-multicol-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/float-multicol-expected.png: Added.
        * platform/chromium-mac/fast/multicol/float-multicol-expected.png: Added.
        * platform/chromium-win-xp/fast/events: Added.
        * platform/chromium-win-xp/fast/events/offsetX-offsetY-expected.txt: Added.
        * platform/chromium-win/fast/events/offsetX-offsetY-expected.txt:
        * platform/chromium-win/fast/multicol/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/float-multicol-expected.txt:

2011-07-21  Scott Graham  <scottmg@chromium.org>

        Disable failing new test on mac/win ports
        https://bugs.webkit.org/show_bug.cgi?id=64882

        Reviewed by Ryosuke Niwa.

        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-07-21  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64900
        Function.prototype.apply should accept an array-like object as its second argument

        Reviewed by Sam Weinig.

        * fast/js/function-apply-expected.txt:
        * fast/js/script-tests/function-apply.js:
            - Add a test for array-like objects.
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.3_Function.prototype.apply/S15.3.4.3_A6_T1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.3_Function.prototype.apply/S15.3.4.3_A6_T4-expected.txt:
            - These tests are incorrect & assert ES3 behaviour.

2011-07-21  Enrica Casucci  <enrica@apple.com>

        Cannot click to position the caret to the right of an image with display:block style.
        https://bugs.webkit.org/show_bug.cgi?id=64962
        <rdar://problem/9446343>

        Reviewed by David Hyatt.

        * editing/selection/click-on-block-image-expected.txt: Added.
        * editing/selection/click-on-block-image.html: Added.

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline for r91474.

        * platform/chromium-linux/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-linux/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-child-property-removal-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/span/span-as-nested-columns-child-expected.png: Added.
        * platform/chromium-mac/fast/multicol/float-avoidance-expected.png: Added.
        * platform/chromium-mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.png: Added.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Added.
        * platform/chromium-mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png: Added.
        * platform/chromium-mac/fast/multicol/span/span-as-nested-columns-child-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-lr/float-avoidance-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-lr/float-multicol-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-rl/float-avoidance-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-rl/float-multicol-expected.png: Added.
        * platform/chromium-win/fast/multicol/client-rects-expected.txt:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.txt:
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.txt:
        * platform/chromium-win/fast/multicol/span/anonymous-before-child-parent-crash-expected.png:
        * platform/chromium-win/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-generated-content-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-property-removal-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-expected.png:
        * platform/chromium-win/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-multicol-expected.txt:

2011-07-21  Sam Weinig  <sam@webkit.org>

        fast/events/offsetX-offsetY.html is failing on the bots.

        * fast/events/offsetX-offsetY-expected.txt:
        * fast/events/offsetX-offsetY.html:
        Update test and result in response to changes to margins in columns.

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark http/tests/inspector/console-websocket-error.html as timing out.
        https://bugs.webkit.org/show_bug.cgi?id=64957

        This test times out on Linux Debug.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  Sam Weinig  <sam@webkit.org>

        CSS top margin collapses when paginating
        <rdar://problem/9434990>
        https://bugs.webkit.org/show_bug.cgi?id=64906

        Reviewed by David Hyatt.

        * fast/multicol/client-rects-expected.txt:
        * platform/mac/fast/multicol/float-avoidance-expected.txt:
        * platform/mac/fast/multicol/float-multicol-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-inline-block-child-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-multicol-expected.txt:
        Update results now that we take margins into account.

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark fast/js/function-apply-many-args.html as timing out.
        https://bugs.webkit.org/show_bug.cgi?id=64955

        The test is timing out on Mac Debug.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: RuntimeAgent.evaluateOn should not require "return X;" syntax.
        https://bugs.webkit.org/show_bug.cgi?id=64691

        Reviewed by Yury Semikhatsky.

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:
        * inspector/runtime/runtime-callFunctionOn-expected.txt: Added.
        * inspector/runtime/runtime-callFunctionOn.html: Added.

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark fast/frames/meta-refresh-user-gesture.html as crashy.
        https://bugs.webkit.org/show_bug.cgi?id=64952

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Fix test expectations, mark fast/forms/input-file-label.html as crashy.
        https://bugs.webkit.org/show_bug.cgi?id=64949

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark fast/dom/DeviceOrientation/no-synchronous-events.html as crashy.
        https://bugs.webkit.org/show_bug.cgi?id=64947

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Remove test expectation for fast/speech/input-text-speechbutton.html.
        https://bugs.webkit.org/show_bug.cgi?id=64945

        The test was fixed in https://bugs.webkit.org/show_bug.cgi?id=64857.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark test fast/flexbox/010.html as flaky (crashy).
        https://bugs.webkit.org/show_bug.cgi?id=64944

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark svg/W3C-SVG-1.1/animate-elem-78-t.svg as flaky (crashy).
        https://bugs.webkit.org/show_bug.cgi?id=64941

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Mark http/tests/websocket/tests/hybi/reserved-opcodes.html flaky.
        https://bugs.webkit.org/show_bug.cgi?id=64938

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-21  John Knottenbelt  <jknotten@chromium.org>

        [Chromium] Remove windows baseline for fast/speech/input-text-speechbutton.
        https://bugs.webkit.org/show_bug.cgi?id=64936

        Unreviewed.

        * platform/chromium-win/fast/speech/input-text-speechbutton-expected.txt: Removed.

2011-07-21  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: [protocol] extend setBreakpointByUrl request to accept incomplete URL (predicates)
        https://bugs.webkit.org/show_bug.cgi?id=60762

        Reviewed by Yury Semikhatsky.

        * inspector/debugger/debugger-set-breakpoint-regex-expected.txt: Added.
        * inspector/debugger/debugger-set-breakpoint-regex.html: Added.

2011-07-21  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r88757): input[type=range] renders incorrectly in RTL context.
        https://bugs.webkit.org/show_bug.cgi?id=64904

        Reviewed by Ryosuke Niwa.

        * fast/forms/input-appearance-range-rtl-expected.html: Added.
        * fast/forms/input-appearance-range-rtl.html: Added.
        * platform/chromium/test_expectatinos.txt:

2011-07-21  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening for Qt.
        Revert http://trac.webkit.org/changeset/91451 and skip the tests
        via the Skipped list because the test_expectations way don't work.

        * platform/qt/Skipped:
        * platform/qt/test_expectations.txt:

2011-07-21  Jeremy Moskovich  <jeremy@chromium.org>

        Fix fast/speech/input-text-speechbutton.html after r91249 .
        https://bugs.webkit.org/show_bug.cgi?id=64857

        Reviewed by Kent Tamura.

        * fast/speech/input-text-speechbutton.html: Correct mouse coordinates now that the microphone icon can be on the left in RTL..
        * platform/chromium/test_expectations.txt: Test no longer times out.

2011-07-21  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening for Qt.
        Tracked by https://bugs.webkit.org/show_bug.cgi?id=64927 and https://bugs.webkit.org/show_bug.cgi?id=64928

        * platform/qt/test_expectations.txt:
        Mark inspector/styles/css-live-edit.html as TIMEOUT.
        Mark inspector/syles/get-set-stylesheet-text.html as PASS or TIMEOUT.

2011-07-21  Ryosuke Niwa  <rniwa@webkit.org>

        [Chromium] [WebKit API] Implement WebCore::defaultDetailsSummaryText()
        https://bugs.webkit.org/show_bug.cgi?id=63700

        Remove failing test expectations from fast/html/details-*.html
        since localization strings have been updated in Chromium side.

        * platform/chromium/test_expectations.txt:

2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>

        Add crash expectation to fast/canvas/webgl/renderbuffer-initialization.html on Chromium Windows,
        tracked by the bug 64920.

        * platform/chromium/test_expectations.txt:

2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>

        [chromium] Shadow-related tests need rebaselining after r85299
        https://bugs.webkit.org/show_bug.cgi?id=59782

        Remove failing Chromium test expectations since these tests are passing since r91393.

        * platform/chromium/test_expectations.txt:

2011-07-20  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64909
        DFG JIT - Missing ToInt32 conversions for double constants.

        Reviewed by Sam Weinig.

        * fast/js/bitops-type-tag-expected.txt:
        * fast/js/script-tests/bitops-type-tag.js:
            - Test case for DFG JIT.

2011-07-20  Stephen White  <senorblanco@chromium.org>

        Remove some more passing tests from chromium GPU expectations
        (just required a clobber).

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-20  Scott Graham  <scottmg@chromium.org>

        mouseover event reporting incorrect button in 'which'.
        https://bugs.webkit.org/show_bug.cgi?id=64882

        New test, move in/out of iframe with none/left/middle buttons down.

        Reviewed by Eric Seidel.

        * fast/events/mouseover-button-expected.txt: Added.
        * fast/events/mouseover-button.html: Added.
        * fast/events/resources/mouseover-button-iframe.html: Added.

2011-07-20  Kenneth Russell  <kbr@google.com>

        Add restoreContext() to WEBKIT_lose_context
        https://bugs.webkit.org/show_bug.cgi?id=58626

        Reviewed by James Robinson.

        Used the new WEBKIT_lose_context restoreContext() entry point in
        the associated layout test.

        * fast/canvas/webgl/context-lost-restored-expected.txt:
        * fast/canvas/webgl/context-lost-restored.html:

2011-07-19  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add support for disabling cache in web inspector.
        https://bugs.webkit.org/show_bug.cgi?id=64097

        Reviewed by Pavel Feldman.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest):
        * http/tests/inspector/network/network-disable-cache-memory-expected.txt: Added.
        * http/tests/inspector/network/network-disable-cache-memory.html: Added.
        * http/tests/inspector/network/network-disable-cache-xhrs-expected.txt: Added.
        * http/tests/inspector/network/network-disable-cache-xhrs.html: Added.
        * http/tests/inspector/network/resources/resource.php:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-07-20  Stephen White  <senorblanco@chromium.org>

        Chromium test_expectations update for tests now passing on WIN7.

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-20  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test_expectations update.

        Mark some tests as passing on the GPU after
        http://src.chromium.org/viewvc/chrome?view=rev&revision=93233.

        * platform/chromium/test_expectations.txt:

2011-07-20  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        WebKit crashes on selection when documentElement is removed.
        https://bugs.webkit.org/show_bug.cgi?id=63908

        Reviewed by Eric Seidel.

        * editing/selection/selection-empty-documentElement-expected.txt: Added.
        * editing/selection/selection-empty-documentElement.html: Added.

2011-07-20  Tony Chang  <tony@chromium.org>

        Stale pointer due to floats not removed (flexible box display)
        https://bugs.webkit.org/show_bug.cgi?id=64603

        Reviewed by David Hyatt.

        * fast/flexbox/horizontal-box-float-crash-expected.txt: Added.
        * fast/flexbox/horizontal-box-float-crash.html: Added.

2011-07-20  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations changes.

        Pre-emptively mark some test failures/timeouts from an upcoming skia
        change in Chrome.

        * platform/chromium/test_expectations.txt:

2011-07-20  James Simonsen  <simonjam@chromium.org>

        Refuse to run scripts inside the SVG shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=64776

        Reviewed by Tony Gentilcore.

        * platform/chromium/test_expectations.txt:

2011-07-20  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: add keyboard shortcuts to load/save operations in Timeline panel.
        https://bugs.webkit.org/show_bug.cgi?id=64864

        Export/import were renamed to save/load.

        Reviewed by Yury Semikhatsky.

        * inspector/timeline/timeline-load.html:

2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update.

        * platform/chromium/test_expectations.txt:

2011-07-20  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed expectation fix.
        Forgot to remove fast/forms/input-appearance-number-rtl.html form test_expectations.txt
        in http://trac.webkit.org/changeset/91356 that added platform specific result for this test.

        * platform/qt/test_expectations.txt:

2011-07-20  Gabor Loki  <loki@webkit.org>

        [Qt] Skip a spinbutton test after r91353

        * platform/qt/Skipped:

2011-07-20  Gabor Loki  <loki@webkit.org>

        [Qt] Add missing expected file after r91345 and r91269

        * platform/qt/fast/forms/input-appearance-number-rtl-expected.txt: Added. (r91345)
        * platform/qt/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Added. (r91269)

2011-07-20  Kentaro Hara  <haraken@google.com>

        The value of a number input form continues to increase/decrease even if we disable the input form.
        https://bugs.webkit.org/show_bug.cgi?id=64786

        Reviewed by Kent Tamura.

        The value of the number input form continues to increase/decrease in the following scenario:
        (1) Click the spin button of the number input form.
        (2) Hook the 'mouseup' event and disable the number input form.
        (3) Enable the number input form after some delay (e.g. 50ms).

        What is happening above is as follows:
        (1) When the 'mousedown' event happens, the repeating timer of the spin button starts.
        (2) If the input form is not disabled, the repeating timer stops at the 'mouseup' event.
        However, if the input form is disabled, the 'mouseup' event is ignored, failing to stop
        the repeating timer.
        (3) The value continues to increase/decrease, since the repeating timer is still working.

        The added test checks if the value does not continue to increase/decrease when we do the above operation.

        * fast/forms/spin-button-gets-disabled-or-readonly-expected.txt: Added.
        * fast/forms/spin-button-gets-disabled-or-readonly.html: Added.

2011-07-20  Kent Tamura  <tkent@chromium.org>

        [Chromium] Expectation update for some forms and speech tests.

        * platform/chromium-linux/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/chromium-mac-leopard/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-searchandspeech-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/chromium-win/fast/forms/input-appearance-number-rtl-expected.txt: Added.
        * platform/chromium-win/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-win/fast/speech/input-appearance-searchandspeech-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-20  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r91285.
        http://trac.webkit.org/changeset/91285
        https://bugs.webkit.org/show_bug.cgi?id=64854

        "Assertion hit in svg/custom/crash-textPath-attributes.html"
        (Requested by mihnea on #webkit).

        * fast/dynamic/hover-before-position-after-style-change-expected.txt: Removed.
        * fast/dynamic/hover-before-position-after-style-change.html: Removed.

2011-07-20  Boris Smus  <smus@chromium.org>

        Web Inspector: audit extensions need a way to link directly to resources
        https://bugs.webkit.org/show_bug.cgi?id=64315

        Reviewed by Yury Semikhatsky.

        * inspector/extensions/extensions-audits-expected.txt:
        * inspector/extensions/extensions-audits-api-expected.txt:
        * inspector/extensions/extensions-audits.html:

2011-07-20  tkent@chromium.org  <tkent@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>

        input type=number doesn't render correctly in rtl.
        https://bugs.webkit.org/show_bug.cgi?id=59703

        Reviewed by Ryosuke Niwa.

        * fast/forms/input-appearance-number-rtl.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:
        * platform/mac/fast/forms/input-appearance-number-rtl-expected.png: Added.
        * platform/mac/fast/forms/input-appearance-number-rtl-expected.txt: Added.
        * platform/qt/test_expectations.txt:

2011-07-19  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64678
        Fix bugs in Object.prototype this handling.

        Reviewed by Darin Adler.

        * fast/js/object-prototype-properties-expected.txt:
        * fast/js/script-tests/object-prototype-properties.js:
            - Fix these tests to check Object.prototype explicitly, not the Global Object, and expect ES5.1 correct results.
        * sputnik/Conformance/11_Expressions/11.1_Primary_Expressions/11.1.1_The_this_Keyword/S11.1.1_A2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.11_String.prototype.replace/S15.5.4.11_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.4_String.prototype.charAt/S15.5.4.4_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.5_String.prototype.charCodeAt/S15.5.4.5_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.6_String.prototype.concat/S15.5.4.6_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A1_T3-expected.txt:
            - Slight change in expected results, these tests are all incorrect, were all FAILing, and are still all FAILing.

2011-07-20  Hayato Ito  <hayato@chromium.org>

        Fix Chromium test expectations for r91331.
        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-19  Gabor Loki  <loki@webkit.org>

        Move platform independent expected.txts out of platform/mac
        https://bugs.webkit.org/show_bug.cgi?id=64796

        Reviewed by Rob Buis.

        * fast/css/replaced-element-implicit-size-expected.txt: Renamed from LayoutTests/platform/mac/fast/css/replaced-element-implicit-size-expected.txt.
        * svg/custom/zero-path-square-cap-rendering-expected.txt: Renamed from LayoutTests/platform/mac/svg/custom/zero-path-square-cap-rendering-expected.txt.

2011-07-19  Hayato Ito  <hayato@chromium.org>

        [chromium] More chromium rebaseline for r91249.
        Unreviewed.

        * platform/chromium-mac-leopard/fast/speech/speech-bidi-rendering-expected.png: Added.

2011-07-19  Leo Yang  <leoyang.webkit@gmail.com>

        SVG: Missing implementation of <altGlyphDef>, <altGlyphItem> and <glyphRef>
        https://bugs.webkit.org/show_bug.cgi?id=60850

        Reviewed by Nikolas Zimmermann.

        SVG spec: http://www.w3.org/TR/SVG/text.html#AlternateGlyphDefinitions.
        This patch is to implement SVG <altGlyphDef>, <altGlyphItem> and <glyphRef>
        elements for alternative glyph features.

        Updated test expectation.

        * platform/chromium-linux/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update. svg/custom/crash-textPath-attributes.html is hitting an assertion.
        The failure is tracked by the bug 64844.

        * platform/chromium/test_expectations.txt:

2011-07-19  Adam Roben  <aroben@apple.com>

        Skip some more tests on WebKit2 that rely on unimplemented test harness APIs

        * platform/wk2/Skipped: Added svg/animations/svgtransform-animation-discrete.html and
        fast/forms/input-search-press-escape-key.html.

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Apparently my rebaseline was incorrect for r91294.

        Remove expected results and skip compositing/scaling/tiled-layer-recursion.html on Chromium
        because it's missing expected results.

        * platform/chromium/test_expectations.txt:

2011-07-19  Simon Fraser  <simon.fraser@apple.com>

        Skip compositing/scaling/tiled-layer-recursion.html on chromium
        and Windows because it requires the scalePageBy DRT API.

        * platform/chromium/test_expectations.txt:
        * platform/win/Skipped:

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline for r91294. Also filed the bug 64828 to track the crash on Chromium Mac.

        * platform/chromium-gpu-linux/compositing/scaling: Added.
        * platform/chromium-gpu-linux/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-gpu-win/compositing/scaling: Added.
        * platform/chromium-gpu-win/compositing/scaling/tiled-layer-recursion-expected.png: Added.
        * platform/chromium-gpu-win/compositing/scaling/tiled-layer-recursion-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-19  Nate Chapin  <japhet@chromium.org>

        Test for https://bugs.webkit.org/show_bug.cgi?id=64552.

        Reviewed by Adam Barth.

        * storage/indexeddb/transaction-abort-with-js-recursion-expected.txt: Added.
        * storage/indexeddb/transaction-abort-with-js-recursion.html: Added.

2011-07-19  Mike West  <mkwst@chromium.org>

        Sending a `Ping-From` header for cross-origin pings from non-HTTPS documents.
        https://bugs.webkit.org/show_bug.cgi?id=64789

        Also a drive-by cleanup of whitespace.

        Reviewed by Nate Chapin.

        * http/tests/navigation/ping-cross-origin-expected.txt:

2011-07-19  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64809
        REGRESSION (r91114-r91116): fast/dom/error-to-string-stack-overflow.html failing on Windows 7 Release (Tests)

        Reviewed by Adam Roben.

        I think this just needs new results. The test deliberately triggers a stack overflow,
        and doesn't catch it, so the error is printed to the console. Previously RangeError
        had the wrong prototype, and didn't convert the error into a useful error message,
        printing a blank line in the console. Since r91116 we inherit from Error correctly,
        and print the error to the console.

        * fast/dom/error-to-string-stack-overflow-expected.txt:
        * fast/js/script-tests/object-prototype-properties.js:

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        More Chromium rebaselines for r91277.

        * platform/chromium-linux/fast/table/align-right-within-left-aligned-div-expected.png: Added.
        * platform/chromium-mac-leopard/fast/table/align-right-within-left-aligned-div-expected.png: Added.
        * platform/chromium-win/fast/table/align-right-within-left-aligned-div-expected.txt: Added.

2011-07-19  Tony Chang  <tony@chromium.org>

        [chromium] remove BUG_DRT tests that the flakiness dashboard say are passing
        https://bugs.webkit.org/show_bug.cgi?id=64819

        Reviewed by Ryosuke Niwa.

        * platform/chromium/test_expectations.txt:

2011-07-15  Luke Zarko  <lukezarko@gmail.com>

       Bring V8's SerializedScriptValue implementation up to date.

        https://bugs.webkit.org/show_bug.cgi?id=63481

        Reviewed by David Levin.
        
        This patch refactors window-postmessage-clone into a script test, checks additional functionality set forth in the standard, and fixes up expectations. It also checks for typed array message passing.

        * fast/canvas/webgl/array-message-passing-expected.txt: Added.
        * fast/canvas/webgl/array-message-passing.html: Added.
        * fast/canvas/webgl/script-tests/array-message-passing.js: Added.
        (classCompare):
        (bufferCompare):
        (viewCompare):
        (typedArrayCompare):
        (dataViewCompare):
        (createBuffer):
        (createTypedArray):
        (createTypedArrayOverBuffer):
        (testList):
        (doneTest):
        (windowHandleMessage):
        * fast/dom/Window/script-tests/postmessage-clone-deep-array.js: Added.
        * fast/dom/Window/script-tests/postmessage-clone-really-deep-array.js: Added.
        * fast/dom/Window/script-tests/postmessage-clone.js: Added.
        (thunk):
        * fast/dom/Window/script-tests/postmessage-test.js: Copied from LayoutTests/fast/dom/Window/window-postmessage-clone.html.
        ():
        (safeToString):
        (shouldBe):
        (shouldBeIdentical):
        (doPass):
        (doFail):
        (window.doPassFail):
        (onmessage):
        (ConstructorWithPrototype):
        (window.tryPostMessage):
        * fast/dom/Window/window-postmessage-clone-deep-array-expected.txt: Added.
        * fast/dom/Window/window-postmessage-clone-deep-array.html: Added.
        * fast/dom/Window/window-postmessage-clone-expected.txt:
        * fast/dom/Window/window-postmessage-clone-really-deep-array-expected.txt: Added.
        * fast/dom/Window/window-postmessage-clone-really-deep-array.html: Added.
        * fast/dom/Window/window-postmessage-clone.html:
        * fast/dom/Window/window-properties-expected.txt: Also fixed this due to r91061.
        * platform/chromium/fast/canvas/webgl/array-message-passing-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-postmessage-clone-deep-array-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-postmessage-clone-expected.txt: Added.
        * platform/chromium/fast/dom/Window/window-postmessage-clone-really-deep-array-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * storage/indexeddb/objectstore-basics-expected.txt:
        * storage/indexeddb/objectstore-basics.html:

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline after r91290.

        * platform/chromium/fast/js/array-prototype-properties-expected.txt: Added.

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Windows rebaseline after r91277, and Chromium rebaseline for r91284.

        * platform/chromium/fast/js/string-prototype-properties-expected.txt: Added.
        * platform/chromium-win/fast/table/align-right-within-left-aligned-div-expected.png: Added.

2011-07-19  Simon Fraser  <simon.fraser@apple.com>

        Possible recursing in GraphicsLayerCA::updateGeometry()
        https://bugs.webkit.org/show_bug.cgi?id=64815

        Reviewed by Sam Weinig.
        
        New tests that scales a page so that a compositing layer falls
        close to the tiling threshold.

        * compositing/scaling/tiled-layer-recursion-expected.txt: Added.
        * compositing/scaling/tiled-layer-recursion.html: Added.

2011-07-19  Rob Buis  <rbuis@rim.com>

        REGRESSION (r91187-r91192): svg/W3C-SVG-1.1/animate-elem-80-t.svg failing on SnowLeopard Intel Debug (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=64820

        Reviewed by Darin Adler.

        Update result after r91192.

        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:

2011-07-19  Rob Buis  <rbuis@rim.com>

        REGRESSION (r89951): svg/foreignObject/text-tref-02-b.svg failing on Leopard Intel Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=64817

        Rubber stamped by Darin Adler.

        Remove outdated, incorrect test results, hopefully the generic mac results are good enough.

        * platform/mac-leopard/svg/foreignObject/text-tref-02-b-expected.png: Removed.
        * platform/mac-leopard/svg/foreignObject/text-tref-02-b-expected.txt: Removed.

2011-07-19  Robert Hogan  <robert@webkit.org>

        Add platform-specific results for r91277.

        Unreviewed, add platform-specific results.

        * platform/gtk/fast/table/align-right-within-left-aligned-div-expected.txt: Added.
        * platform/mac/fast/table/align-right-within-left-aligned-div-expected.txt: Added.
        * platform/qt/fast/table/align-right-within-left-aligned-div-expected.txt: Added.

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines r91269 and r91277.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png: Added.
        * platform/chromium-mac/fast/table/align-right-within-left-aligned-div-expected.png: Added.
        * platform/chromium-mac/fast/table/align-right-within-left-aligned-div-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png: Added.

2011-07-19  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]Parse -webkit-region-overflow property
        https://bugs.webkit.org/show_bug.cgi?id=64444

        Reviewed by David Hyatt.

        * fast/regions/script-tests/webkit-region-overflow-parsing.js: Added.
        * fast/regions/webkit-region-overflow-parsing-expected.txt: Added.
        * fast/regions/webkit-region-overflow-parsing.html: Added.

2011-07-19  Mihnea Ovidenie  <mihnea@adobe.com>

        hover then un-hover makes state change
        https://bugs.webkit.org/show_bug.cgi?id=56401

        Reviewed by David Hyatt.

        * fast/dynamic/hover-before-position-after-style-change-expected.txt: Added.
        * fast/dynamic/hover-before-position-after-style-change.html: Added.

2011-07-19  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64679
        Fix bugs in Array.prototype this handling.

        Reviewed by Oliver Hunt.

        * fast/js/array-prototype-properties-expected.txt: Added.
        * fast/js/array-prototype-properties.html: Added.
        * fast/js/script-tests/array-prototype-properties.js: Added.
            - Added layout test for array prototype functions with undefined as this value.
        * ietestcenter/Javascript/15.4.4.14-5-28-expected.txt:
        * ietestcenter/Javascript/15.4.4.15-5-28-expected.txt:
            - These tests now pass.

2011-07-19  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64677
        Fix bugs in String.prototype this handling.

        Reviewed by Oliver Hunt.

        * fast/js/script-tests/string-prototype-properties.js: Added.
        * fast/js/string-prototype-properties-expected.txt: Added.
        * fast/js/string-prototype-properties.html: Added.
            - Added layout test for string prototype functions with undefined/number as this value.

2011-07-19  Robert Hogan  <robert@webkit.org>

        REGRESSION: Incorrect layout at recline-online.com
        https://bugs.webkit.org/show_bug.cgi?id=64030

        Reviewed by David Hyatt.

        * fast/table/align-right-within-left-aligned-div-expected.png: Added.
        * fast/table/align-right-within-left-aligned-div-expected.txt: Added.
        * fast/table/align-right-within-left-aligned-div.html: Added.

2011-07-19  Abhishek Arya  <inferno@chromium.org>

        Crash in CompositeEditCommand::replaceTextInNodePreservingMarkers
        https://bugs.webkit.org/show_bug.cgi?id=64738

        Tests that we do not crash when replacing text in node preserving
        markers.

        Reviewed by Ryosuke Niwa.

        * editing/undo/replace-text-in-node-preserving-markers-crash-expected.txt: Added
        * editing/undo/replace-text-in-node-preserving-markers-crash.html: Added.

2011-07-19  Abhishek Arya  <inferno@chromium.org>

        Tests that we do not crash when removing unrendering nodes
        in a replacement fragment.
        https://bugs.webkit.org/show_bug.cgi?id=64801

        Reviewed by Ryosuke Niwa.

        * editing/pasteboard/replacement-fragment-remove-unrendered-node-crash-expected.txt: Added.
        * editing/pasteboard/replacement-fragment-remove-unrendered-node-crash.html: Added.

2011-07-19  Rob Buis  <rbuis@rim.com>

        https://bugs.webkit.org/show_bug.cgi?id=64673
        REGRESSION (Safari 5.0.5 - ToT): crash in SVG test http://dev.w3.org/SVG/profiles/1.1F2/test/harness/htmlObjectApproved/styling-pres-02-f.html

        Reviewed by Nikolas Zimmermann.

        * platform/mac/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/styling-pres-02-f.svg: Added.

2011-07-19  Chris Fleizach  <cfleizach@apple.com>

        If the control associated with a <label> is hidden, the label is also hidden (incorrectly)
        https://bugs.webkit.org/show_bug.cgi?id=64752

        Reviewed by Darin Adler.

        * platform/mac/accessibility/label-element-with-hidden-control-expected.txt: Added.
        * platform/mac/accessibility/label-element-with-hidden-control.html: Added.

2011-07-19  Ryosuke Niwa  <rniwa@webkit.org>

        Remove failing Chromium test expectations after r91224.

        * platform/chromium/test_expectations.txt:

2011-07-19  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Backend should provide network resource identifiers that are unique across navigation.
        https://bugs.webkit.org/show_bug.cgi?id=64746

        Reviewed by Pavel Feldman.

        * inspector/timeline/timeline-network-resource-expected.txt:
        * platform/chromium/inspector/timeline/timeline-network-resource-expected.txt:

2011-07-19  Jeremy Moskovich  <jeremy@chromium.org>

        [chromium] rebaseline Chromium results after r91249 .
        Unreviewed.

        * platform/chromium-linux/fast/speech/speech-bidi-rendering-expected.png: Added.
        * platform/chromium-win/fast/speech/input-text-speechbutton-expected.txt: Added.
        * platform/chromium-win/fast/speech/speech-bidi-rendering-expected.png: Added.
        * platform/chromium-win/fast/speech/speech-bidi-rendering-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-19  Sam Weinig  <sam@webkit.org>

        Check in Leopard specific results for Selectors 3 tests.

        * platform/mac-leopard/css3/selectors3: Added.
        * platform/mac-leopard/css3/selectors3/html: Added.
        * platform/mac-leopard/css3/selectors3/html/css3-modsel-24-expected.txt: Copied from platform/mac/css3/selectors3/html/css3-modsel-24-expected.txt.
        * platform/mac-leopard/css3/selectors3/html/css3-modsel-68-expected.txt: Copied from platform/mac/css3/selectors3/html/css3-modsel-68-expected.txt.
        * platform/mac-leopard/css3/selectors3/xhtml: Added.
        * platform/mac-leopard/css3/selectors3/xhtml/css3-modsel-174a-expected.txt: Copied from platform/mac/css3/selectors3/xhtml/css3-modsel-174a-expected.txt.
        * platform/mac-leopard/css3/selectors3/xhtml/css3-modsel-174b-expected.txt: Copied from platform/mac/css3/selectors3/xhtml/css3-modsel-174b-expected.txt.
        * platform/mac-leopard/css3/selectors3/xhtml/css3-modsel-24-expected.txt: Copied from platform/mac/css3/selectors3/xhtml/css3-modsel-24-expected.txt.
        * platform/mac-leopard/css3/selectors3/xhtml/css3-modsel-68-expected.txt: Copied from platform/mac/css3/selectors3/xhtml/css3-modsel-68-expected.txt.
        * platform/mac-leopard/css3/selectors3/xml: Added.
        * platform/mac-leopard/css3/selectors3/xml/css3-modsel-174a-expected.txt: Copied from platform/mac/css3/selectors3/xml/css3-modsel-174a-expected.txt.
        * platform/mac-leopard/css3/selectors3/xml/css3-modsel-174b-expected.txt: Copied from platform/mac/css3/selectors3/xml/css3-modsel-174b-expected.txt.
        * platform/mac-leopard/css3/selectors3/xml/css3-modsel-24-expected.txt: Copied from platform/mac/css3/selectors3/xml/css3-modsel-24-expected.txt.
        * platform/mac-leopard/css3/selectors3/xml/css3-modsel-68-expected.txt: Copied from platform/mac/css3/selectors3/xml/css3-modsel-68-expected.txt.

2011-07-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: implement import/export for timeline data.
        https://bugs.webkit.org/show_bug.cgi?id=64601

        Reviewed by Yury Semikhatsky.

        * inspector/timeline/timeline-load-expected.txt: Added.
        * inspector/timeline/timeline-load.html: Added.

2011-07-19  Gabor Loki  <loki@webkit.org>

        [Qt] Add missing expected file after r91191

        * platform/qt/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.

2011-07-19  Jeremy Moskovich  <jeremy@chromium.org>

        Fix microphone icon placement in speech input control for dir=rtl.
        https://bugs.webkit.org/show_bug.cgi?id=64668

        Reviewed by Dimitri Glazkov.

        Added test that verifies placement of microphone icon for dir=rtl.

        * fast/speech/speech-bidi-rendering.html: Added.
        * platform/mac/fast/speech/speech-bidi-rendering-expected.png: Added.
        * platform/mac/fast/speech/speech-bidi-rendering-expected.txt: Added.

2011-07-19  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Edit Chromium test expectation for http/tests/websocket/tests/hybi/reserved-opcodes.html.

        * platform/chromium/test_expectations.txt:

2011-07-19  Robin Qiu  <robin.qiu@torchmobile.com.cn>

        Reviewed by Antonio Gomes.

        ScrollBar should initialize current position in constructor.
        https://bugs.webkit.org/show_bug.cgi?id=39284

        When ScrollBar is created, m_currentPos should be initialized to
        m_scrollableArea's current scrollPosition. Because scrollbars may
        be created after the content of m_scrollableArea has been scrolled.

        * scrollbars/scrollbar-initial-position-expected.png: Added.
        * scrollbars/scrollbar-initial-position-expected.txt: Added.
        * scrollbars/scrollbar-initial-position.html: Added.

2011-07-19  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Implement hybi framing
        https://bugs.webkit.org/show_bug.cgi?id=64522

        Reviewed by Kent Tamura.

        Fix existing tests so they match the new frame format, and add tests for the new frame types
        and error conditions related to the new frame format.

        Unskip hybi tests on mac, win and chromium. Other ports (wk2, qt and gtk) still skip these tests
        because they do not support changing the value of "WebKitHixie76WebSocketProtocolEnabled"
        preference key via layoutTestController.overridePreferences() yet.

        * http/tests/websocket/tests/hybi/broken-utf8-expected.txt: Added.
        * http/tests/websocket/tests/hybi/broken-utf8.html: Added.
        * http/tests/websocket/tests/hybi/broken-utf8_wsh.py: Added.
        * http/tests/websocket/tests/hybi/client-close-expected.txt:
        * http/tests/websocket/tests/hybi/client-close.html:
        The format of a close frame has been changed. Currently, we do not include any payload
        in a close frame, thus it must start with "\x88\x80" (see section 4.1 of hybi-10
        specification for more details).
        * http/tests/websocket/tests/hybi/client-close_wsh.py:
        * http/tests/websocket/tests/hybi/fragmented-control-frame-expected.txt: Added.
        * http/tests/websocket/tests/hybi/fragmented-control-frame.html: Added.
        * http/tests/websocket/tests/hybi/fragmented-control-frame_wsh.py: Added.
        * http/tests/websocket/tests/hybi/fragmented-frames-expected.txt: Added.
        * http/tests/websocket/tests/hybi/fragmented-frames.html: Added.
        * http/tests/websocket/tests/hybi/fragmented-frames_wsh.py: Added.
        * http/tests/websocket/tests/hybi/interleaved-fragments-expected.txt: Added.
        * http/tests/websocket/tests/hybi/interleaved-fragments.html: Added.
        * http/tests/websocket/tests/hybi/interleaved-fragments_wsh.py: Added.
        * http/tests/websocket/tests/hybi/long-control-frame-expected.txt: Added.
        * http/tests/websocket/tests/hybi/long-control-frame.html: Added.
        * http/tests/websocket/tests/hybi/long-control-frame_wsh.py: Added.
        * http/tests/websocket/tests/hybi/masked-frames-expected.txt: Added.
        * http/tests/websocket/tests/hybi/masked-frames.html: Added.
        * http/tests/websocket/tests/hybi/masked-frames_wsh.py: Added.
        * http/tests/websocket/tests/hybi/pong-expected.txt: Added.
        * http/tests/websocket/tests/hybi/pong.html: Added.
        * http/tests/websocket/tests/hybi/pong_wsh.py: Added.
        * http/tests/websocket/tests/hybi/reserved-bits-expected.txt: Added.
        * http/tests/websocket/tests/hybi/reserved-bits.html: Added.
        * http/tests/websocket/tests/hybi/reserved-bits_wsh.py: Added.
        * http/tests/websocket/tests/hybi/reserved-opcodes-expected.txt: Added.
        * http/tests/websocket/tests/hybi/reserved-opcodes.html: Added.
        * http/tests/websocket/tests/hybi/reserved-opcodes_wsh.py: Added.
        * http/tests/websocket/tests/hybi/send2_wsh.py:
        Send two text frames at once.
        * http/tests/websocket/tests/hybi/too-long-payload-expected.txt: Added.
        * http/tests/websocket/tests/hybi/too-long-payload.html: Added.
        * http/tests/websocket/tests/hybi/too-long-payload_wsh.py: Added.
        * platform/chromium/test_expectations.txt:
        Derive test expectations of hixie76 tests, because these tests are likely to behave
        the same way as hixie76 tests. Will be checked later whether they really do.
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-07-19  Nikolas Zimmermann  <nzimmermann@rim.com>

        REGRESSION (r88913): Preview in Safari's snippet editor has a fixed height instead of filling the entire pane
        https://bugs.webkit.org/show_bug.cgi?id=64059

        REGRESSION (r88913): <object> has wrong computed height
        https://bugs.webkit.org/show_bug.cgi?id=62769

        Reviewed by Rob Buis.

        Add new layout test in fast/css covering both bugs.
        Update svg/zoom/page results (this is a progression, but the test itself remains broken, see comment inline).

        * fast/css/replaced-element-implicit-size.html: Added.
        * platform/mac/fast/css/replaced-element-implicit-size-expected.png: Added.
        * platform/mac/fast/css/replaced-element-implicit-size-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-text-expected.png:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-text-expected.txt:

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update after r91229.

        * platform/chromium/test_expectations.txt:

2011-07-18  MORITA Hajime  <morrita@google.com>

        [ShadowContentElement] forwarded node should be able to access its hosting content element.
        https://bugs.webkit.org/show_bug.cgi?id=64251

        Reviewed by Dimitri Glazkov.

        - Added a new test.
        - Updated expectations. This change make ShadowContentElement availability on NodeRenderingContext
          more strict. that makes some redundant node disappeared.

        * fast/dom/shadow/content-element-includer-expected.txt: Added.
        * fast/dom/shadow/content-element-includer.html: Added.
        * platform/chromium-win/fast/html/details-nested-2-expected.txt:
        * platform/gtk/fast/html/details-nested-2-expected.txt:
        * platform/mac/fast/html/details-nested-2-expected.txt:
        * platform/qt/fast/html/details-nested-2-expected.txt:

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        Add a failing test expectation for object-prototype-properties.html after r91225.

        * platform/chromium/test_expectations.txt:

2011-07-18  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64678
        Fix bugs in Object.prototype this handling.

        Reviewed by Oliver Hunt.

        Ooops! - failed to commit the new sputnik results.

2011-07-18  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64678
        Fix bugs in Object.prototype this handling.

        Reviewed by Oliver Hunt.

        * fast/js/resources/js-test-pre.js:
            - Updated harness to not call Object.prototype.toString on undefined.
        * fast/js/eval-var-decl-expected.txt:
        * fast/js/object-prototype-properties-expected.txt: Added.
        * fast/js/object-prototype-properties.html: Added.
        * fast/js/object-prototype-toLocaleString-expected.txt
        * fast/js/script-tests/eval-var-decl.js:
            - Fix test case, calling hasProperty with undefined as the this value should throw.
        * fast/js/script-tests/object-prototype-properties.js: Added.
            - Place for test cases for Object.prototype properties; to being with, check that calling these methods on undefined throws!
        * fast/js/script-tests/object-prototype-toLocaleString.js:
            - Added test cases for correct behaviour when this is a string primitive.
        * sputnik/Conformance/11_Expressions/11.1_Primary_Expressions/11.1.1_The_this_Keyword/S11.1.1_A2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.11_String.prototype.replace/S15.5.4.11_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.4_String.prototype.charAt/S15.5.4.4_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.5_String.prototype.charCodeAt/S15.5.4.5_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.6_String.prototype.concat/S15.5.4.6_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A1_T3-expected.txt:
            - These test cases are all incorrect. (See https://bugs.ecmascript.org/show_bug.cgi?id=117).
              We were incorrectly passing 15.5.4.11_String.prototype.replace, this should fail, as the others do.
              All the other 15.5.4 tests were failing & are still failing, but now have a better error message.
              S11.1.1_A2 is also invalid, calling toString() passing undefined as this should throw.

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        Fix a typo.

        * platform/chromium/test_expectations.txt:

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        Add Chromium failing expectations for some font tests; failures are tracked by the bug 64767.

        * platform/chromium/test_expectations.txt:

2011-07-18  Jon Honeycutt  <jhoneycutt@apple.com>

        Focus and selection events are not fired when a <select>'s selection
        changes
        https://bugs.webkit.org/show_bug.cgi?id=64504
        <rdar://problem/9319881>

        Reviewed by Alice Liu.

        * platform/win/accessibility/option-element-selection-and-focus-events-expected.txt: Added.
        * platform/win/accessibility/option-element-selection-and-focus-events.html: Added.

2011-07-18  Tab Atkins  <jackalmage@gmail.com>

        Add regression tests for legacy color parsing of valid CSS colors
        https://bugs.webkit.org/show_bug.cgi?id=64576

        Reviewed by Simon Fraser.

        * fast/dom/attribute-legacy-colors-expected.txt:
        * fast/dom/script-tests/attribute-legacy-colors.js:

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        [SVG] [Chromium]: painting-control-04-f.svg and zero-path-square-cap-rendering.svg are failing
        https://bugs.webkit.org/show_bug.cgi?id=64675

        Rebaseline painting-control-04-f.svg since r91191 fixed it.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-18  Adam Barth  <abarth@webkit.org>

        Update baseline.  rbuis says this is an improvement.

        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt: Added.

2011-07-18  Tony Chang  <tony@chromium.org>

        [chromium] Move a Linux specific test into chromium-linux and rebaseline
        https://bugs.webkit.org/show_bug.cgi?id=64632

        Reviewed by Ojan Vafai.

        Rebaselining per the comment in test_expectations.txt.

        * platform/chromium-linux/fast/text/chromium-linux-fontconfig-renderstyle-expected.png: Added.
        * platform/chromium-linux/platform/chromium/fast/text/chromium-linux-fontconfig-renderstyle-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-07-18  Rob Buis  <rbuis@rim.com>

        Stroking of zero-length paths in SVG should change according to erratum
        https://bugs.webkit.org/show_bug.cgi?id=18356

        Reviewed by Nikolas Zimmermann.

        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt:

2011-07-18  Mihnea Ovidenie  <mihnea@adobe.com>

        [REGRESSION] Value 'none' breaks multiple background-image display
        https://bugs.webkit.org/show_bug.cgi?id=59274

        Reviewed by Simon Fraser.

        When taking fast path for simple color background, we should draw
        the background only if it is the last in the list of backgrounds.
        Otherwise, it will obscure the previously drawn backgrounds.

        * fast/backgrounds/background-fast-path-simple-color-expected.png: Added.
        * fast/backgrounds/background-fast-path-simple-color-expected.txt: Added.
        * fast/backgrounds/background-fast-path-simple-color.html: Added.

2011-07-18  Yi Shen  <yi.4.shen@nokia.com>

        [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
        https://bugs.webkit.org/show_bug.cgi?id=62808

        Added a test for the crash occurs when load deferring is turned off.

        Reviewed by Benjamin Poulain.

        * loader/load-defer-resume-crash-expected.txt: Added.
        * loader/load-defer-resume-crash.html: Added.
        * loader/resources/images.html: Added.
        * platform/chromium/test_expectations.txt: Skip this test since the LayoutTestController::setDefersLoading is not implemented for chromium.

2011-07-18  Young Han Lee  <joybro@company100.net>

        AnimationBase asserts if a test tries to pause during the delay phase
        https://bugs.webkit.org/show_bug.cgi?id=59475

        Reviewed by Simon Fraser.

        There is no more assertion failure after r90765, but the testcase still fails due to
        the miscalculation of the pauseTime. This patch pauses the animation at its startTime
        if a test tries to pause it during the delay phase.

        * transitions/transition-in-delay-phase-expected.txt: Added.
        * transitions/transition-in-delay-phase.html: Added.

2011-07-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; updated chromium test expectations.

        Remove a passing test from test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-07-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; updated chromium test expectations.

        Remove two tests from test_expectations.txt that have been rebaselined.

        * platform/chromium/test_expectations.txt:

2011-07-18  Gabor Loki  <loki@webkit.org>

        Qt rebaselines after r91060 and r91116

        * platform/qt/fast/dom/Window/window-properties-expected.txt: (r91060)
        * platform/qt/fast/dom/error-to-string-stack-overflow-expected.txt: Added (r91116)

2011-07-18  Ryosuke Niwa  <rniwa@webkit.org>

        GTK and Qt rebaselines after r91158.

        * platform/gtk/editing/inserting/5058163-1-expected.txt:
        * platform/qt/editing/inserting/5058163-1-expected.txt:

2011-07-17  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines after r91158.

        Add failing expectations for tests added in r91125. The failures are tracked by the bug 64675.

        Also remove failing expectations for some editing tests tracked by the Chromium issue 89477
        because they are now passing.

        * platform/chromium-linux/editing/inserting/5058163-1-expected.png:
        * platform/chromium-win/editing/inserting/5058163-1-expected.png:
        * platform/chromium-win/editing/inserting/5058163-1-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-16  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64657
        Converted this value not preserved when accessed via direct eval.

        Reviewed by Oliver Hunt.

        Added test case.

        * fast/js/read-modify-eval-expected.txt:
        * fast/js/script-tests/read-modify-eval.js:
        (primitiveThisTest):

2011-07-16  Enrica Casucci  <enrica@apple.com>

        REGRESSION: Pressing return in a particular document sends the cursor to the end of the document.
        https://bugs.webkit.org/show_bug.cgi?id=64140
        <rdar://problem/9737491>

        Added new test to cover this case and updated results for one test that now
        produces simpler markup.

        Reviewed by Simon Fraser.

        * editing/inserting/insert-paragraph-separator-at-break-expected.txt: Added.
        * editing/inserting/insert-paragraph-separator-at-break.html: Added.
        * platform/mac/editing/inserting/5058163-1-expected.txt:

2011-07-16  Sergey Glazunov  <serg.glazunov@gmail.com>

        DOMWindow::open performs a security check on a wrong window
        https://bugs.webkit.org/show_bug.cgi?id=64651

        Reviewed by Adam Barth.

        * http/tests/security/resources/xss-DENIED-window-open-parent-attacker.html: Added.
        * http/tests/security/xss-DENIED-window-open-parent-expected.txt: Added.
        * http/tests/security/xss-DENIED-window-open-parent.html: Added.

2011-07-16  Sam Weinig  <sam@webkit.org>

        Attribute selectors don't handle glob namespaces (e.g. *|E)
        https://bugs.webkit.org/show_bug.cgi?id=64567

        Reviewed by Anders Carlsson.

        Update results for correct handling of a * prefix in an attribute selector.
        Fixes 50 tests.

        * platform/mac/css3/selectors3/xhtml/css3-modsel-104-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-104-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-105-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-105-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-106-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-106-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-107-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-107-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-108-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-108-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-109-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-109-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-110-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-110-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-130-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-130-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-130b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-130b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-131-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-131-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-131b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-131b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-132-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-132-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-132b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-132b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-133-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-133-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-133b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-133b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-134-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-134-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-134b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-134b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-135-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-135-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-135b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-135b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-136-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-136-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-136b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-136b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-173a-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-173a-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-173b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-173b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-174a-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-174a-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-174b-expected.png:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-174b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-104-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-104-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-105-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-105-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-106-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-106-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-107-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-107-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-108-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-108-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-109-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-109-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-110-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-110-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-130-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-130-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-130b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-130b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-131-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-131-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-131b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-131b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-132-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-132-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-132b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-132b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-133-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-133-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-133b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-133b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-134-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-134-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-134b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-134b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-135-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-135-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-135b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-135b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-136-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-136-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-136b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-136b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-173a-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-173a-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-173b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-173b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-174a-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-174a-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-174b-expected.png:
        * platform/mac/css3/selectors3/xml/css3-modsel-174b-expected.txt:

2011-07-16  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        Reviewed by Nikolas Zimmermann.

        SVG animation API crashes on SVGAnimateTransform
        https://bugs.webkit.org/show_bug.cgi?id=64104

        Added the test to cover assertion in AnimatedTransform list where its
        value and wrapper length mismatch occurs.

        * svg/animations/script-tests/svgtransform-animation-discrete.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/svgtransform-animation-discrete-expected.txt: Added.
        * svg/animations/svgtransform-animation-discrete.html: Added.

2011-07-13  Jon Honeycutt  <jhoneycutt@apple.com>

        Focus and selection events are not fired when a <select>'s selection
        changes
        https://bugs.webkit.org/show_bug.cgi?id=64504
        <rdar://problem/9319881>

        Reviewed by Alice Liu.

        * platform/win/accessibility/option-element-selection-and-focus-events-expected.txt: Added.
        * platform/win/accessibility/option-element-selection-and-focus-events.html: Added.

2011-07-12  Jon Honeycutt  <jhoneycutt@apple.com>

        Ensure that a single select element's child option elements are
        reported correctly to accessibility clients if the children are
        changed.

        https://bugs.webkit.org/show_bug.cgi?id=64500
        <rdar://problem/9773066>

        Reviewed by Beth Dakin.

        * platform/win/accessibility/single-select-children-changed-expected.txt: Added.
        * platform/win/accessibility/single-select-children-changed.html: Added.

2011-07-15  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-15  Rob Buis  <rbuis@rim.com>

        Stroking of zero-length paths in SVG should change according to erratum
        https://bugs.webkit.org/show_bug.cgi?id=18356

        Reviewed by Nikolas Zimmermann.

        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
        * platform/mac/svg/custom/zero-path-square-cap-rendering-expected.png: Added.
        * platform/mac/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/painting-control-04-f.svg: Added.
        * svg/custom/zero-path-square-cap-rendering.svg: Added.

2011-07-15  Tony Chang  <tony@chromium.org>

        Unreviewed, unskip css3/selectors3 tests so we can rebaseline them.

        * platform/chromium/test_expectations.txt:

2011-07-15  Adrienne Walker  <enne@google.com>

        [chromium] Rebaseline overflow-scroll on Linux after r91114.

        Unreviewed.

        * platform/chromium-gpu-linux/compositing/overflow/overflow-scroll-expected.png:

2011-07-15  Tony Chang  <tony@chromium.org>

        [chromium] land linux selection color layout test
        https://bugs.webkit.org/show_bug.cgi?id=64631

        Reviewed by Ojan Vafai.

        * platform/chromium-linux/editing/selection/linux_selection_color.html: Added.

2011-07-15  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-15  Gavin Barraclough  <barraclough@apple.com>

        NativeError.prototype objects have [[Class]] of "Object" but should be "Error"
        https://bugs.webkit.org/show_bug.cgi?id=55346

        Reviewed by Sam Weinig.

        Added test case.

        * fast/js/native-error-prototype-expected.txt: Added.
        * fast/js/native-error-prototype.html: Added.
        * fast/js/script-tests/native-error-prototype.js: Added.

2011-06-27  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        Overlap map for compositing needs to consider clipping
        https://bugs.webkit.org/show_bug.cgi?id=63493

        Added new test.  limit-layer-bounds-clipping-ancestor had changed
        behavior because some layers no longer needed to become composited.
        Adjusted that test to be less platform-specific as well.

        * compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
        * compositing/geometry/limit-layer-bounds-clipping-ancestor.html:
        * compositing/layer-creation/overlap-clipping-expected.txt: Added.
        * compositing/layer-creation/overlap-clipping.html: Added.
        * platform/chromium-gpu-mac/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Removed.
        * platform/chromium-gpu/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Removed.

2011-07-15  Kenneth Russell  <kbr@google.com>

        Don't restore WebGL context if it was guilty of a graphics reset
        https://bugs.webkit.org/show_bug.cgi?id=64497

        Reviewed by Stephen White.

        Updated expectations for context-lost test and added comment about
        the order of event delivery. Per the specification of the
        WEBKIT_lose_context extension, the previous expectations were wrong.

        * fast/canvas/webgl/context-lost-expected.txt:
        * fast/canvas/webgl/context-lost.html:

2011-07-15  Adrienne Walker  <enne@google.com>

        [chromium] Re-mark tests as failing as a result of r91069
        https://bugs.webkit.org/show_bug.cgi?id=64368

        Unreviewed.

        senorblanco checked in baselines, but these tests appear to still be failing.

        * platform/chromium/test_expectations.txt:

2011-07-15  Sam Weinig  <sam@webkit.org>

        Reviewed by Simon Fraser.

        We should import the CSS 3 Selectors test suite
        https://bugs.webkit.org/show_bug.cgi?id=64610

        Add dump of the CSS 3 Selectors test suite from http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/.
        Add standalone versions of the html, xhtml and xml suites.

        * css3/selectors3: Added.
        * css3/selectors3/html: Added.
        * css3/selectors3/xhtml: Added.
        * css3/selectors3/xml: Added.
        * platform/mac/css3/selectors3: Added.
        * platform/mac/css3/selectors3/html: Added.
        * platform/mac/css3/selectors3/xhtml: Added.
        * platform/mac/css3/selectors3/xml: Added.
        [Individual tests elided]

        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        Added css3/selectors3 pending results.

2011-07-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed.  Updated chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-15  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64250
        Global strict mode function leaking global object as "this".

        Reviewed by Oliver Hunt.

        Add test case / update test results.

        * fast/js/call-base-resolution-expected.txt: Added.
        * fast/js/call-base-resolution.html: Added.
            - Add test for ES5 correct this value resolution in calls.
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.4_String.prototype.charAt/S15.5.4.4_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.5_String.prototype.charCodeAt/S15.5.4.5_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.6_String.prototype.concat/S15.5.4.6_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A1_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A1_T3-expected.txt:
            - Check in failing results for these tests - these tests were asserting incorrect behaviour,
              and have since been fixed in test-262, see https://bugs.ecmascript.org/show_bug.cgi?id=117

2011-07-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed.  Yet more chromium test baselines.

        Somehow I messed these up in my mass-rebaselining.

        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-baseline-expected.png:

2011-07-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        Remove some now-passing tests from chromium's text_expectations.

        * platform/chromium/test_expectations.txt:

2011-07-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed.  New chromium test baselines after r91069.

        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-win-vista/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Removed.
        * platform/chromium-win-vista/fast/block: Added.
        * platform/chromium-win-vista/fast/block/positioning: Added.
        * platform/chromium-win-vista/fast/block/positioning/auto: Added.
        * platform/chromium-win-vista/fast/block/positioning/auto/vertical-lr: Added.
        * platform/chromium-win-vista/fast/block/positioning/auto/vertical-lr/007-expected.png: Added.
        * platform/chromium-win-vista/fast/block/positioning/auto/vertical-rl: Added.
        * platform/chromium-win-vista/fast/block/positioning/auto/vertical-rl/007-expected.png: Added.
        * platform/chromium-win-vista/fast/blockflow/english-lr-text-expected.png: Added.
        * platform/chromium-win-vista/fast/blockflow/fallback-orientation-expected.png:
        * platform/chromium-win-vista/fast/text/stroking-decorations-expected.png: Added.
        * platform/chromium-win-vista/fast/text/stroking-expected.png: Added.
        * platform/chromium-win-vista/platform/chromium/fast/text/text-stroke-with-border-expected.png: Removed.
        * platform/chromium-win-vista/svg/W3C-I18N: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/chromium-win-vista/svg/batik/text/textFeatures-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/foreign-object-skew-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
        * platform/chromium-win-vista/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/chromium-win-vista/svg/zoom/text: Added.
        * platform/chromium-win-vista/svg/zoom/text/zoom-foreignObject-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
        * platform/chromium-win-xp/fast/blockflow/fallback-orientation-expected.png:
        * platform/chromium-win-xp/fast/blockflow/japanese-lr-text-expected.png: Added.
        * platform/chromium-win-xp/fast/blockflow/japanese-rl-text-expected.png: Added.
        * platform/chromium-win-xp/fast/blockflow/japanese-ruby-vertical-lr-expected.png: Added.
        * platform/chromium-win-xp/fast/blockflow/japanese-ruby-vertical-rl-expected.png: Added.
        * platform/chromium-win-xp/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/chromium-win-xp/fast/blockflow/vertical-baseline-alignment-expected.png: Added.
        * platform/chromium-win-xp/fast/dynamic: Added.
        * platform/chromium-win-xp/fast/dynamic/text-combine-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/japanese-rl-selection-clear-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/japanese-rl-selection-repaint-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/repaint-across-writing-mode-boundary-expected.png: Added.
        * platform/chromium-win-xp/fast/ruby/base-shorter-than-text-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win-xp/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png:
        * platform/chromium-win-xp/svg/batik/text/textFeatures-expected.png: Removed.
        * platform/chromium-win-xp/svg/batik/text/verticalText-expected.png:
        * platform/chromium-win-xp/svg/css/group-with-shadow-expected.png: Removed.
        * platform/chromium-win-xp/svg/custom/js-late-pattern-and-object-creation-expected.png:
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png:
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png:
        * platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-win/fast/backgrounds/svg-as-background-5-expected.png:
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-vertical-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-lr/001-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-lr/002-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-lr/003-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-lr/004-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-rl/001-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-rl/002-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-rl/003-expected.png:
        * platform/chromium-win/fast/block/positioning/auto/vertical-rl/004-expected.png:
        * platform/chromium-win/fast/block/positioning/vertical-lr/001-expected.png:
        * platform/chromium-win/fast/block/positioning/vertical-lr/002-expected.png:
        * platform/chromium-win/fast/block/positioning/vertical-rl/001-expected.png:
        * platform/chromium-win/fast/block/positioning/vertical-rl/002-expected.png:
        * platform/chromium-win/fast/block/positioning/vertical-rl/fixed-positioning-expected.png:
        * platform/chromium-win/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-win/fast/blockflow/english-rl-text-expected.png:
        * platform/chromium-win/fast/blockflow/japanese-rl-text-with-broken-font-expected.png:
        * platform/chromium-win/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/chromium-win/fast/blockflow/vertical-lr-replaced-selection-expected.png:
        * platform/chromium-win/fast/blockflow/vertical-rl-replaced-selection-expected.png:
        * platform/chromium-win/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.png:
        * platform/chromium-win/fast/dom/scroll-reveal-top-overflow-expected.png:
        * platform/chromium-win/fast/forms/placeholder-position-expected.png:
        * platform/chromium-win/fast/html/details-writing-mode-expected.png:
        * platform/chromium-win/fast/lists/001-vertical-expected.png:
        * platform/chromium-win/fast/lists/002-vertical-expected.png:
        * platform/chromium-win/fast/lists/003-vertical-expected.png:
        * platform/chromium-win/fast/lists/005-vertical-expected.png:
        * platform/chromium-win/fast/lists/006-vertical-expected.png:
        * platform/chromium-win/fast/lists/007-vertical-expected.png:
        * platform/chromium-win/fast/lists/008-vertical-expected.png:
        * platform/chromium-win/fast/lists/009-vertical-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/border-padding-pagination-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/column-break-with-balancing-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/column-count-with-rules-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/column-rules-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-paginate-complex-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-paginate-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/unsplittable-inline-block-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/border-padding-pagination-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/column-break-with-balancing-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/column-count-with-rules-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/column-rules-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-multicol-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-paginate-complex-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-paginate-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/unsplittable-inline-block-expected.png:
        * platform/chromium-win/fast/overflow/overflow-rtl-vertical-expected.png:
        * platform/chromium-win/fast/repaint/selection-rl-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-vertical-expected.png:
        * platform/chromium-win/fast/replaced/vertical-lr/absolute-position-percentage-width-expected.png:
        * platform/chromium-win/fast/replaced/vertical-lr/absolute-position-with-auto-height-and-top-and-bottom-expected.png:
        * platform/chromium-win/fast/replaced/vertical-lr/absolute-position-with-auto-width-and-left-and-right-expected.png:
        * platform/chromium-win/fast/replaced/vertical-rl/absolute-position-percentage-width-expected.png:
        * platform/chromium-win/fast/replaced/vertical-rl/absolute-position-with-auto-height-and-top-and-bottom-expected.png:
        * platform/chromium-win/fast/replaced/vertical-rl/absolute-position-with-auto-width-and-left-and-right-expected.png:
        * platform/chromium-win/fast/ruby/overhang-vertical-expected.png: Removed.
        * platform/chromium-win/fast/table/027-vertical-expected.png:
        * platform/chromium-win/fast/table/028-vertical-expected.png:
        * platform/chromium-win/fast/table/035-vertical-expected.png:
        * platform/chromium-win/fast/table/038-vertical-expected.png:
        * platform/chromium-win/fast/table/auto-with-percent-height-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/001-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/003-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/004-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.png:
        * platform/chromium-win/fast/table/rowspan-paint-order-vertical-expected.png:
        * platform/chromium-win/fast/table/table-display-types-vertical-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/fast/transforms/transform-on-inline-expected.png:
        * platform/chromium-win/fast/transforms/transform-table-row-expected.png:
        * platform/chromium-win/fast/transforms/transformed-document-element-expected.png:
        * platform/chromium-win/media/audio-repaint-expected.png:
        * platform/chromium-win/platform/chromium/fast/text/text-stroke-with-border-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-ltr-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-39-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/struct-group-03-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-deco-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-text-07-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-text-08-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
        * platform/chromium-win/svg/batik/paints/patternPreserveAspectRatioA-expected.png:
        * platform/chromium-win/svg/batik/text/textDecoration-expected.png:
        * platform/chromium-win/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-win/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
        * platform/chromium-win/svg/batik/text/textLayout2-expected.png:
        * platform/chromium-win/svg/batik/text/textOnPath-expected.png:
        * platform/chromium-win/svg/batik/text/textOnPath2-expected.png:
        * platform/chromium-win/svg/batik/text/textOnPath3-expected.png:
        * platform/chromium-win/svg/batik/text/textOnPathSpaces-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/batik/text/verticalTextOnPath-expected.png:
        * platform/chromium-win/svg/carto.net/colourpicker-expected.png:
        * platform/chromium-win/svg/carto.net/combobox-expected.png:
        * platform/chromium-win/svg/carto.net/selectionlist-expected.png:
        * platform/chromium-win/svg/carto.net/window-expected.png:
        * platform/chromium-win/svg/css/group-with-shadow-expected.png:
        * platform/chromium-win/svg/css/text-gradient-shadow-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium-win/svg/custom/focus-ring-expected.png:
        * platform/chromium-win/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-win/svg/custom/js-late-gradient-creation-expected.png:
        * platform/chromium-win/svg/custom/js-late-pattern-creation-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-all-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/chromium-win/svg/custom/pattern-with-transformation-expected.png:
        * platform/chromium-win/svg/custom/pointer-events-text-expected.png:
        * platform/chromium-win/svg/custom/struct-use-09-b-expected.png:
        * platform/chromium-win/svg/custom/text-dom-01-f-expected.png:
        * platform/chromium-win/svg/custom/text-linking-expected.png:
        * platform/chromium-win/svg/custom/text-repaint-including-stroke-expected.png:
        * platform/chromium-win/svg/custom/text-rotated-gradient-expected.png:
        * platform/chromium-win/svg/custom/text-rotation-expected.png:
        * platform/chromium-win/svg/custom/use-detach-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-1-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-2-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-3-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-4-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-5-expected.png:
        * platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-6-expected.png:
        * platform/chromium-win/svg/custom/use-on-non-svg-namespaced-element-expected.png:
        * platform/chromium-win/svg/custom/use-on-text-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png:
        * platform/chromium-win/svg/hixie/error/017-expected.png:
        * platform/chromium-win/svg/text/selection-background-color-expected.png:
        * platform/chromium-win/svg/text/selection-styles-expected.png:
        * platform/chromium-win/svg/text/text-deco-01-b-expected.png:
        * platform/chromium-win/svg/text/text-gradient-positioning-expected.png:
        * platform/chromium-win/svg/text/text-path-01-b-expected.png:
        * platform/chromium-win/svg/text/text-path-middle-align-expected.png:
        * platform/chromium-win/svg/text/text-text-07-t-expected.png:
        * platform/chromium-win/svg/text/text-text-08-b-expected.png:
        * platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * platform/chromium-win/svg/wicd/test-scalable-background-image2-expected.png:
        * platform/chromium-win/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/chromium-win/transforms/2d/compound-transforms-vs-containers-expected.png:
        * platform/chromium-win/transforms/2d/transform-origin-borderbox-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-15  Xiaomei Ji  <xji@chromium.org>

        --webkit-visual-word crash on mixed editability
        https://bugs.webkit.org/show_bug.cgi?id=61978

        --webkit-visual-word crashes (VisiblePosition.getInlineBoxAndOffset could return null box)
        https://bugs.webkit.org/show_bug.cgi?id=62814

        Reviewed by Ryosuke Niwa.

        Add a standalone test for testing getInlineBoxAndOffset returning null box.

        * editing/selection/move-by-word-visually-null-box-expected.txt: Added.
        * editing/selection/move-by-word-visually-null-box.html: Added.
        * editing/selection/move-by-word-visually-others-expected.txt:
        * editing/selection/move-by-word-visually-others.html:

2011-07-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed.  Mopping up some more expectations after r91069.

        * platform/chromium/test_expectations.txt:

2011-07-15  Adrienne Walker  <enne@google.com>

        [chromium] Mark more tests failing as a result of r91069
        https://bugs.webkit.org/show_bug.cgi?id=64368

        Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-07-15  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Focusing on another node while editing CSS property does not update styles
        https://bugs.webkit.org/show_bug.cgi?id=64283

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.waitForStyles):
        * inspector/styles/styles-change-node-while-editing-expected.txt: Added.
        * inspector/styles/styles-change-node-while-editing.html: Added.

2011-07-15  Mike Reed  <reed@google.com>

        [skia] remove legacy draw-text-as-paths code, as skia now draws all text as text
        https://bugs.webkit.org/show_bug.cgi?id=64368

        Reviewed by James Robinson.

        * platform/chromium/test_expectations.txt:

2011-07-15  Gabor Loki  <loki@webkit.org>

        Pixel difference in FEMorphology effect
        https://bugs.webkit.org/show_bug.cgi?id=63930

        Reviewed by Zoltan Herczeg.

        Layout test is updated to follow the bugfix.

        * platform/mac/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png:

2011-07-15  Jeff Miller  <jeffm@apple.com>

        Fullscreen content doesn't use fullscreen controller on Windows
        https://bugs.webkit.org/show_bug.cgi?id=64540
        <rdar://problem/9510455>

        Reviewed by Darin Adler.
        
        Add another test to video-controls-override.html to verify that
        we're using the correct fullscreen controller by checking the
        height of the controller panel, which is taller than the non-fullscreen
        version. Unfortunately, the fullscreen tests don't work on Windows
        yet, but I verified this would have caught this issue by simulating
        the bug on the Mac.

        * fullscreen/video-controls-override-expected.txt: Add new test to check the height of the panel.

        * fullscreen/video-controls-override.html: Add new test to check the height of the panel, and
        log errors if window.internals or window.layoutTestController are undefined.

2011-07-15  Mike West  <mkwst@chromium.org>

        Web Inspector: Rename console.markTimeline() to console.timeStamp() for Firebug compatibility.
        https://bugs.webkit.org/show_bug.cgi?id=63317

        Reviewed by Pavel Feldman.

        * inspector/timeline/resources/timeline-iframe-data.html:
        * inspector/timeline/timeline-enum-stability-expected.txt:
        * inspector/timeline/timeline-event-dispatch.html:
        * inspector/timeline/timeline-mark-timeline-expected.txt:
        * inspector/timeline/timeline-mark-timeline.html:
        * inspector/timeline/timeline-script-tag-1-expected.txt:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.dumpTimelineRecord):
        * inspector/timeline/timeline-time-stamp-expected.txt: Added.
        * inspector/timeline/timeline-time-stamp.html: Copied from LayoutTests/inspector/timeline/timeline-mark-timeline.html.
        * platform/chromium/inspector/timeline/timeline-mark-timeline-expected.txt:
        * platform/chromium/inspector/timeline/timeline-time-stamp-expected.txt: Copied from LayoutTests/platform/chromium/inspector/timeline/timeline-mark-timeline-expected.txt.

2011-07-15  Kentaro Hara  <haraken@google.com>

        Clear the content of a search input form when 'Escape' is pressed.
        https://bugs.webkit.org/show_bug.cgi?id=51897

        The added test checks if the value in a search input form is cleared
        and a 'search' event is triggered, when we press 'Escape' key.

        Reviewed by Kent Tamura.

        * fast/forms/input-search-press-escape-key-expected.txt: Added.
        * fast/forms/input-search-press-escape-key.html: Added.

2011-07-14  Hayato Ito  <hayato@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Mark Pilgrim  <pilgrim@chromium.org>

        Remove LegacyDefaultOptionalArguments flag from WebGL
        https://bugs.webkit.org/show_bug.cgi?id=64549

        Reviewed by Kenneth Russell.

        * fast/canvas/webgl/bad-arguments-test-expected.txt:
        * fast/canvas/webgl/bad-arguments-test.html:
        * fast/canvas/webgl/context-lost-expected.txt:
        * fast/canvas/webgl/context-lost.html:
        * fast/canvas/webgl/null-object-behaviour-expected.txt:
        * fast/canvas/webgl/null-object-behaviour.html:

2011-07-14  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Introduce pywebsocket-0.6b2
        https://bugs.webkit.org/show_bug.cgi?id=64534

        Reviewed by Kent Tamura.

        Module "mod_pywebsocket.handshake.hybi06" has been renamed to "mod_pywebsocket.handshake.hybi".

        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null_wsh.py:

2011-07-14  Kenichi Ishibashi  <bashi@chromium.org>

        <input form="x"> should not associate the input with any forms when there is no  form with id="x"
        https://bugs.webkit.org/show_bug.cgi?id=64509

        Adds a test for checking input elements don't associate any form elements when they have the form attribute which points nonexistence form.
        Fixes existing tests that contain unintended form attributes.

        Reviewed by Kent Tamura.

        * fast/forms/form-attribute-nonexistence-form-id-expected.txt: Added.
        * fast/forms/form-attribute-nonexistence-form-id.html: Added.
        * fast/forms/script-tests/form-attribute.js: Fixed unintended form attributes.
        * fast/forms/script-tests/form-collection-elements-order.js: Ditto.

2011-07-14  Kent Tamura  <tkent@chromium.org>

        REGRESSION (r90809): Setting a checkbox's checked property, doesn't render as checked until app window loses focus
        https://bugs.webkit.org/show_bug.cgi?id=64537

        Reviewed by Darin Adler.

        * fast/forms/checkbox-appearance-change-by-checked-expected.html: Added.
        * fast/forms/checkbox-appearance-change-by-checked.html: Added.

2011-07-14  Kent Tamura  <tkent@chromium.org>

        [Chromium] Updat test expectations for r90971.

        * platform/chromium-linux/fast/forms/input-placeholder-text-indent-expected.png:
        * platform/chromium-linux/fast/forms/placeholder-position-expected.png:
        * platform/chromium-linux/fast/forms/placeholder-stripped-expected.png:
        * platform/chromium-linux/fast/forms/search-styled-expected.png:
        * platform/chromium-linux/fast/forms/search-styled-expected.txt:
        * platform/chromium-linux/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/pseudo-cache-stale-expected.png:
        * platform/chromium-mac-leopard/fast/forms/isindex-placeholder-expected.png:
        * platform/chromium-mac-leopard/fast/forms/password-placeholder-text-security-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/placeholder-position-expected.png:
        * platform/chromium-mac-leopard/fast/forms/placeholder-pseudo-style-expected.png:
        * platform/chromium-mac-leopard/fast/forms/search-styled-expected.png:
        * platform/chromium-mac/fast/forms/isindex-placeholder-expected.png: Removed.
        * platform/chromium-mac/fast/forms/placeholder-position-expected.png: Added.
        * platform/chromium-win-xp/fast/forms/search-styled-expected.txt:
        * platform/chromium-win/fast/css/pseudo-cache-stale-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.png:
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.txt:
        * platform/chromium-win/fast/forms/isindex-placeholder-expected.txt:
        * platform/chromium-win/fast/forms/password-placeholder-expected.txt:
        * platform/chromium-win/fast/forms/password-placeholder-text-security-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-position-expected.png:
        * platform/chromium-win/fast/forms/placeholder-position-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-set-attribute-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-stripped-expected.png:
        * platform/chromium-win/fast/forms/placeholder-stripped-expected.txt:
        * platform/chromium-win/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/chromium-win/fast/forms/search-styled-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-set-attribute-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
        * platform/chromium-win/fast/forms/textarea-placeholder-wrapping-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-14  Adam Barth  <abarth@webkit.org>

        The beforeload event allows tracking URI changes in a frame
        https://bugs.webkit.org/show_bug.cgi?id=64482

        Reviewed by Nate Chapin.

        Test whether the beforeload event is fired for various kinds of redirects.

        * http/tests/security/beforeload-iframe-client-redirect-expected.txt: Added.
        * http/tests/security/beforeload-iframe-client-redirect.html: Added.
        * http/tests/security/beforeload-iframe-server-redirect-expected.txt: Added.
        * http/tests/security/beforeload-iframe-server-redirect.html: Added.
        * http/tests/security/resources/post-done.html: Added.
        * http/tests/security/resources/client-redir.html: Added.

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Filip Pizlo  <fpizlo@apple.com>

        DFG JIT crashes on host constructor calls in debug mode.
        https://bugs.webkit.org/show_bug.cgi?id=64562

        Reviewed by Gavin Barraclough.
        
        This bug snuck past our tests, so this patchs adds a test to cover this
        case.

        * fast/js/array-constructor-host-call-expected.txt: Added.
        * fast/js/array-constructor-host-call.html: Added.
        * fast/js/script-tests/array-constructor-host-call.js: Added.
        (constructArray):

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Vincent Scheib  <scheib@chromium.org>

        [chromium] updated test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-14  Tim Horton  <timothy_horton@apple.com>

        Clear SVGElementInstance's children immediately upon detachment
        https://bugs.webkit.org/show_bug.cgi?id=63739
        <rdar://problem/9705708>

        Reviewed by Nikolas Zimmermann.

        In addition to clearing the instance's children in the destructor,
        clear them when the instance is detached from its <use>. This way,
        we won't attempt to use them after we're detached but before the
        destructor has been called.

        * svg/custom/use-crash-using-children-before-destroy-expected.txt: Added.
        * svg/custom/use-crash-using-children-before-destroy.svg: Added.

2011-07-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]Update layout test results for newer Qt 4.8.x
        https://bugs.webkit.org/show_bug.cgi?id=64527

        [Qt]http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception.html fails with Qt 4.8
        https://bugs.webkit.org/show_bug.cgi?id=60176

        * platform/qt-4.8/[...]: Added.
        * platform/qt-4.8/Skipped: Unskip http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception.html.

2011-07-14  Xan Lopez  <xlopez@igalia.com>

        [GTK] Skip one crashing test in GTK+/debug bots.

        * platform/gtk/Skipped:

2011-07-14  Xan Lopez  <xlopez@igalia.com>

        [GTK] Skip one crashing test in GTK+/debug bots.

        * platform/gtk/Skipped:

2011-07-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]svg/animations/svgtransform-animation-1.html asserts intermittently
        https://bugs.webkit.org/show_bug.cgi?id=64526

        * platform/qt/test_expectations.txt: Mark the test as flakey crash.

2011-07-13  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: add test for css live edit.
        https://bugs.webkit.org/show_bug.cgi?id=64454

        Reviewed by Pavel Feldman.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.showResource):
        * http/tests/inspector/live-edit-test.js: Added.
        (initialize_LiveEditTest.InspectorTest.replaceInSource):
        (initialize_LiveEditTest):
        * inspector/debugger/live-edit.html:
        * inspector/styles/css-live-edit-expected.txt: Added.
        * inspector/styles/css-live-edit.html: Added.

2011-07-14  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Add platform-specific test results for hybi tests
        https://bugs.webkit.org/show_bug.cgi?id=64349

        Reviewed by Kent Tamura.

        These results are identical to ones in hixie76/ directory.

        * platform/chromium/http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars-expected.txt: Added.
        * platform/chromium/http/tests/websocket/tests/hybi/url-parsing-expected.txt: Added.
        * platform/qt/http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii-expected.txt: Added.

2011-07-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected results after r90971.

        * platform/qt/fast/css/pseudo-cache-stale-expected.txt:
        * platform/qt/fast/forms/input-placeholder-text-indent-expected.png:
        * platform/qt/fast/forms/input-placeholder-text-indent-expected.txt:
        * platform/qt/fast/forms/isindex-placeholder-expected.png: Added.
        * platform/qt/fast/forms/isindex-placeholder-expected.txt:
        * platform/qt/fast/forms/password-placeholder-expected.png: Added.
        * platform/qt/fast/forms/password-placeholder-expected.txt:
        * platform/qt/fast/forms/password-placeholder-text-security-expected.png: Added.
        * platform/qt/fast/forms/password-placeholder-text-security-expected.txt:
        * platform/qt/fast/forms/placeholder-set-attribute-expected.png: Added.
        * platform/qt/fast/forms/placeholder-set-attribute-expected.txt:
        * platform/qt/fast/forms/placeholder-stripped-expected.png:
        * platform/qt/fast/forms/placeholder-stripped-expected.txt:
        * platform/qt/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/qt/fast/forms/search-styled-expected.txt:
        * platform/qt/fast/forms/textarea-placeholder-pseudo-style-expected.png: Added.
        * platform/qt/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
        * platform/qt/fast/forms/textarea-placeholder-set-attribute-expected.png: Added.
        * platform/qt/fast/forms/textarea-placeholder-set-attribute-expected.txt:
        * platform/qt/test_expectations.txt:

2011-07-14  MORITA Hajime  <morrita@google.com>

        Unreviewed, rolling out r90976, r90981, and r90985.
        http://trac.webkit.org/changeset/90976
        http://trac.webkit.org/changeset/90981
        http://trac.webkit.org/changeset/90985
        https://bugs.webkit.org/show_bug.cgi?id=64251

        build break

        * fast/dom/shadow/content-element-includer-expected.txt: Removed.
        * fast/dom/shadow/content-element-includer.html: Removed.
        * platform/chromium-win/fast/html/details-nested-2-expected.txt:
        * platform/gtk/fast/html/details-nested-2-expected.txt:
        * platform/mac/fast/html/details-nested-2-expected.txt:
        * platform/qt/fast/html/details-nested-2-expected.txt:

2011-07-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt/test_expectations.txt: Remove a passing test.

2011-07-14  Kent Tamura  <tkent@chromium.org>

        [Chromium] Make an entry for input-appearance-range.html specific.

        * platform/chromium/test_expectations.txt:

2011-07-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected result for a new test.

        * platform/qt/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
        * platform/qt/fast/forms/textarea-placeholder-wrapping-expected.txt: Added.

2011-07-13  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: if you rename an element into the INPUT element the browser will crash.
        https://bugs.webkit.org/show_bug.cgi?id=64292

        Reviewed by Joseph Pecoraro.

        * inspector/elements/edit-dom-actions-expected.txt:
        * inspector/elements/edit-dom-actions.html:

2011-07-13  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Implement hybi handshake
        https://bugs.webkit.org/show_bug.cgi?id=64344

        Reviewed by Kent Tamura.

        Fix existing tests so they match the new handshake format, and add tests for new header fields.

        There are several changes in the format of handshake response, such as:
        - Reason string in HTTP status line has been changed to "Switching Protocols".
        - The value of "Upgrade" header has been changed to "websocket" (lower-case only).
        - Sec-WebSocket-Location and Sec-WebSocket-Origin are gone.
        - "Challenge response" value (16-byte data after the response header fields) is removed, and
          Sec-WebSocket-Accept header is added instead.

        The value of Sec-WebSocket-Accept header is computed using compute_accept() function
        located in mod_pywebsocket.handshake.hybi06 module. Although the module name contains
        "hybi06", this function can be used to calculate the value of Sec-WebSocket-Accept header
        for hybi-10 (calculation method has not been changed since hybi-06).

        Note: Tests under hybi/ directory (including the new ones) are skipped and cannot be enabled
        yet, because pywebsocket does not accept requests from half-baked client implementation
        (i.e. hybi handshake + hixie-76 framing). They will be unskipped when hybi framing is landed
        in WebCore.

        * http/tests/websocket/tests/handler_map.txt:
        There must be only one handler that can handle requests to "/". hybi/echo-location_wsh.py
        is modified to accept requests of both protocol versions.
        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/hybi/echo-challenge_wsh.py:
        * http/tests/websocket/tests/hybi/echo-location_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null_wsh.py:
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/hybi/workers/resources/echo-challenge_wsh.py:

2011-07-13  MORITA Hajime  <morrita@google.com>

        [ShadowContentElement] forwarded node should be able to access its hosting content element.
        https://bugs.webkit.org/show_bug.cgi?id=64251

        Reviewed by Dimitri Glazkov.

        - Added a new test.
        - Updated expectations. This change make ShadowContentElement availability on NodeRenderingContext
          more strict. that makes some redundant node disappeared.
        
        * fast/dom/shadow/content-element-includer-expected.txt: Added.
        * fast/dom/shadow/content-element-includer.html: Added.
        * platform/chromium-win/fast/html/details-nested-2-expected.txt:
        * platform/gtk/fast/html/details-nested-2-expected.txt:
        * platform/mac/fast/html/details-nested-2-expected.txt:
        * platform/qt/fast/html/details-nested-2-expected.txt:

2011-07-13  Vincent Scheib  <scheib@chromium.org>

        [chromium] Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-13  Kent Tamura  <tkent@chromium.org>

        [Qt] Remove duplicated entries.

        * platform/qt/test_expectations.txt:

2011-07-12  Dominic Cooney  <dominicc@chromium.org>

        Raise if dispatchEvent dispatches an event that is being dispatched
        https://bugs.webkit.org/show_bug.cgi?id=64150

        Reviewed by Dimitri Glazkov.

        * fast/dom/Window/window-properties-expected.txt: Added DISPATCH_REQUEST_ERR.
        * fast/events/dispatch-event-being-dispatched-expected.txt: Added.
        * fast/events/dispatch-event-being-dispatched.html: Added.
        * fast/workers/resources/worker-event-listener.js:
        (onmessage): Redispatching the MessageEvent throws an exception now.
        * platform/gtk/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-07-13  Kent Tamura  <tkent@chromium.org>

        Implement text field placeholders using shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=64253

        Reviewed by Dimitri Glazkov.

        Add some test cases, and update expectations because placeholders
        have their renderers.

        * fast/forms/input-placeholder-text-indent.html:
          Remove an obsolete comment. A placeholder respects a percentage indent.
        * fast/forms/placeholder-position.html:
          Add tests for line-height and text-align.
        * fast/forms/textarea-placeholder-wrapping.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:
        * platform/mac/fast/css/pseudo-cache-stale-expected.txt:
        * platform/mac/fast/forms/input-placeholder-text-indent-expected.png:
        * platform/mac/fast/forms/input-placeholder-text-indent-expected.txt:
        * platform/mac/fast/forms/isindex-placeholder-expected.png:
        * platform/mac/fast/forms/isindex-placeholder-expected.txt:
        * platform/mac/fast/forms/password-placeholder-expected.txt:
        * platform/mac/fast/forms/password-placeholder-text-security-expected.png:
        * platform/mac/fast/forms/password-placeholder-text-security-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.png:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.png:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/placeholder-set-attribute-expected.txt:
        * platform/mac/fast/forms/placeholder-stripped-expected.txt:
        * platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.png:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-set-attribute-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-wrapping-expected.png: Added.
        * platform/mac/fast/forms/textarea-placeholder-wrapping-expected.txt: Added.
        * platform/qt/test_expectations.txt:

2011-07-13  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions] Parse -webkit-content-order property
        https://bugs.webkit.org/show_bug.cgi?id=63897

        Reviewed by David Hyatt.

        * fast/regions/script-tests/webkit-content-order-parsing.js: Added.
        * fast/regions/webkit-content-order-parsing-expected.txt: Added.
        * fast/regions/webkit-content-order-parsing.html: Added.

2011-07-13  Michael Saboff  <msaboff@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64202
        Enh: Improve handling of RegExp in the form of /.*blah.*/

        Reviewed by Gavin Barraclough.

        New tests to support /.*<expression>.*/ enhancement.

        * fast/regex/dotstar-expected.txt: Added.
        * fast/regex/dotstar.html: Added.
        * fast/regex/script-tests/dotstar.js: Added.

2011-07-13  Vincent Scheib  <scheib@chromium.org>

        [chromium] Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-13  Vincent Scheib  <scheib@chromium.org>

        Unreviewed, rolling out r90957.
        http://trac.webkit.org/changeset/90957

        Fixing incorrect test expectations

        * platform/chromium/test_expectations.txt:

2011-07-13  Vincent Scheib  <scheib@chromium.org>

        [chromium] Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-13  Joseph Pecoraro  <joepeck@webkit.org>

        ApplicationCache Quota Output is Flakey
        https://bugs.webkit.org/show_bug.cgi?id=64410

        Reviewed by Alexey Proskuryakov.

        Have the tests truncate the number of bytes needed in
        the delegate callback to get an approximation of how
        much space was needed.

        * http/tests/appcache/origin-quota-continued-download-expected.txt:
        * http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt:
        * http/tests/appcache/origin-quota-continued-download-multiple-manifests.html:
        * http/tests/appcache/origin-quota-expected.txt:
        Update the output and clarify what the multiple-manifests test
        is looking for in the space needed output.

        * platform/mac/Skipped:
        * platform/qt/Skipped:
        Unskip the tests.

2011-07-13  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium gpu expectations.

        * platform/chromium/test_expectations.txt:

2011-07-13  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Prettify spacing in test_expectations.txt

        * platform/chromium/test_expectations.txt: Ran through the new parser/serializer code.

2011-07-12  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=64424
        Our direct eval behaviour deviates slightly from the spec.

        Reviewed by Oliver Hunt.

        Correct expected results.

        * fast/js/eval-keyword-vs-function-expected.txt:
        * fast/js/eval-keyword-vs-function.html:

2011-07-13  Abhishek Arya  <inferno@chromium.org>

        Tests that we do not crash when frame is blown away in a beforeload
        event.
        https://bugs.webkit.org/show_bug.cgi?id=64457

        Reviewed by Adam Barth.

        * fast/events/form-iframe-target-before-load-crash.html:
        * fast/events/form-iframe-target-before-load-crash2-expected.txt: Added.
        * fast/events/form-iframe-target-before-load-crash2.html: Added.

2011-07-13  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]content:-webkit-from-flow not applied correctly
        https://bugs.webkit.org/show_bug.cgi?id=64438

        Reviewed by Tony Chang.

        Correct the layout test for content:-webkit-from-flow parsing. Testing getComputedStyle values for content property
        was not done properly, as "flow-name" was passed instead of "-webkit-from-flow:'flow-name'".

        * fast/regions/content-webkit-from-flow-parsing-expected.txt:
        * fast/regions/script-tests/content-webkit-from-flow-parsing.js:

2011-07-12  Philippe Normand  <pnormand@igalia.com>

        [GTK] media/media-blocked-by-willsendrequest.html fails
        https://bugs.webkit.org/show_bug.cgi?id=63699

        Reviewed by Martin Robinson.

        * platform/gtk/Skipped: Unskip fixed test.

2011-07-13  Gabor Loki  <loki@webkit.org>

        [Qt] Flakey test: xmlhttprequest-50ms-download-dispatch.html on ARM
        https://bugs.webkit.org/show_bug.cgi?id=64452

        Rubber-stamped by Csaba Osztrogonác

        * platform/qt-arm/Skipped:

2011-07-13  John Knottenbelt  <jknotten@chromium.org>

        Reference Geolocation object from GeoNotifier and Geolocation::setIsAllowed.
        https://bugs.webkit.org/show_bug.cgi?id=64363

        Reviewed by Tony Gentilcore.

        * fast/dom/Geolocation/remove-remote-context-in-error-callback-crash.html: Added.
        * fast/dom/Geolocation/resources/remove-remote-context-in-error-callback-crash-inner.html: Added.
        * fast/dom/Geolocation/script-tests/remove-remote-context-in-error-callback-crash.js: Added.
        * fast/dom/Geolocation/remove-remote-context-in-error-callback-crash-expected.txt: Added.
        (gc):
        (onIframeReady):

2011-07-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-mac/Skipped: Skip failing tests.
        * platform/qt/Skipped: Skip svg/text/small-fonts-2.svg because of the 32/64 bit bug.

2011-07-13  Benjamin Poulain  <benjamin@webkit.org>

        [Qt] REGRESSION(r90634): It made http/tests/misc/script-async.html fail with Qt 4.8.x
        https://bugs.webkit.org/show_bug.cgi?id=64352

        Reviewed by Andreas Kling.

        Unskip http/tests/misc/script-async.html since the original change has been reverted.

        * platform/qt-4.8/Skipped:

2011-07-13  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        [Qt] Add expected results for the new passing tests and unskip them.

        Reviewed by Csaba Osztrogonác.

        * platform/qt/Skipped:
        * platform/qt/fast/[...]: Added.
        * platform/qt/svg/[...]: Added.

2011-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r90893 and r90894.
        http://trac.webkit.org/changeset/90893
        http://trac.webkit.org/changeset/90894
        https://bugs.webkit.org/show_bug.cgi?id=64441

        NRWT still doesn't work on qt-mac platform (Requested by Ossy
        on #webkit).

        * platform/qt-mac/Skipped:

2011-07-13  James Robinson  <jamesr@chromium.org>

        [chromium] Add chromium mac gpu baseline for webgl-background-color.html

        * platform/chromium-gpu-mac/compositing/webgl/webgl-background-color-expected.png: Added.

2011-07-13  James Robinson  <jamesr@chromium.org>

        [chromium] Add two chromium gpu linux baselines.

        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/tiny-layer-rotated-expected.png: Added.

2011-07-13  James Robinson  <jamesr@chromium.org>

        [chromium] Assorted chromium gpu rebaselines and expectation cleanups.

        * platform/chromium-gpu-linux/compositing/geometry/ancestor-overflow-change-expected.png: Added.
        * platform/chromium-gpu-linux/compositing/webgl/webgl-background-color-expected.png: Added.
        * platform/chromium-gpu-linux/fast/canvas/arc360-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-baseline-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-transforms-during-path-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/drawImage-with-globalAlpha-expected.png: Removed.
        * platform/chromium-gpu-linux/fast/canvas/fillrect-gradient-zero-stops-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/fillrect_gradient-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-pattern-rotate-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/patternfill-repeat-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/quadraticCurveTo-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/ancestor-overflow-change-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/geometry/composited-html-size-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt: Added.
        * platform/chromium-gpu-win/compositing/geometry/ancestor-overflow-change-expected.png: Added.
        * platform/chromium-gpu-win/compositing/geometry/ancestor-overflow-change-expected.txt: Added.
        * platform/chromium-gpu-win/compositing/webgl/webgl-background-color-expected.png: Added.
        * platform/chromium-gpu-win/compositing/webgl/webgl-background-color-expected.txt: Added.
        * platform/chromium-gpu-win/fast/canvas/arc360-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-baseline-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-transforms-during-path-expected.png:
        * platform/chromium-gpu-win/fast/canvas/drawImage-with-globalAlpha-expected.png: Removed.
        * platform/chromium-gpu-win/fast/canvas/fillrect-gradient-zero-stops-expected.png:
        * platform/chromium-gpu-win/fast/canvas/fillrect_gradient-expected.png:
        * platform/chromium-gpu-win/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-win/fast/canvas/image-pattern-rotate-expected.png:
        * platform/chromium-gpu-win/fast/canvas/patternfill-repeat-expected.png:
        * platform/chromium-gpu-win/fast/canvas/quadraticCurveTo-expected.png:
        * platform/chromium-linux/fast/canvas/canvas-composite-expected.png:
        * platform/chromium-mac/fast/canvas/canvas-composite-expected.png: Added.
        * platform/chromium-win/fast/canvas/canvas-composite-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Remove 2 tests, because they are in test_expectations.txt too.

2011-07-13  James Robinson  <jamesr@chromium.org>

        [chromium] More edge AA and misc chromium gpu baselines and expectations updates.

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-linux/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-linux/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-linux/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-linux/media/video-transformed-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/backface-visibility-transformed-expected.png: Added.
        * platform/chromium-gpu-linux/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-mac/compositing/framesets/composited-frame-alignment-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-mac/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-mac/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/backface-visibility-transformed-expected.png: Added.
        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/tiny-layer-rotated-expected.png: Added.
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/framesets/composited-frame-alignment-expected.png: Added.
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/layer-due-to-layer-children-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transition-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/transform-inside-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/compositing/transitions/scale-transition-no-start-expected.png:
        * platform/chromium-gpu-win/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-win/media/video-transformed-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/backface-visibility-transformed-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/tiny-layer-rotated-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-07-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        * platform/qt-4.8/Skipped: Skip http/tests/misc/script-async.html until fix.
        * platform/qt-mac/Skipped: Skip new failing tests.
        * platform/qt/test_expectations.txt: Mark slow tests.

2011-07-12  James Robinson  <jamesr@chromium.org>

        [chromium] Update expectations+baselines for edge AA changes.

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/perpendicular-layer-sorting-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
        * platform/chromium-gpu-win/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/child-layer-3d-sorting-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/child-layer-3d-sorting-expected.txt: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/perpendicular-layer-sorting-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/perpendicular-layer-sorting-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-12  David Reveman  <reveman@chromium.org>

        [Chromium] Use nearest filter method with pixel aligned transforms.
        https://bugs.webkit.org/show_bug.cgi?id=64338

        Reviewed by James Robinson.

        Update expected results.

        * platform/chromium/test_expectations.txt:

2011-07-12  Filip Pizlo  <fpizlo@apple.com>

        DFG JIT does not implement op_construct.
        https://bugs.webkit.org/show_bug.cgi?id=64066

        Reviewed by Gavin Barraclough.

        Added a test for the DFG op_construct regression, where polymorphic constructor
        calls will result in the code being compiled for call but then invoked as a
        constructor.  This test will fail if that part of the patch is omitted.

        * fast/js/polymorphic-construct-expected.txt: Added.
        * fast/js/polymorphic-construct.html: Added.
        * fast/js/script-tests/polymorphic-construct.js: Added.
        (Foo):
        ():

2011-07-12  Chris Rogers  <crogers@google.com>

        Enable Web Audio for chromium DRT
        https://bugs.webkit.org/show_bug.cgi?id=64409

        Reviewed by James Robinson.

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-07-12  Oliver Hunt  <oliver@apple.com>

        Overzealous type validation in method_check
        https://bugs.webkit.org/show_bug.cgi?id=64415

        Reviewed by Gavin Barraclough.

        Make sure we don't trip any assertions when caching access
        to an InternalFunction

        * fast/js/script-tests/method-check.js:

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed. Skipping a few tests which fail due to differing output
        in recent ApplicationCache quota tests. Reenabling the tests is
        tracked by <http://webkit.org/b/64410>.

        * platform/mac/Skipped:

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed. Skipping a few tests which fail due to differing output
        in recent ApplicationCache quota tests. Reenabling the tests is
        tracked by <http://webkit.org/b/64410>.

        * platform/qt/Skipped:

2011-07-12  Kenichi Ishibashi  <bashi@chromium.org>

        [Chromium] SVG text is not rendered sometimes with geometricPrecision
        https://bugs.webkit.org/show_bug.cgi?id=64341

        Add a test for the regression that the text is not rendered with geometricPrecision.

        Reviewed by Tony Chang.

        * platform/chromium-linux/svg/text/text-with-geometric-precision-expected.png: Added.
        * platform/chromium-linux/svg/text/text-with-geometric-precision-expected.txt: Added.
        * platform/chromium-linux/svg/text/text-with-geometric-precision.svg: Added.

2011-07-12  Alexandru Chiculita  <achicu@adobe.com>

        Reviewed by David Hyatt.

        [CSS Exclusions] Parse wrap-shape property
        https://bugs.webkit.org/show_bug.cgi?id=61726

        * fast/exclusions/parsing-wrap-shape-expected.txt: Added.
        * fast/exclusions/parsing-wrap-shape.html: Added.
        * fast/exclusions/script-tests/parsing-wrap-shape.js: Added.
        (testCSSText):
        (testComputedStyle):
        (testNotInherited):
        (test):
        (negative_test):

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        ApplicationCache update should not immediately fail when reaching per-origin quota
        https://bugs.webkit.org/show_bug.cgi?id=64177

        Reviewed by Alexey Proskuryakov.

        Include spaceNeeded information in the output dumped for appcache quota delegates.
        Add and update tests related to handling of per-origin quotas.

        * http/tests/appcache/origin-quota-continued-download-expected.txt: Added.
        * http/tests/appcache/origin-quota-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.manifest: Added.
        New test which checks that there will still be a successful cache
        when the per-origin quota is reached and increased at the end of downloading.

        * http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt: Added.
        * http/tests/appcache/origin-quota-continued-download-multiple-manifests.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-1.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-1.manifest: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-2.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-2.manifest: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.manifest: Added.
        New test which checks that the spaceNeeded appropriately lists enough space for
        multiple manifests across multiple frames for the same origin.

        * http/tests/appcache/resources/quota-origin-iframe-3.manifest: Fix a typo.
        * http/tests/appcache/origin-quota.html:
        Update the old test to disallow automatic increase of the quota,
        which is the default handling of DRT when reaching the quota.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * platform/wk2/Skipped:
        Skip the test on ports that don't implement ApplicationCache per-origin quotas.

2011-07-12  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: introduce UserMetrics for collecting stats in Chromium port.
        https://bugs.webkit.org/show_bug.cgi?id=64350

        Reviewed by Yury Semikhatsky.

        * inspector/user-metrics-expected.txt: Added.
        * inspector/user-metrics.html: Added.

2011-07-12  Jeff Timanus  <twiz@chromium.org>

        Reviewed by Stephen White.

        Suppress flaky Chromium layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=64308

        * platform/chromium/test_expectations.txt:

2011-07-12  Noel Gordon  <noel.gordon@gmail.com>

        Remove results for iframe-outline.html
        https://bugs.webkit.org/show_bug.cgi?id=64343

        fast/frames/iframe-outline.html was reverted in bug 57439 (another test
        added to replace it). Remove the redundant iframe-outline test results.

        Reviewed by Tony Chang.

        * platform/chromium-win/fast/frames/iframe-outline-expected.png: Removed.
        * platform/chromium/iframe-outline-expected.png: Removed.
        * platform/gtk/fast/frames/iframe-outline-expected.png: Removed.
        * platform/gtk/fast/frames/iframe-outline-expected.txt: Removed.

2011-07-12  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implemenation of allowRoundingHacks
        https://bugs.webkit.org/show_bug.cgi?id=63477

        Add platform/mac/fast/text/rounding-hacks-expansion.html to the wk2 Skipped list to get the
        bots green.

        * platform/wk2/Skipped:

2011-07-12  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: make TextViewerDelegate methods implementations public in SourceFrame.
        https://bugs.webkit.org/show_bug.cgi?id=64353

        Reviewed by Pavel Feldman.

        * inspector/debugger/live-edit.html:

2011-07-12  Adam Roben  <aroben@apple.com>

        Update Windows expected results for plugins/mouse-events-fixedpos.html after r90742

        * platform/win/plugins/mouse-events-fixedpos-expected.txt:

2011-07-12  Eric Seidel  <eric@webkit.org>

        [Qt] NRWT should pick up the right httpd config file
        https://bugs.webkit.org/show_bug.cgi?id=64086

        Reviewed by Adam Barth.

        Removed this old httpd.conf file (used by Tiger and old linux distros)
        since no supported WebKit ports use it anymore.

        * http/conf/httpd.conf: Removed.

2011-07-11  Hironori Bono  <hbono@chromium.org>

        Reviewed by Adam Roben.

        Implement layoutTestController.setTextDirection for WebKit2 and Windows.
        https://bugs.webkit.org/show_bug.cgi?id=61931

        This change implements layoutTextController.setTextDirection for WebKit2
        and Windows so we can run a layout test added by r87770 on them. Each
        implementation adds a wrapper function for Editor::setBaseWritingDirection()
        so LayoutTestController can call it.

        * platform/mac-wk2/Skipped: Removed set-text-direction.html.
        * platform/win/Skipped: ditto.

2011-07-11  Ryosuke Niwa  <rniwa@webkit.org>

        Skip hittest-on-relative-positioned-children.html in WebKit2.

        * platform/wk2/Skipped:

2011-07-11  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Remove WebSocket tests that do not apply to hybi protocol
        https://bugs.webkit.org/show_bug.cgi?id=64288

        Reviewed by Kent Tamura.

        Remove tests from http/tests/websocket/tests/hybi that are not meaningful in terms of
        the hybi protocol. The most recent WebSocket protocol draft is available at
        <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10>, and referred as
        "hybi-10" here.

        * http/tests/websocket/tests/hybi/error-detect-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/error-detect.html: Removed.
        Hybi protocol has a completely different scheme of representing frame types.
        Additionally, hybi-10 no longer fires "error" events (which invoke "onerror" handler).
        * http/tests/websocket/tests/hybi/fixed-origin_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer.html: Removed.
        Variable-length encoding (which is used to represent frame length in hixie-76) is no longer
        used in hybi-10.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/frame-length-overflow-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/frame-length-overflow.html: Removed. Ditto.
        * http/tests/websocket/tests/hybi/frame-length-overflow_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/frame-length-skip-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/frame-length-skip.html: Removed.
        There are two ways to indicate the length of a frame in hixie-76 protocol, but
        hybi-10 has only one method (length-prefixed frames). Skipping unwanted frames will
        be covered by other tests that will be added in a later patch.
        * http/tests/websocket/tests/hybi/frame-length-skip_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin.html: Removed.
        In hybi-10, servers no longer returns Origin header in handshake response, and clients
        are not required to validate this value.
        * http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch.html: Removed.
        In hybi-10, clients are not required to (and must not) compare the values of subprotocols
        in client's request and server's response.
        * http/tests/websocket/tests/hybi/unknown-frame-type_wsh.py: Removed.
        * http/tests/websocket/tests/hybi/url-with-query-for-no-query-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/url-with-query-for-no-query.html: Removed.
        In hybi-10, servers do not provide "Sec-WebSocket-Location" header, and clients are not required
        to validate this value.
        * http/tests/websocket/tests/hybi/websocket-protocol-ignored-expected.txt: Removed.
        * http/tests/websocket/tests/hybi/websocket-protocol-ignored.html: Removed.
        Same as handshake-fail-by-sub-protocol-mismatch.html.

2011-07-11  Ryosuke Niwa  <rniwa@webkit.org>

        positionForPoint is broken when a block is positioned relatively inside the parent
        https://bugs.webkit.org/show_bug.cgi?id=64298

        Reviewed by Simon Fraser.

        Added a test for hit testing on relatively positioned children.

        * fast/block/positioning/hittest-on-relative-positioned-children-expected.txt: Added.
        * fast/block/positioning/hittest-on-relative-positioned-children.html: Added.

2011-07-11  Dan Bernstein  <mitz@apple.com>

        Excessive expansion of justified text when rounding hacks are enabled
        https://bugs.webkit.org/show_bug.cgi?id=64331

        Reviewed by Anders Carlsson.

        * platform/mac/fast/text/rounding-hacks-expansion.html: Added.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.png: Added.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.txt: Added.

2011-07-11  Ojan Vafai  <ojan@chromium.org>

        Win7 rebaselines after http://trac.webkit.org/changeset/90701.
        Should have been part of http://trac.webkit.org/changeset/90716/,
        but the Win7 bot was down at that time.

        * platform/chromium-win/http/tests/loading/simple-subframe-expected.png:
        * platform/chromium-win/http/tests/local/file-url-sent-as-referer-expected.png:
        * platform/chromium-win/http/tests/misc/acid2-pixel-expected.png:
        * platform/chromium-win/http/tests/misc/iframe404-expected.png:
        * platform/chromium-win/http/tests/misc/location-replace-crossdomain-expected.png:
        * platform/chromium-win/http/tests/multipart/invalid-image-data-standalone-expected.png:
        * platform/chromium-win/http/tests/navigation/javascriptlink-frames-expected.png:
        * platform/chromium/test_expectations.txt:
        Removing useless duplicated comment line.

2011-07-11  Ojan Vafai  <ojan@chromium.org>

        Update expectation that was missed because the WIN7 bot was down for a long time.
        * platform/chromium/test_expectations.txt:

2011-07-11  Dirk Pranke  <dpranke@chromium.org>

        update the boilerplate documentation in the test_expectations.txt files
        https://bugs.webkit.org/show_bug.cgi?id=64221

        Reviewed by Eric Seidel.

        The test expectations files either had documentation for the
        Chromium port's version of the file (which was also incorrect),
        or were undocumented. This adds a comment with a link to the
        documentation for the file to each.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/test_expectations.txt:
        * platform/mac/test_expectations.txt:
        * platform/qt/test_expectations.txt:
        * platform/win/test_expectations.txt:

2011-07-11  Dirk Pranke  <dpranke@chromium.org>

        Skip plugins/evaluate-js-after-removing-plugin-element.html on Chromium Vista.

        https://bugs.webkit.org/show_bug.cgi?id=64319

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-07-11  Yi Shen  <yi.4.shen@nokia.com>

        [Qt] Unreviewed rollout 90779 which may fail the layout-test.

        * loader/load-defer-resume-crash-expected.txt: Removed.
        * loader/load-defer-resume-crash.html: Removed.
        * loader/resources/images.html: Removed.
        * platform/chromium/test_expectations.txt:

2011-07-11  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implementation of layoutTestController.setDefersLoading.
        https://bugs.webkit.org/show_bug.cgi?id=64313

        Add loader/load-defer-resume-crash.html to the WK2 Skipped list in order to get the bots
        green.

        * platform/wk2/Skipped:

2011-07-11  Yi Shen  <yi.4.shen@nokia.com>

        [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
        https://bugs.webkit.org/show_bug.cgi?id=62808

        Added a test for the crash occurs when load deferring is turned off.

        Reviewed by Benjamin Poulain.

        * loader/load-defer-resume-crash-expected.txt: Added.
        * loader/load-defer-resume-crash.html: Added.
        * loader/resources/images.html: Added.
        * platform/chromium/test_expectations.txt: Skip this test since the LayoutTestController::setDefersLoading is not implemented for chromium.

2011-07-11  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        Mark 2d.gradient.object.update as passing after r90767.

        * platform/chromium/test_expectations.txt:

2011-07-11  Young Han Lee  <joybro@company100.net>

        Reviewed by Simon Fraser.

        Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
        https://bugs.webkit.org/show_bug.cgi?id=63859

        The existing code to set the m_startTime haven't worked because 
        the animation is not the right state to accept the start event. 
        This patch just sets the values directly instead of using event.

        * transitions/delay-expected.txt: Added.
        * transitions/delay.html: Added.

2011-07-11  Anders Carlsson  <andersca@apple.com>

        Implement getFormValue for WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=64294
        <rdar://problem/3964087>

        Remove now passing test.

        * platform/wk2/Skipped:

2011-07-11  Ojan Vafai  <ojan@chromium.org>

        Fix syntax error from r90757.

        * platform/chromium/test_expectations.txt:

2011-07-11  Jessie Berlin  <jberlin@apple.com>

        http/tests/cache/history-only-cached-subresource-loads-max-age-https.html timing out on
        Windows and WebKit2 since it was added.
        https://bugs.webkit.org/show_bug.cgi?id=63806

        Add the test to the WK2 Skipped list to get the bots green.

        * platform/wk2/Skipped:

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped: Remove non-existent editing/pasteboard/do-not-copy-body-color.html.

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-11  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implementation of eventSender.beginDragWithFiles.
        https://bugs.webkit.org/show_bug.cgi?id=64285

        Add fast/forms/file-input-change-event.html to the mac-wk2 Skipped list to get the bots
        green.

        * platform/wk2/Skipped:

2011-07-11  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [refactoring] Remove dependencies of components requiring network resource list from network panel
        https://bugs.webkit.org/show_bug.cgi?id=62477

        * http/tests/inspector/resource-har-conversion.html:

2011-07-11  Adam Roben  <aroben@apple.com>

        Add back the win-xp and win-wk2 results that were deleted in r90699

        Deleting these results caused the tests to start failing on the bots. The only test result I
        didn't add back was
        win-wk2/http/tests/uri/username-with-no-hostname-expected.txt, as that test is not currently
        failing on the bots.

        Fixes <http://webkit.org/b/64277> REGRESSION (r90699): 12 svg tests failing on Windows XP
        Debug (Tests) and 13 tests failing on Windows 7 Release (WebKit2 Tests)

        * platform/win-wk2/editing/selection/caret-ltr-right-expected.txt: Added.
        * platform/win-wk2/editing/selection/drag-text-delay-expected.txt: Added.
        * platform/win-wk2/fast/css/pseudo-any-expected.txt: Added.
        * platform/win-wk2/fast/forms/textfield-overflow-expected.txt: Added.
        * platform/win-wk2/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/before-table-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/plugins/npruntime/embed-property-equality-expected.txt: Added.
        * platform/win-wk2/plugins/resize-from-plugin-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/win-xp/svg/text/bidi-tspans-expected.txt: Added.

2011-07-11  Noel Gordon  <noel.gordon@gmail.com>

        Reviewed by Adam Roben.

        New plugin/keyboard-events,mouse-events test expectations for the windows port.
        https://bugs.webkit.org/show_bug.cgi?id=62375

        * platform/win/plugins/keyboard-events-expected.txt: Added.
        * platform/win/plugins/mouse-events-expected.txt: Updated.

2011-07-11  Yael Aharon  <yael.aharon@nokia.com>

        [Qt]REGRESSION(r90471): It made 4 fast/notifications tests fail on Qt
        https://bugs.webkit.org/show_bug.cgi?id=63255

        Reviewed by Csaba Osztrogonác.
        
        Modify the tests to wait until the icon loading is finished.

        * fast/notifications/notifications-double-show.html:
        * fast/notifications/notifications-with-permission.html:
        * platform/qt/Skipped:

2011-07-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening.

        inspector/cookie-parser.html is a flaky crash
        https://bugs.webkit.org/show_bug.cgi?id=62662

        * platform/qt/test_expectations.txt: Set inspector/cookie-parser.html as flakey test.

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Remove duplicates from Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations after r90698.

        * platform/chromium/test_expectations.txt:

2011-07-11  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed gardening.

        * platform/qt-mac/Skipped:
         - Remove non-existent editing tests.
         - Remove fast/selectors/unqualified-hover-strict.html, because it is in test_expectations.txt too.
         - Remove http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm, because it is in test_expectations.txt too.

2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-07-11  Andras Becsi  <abecsi@webkit.org>

        [Qt] http/tests/plugins/get-url.html is crashing on the bot
        https://bugs.webkit.org/show_bug.cgi?id=64168

        Rubber-stamped by Csaba Osztrogonác.

        * platform/qt/test_expectations.txt: Do not expect the test to crash any more.

2011-07-11  Kenichi Ishibashi  <bashi@chromium.org>

        Add TestNetscapePlugIn/Tests/FormValue.cpp to DRT build files
        https://bugs.webkit.org/show_bug.cgi?id=64248

        Updates test_expectations.

        Reviewed by Kent Tamura.

        * platform/chromium/test_expectations.txt: Removed SKIP from plugins/form-value.html.

2011-07-11  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 12/12).

        * platform/chromium-gpu-linux/compositing/geometry/outline-change-expected.png:
        * platform/chromium-gpu-linux/compositing/iframes/iframe-copy-on-scroll-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
        * platform/chromium-gpu-win/compositing/geometry/outline-change-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/iframe-copy-on-scroll-expected.png:
        * platform/chromium-gpu-win/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
        * platform/chromium-linux/editing/pasteboard/3976872-expected.png:
        * platform/chromium-linux/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/canvas/setWidthResetAfterForcedRender-expected.png:
        * platform/chromium-linux/fast/css/acid2-pixel-expected.png:
        * platform/chromium-linux/fast/dom/34176-expected.png:
        * platform/chromium-linux/fast/dom/HTMLElement/bdo-expected.png:
        * platform/chromium-linux/fast/encoding/invalid-UTF-8-expected.png:
        * platform/chromium-linux/fast/frames/viewsource-attribute-expected.png:
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png:
        * platform/chromium-linux/fast/repaint/4774354-expected.png:
        * platform/chromium-linux/fast/repaint/iframe-scroll-repaint-expected.png: Removed.
        * platform/chromium-linux/fast/replaced/outline-replaced-elements-expected.png:
        * platform/chromium-linux/fast/text/atsui-kerning-and-ligatures-expected.png: Added.
        * platform/chromium-linux/fast/text/atsui-multiple-renderers-expected.png:
        * platform/chromium-linux/fast/text/atsui-negative-spacing-features-expected.png:
        * platform/chromium-linux/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-linux/fast/text/international/003-expected.png:
        * platform/chromium-linux/fast/text/international/hebrew-vowels-expected.png:
        * platform/chromium-linux/http/tests/misc/iframe404-expected.png:
        * platform/chromium-linux/http/tests/navigation/javascriptlink-frames-expected.png:
        * platform/chromium-linux/http/tests/navigation/javascriptlink-frames-expected.txt: Added.
        * platform/chromium-linux/plugins/embed-attributes-style-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-fallback-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/45621-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1220-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug20804-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug51140-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug14007-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt: Added.
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_void-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/other/empty_cells-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/other/test4-expected.png:
        * platform/chromium-linux/transforms/2d/transform-borderbox-expected.png:
        * platform/chromium-linux/transforms/2d/transform-fixed-container-expected.png:
        * platform/chromium-linux/transforms/2d/transform-origin-borderbox-expected.png:
        * platform/chromium-mac-leopard/http/tests/navigation/javascriptlink-frames-expected.png: Added.
        * platform/chromium-mac/http/tests/navigation/javascriptlink-frames-expected.png: Added.
        * platform/chromium-win-vista/fast/text/atsui-kerning-and-ligatures-expected.png:
        * platform/chromium-win-vista/fast/text/atsui-spacing-features-expected.png: Removed.
        * platform/chromium-win-vista/http/tests/misc/iframe404-expected.png: Added.
        * platform/chromium-win-vista/http/tests/navigation/javascriptlink-frames-expected.png: Added.
        * platform/chromium-win-xp/fast/blockflow/vertical-align-table-baseline-expected.png: Added.
        * platform/chromium-win-xp/fast/dom/34176-expected.png: Added.
        * platform/chromium-win-xp/fast/text/atsui-negative-spacing-features-expected.png: Added.
        * platform/chromium-win-xp/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-win-xp/fast/text/international/003-expected.png: Added.
        * platform/chromium-win-xp/fast/text/international/hebrew-vowels-expected.png: Added.
        * platform/chromium-win/editing/pasteboard/3976872-expected.png:
        * platform/chromium-win/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/canvas/setWidthResetAfterForcedRender-expected.png:
        * platform/chromium-win/fast/css/acid2-pixel-expected.png:
        * platform/chromium-win/fast/dom/34176-expected.png:
        * platform/chromium-win/fast/dom/HTMLElement/bdo-expected.png:
        * platform/chromium-win/fast/forms/001-expected.png:
        * platform/chromium-win/fast/forms/input-first-letter-expected.png:
        * platform/chromium-win/fast/frames/viewsource-attribute-expected.png:
        * platform/chromium-win/fast/html/details-writing-mode-expected.png:
        * platform/chromium-win/fast/repaint/4774354-expected.png:
        * platform/chromium-win/fast/replaced/outline-replaced-elements-expected.png:
        * platform/chromium-win/fast/text/atsui-kerning-and-ligatures-expected.png:
        * platform/chromium-win/fast/text/atsui-negative-spacing-features-expected.png:
        * platform/chromium-win/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-win/fast/text/international/003-expected.png:
        * platform/chromium-win/fast/text/international/003-expected.txt:
        * platform/chromium-win/fast/text/international/hebrew-vowels-expected.png:
        * platform/chromium-win/fast/text/should-use-atsui-expected.png:
        * platform/chromium-win/plugins/embed-attributes-style-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-fallback-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/45621-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1220-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug15933-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug20804-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug51140-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug51140-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug14007-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_void-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/other/empty_cells-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/other/test4-expected.png:
        * platform/chromium-win/transforms/2d/transform-borderbox-expected.png:
        * platform/chromium-win/transforms/2d/transform-fixed-container-expected.png:
        * platform/chromium-win/transforms/2d/transform-origin-borderbox-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Copy existing WebSocket tests
        https://bugs.webkit.org/show_bug.cgi?id=64242

        Reviewed by Kent Tamura.

        Copy the existing WebSocket tests under http/tests/websocket/tests/hybi/ and skip them.

        These tests will be used to test the latest WebSocket protocol implementation. They are skipped
        in all ports for now, and will be unskipped when the new protocol implementation is landed in WebCore.

        The following modifications are applied to the new tests:
        - Change paths and URLs appeared in the tests and the test results so they fit for the new location.
        - Call layoutTestController.overridePreferences() to enable the new protocol implementation.

        * http/tests/websocket/tests/hybi/alert-in-event-handler-expected.txt: Added.
        * http/tests/websocket/tests/hybi/alert-in-event-handler.html: Added.
        * http/tests/websocket/tests/hybi/bad-handshake-crash-expected.txt: Added.
        * http/tests/websocket/tests/hybi/bad-handshake-crash.html: Added.
        * http/tests/websocket/tests/hybi/bad-handshake-crash_wsh.py: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars-expected.txt: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars.html: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-empty-expected.txt: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-empty.html: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii-expected.txt: Added.
        * http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii.html: Added.
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt: Added.
        * http/tests/websocket/tests/hybi/bufferedAmount-after-close.html: Added.
        * http/tests/websocket/tests/hybi/client-close-expected.txt: Added.
        * http/tests/websocket/tests/hybi/client-close.html: Added.
        * http/tests/websocket/tests/hybi/client-close_wsh.py: Added.
        * http/tests/websocket/tests/hybi/close-before-open-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-before-open.html: Added.
        * http/tests/websocket/tests/hybi/close-event-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-event.html: Added.
        * http/tests/websocket/tests/hybi/close-on-navigate-new-location-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-on-navigate-new-location.html: Added.
        * http/tests/websocket/tests/hybi/close-on-unload-and-force-gc-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-on-unload-and-force-gc.html: Added.
        * http/tests/websocket/tests/hybi/close-on-unload-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-on-unload-reference-in-parent-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-on-unload-reference-in-parent.html: Added.
        * http/tests/websocket/tests/hybi/close-on-unload.html: Added.
        * http/tests/websocket/tests/hybi/close-on-unload_wsh.py: Added.
        * http/tests/websocket/tests/hybi/close-unref-websocket-expected.txt: Added.
        * http/tests/websocket/tests/hybi/close-unref-websocket.html: Added.
        * http/tests/websocket/tests/hybi/cross-origin-expected.txt: Added.
        * http/tests/websocket/tests/hybi/cross-origin.html: Added.
        * http/tests/websocket/tests/hybi/echo-challenge_wsh.py: Added.
        * http/tests/websocket/tests/hybi/echo-cookie_wsh.py: Added.
        * http/tests/websocket/tests/hybi/echo-location_wsh.py: Added.
        * http/tests/websocket/tests/hybi/echo_wsh.py: Added.
        * http/tests/websocket/tests/hybi/error-detect-expected.txt: Added.
        * http/tests/websocket/tests/hybi/error-detect.html: Added.
        * http/tests/websocket/tests/hybi/fixed-origin_wsh.py: Added.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer-expected.txt: Added.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer.html: Added.
        * http/tests/websocket/tests/hybi/frame-length-longer-than-buffer_wsh.py: Added.
        * http/tests/websocket/tests/hybi/frame-length-overflow-expected.txt: Added.
        * http/tests/websocket/tests/hybi/frame-length-overflow.html: Added.
        * http/tests/websocket/tests/hybi/frame-length-overflow_wsh.py: Added.
        * http/tests/websocket/tests/hybi/frame-length-skip-expected.txt: Added.
        * http/tests/websocket/tests/hybi/frame-length-skip.html: Added.
        * http/tests/websocket/tests/hybi/frame-length-skip_wsh.py: Added.
        * http/tests/websocket/tests/hybi/frame-lengths-expected.txt: Added.
        * http/tests/websocket/tests/hybi/frame-lengths.html: Added.
        * http/tests/websocket/tests/hybi/handshake-challenge-randomness-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-challenge-randomness.html: Added.
        * http/tests/websocket/tests/hybi/handshake-error-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-error.html: Added.
        * http/tests/websocket/tests/hybi/handshake-error_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-maxlength_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-cr_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null_wsh.py: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch.html: Added.
        * http/tests/websocket/tests/hybi/hanging-handshake_wsh.py: Added.
        * http/tests/websocket/tests/hybi/httponly-cookie-expected.txt: Added.
        * http/tests/websocket/tests/hybi/httponly-cookie.pl: Added.
        * http/tests/websocket/tests/hybi/long-invalid-header-expected.txt: Added.
        * http/tests/websocket/tests/hybi/long-invalid-header.html: Added.
        * http/tests/websocket/tests/hybi/long-invalid-header_wsh.py: Added.
        * http/tests/websocket/tests/hybi/multiple-connections-expected.txt: Added.
        * http/tests/websocket/tests/hybi/multiple-connections.html: Added.
        * http/tests/websocket/tests/hybi/no-query_wsh.py: Added.
        * http/tests/websocket/tests/hybi/null-character-expected.txt: Added.
        * http/tests/websocket/tests/hybi/null-character.html: Added.
        * http/tests/websocket/tests/hybi/origin-test_wsh.py: Added.
        * http/tests/websocket/tests/hybi/protocol-test_wsh.py: Added.
        * http/tests/websocket/tests/hybi/reload-crash-expected.txt: Added.
        * http/tests/websocket/tests/hybi/reload-crash.html: Added.
        * http/tests/websocket/tests/hybi/resources/close-on-unload-iframe-reference-in-parent.html: Added.
        * http/tests/websocket/tests/hybi/resources/close-on-unload-iframe.html: Added.
        * http/tests/websocket/tests/hybi/resources/reload-crash-iframe.html: Added.
        * http/tests/websocket/tests/hybi/send-after-close-on-unload-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-after-close-on-unload.html: Added.
        * http/tests/websocket/tests/hybi/send-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-throw-expected.txt: Added.
        * http/tests/websocket/tests/hybi/send-throw.html: Added.
        * http/tests/websocket/tests/hybi/send.html: Added.
        * http/tests/websocket/tests/hybi/send2_wsh.py: Added.
        * http/tests/websocket/tests/hybi/send_wsh.py: Added.
        * http/tests/websocket/tests/hybi/server-close-expected.txt: Added.
        * http/tests/websocket/tests/hybi/server-close.html: Added.
        * http/tests/websocket/tests/hybi/server-close_wsh.py: Added.
        * http/tests/websocket/tests/hybi/simple-expected.txt: Added.
        * http/tests/websocket/tests/hybi/simple-stress-expected.txt: Added.
        * http/tests/websocket/tests/hybi/simple-stress.html: Added.
        * http/tests/websocket/tests/hybi/simple.html: Added.
        * http/tests/websocket/tests/hybi/simple_wsh.py: Added.
        * http/tests/websocket/tests/hybi/sub-protocol-expected.txt: Added.
        * http/tests/websocket/tests/hybi/sub-protocol-with-space-expected.txt: Added.
        * http/tests/websocket/tests/hybi/sub-protocol-with-space.html: Added.
        * http/tests/websocket/tests/hybi/sub-protocol.html: Added.
        * http/tests/websocket/tests/hybi/unicode-expected.txt: Added.
        * http/tests/websocket/tests/hybi/unicode.html: Added.
        * http/tests/websocket/tests/hybi/unicode_wsh.py: Added.
        * http/tests/websocket/tests/hybi/unknown-frame-type_wsh.py: Added.
        * http/tests/websocket/tests/hybi/url-no-trailing-slash-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-no-trailing-slash.html: Added.
        * http/tests/websocket/tests/hybi/url-parsing-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-parsing.html: Added.
        * http/tests/websocket/tests/hybi/url-with-credential-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-with-credential.html: Added.
        * http/tests/websocket/tests/hybi/url-with-empty-query-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-with-empty-query.html: Added.
        * http/tests/websocket/tests/hybi/url-with-query-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-with-query-for-no-query-expected.txt: Added.
        * http/tests/websocket/tests/hybi/url-with-query-for-no-query.html: Added.
        * http/tests/websocket/tests/hybi/url-with-query.html: Added.
        * http/tests/websocket/tests/hybi/websocket-event-target-expected.txt: Added.
        * http/tests/websocket/tests/hybi/websocket-event-target.html: Added.
        * http/tests/websocket/tests/hybi/websocket-pending-activity-expected.txt: Added.
        * http/tests/websocket/tests/hybi/websocket-pending-activity.html: Added.
        * http/tests/websocket/tests/hybi/websocket-protocol-ignored-expected.txt: Added.
        * http/tests/websocket/tests/hybi/websocket-protocol-ignored.html: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-onmessage-crash-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-onmessage-crash.html: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-shared-worker-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-shared-worker.html: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-worker-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/close-in-worker.html: Added.
        * http/tests/websocket/tests/hybi/workers/resources/close-in-onmessage-crash.js: Added.
        (runTests.try.ws.onopen):
        (runTests.try.ws.onmessage):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hybi/workers/resources/close-in-worker.js: Added.
        (handleConnect.self.postMessage):
        (handleConnect):
        (runTests.try.ws.onopen):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hybi/workers/resources/echo-challenge_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/resources/echo_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/resources/simple_wsh.py: Added.
        * http/tests/websocket/tests/hybi/workers/resources/worker-handshake-challenge-randomness.js: Added.
        (endTest):
        (runTests.try.ws1.onmessage):
        (runTests.try.ws1.onclose.ws2.onmessage):
        (runTests.try.ws1.onclose.ws2.onclose):
        (runTests.try.ws1.onclose):
        (runTests):
        * http/tests/websocket/tests/hybi/workers/resources/worker-simple.js: Added.
        (handleConnect.self.postMessage):
        (handleConnect):
        (runTests.try.ws.onopen):
        (runTests.try.ws.onmessage):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hybi/workers/shared-worker-simple-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/shared-worker-simple.html: Added.
        * http/tests/websocket/tests/hybi/workers/worker-handshake-challenge-randomness-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/worker-handshake-challenge-randomness.html: Added.
        * http/tests/websocket/tests/hybi/workers/worker-simple-expected.txt: Added.
        * http/tests/websocket/tests/hybi/workers/worker-simple.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        A category "failing websocket tests" is listed at the beginning of Skipped file,
        but there is no such section in the lists. Thus, a new section is inserted.
        * platform/win/Skipped:
        * platform/wk2/Skipped:

2011-07-11  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 11/??).

        * platform/chromium-linux/tables/mozilla/marvin/x_th_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_width-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_bgcolor_name-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/other/body_col-expected.png:
        * platform/chromium-linux/tables/mozilla/other/cell_widths-expected.png:
        * platform/chromium-linux/tables/mozilla/other/cellspacing-expected.png:
        * platform/chromium-linux/tables/mozilla/other/nested2-expected.png:
        * platform/chromium-linux/tables/mozilla/other/nestedTables-expected.png:
        * platform/chromium-linux/tables/mozilla/other/padding-expected.png:
        * platform/chromium-linux/tables/mozilla/other/test3-expected.png:
        * platform/chromium-linux/tables/mozilla/other/test6-expected.png:
        * platform/chromium-linux/tables/mozilla/other/wa_table_thtd_rowspan-expected.png:
        * platform/chromium-linux/tables/mozilla/other/wa_table_tr_align-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/97619-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1010-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug101759-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug10216-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1055-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug106336-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1128-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1164-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug11945-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1262-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug131020-3-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug14489-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug1647-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug18770-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug19526-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug21518-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug220653-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug22122-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug24880-1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug25707-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug27993-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug29058-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug3105-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug3166-8-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug32205-1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug32205-4-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug42043-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug4294-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug46268-4-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug51000-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug56024-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug61042-1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug61042-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug67915-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug7113-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug72393-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug73629-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug80762-2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug8499-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug9879-1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/backgrounds-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/col_span2-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/cols1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/columns-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/conflicts-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/appendCells1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/appendCol1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/appendColGroup1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_above-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_below-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_width-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_bgcolor_name-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/other/body_col-expected.png:
        * platform/chromium-win/tables/mozilla/other/cell_widths-expected.png:
        * platform/chromium-win/tables/mozilla/other/cellspacing-expected.png:
        * platform/chromium-win/tables/mozilla/other/nested2-expected.png:
        * platform/chromium-win/tables/mozilla/other/nestedTables-expected.png:
        * platform/chromium-win/tables/mozilla/other/padding-expected.png:
        * platform/chromium-win/tables/mozilla/other/test3-expected.png:
        * platform/chromium-win/tables/mozilla/other/test6-expected.png:
        * platform/chromium-win/tables/mozilla/other/wa_table_thtd_rowspan-expected.png:
        * platform/chromium-win/tables/mozilla/other/wa_table_tr_align-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/97619-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1010-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug101759-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug10216-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1055-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug106336-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1128-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1164-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug11945-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1262-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug131020-3-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug14489-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug1647-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug18770-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug19526-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug21518-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug220653-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug22122-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug24880-1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug25707-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug27993-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug29058-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug3105-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug3166-8-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug32205-1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug32205-4-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug42043-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug4294-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug46268-4-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug51000-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug56024-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug61042-1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug61042-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug67915-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug7113-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug72393-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug73629-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug80762-2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug8499-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/bugs/bug9879-1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/backgrounds-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/col_span2-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/cols1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/columns-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/core/conflicts-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/appendCells1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/appendCol1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/appendColGroup1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_above-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_below-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.png:
        * platform/chromium-win/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-11  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 10/??).

        * platform/chromium-linux/tables/mozilla/marvin/x_col_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_span-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_width_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_width_px-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_col_width_rel-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_span-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_width_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_colgroup_width_rel-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_bgcolor_name-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_border-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_border_px-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_cellpadding-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_cellpadding_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_cellspacing-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_cellspacing_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_width_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_table_width_px-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_bgcolor_name-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_colspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_height-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_nowrap-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_rowspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_width-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_bgcolor_name-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_colspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_height-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_nowrap-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_rowspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_style-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_span-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_width_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_width_px-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_col_width_rel-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_span-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_width_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_colgroup_width_rel-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_bgcolor_name-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_border-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_border_px-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_cellpadding-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_cellpadding_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_cellspacing-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_cellspacing_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_width_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_table_width_px-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_bgcolor_name-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_colspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_height-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_nowrap-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_rowspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_width-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_bgcolor_name-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_colspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_height-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_nowrap-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_rowspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_valign_middle-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-11  Mustafizur Rahaman  <mustaf.here@gmail.com>

        Reviewed by James Robinson.

        Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.destination-atop.html
        https://bugs.webkit.org/show_bug.cgi?id=48292
        
        and
        
        Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.destination-atop.html
        https://bugs.webkit.org/show_bug.cgi?id=48302

        * canvas/philip/tests/2d.composite.uncovered.pattern.destination-atop-expected.txt: Added 
        a trailing line
        * fast/canvas/canvas-composite-alpha.html: Rebaselined for destination-atop test case
        * platform/chromium/test_expectations.txt: Removed passing test case
        * platform/gtk/Skipped: Ditto
        * platform/mac/Skipped: Ditto
        * platform/qt/Skipped: Ditto

2011-07-11  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 9/??).

        * platform/chromium-linux/tables/mozilla/marvin/tables_caption_align_bot-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_caption_align_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_cellpadding-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_cellpadding_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_row_th_nowrap-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_colspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_height-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_nowrap-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_rowspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_td_width-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_colspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_height-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_rowspan-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_th_width-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tbody_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/td_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/td_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/td_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/td_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tfoot_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/th_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/th_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/th_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/th_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_align_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_char-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/thead_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_black-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_blue-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_gray-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_green-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_lime-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_maroon-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_navy-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_olive-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_purple-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_red-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_silver-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_teal-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_white-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_yellow-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tr_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_caption_align_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_caption_align_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_caption_class-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_caption_id-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_caption_style-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_caption_align_bot-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_caption_align_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_cellpadding-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_cellpadding_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_row_th_nowrap-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_colspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_height-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_nowrap-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_rowspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_td_width-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_colspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_height-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_rowspan-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_th_width-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tbody_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/td_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/td_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/td_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/td_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tfoot_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/th_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/th_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/th_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/th_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_align_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_char-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/thead_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_black-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_blue-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_gray-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_green-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_lime-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_maroon-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_navy-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_olive-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_purple-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_red-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_silver-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_teal-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_white-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_yellow-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tr_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_caption_align_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_caption_align_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_caption_class-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_caption_id-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_caption_style-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 8/??).

        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_fixPer-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_per-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_auto-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_autoFix-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_autoPer-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_fix-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_fixPer-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_fix_per-expected.png:
        * platform/chromium-linux/tables/mozilla/core/margins-expected.png:
        * platform/chromium-linux/tables/mozilla/core/misc-expected.png:
        * platform/chromium-linux/tables/mozilla/core/nested1-expected.png:
        * platform/chromium-linux/tables/mozilla/core/one_row-expected.png:
        * platform/chromium-linux/tables/mozilla/core/row_span-expected.png:
        * platform/chromium-linux/tables/mozilla/core/table_frame-expected.png:
        * platform/chromium-linux/tables/mozilla/core/table_heights-expected.png:
        * platform/chromium-linux/tables/mozilla/core/table_widths-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/appendCol2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/appendRowsExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/appendTbodyExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCellsRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCellsShrink1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCellsShrink2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCol1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCol2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteCol3-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteColGroup1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteColGroup2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteRowsRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteRowsShrink1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteTbodyExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/deleteTbodyRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCellsExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCellsExpand2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCellsRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCellsRebuild2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertColGroups1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertColGroups2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCols1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCols2-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCols3-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCols4-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertCols5-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertRowsExpand1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/insertRowsRebuild1-expected.png:
        * platform/chromium-linux/tables/mozilla/dom/tableDom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/body_col-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/col_span-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_span-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_valign_baseline-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_valign_bottom-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_valign_middle-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_valign_top-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_width_pct-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/colgroup_width_px-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_frame_border-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_frame_box-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_overflow_hidden_td-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_row_align_center-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_row_align_left-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/table_row_align_right-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_aqua-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_black-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_blue-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_gray-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_green-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_lime-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_maroon-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_navy-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_olive-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_purple-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_red-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_silver-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_teal-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_white-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_yellow-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_border_1-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_border_2-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/tables_border_3-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_fixPer-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_per-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_auto-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_autoFix-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_autoPer-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_fix-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_fixPer-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_fix_per-expected.png:
        * platform/chromium-win/tables/mozilla/core/margins-expected.png:
        * platform/chromium-win/tables/mozilla/core/misc-expected.png:
        * platform/chromium-win/tables/mozilla/core/nested1-expected.png:
        * platform/chromium-win/tables/mozilla/core/one_row-expected.png:
        * platform/chromium-win/tables/mozilla/core/row_span-expected.png:
        * platform/chromium-win/tables/mozilla/core/table_frame-expected.png:
        * platform/chromium-win/tables/mozilla/core/table_heights-expected.png:
        * platform/chromium-win/tables/mozilla/core/table_widths-expected.png:
        * platform/chromium-win/tables/mozilla/dom/appendCol2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/appendRowsExpand1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/appendTbodyExpand1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCellsRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCellsShrink1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCellsShrink2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCol1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCol2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteCol3-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteColGroup1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteColGroup2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteRowsRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteRowsShrink1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteTbodyExpand1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/deleteTbodyRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCellsExpand1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCellsExpand2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCellsRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCellsRebuild2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertColGroups1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertColGroups2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCols1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCols2-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCols3-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCols4-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertCols5-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertRowsExpand1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/insertRowsRebuild1-expected.png:
        * platform/chromium-win/tables/mozilla/dom/tableDom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/body_col-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/col_span-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_span-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_valign_baseline-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_valign_bottom-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_valign_middle-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_valign_top-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_width_pct-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/colgroup_width_px-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_frame_border-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_frame_box-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_overflow_hidden_td-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_row_align_center-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_row_align_left-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/table_row_align_right-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_aqua-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_black-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_blue-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_gray-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_green-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_lime-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_maroon-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_navy-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_olive-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_purple-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_red-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_silver-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_teal-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_white-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_yellow-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_border_1-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_border_2-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/tables_border_3-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 7/??).

        * platform/chromium-linux/tables/mozilla/bugs/bug4284-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4385-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug43854-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4427-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4429-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug44505-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug44523-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4501-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4520-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4523-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug45486-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4576-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46268-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46268-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46268-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46268-5-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46268-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46368-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46368-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46623-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46623-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46924-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug46944-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4739-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug47432-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug48028-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug48028-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug50695-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug51037-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5188-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug53690-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug53690-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug53891-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug54450-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug55694-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug56563-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug57300-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug57378-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug57828-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5797-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5798-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5799-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5835-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug5838-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug58402-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug59354-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug60013-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug60749-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug60804-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug60807-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug60992-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug6184-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug6304-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug647-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug67915-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug68998-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug69187-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug69382-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug69382-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7112-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7112-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7121-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug727-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7342-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7471-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug7714-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug78162-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug81934-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug82946-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug8381-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug86708-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug88035-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug88035-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug8858-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug8950-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug9123-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug9123-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug92143-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug9271-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug9271-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug965-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug97138-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug98196-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug9879-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug99923-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug99948-expected.png:
        * platform/chromium-linux/tables/mozilla/core/bloomberg-expected.png:
        * platform/chromium-linux/tables/mozilla/core/borders-expected.png:
        * platform/chromium-linux/tables/mozilla/core/box_sizing-expected.png:
        * platform/chromium-linux/tables/mozilla/core/captions-expected.png:
        * platform/chromium-linux/tables/mozilla/core/cell_heights-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_span-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_auto-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_autoFix-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_autoFixPer-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_autoPer-expected.png:
        * platform/chromium-linux/tables/mozilla/core/col_widths_auto_fix-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4284-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4385-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug43854-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4427-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4429-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug44505-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug44523-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4501-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4520-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4523-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug45486-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4576-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46268-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46268-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46268-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46268-5-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46268-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46368-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46368-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46623-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46623-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46924-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug46944-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4739-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug47432-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug48028-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug48028-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug50695-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug50695-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug51037-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5188-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug53690-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug53690-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug53891-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug54450-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug55694-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug56201-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug56563-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug57300-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug57378-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug57828-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5797-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5798-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5799-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5835-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug5838-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug58402-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug59354-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug60013-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug60749-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug60804-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug60807-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug60992-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug6184-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug6304-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug647-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug67915-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug68998-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug69187-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug69382-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug69382-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7112-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7112-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7121-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug727-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7342-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7471-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug7714-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug78162-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug81934-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug82946-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug8381-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug86708-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug88035-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug88035-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug8858-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug8950-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug9123-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug9123-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug92143-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug92647-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug9271-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug9271-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug965-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug97138-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug98196-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug9879-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug99923-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug99948-expected.png:
        * platform/chromium-win/tables/mozilla/core/bloomberg-expected.png:
        * platform/chromium-win/tables/mozilla/core/borders-expected.png:
        * platform/chromium-win/tables/mozilla/core/box_sizing-expected.png:
        * platform/chromium-win/tables/mozilla/core/captions-expected.png:
        * platform/chromium-win/tables/mozilla/core/cell_heights-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_span-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_auto-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_autoFix-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_autoFixPer-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_autoPer-expected.png:
        * platform/chromium-win/tables/mozilla/core/col_widths_auto_fix-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 6/??).

        * platform/chromium-linux/tables/mozilla/bugs/bug139524-4-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug14323-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1474-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug149275-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug149275-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug14929-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug15247-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug16252-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug17168-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug175455-4-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug17548-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug17587-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1800-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1802-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1802s-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1809-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1828-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug18359-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug18440-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug18558-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug18955-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug19061-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug19061-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug19356-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug194024-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug19599-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2050-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2065-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug21299-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug21918-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug220536-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug221784-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug221784-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug22246-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug22246-2a-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug22246-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug22246-3a-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug222846-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2267-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2296-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug23235-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug24503-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug24627-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug24661-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2479-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug24880-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug25004-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug25086-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2516-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug25663-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2585-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2684-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug27038-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2757-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2773-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug278385-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug27993-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug28928-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug29058-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug29058-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug29157-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug29326-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug29429-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2962-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug2981-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30273-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30332-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30332-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30418-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30559-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug30692-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3103-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3191-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug32205-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug32205-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug32205-5-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3260-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3263-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug32841-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3309-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug33137-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug34176-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3454-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug35662-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3718-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug38916-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug39209-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug3977-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug40828-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4093-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug41890-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug42187-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug42443-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug139524-4-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug14323-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1474-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug149275-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug149275-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug14929-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug15247-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug16252-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug17168-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug175455-4-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug17548-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug17587-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1800-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1802-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1802s-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1809-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1818-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1818-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1818-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1818-4-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1828-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug18359-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug18440-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug18558-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug18955-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug19061-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug19061-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug19356-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug194024-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug19599-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2050-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2065-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug21299-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug21918-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug219693-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug219693-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug220536-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug221784-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug221784-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug22246-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug22246-2a-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug22246-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug22246-3a-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug222846-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2267-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2296-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug23235-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug24503-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug24627-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug24661-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2479-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug24880-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug25004-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug25086-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2516-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug25663-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2585-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug26553-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2684-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug27038-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2757-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2773-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug278385-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug27993-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug28928-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug29058-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug29058-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug29157-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug29326-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug29429-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2962-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug2981-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30273-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30332-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30332-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30418-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30559-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug30692-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3103-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3191-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug32205-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug32205-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug32205-5-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3260-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3263-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug32841-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3309-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug33137-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug34176-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3454-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug35662-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3718-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug38916-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug39209-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug3977-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug40828-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug4093-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug41890-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug42187-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug42443-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 5/??).

        * platform/chromium-linux/fast/table/border-collapsing/border-collapsing-head-foot-expected.png:
        * platform/chromium-linux/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.png:
        * platform/chromium-linux/fast/table/border-collapsing/rtl-border-collapsing-expected.png:
        * platform/chromium-linux/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.png:
        * platform/chromium-linux/fast/table/click-near-anonymous-table-expected.png:
        * platform/chromium-linux/fast/table/dynamic-cellpadding-expected.png:
        * platform/chromium-linux/fast/table/early-table-layout-expected.png:
        * platform/chromium-linux/fast/table/edge-offsets-expected.png:
        * platform/chromium-linux/fast/table/large-width-expected.png:
        * platform/chromium-linux/fast/table/nobr-expected.png:
        * platform/chromium-linux/fast/table/overflowHidden-expected.png:
        * platform/chromium-linux/fast/table/percent-heights-expected.png:
        * platform/chromium-linux/fast/table/row-height-recalc-expected.png:
        * platform/chromium-linux/fast/table/rowindex-expected.png:
        * platform/chromium-linux/fast/table/rowspan-paint-order-expected.png:
        * platform/chromium-linux/fast/table/rowspan-paint-order-vertical-expected.png:
        * platform/chromium-linux/fast/table/rtl-cell-display-none-assert-expected.png:
        * platform/chromium-linux/fast/table/spanOverlapRepaint-expected.png:
        * platform/chromium-linux/fast/table/table-continuation-outline-paint-crash-expected.png:
        * platform/chromium-linux/fast/table/table-hspace-align-center-expected.png:
        * platform/chromium-linux/fast/table/text-field-baseline-expected.png:
        * platform/chromium-linux/fast/table/unbreakable-images-quirk-expected.png:
        * platform/chromium-linux/fast/table/vertical-align-baseline-expected.png:
        * platform/chromium-linux/fast/text/atsui-small-caps-punctuation-size-expected.png:
        * platform/chromium-linux/fast/text/basic/001-expected.png:
        * platform/chromium-linux/fast/text/basic/006-expected.png:
        * platform/chromium-linux/fast/text/basic/007-expected.png:
        * platform/chromium-linux/fast/text/basic/015-expected.png:
        * platform/chromium-linux/fast/text/capitalize-empty-generated-string-expected.png:
        * platform/chromium-linux/fast/text/cg-vs-atsui-expected.png:
        * platform/chromium-linux/fast/text/in-rendered-text-rtl-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-LDB-2-CSS-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-LDB-2-HTML-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-european-terminators-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-ignored-for-first-child-inline-expected.png:
        * platform/chromium-linux/fast/text/international/bidi-innertext-expected.png:
        * platform/chromium-linux/fast/text/international/rtl-caret-expected.png:
        * platform/chromium-linux/fast/text/international/rtl-white-space-pre-wrap-expected.png:
        * platform/chromium-linux/fast/text/midword-break-hang-expected.png:
        * platform/chromium-linux/fast/text/whitespace/027-expected.png:
        * platform/chromium-linux/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
        * platform/chromium-linux/fast/text/whitespace/pre-wrap-overflow-selection-expected.png:
        * platform/chromium-linux/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png:
        * platform/chromium-linux/fast/text/word-break-expected.png:
        * platform/chromium-linux/fast/transforms/rotated-transform-affects-scrolling-1-expected.png:
        * platform/chromium-linux/fast/transforms/rotated-transform-affects-scrolling-2-expected.png:
        * platform/chromium-linux/http/tests/loading/simple-subframe-expected.png:
        * platform/chromium-linux/http/tests/misc/acid2-pixel-expected.png:
        * platform/chromium-linux/http/tests/misc/location-replace-crossdomain-expected.png:
        * platform/chromium-linux/http/tests/multipart/invalid-image-data-standalone-expected.png:
        * platform/chromium-linux/svg/custom/inline-svg-in-xhtml-expected.png:
        * platform/chromium-linux/svg/custom/svg-float-border-padding-expected.png:
        * platform/chromium-linux/svg/zoom/page/zoom-svg-float-border-padding-expected.png:
        * platform/chromium-linux/svg/zoom/text/zoom-svg-float-border-padding-expected.png:
        * platform/chromium-linux/tables/layering/paint-test-layering-1-expected.png:
        * platform/chromium-linux/tables/layering/paint-test-layering-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug10009-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug10036-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug10039-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug101201-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1055-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug10565-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1067-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug106816-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug108340-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug109043-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug110566-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug113235-3-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug113424-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug11384q-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug11384s-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1188-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug11944-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug119786-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12008-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1224-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12268-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12384-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1261-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12709-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug128229-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12908-1-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug12910-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1302-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug131020-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug13118-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug13196-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug133756-2-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug13484-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug137388-2-expected.png:
        * platform/chromium-win-vista/http/tests/loading/simple-subframe-expected.png: Added.
        * platform/chromium-win-vista/http/tests/misc/acid2-pixel-expected.png: Added.
        * platform/chromium-win-vista/http/tests/misc/location-replace-crossdomain-expected.png: Copied from LayoutTests/platform/chromium-win/fast/table/giantRowspan-expected.png.
        * platform/chromium-win-vista/http/tests/multipart/invalid-image-data-standalone-expected.png: Added.
        * platform/chromium-win-xp/fast/text/basic/006-expected.png:
        * platform/chromium-win-xp/fast/text/cg-vs-atsui-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/border-collapsing-head-foot-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/rtl-border-collapsing-expected.png:
        * platform/chromium-win/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.png:
        * platform/chromium-win/fast/table/click-near-anonymous-table-expected.png:
        * platform/chromium-win/fast/table/dynamic-cellpadding-expected.png:
        * platform/chromium-win/fast/table/early-table-layout-expected.png:
        * platform/chromium-win/fast/table/edge-offsets-expected.png:
        * platform/chromium-win/fast/table/giantRowspan-expected.png:
        * platform/chromium-win/fast/table/large-width-expected.png:
        * platform/chromium-win/fast/table/multiple-percent-height-rows-expected.png:
        * platform/chromium-win/fast/table/nobr-expected.png:
        * platform/chromium-win/fast/table/overflowHidden-expected.png:
        * platform/chromium-win/fast/table/percent-heights-expected.png:
        * platform/chromium-win/fast/table/row-height-recalc-expected.png:
        * platform/chromium-win/fast/table/rowindex-expected.png:
        * platform/chromium-win/fast/table/rowspan-paint-order-expected.png:
        * platform/chromium-win/fast/table/rowspan-paint-order-vertical-expected.png:
        * platform/chromium-win/fast/table/rtl-cell-display-none-assert-expected.png:
        * platform/chromium-win/fast/table/spanOverlapRepaint-expected.png:
        * platform/chromium-win/fast/table/table-continuation-outline-paint-crash-expected.png:
        * platform/chromium-win/fast/table/table-hspace-align-center-expected.png:
        * platform/chromium-win/fast/table/text-field-baseline-expected.png:
        * platform/chromium-win/fast/table/unbreakable-images-quirk-expected.png:
        * platform/chromium-win/fast/table/vertical-align-baseline-expected.png:
        * platform/chromium-win/fast/text/atsui-small-caps-punctuation-size-expected.png:
        * platform/chromium-win/fast/text/basic/001-expected.png:
        * platform/chromium-win/fast/text/basic/006-expected.png:
        * platform/chromium-win/fast/text/basic/007-expected.png:
        * platform/chromium-win/fast/text/basic/015-expected.png:
        * platform/chromium-win/fast/text/capitalize-empty-generated-string-expected.png:
        * platform/chromium-win/fast/text/cg-vs-atsui-expected.png:
        * platform/chromium-win/fast/text/in-rendered-text-rtl-expected.png:
        * platform/chromium-win/fast/text/international/bidi-LDB-2-CSS-expected.png:
        * platform/chromium-win/fast/text/international/bidi-LDB-2-HTML-expected.png:
        * platform/chromium-win/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
        * platform/chromium-win/fast/text/international/bidi-european-terminators-expected.png:
        * platform/chromium-win/fast/text/international/bidi-ignored-for-first-child-inline-expected.png:
        * platform/chromium-win/fast/text/international/bidi-innertext-expected.png:
        * platform/chromium-win/fast/text/international/rtl-caret-expected.png:
        * platform/chromium-win/fast/text/international/rtl-white-space-pre-wrap-expected.png:
        * platform/chromium-win/fast/text/midword-break-hang-expected.png:
        * platform/chromium-win/fast/text/whitespace/027-expected.png:
        * platform/chromium-win/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
        * platform/chromium-win/fast/text/whitespace/pre-wrap-overflow-selection-expected.png:
        * platform/chromium-win/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png:
        * platform/chromium-win/fast/text/word-break-expected.png:
        * platform/chromium-win/fast/transforms/rotated-transform-affects-scrolling-1-expected.png:
        * platform/chromium-win/fast/transforms/rotated-transform-affects-scrolling-2-expected.png:
        * platform/chromium-win/svg/custom/inline-svg-in-xhtml-expected.png:
        * platform/chromium-win/svg/custom/repaint-moving-svg-and-div-expected.png:
        * platform/chromium-win/svg/custom/svg-float-border-padding-expected.png:
        * platform/chromium-win/svg/zoom/page/zoom-svg-float-border-padding-expected.png:
        * platform/chromium-win/svg/zoom/text/zoom-svg-float-border-padding-expected.png:
        * platform/chromium-win/tables/layering/paint-test-layering-1-expected.png:
        * platform/chromium-win/tables/layering/paint-test-layering-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug10009-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug10036-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug10039-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug101201-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1055-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug10565-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1067-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug106795-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug106816-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug108340-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug109043-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug110566-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug113235-3-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug113424-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug11384q-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug11384s-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1188-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug11944-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug119786-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12008-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1224-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12268-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12384-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1261-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12709-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug128229-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12908-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug12910-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug1302-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug131020-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug131020-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug13118-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug13169-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug13196-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug133756-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug133948-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug13484-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug137388-1-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug137388-2-expected.png:
        * platform/chromium-win/tables/mozilla/bugs/bug137388-3-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 4/??).

        * platform/chromium-linux/fast/forms/button-default-title-expected.png:
        * platform/chromium-linux/fast/forms/button-generated-content-expected.png:
        * platform/chromium-linux/fast/forms/button-inner-block-reuse-expected.png:
        * platform/chromium-linux/fast/forms/button-style-color-expected.png:
        * platform/chromium-linux/fast/forms/caret-rtl-expected.png:
        * platform/chromium-linux/fast/forms/fieldset-align-expected.png:
        * platform/chromium-linux/fast/forms/fieldset-with-float-expected.png:
        * platform/chromium-linux/fast/forms/float-before-fieldset-expected.png:
        * platform/chromium-linux/fast/forms/floating-textfield-relayout-expected.png:
        * platform/chromium-linux/fast/forms/image-border-expected.png:
        * platform/chromium-linux/fast/forms/input-appearance-bkcolor-expected.png:
        * platform/chromium-linux/fast/forms/input-disabled-color-expected.png:
        * platform/chromium-linux/fast/forms/input-value-expected.png:
        * platform/chromium-linux/fast/forms/isindex-placeholder-expected.png:
        * platform/chromium-linux/fast/forms/radio_checked_dynamic-expected.png:
        * platform/chromium-linux/fast/forms/search-vertical-alignment-expected.png:
        * platform/chromium-linux/fast/forms/select-baseline-expected.png:
        * platform/chromium-linux/fast/forms/select-dirty-parent-pref-widths-expected.png:
        * platform/chromium-linux/fast/forms/targeted-frame-submission-expected.png:
        * platform/chromium-linux/fast/forms/text-style-color-expected.png:
        * platform/chromium-linux/fast/frames/frameElement-iframe-expected.png:
        * platform/chromium-linux/fast/frames/iframe-option-crash-expected.png:
        * platform/chromium-linux/fast/frames/iframe-scrolling-attribute-expected.png:
        * platform/chromium-linux/fast/frames/iframe-with-frameborder-expected.png:
        * platform/chromium-linux/fast/frames/onlyCommentInIFrame-expected.png:
        * platform/chromium-linux/fast/frames/take-focus-from-iframe-expected.png:
        * platform/chromium-linux/fast/frames/viewsource-on-image-file-expected.png:
        * platform/chromium-linux/fast/inline/inline-borders-with-bidi-override-expected.png:
        * platform/chromium-linux/fast/inline/inline-box-background-expected.png:
        * platform/chromium-linux/fast/inline/inline-box-background-long-image-expected.png:
        * platform/chromium-linux/fast/inline/inline-box-background-repeat-x-expected.png:
        * platform/chromium-linux/fast/inline/inline-box-background-repeat-y-expected.png:
        * platform/chromium-linux/fast/inline/inline-continuation-borders-expected.png:
        * platform/chromium-linux/fast/inline/outline-continuations-expected.png:
        * platform/chromium-linux/fast/invalid/residual-style-expected.png:
        * platform/chromium-linux/fast/invalid/table-inside-stray-table-content-expected.png:
        * platform/chromium-linux/fast/lists/004-expected.png:
        * platform/chromium-linux/fast/lists/markers-in-selection-expected.png:
        * platform/chromium-linux/fast/lists/ol-start-parsing-expected.png:
        * platform/chromium-linux/fast/lists/olstart-expected.png:
        * platform/chromium-linux/fast/media/viewport-media-query-expected.png:
        * platform/chromium-linux/fast/multicol/table-vertical-align-expected.png:
        * platform/chromium-linux/fast/overflow/002-expected.png:
        * platform/chromium-linux/fast/overflow/image-selection-highlight-expected.png:
        * platform/chromium-linux/fast/overflow/overflow-rtl-inline-scrollbar-expected.png:
        * platform/chromium-linux/fast/overflow/overflow-text-hit-testing-expected.png:
        * platform/chromium-linux/fast/overflow/scrollRevealButton-expected.png:
        * platform/chromium-linux/fast/overflow/scrollRevealButton-expected.txt: Added.
        * platform/chromium-linux/fast/reflections/reflection-overflow-hidden-expected.png:
        * platform/chromium-linux/fast/repaint/clipped-relative-expected.png:
        * platform/chromium-linux/fast/repaint/containing-block-position-change-expected.png:
        * platform/chromium-linux/fast/repaint/delete-into-nested-block-expected.png:
        * platform/chromium-linux/fast/repaint/fixed-move-after-keyboard-scroll-expected.png:
        * platform/chromium-linux/fast/repaint/flexible-box-overflow-expected.png:
        * platform/chromium-linux/fast/repaint/flexible-box-overflow-horizontal-expected.png:
        * platform/chromium-linux/fast/repaint/float-move-during-layout-expected.png:
        * platform/chromium-linux/fast/repaint/inline-block-overflow-expected.png:
        * platform/chromium-linux/fast/repaint/inline-outline-repaint-expected.png:
        * platform/chromium-linux/fast/repaint/layer-outline-expected.png:
        * platform/chromium-linux/fast/repaint/layer-outline-horizontal-expected.png:
        * platform/chromium-linux/fast/repaint/line-overflow-expected.png:
        * platform/chromium-linux/fast/repaint/outline-child-repaint-expected.png:
        * platform/chromium-linux/fast/repaint/outline-repaint-glitch-expected.png:
        * platform/chromium-linux/fast/repaint/outline-shrinking-expected.png:
        * platform/chromium-linux/fast/repaint/overflow-delete-line-expected.png:
        * platform/chromium-linux/fast/repaint/static-to-positioned-expected.png:
        * platform/chromium-linux/fast/repaint/table-cell-move-expected.png:
        * platform/chromium-linux/fast/repaint/text-selection-rect-in-overflow-2-expected.png:
        * platform/chromium-linux/fast/repaint/text-shadow-expected.png:
        * platform/chromium-linux/fast/repaint/text-shadow-horizontal-expected.png:
        * platform/chromium-linux/fast/replaced/005-expected.png:
        * platform/chromium-linux/fast/replaced/007-expected.png:
        * platform/chromium-linux/fast/replaced/inline-box-wrapper-handover-expected.png:
        * platform/chromium-linux/fast/selectors/032-expected.png:
        * platform/chromium-linux/fast/selectors/077-expected.png:
        * platform/chromium-linux/fast/selectors/077b-expected.png:
        * platform/chromium-linux/fast/selectors/078b-expected.png:
        * platform/chromium-linux/fast/table/003-expected.png:
        * platform/chromium-linux/fast/table/004-expected.png:
        * platform/chromium-linux/fast/table/006-expected.png:
        * platform/chromium-linux/fast/table/007-expected.png:
        * platform/chromium-linux/fast/table/009-expected.png:
        * platform/chromium-linux/fast/table/017-expected.png:
        * platform/chromium-linux/fast/table/018-expected.png:
        * platform/chromium-linux/fast/table/020-expected.png:
        * platform/chromium-linux/fast/table/029-expected.png:
        * platform/chromium-linux/fast/table/030-expected.png:
        * platform/chromium-linux/fast/table/035-expected.png:
        * platform/chromium-linux/fast/table/035-vertical-expected.png:
        * platform/chromium-linux/fast/table/038-expected.png:
        * platform/chromium-linux/fast/table/038-vertical-expected.png:
        * platform/chromium-linux/fast/table/039-expected.png:
        * platform/chromium-linux/fast/table/040-expected.png:
        * platform/chromium-linux/fast/table/040-vertical-expected.png:
        * platform/chromium-linux/fast/table/041-expected.png:
        * platform/chromium-linux/fast/table/add-before-anonymous-child-expected.png:
        * platform/chromium-win/fast/forms/button-default-title-expected.png:
        * platform/chromium-win/fast/forms/button-generated-content-expected.png:
        * platform/chromium-win/fast/forms/button-inner-block-reuse-expected.png:
        * platform/chromium-win/fast/forms/button-style-color-expected.png:
        * platform/chromium-win/fast/forms/caret-rtl-expected.png:
        * platform/chromium-win/fast/forms/fieldset-align-expected.png:
        * platform/chromium-win/fast/forms/fieldset-with-float-expected.png:
        * platform/chromium-win/fast/forms/float-before-fieldset-expected.png:
        * platform/chromium-win/fast/forms/floating-textfield-relayout-expected.png:
        * platform/chromium-win/fast/forms/image-border-expected.png:
        * platform/chromium-win/fast/forms/input-appearance-bkcolor-expected.png:
        * platform/chromium-win/fast/forms/input-disabled-color-expected.png:
        * platform/chromium-win/fast/forms/input-value-expected.png:
        * platform/chromium-win/fast/forms/isindex-placeholder-expected.png:
        * platform/chromium-win/fast/forms/radio_checked_dynamic-expected.png:
        * platform/chromium-win/fast/forms/search-vertical-alignment-expected.png:
        * platform/chromium-win/fast/forms/select-baseline-expected.png:
        * platform/chromium-win/fast/forms/select-dirty-parent-pref-widths-expected.png:
        * platform/chromium-win/fast/forms/targeted-frame-submission-expected.png:
        * platform/chromium-win/fast/forms/text-style-color-expected.png:
        * platform/chromium-win/fast/frames/content-opacity-1-expected.png:
        * platform/chromium-win/fast/frames/content-opacity-2-expected.png:
        * platform/chromium-win/fast/frames/frameElement-iframe-expected.png:
        * platform/chromium-win/fast/frames/iframe-option-crash-expected.png:
        * platform/chromium-win/fast/frames/iframe-scrolling-attribute-expected.png:
        * platform/chromium-win/fast/frames/iframe-text-contents-expected.png:
        * platform/chromium-win/fast/frames/iframe-with-frameborder-expected.png:
        * platform/chromium-win/fast/frames/onlyCommentInIFrame-expected.png:
        * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.png:
        * platform/chromium-win/fast/frames/viewsource-on-image-file-expected.png:
        * platform/chromium-win/fast/inline/inline-borders-with-bidi-override-expected.png:
        * platform/chromium-win/fast/inline/inline-box-background-expected.png:
        * platform/chromium-win/fast/inline/inline-box-background-long-image-expected.png:
        * platform/chromium-win/fast/inline/inline-box-background-repeat-x-expected.png:
        * platform/chromium-win/fast/inline/inline-box-background-repeat-y-expected.png:
        * platform/chromium-win/fast/inline/inline-continuation-borders-expected.png:
        * platform/chromium-win/fast/inline/outline-continuations-expected.png:
        * platform/chromium-win/fast/invalid/residual-style-expected.png:
        * platform/chromium-win/fast/invalid/table-inside-stray-table-content-expected.png:
        * platform/chromium-win/fast/layers/self-painting-outline-expected.png:
        * platform/chromium-win/fast/lists/004-expected.png:
        * platform/chromium-win/fast/lists/markers-in-selection-expected.png:
        * platform/chromium-win/fast/lists/ol-start-parsing-expected.png:
        * platform/chromium-win/fast/lists/olstart-expected.png:
        * platform/chromium-win/fast/media/viewport-media-query-expected.png:
        * platform/chromium-win/fast/multicol/table-vertical-align-expected.png:
        * platform/chromium-win/fast/overflow/002-expected.png:
        * platform/chromium-win/fast/overflow/image-selection-highlight-expected.png:
        * platform/chromium-win/fast/overflow/overflow-rtl-inline-scrollbar-expected.png:
        * platform/chromium-win/fast/overflow/overflow-text-hit-testing-expected.png:
        * platform/chromium-win/fast/overflow/scrollRevealButton-expected.png:
        * platform/chromium-win/fast/reflections/reflection-overflow-hidden-expected.png:
        * platform/chromium-win/fast/repaint/clipped-relative-expected.png:
        * platform/chromium-win/fast/repaint/containing-block-position-change-expected.png:
        * platform/chromium-win/fast/repaint/delete-into-nested-block-expected.png:
        * platform/chromium-win/fast/repaint/fixed-move-after-keyboard-scroll-expected.png:
        * platform/chromium-win/fast/repaint/flexible-box-overflow-expected.png:
        * platform/chromium-win/fast/repaint/flexible-box-overflow-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/float-move-during-layout-expected.png:
        * platform/chromium-win/fast/repaint/inline-block-overflow-expected.png:
        * platform/chromium-win/fast/repaint/inline-outline-repaint-expected.png:
        * platform/chromium-win/fast/repaint/layer-outline-expected.png:
        * platform/chromium-win/fast/repaint/layer-outline-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/line-overflow-expected.png:
        * platform/chromium-win/fast/repaint/outline-child-repaint-expected.png:
        * platform/chromium-win/fast/repaint/outline-inset-expected.png:
        * platform/chromium-win/fast/repaint/outline-repaint-glitch-expected.png:
        * platform/chromium-win/fast/repaint/outline-shrinking-expected.png:
        * platform/chromium-win/fast/repaint/overflow-delete-line-expected.png:
        * platform/chromium-win/fast/repaint/static-to-positioned-expected.png:
        * platform/chromium-win/fast/repaint/table-cell-move-expected.png:
        * platform/chromium-win/fast/repaint/text-selection-rect-in-overflow-2-expected.png:
        * platform/chromium-win/fast/repaint/text-shadow-expected.png:
        * platform/chromium-win/fast/repaint/text-shadow-horizontal-expected.png:
        * platform/chromium-win/fast/replaced/005-expected.png:
        * platform/chromium-win/fast/replaced/007-expected.png:
        * platform/chromium-win/fast/replaced/inline-box-wrapper-handover-expected.png:
        * platform/chromium-win/fast/selectors/032-expected.png:
        * platform/chromium-win/fast/selectors/077-expected.png:
        * platform/chromium-win/fast/selectors/077b-expected.png:
        * platform/chromium-win/fast/selectors/078b-expected.png:
        * platform/chromium-win/fast/table/003-expected.png:
        * platform/chromium-win/fast/table/004-expected.png:
        * platform/chromium-win/fast/table/006-expected.png:
        * platform/chromium-win/fast/table/007-expected.png:
        * platform/chromium-win/fast/table/009-expected.png:
        * platform/chromium-win/fast/table/017-expected.png:
        * platform/chromium-win/fast/table/018-expected.png:
        * platform/chromium-win/fast/table/020-expected.png:
        * platform/chromium-win/fast/table/029-expected.png:
        * platform/chromium-win/fast/table/030-expected.png:
        * platform/chromium-win/fast/table/035-expected.png:
        * platform/chromium-win/fast/table/035-vertical-expected.png:
        * platform/chromium-win/fast/table/038-expected.png:
        * platform/chromium-win/fast/table/038-vertical-expected.png:
        * platform/chromium-win/fast/table/039-expected.png:
        * platform/chromium-win/fast/table/040-expected.png:
        * platform/chromium-win/fast/table/040-vertical-expected.png:
        * platform/chromium-win/fast/table/041-expected.png:
        * platform/chromium-win/fast/table/add-before-anonymous-child-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  Kenichi Ishibashi  <bashi@chromium.org>

        Unreviewed; Skip plugins/form-value.html.

        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel expectations for r90701 (part 3/??).

        * platform/chromium-linux/editing/selection/7152-1-expected.png:
        * platform/chromium-linux/editing/selection/7152-2-expected.png:
        * platform/chromium-linux/editing/selection/click-start-of-line-expected.png:
        * platform/chromium-linux/editing/selection/iframe-expected.png:
        * platform/chromium-linux/editing/selection/image-before-linebreak-expected.png:
        * platform/chromium-linux/editing/selection/inline-table-expected.png:
        * platform/chromium-linux/editing/selection/mixed-editability-3-expected.png:
        * platform/chromium-linux/editing/selection/mixed-editability-4-expected.png:
        * platform/chromium-linux/editing/selection/mixed-editability-5-expected.png:
        * platform/chromium-linux/editing/selection/mixed-editability-8-expected.png:
        * platform/chromium-linux/editing/selection/mixed-editability-9-expected.png:
        * platform/chromium-linux/editing/selection/move-by-line-001-expected.png:
        * platform/chromium-linux/editing/selection/select-all-iframe-expected.png:
        * platform/chromium-linux/editing/style/5017613-1-expected.png:
        * platform/chromium-linux/editing/style/5017613-2-expected.png:
        * platform/chromium-linux/editing/undo/4063751-expected.png:
        * platform/chromium-linux/editing/unsupported-content/table-type-after-expected.png:
        * platform/chromium-linux/editing/unsupported-content/table-type-before-expected.png:
        * platform/chromium-linux/fast/backgrounds/background-inherit-color-bug-expected.png:
        * platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-linux/fast/block/basic/013-expected.png:
        * platform/chromium-linux/fast/block/basic/018-expected.png:
        * platform/chromium-linux/fast/block/basic/fieldset-stretch-to-legend-expected.png:
        * platform/chromium-linux/fast/block/basic/text-indent-rtl-expected.png:
        * platform/chromium-linux/fast/block/float/015-expected.png:
        * platform/chromium-linux/fast/block/float/016-expected.png:
        * platform/chromium-linux/fast/block/float/025-expected.png:
        * platform/chromium-linux/fast/block/float/026-expected.png:
        * platform/chromium-linux/fast/block/float/027-expected.png:
        * platform/chromium-linux/fast/block/float/028-expected.png:
        * platform/chromium-linux/fast/block/float/032-expected.png:
        * platform/chromium-linux/fast/block/float/float-avoidance-expected.png:
        * platform/chromium-linux/fast/block/float/nopaint-after-layer-destruction-expected.png:
        * platform/chromium-linux/fast/block/float/nopaint-after-layer-destruction2-expected.png:
        * platform/chromium-linux/fast/block/float/table-relayout-expected.png:
        * platform/chromium-linux/fast/block/float/width-update-after-clear-expected.png:
        * platform/chromium-linux/fast/block/margin-collapse/empty-clear-blocks-expected.png:
        * platform/chromium-linux/fast/block/positioning/height-change-expected.png:
        * platform/chromium-linux/fast/block/positioning/leftmargin-topmargin-expected.png:
        * platform/chromium-linux/fast/block/positioning/relayout-on-position-change-expected.png:
        * platform/chromium-linux/fast/block/positioning/window-height-change-expected.png:
        * platform/chromium-linux/fast/blockflow/fieldsets-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-01-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-02-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-03-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-04-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-05-expected.png:
        * platform/chromium-linux/fast/borders/svg-as-border-image-2-expected.png:
        * platform/chromium-linux/fast/borders/svg-as-border-image-expected.png:
        * platform/chromium-linux/fast/css-generated-content/014-expected.png:
        * platform/chromium-linux/fast/css-generated-content/016-expected.png:
        * platform/chromium-linux/fast/css-generated-content/hover-style-change-expected.png:
        * platform/chromium-linux/fast/css/MarqueeLayoutTest-expected.png:
        * platform/chromium-linux/fast/css/apple-prefix-expected.png:
        * platform/chromium-linux/fast/css/border-radius-outline-offset-expected.png:
        * platform/chromium-linux/fast/css/fieldset-display-row-expected.png:
        * platform/chromium-linux/fast/css/find-next-layer-expected.png:
        * platform/chromium-linux/fast/css/first-letter-detach-expected.png:
        * platform/chromium-linux/fast/css/h1-in-section-elements-expected.png:
        * platform/chromium-linux/fast/css/hover-subselector-expected.png:
        * platform/chromium-linux/fast/css/input-search-padding-expected.png:
        * platform/chromium-linux/fast/css/list-outline-expected.png:
        * platform/chromium-linux/fast/css/outline-auto-location-expected.png:
        * platform/chromium-linux/fast/css/resize-corner-tracking-expected.png:
        * platform/chromium-linux/fast/css/rtl-ordering-expected.png:
        * platform/chromium-linux/fast/css/universal-hover-quirk-expected.png:
        * platform/chromium-linux/fast/dom/HTMLLinkElement/pending-stylesheet-count-expected.png:
        * platform/chromium-linux/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png:
        * platform/chromium-linux/fast/dom/HTMLTableElement/colSpan-expected.png:
        * platform/chromium-linux/fast/dom/HTMLTableElement/createCaption-expected.png:
        * platform/chromium-linux/fast/dom/Window/open-existing-pop-up-blocking-expected.png:
        * platform/chromium-linux/fast/dom/clone-node-dynamic-style-expected.png:
        * platform/chromium-linux/fast/dom/css-inline-style-important-expected.png:
        * platform/chromium-linux/fast/dom/isindex-001-expected.png:
        * platform/chromium-linux/fast/dom/isindex-002-expected.png:
        * platform/chromium-linux/fast/dom/row-inner-text-expected.png:
        * platform/chromium-linux/fast/dynamic/012-expected.png:
        * platform/chromium-linux/fast/dynamic/013-expected.png:
        * platform/chromium-linux/fast/dynamic/015-expected.png:
        * platform/chromium-linux/fast/dynamic/selection-highlight-adjust-expected.png:
        * platform/chromium-linux/fast/encoding/utf-16-big-endian-expected.png:
        * platform/chromium-linux/fast/encoding/utf-16-little-endian-expected.png:
        * platform/chromium-linux/fast/forms/006-expected.png:
        * platform/chromium-linux/fast/forms/007-expected.png:
        * platform/chromium-win-vista/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-win/editing/selection/7152-1-expected.png:
        * platform/chromium-win/editing/selection/7152-2-expected.png:
        * platform/chromium-win/editing/selection/click-start-of-line-expected.png:
        * platform/chromium-win/editing/selection/iframe-expected.png:
        * platform/chromium-win/editing/selection/image-before-linebreak-expected.png:
        * platform/chromium-win/editing/selection/inline-table-expected.png:
        * platform/chromium-win/editing/selection/mixed-editability-3-expected.png:
        * platform/chromium-win/editing/selection/mixed-editability-4-expected.png:
        * platform/chromium-win/editing/selection/mixed-editability-5-expected.png:
        * platform/chromium-win/editing/selection/mixed-editability-8-expected.png:
        * platform/chromium-win/editing/selection/mixed-editability-9-expected.png:
        * platform/chromium-win/editing/selection/move-by-line-001-expected.png:
        * platform/chromium-win/editing/selection/select-all-iframe-expected.png:
        * platform/chromium-win/editing/style/5017613-1-expected.png:
        * platform/chromium-win/editing/style/5017613-2-expected.png:
        * platform/chromium-win/editing/undo/4063751-expected.png:
        * platform/chromium-win/editing/unsupported-content/table-type-after-expected.png:
        * platform/chromium-win/editing/unsupported-content/table-type-before-expected.png:
        * platform/chromium-win/fast/backgrounds/background-inherit-color-bug-expected.png:
        * platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize17-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize18-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize19-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize20-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize21-expected.png:
        * platform/chromium-win/fast/backgrounds/size/backgroundSize22-expected.png:
        * platform/chromium-win/fast/block/basic/013-expected.png:
        * platform/chromium-win/fast/block/basic/018-expected.png:
        * platform/chromium-win/fast/block/basic/fieldset-stretch-to-legend-expected.png:
        * platform/chromium-win/fast/block/basic/quirk-percent-height-table-cell-expected.png:
        * platform/chromium-win/fast/block/basic/text-indent-rtl-expected.png:
        * platform/chromium-win/fast/block/float/015-expected.png:
        * platform/chromium-win/fast/block/float/016-expected.png:
        * platform/chromium-win/fast/block/float/025-expected.png:
        * platform/chromium-win/fast/block/float/026-expected.png:
        * platform/chromium-win/fast/block/float/027-expected.png:
        * platform/chromium-win/fast/block/float/028-expected.png:
        * platform/chromium-win/fast/block/float/032-expected.png:
        * platform/chromium-win/fast/block/float/float-avoidance-expected.png:
        * platform/chromium-win/fast/block/float/nopaint-after-layer-destruction-expected.png:
        * platform/chromium-win/fast/block/float/nopaint-after-layer-destruction2-expected.png:
        * platform/chromium-win/fast/block/float/table-relayout-expected.png:
        * platform/chromium-win/fast/block/float/width-update-after-clear-expected.png:
        * platform/chromium-win/fast/block/margin-collapse/empty-clear-blocks-expected.png:
        * platform/chromium-win/fast/block/positioning/height-change-expected.png:
        * platform/chromium-win/fast/block/positioning/leftmargin-topmargin-expected.png:
        * platform/chromium-win/fast/block/positioning/relayout-on-position-change-expected.png:
        * platform/chromium-win/fast/block/positioning/window-height-change-expected.png:
        * platform/chromium-win/fast/blockflow/fieldsets-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-01-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-02-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-03-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-04-expected.png:
        * platform/chromium-win/fast/borders/rtl-border-05-expected.png:
        * platform/chromium-win/fast/borders/svg-as-border-image-2-expected.png:
        * platform/chromium-win/fast/borders/svg-as-border-image-expected.png:
        * platform/chromium-win/fast/borders/table-borders-expected.png:
        * platform/chromium-win/fast/box-shadow/box-shadow-radius-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-box-shadow-radius-expected.png:
        * platform/chromium-win/fast/css-generated-content/014-expected.png:
        * platform/chromium-win/fast/css-generated-content/016-expected.png:
        * platform/chromium-win/fast/css-generated-content/hover-style-change-expected.png:
        * platform/chromium-win/fast/css/MarqueeLayoutTest-expected.png:
        * platform/chromium-win/fast/css/apple-prefix-expected.png:
        * platform/chromium-win/fast/css/border-radius-outline-offset-expected.png:
        * platform/chromium-win/fast/css/fieldset-display-row-expected.png:
        * platform/chromium-win/fast/css/find-next-layer-expected.png:
        * platform/chromium-win/fast/css/first-letter-detach-expected.png:
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.png:
        * platform/chromium-win/fast/css/hover-subselector-expected.png:
        * platform/chromium-win/fast/css/input-search-padding-expected.png:
        * platform/chromium-win/fast/css/list-outline-expected.png:
        * platform/chromium-win/fast/css/outline-auto-location-expected.png:
        * platform/chromium-win/fast/css/resize-corner-tracking-expected.png:
        * platform/chromium-win/fast/css/rtl-ordering-expected.png:
        * platform/chromium-win/fast/css/universal-hover-quirk-expected.png:
        * platform/chromium-win/fast/dom/HTMLLinkElement/pending-stylesheet-count-expected.png:
        * platform/chromium-win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png:
        * platform/chromium-win/fast/dom/HTMLTableElement/colSpan-expected.png:
        * platform/chromium-win/fast/dom/HTMLTableElement/createCaption-expected.png:
        * platform/chromium-win/fast/dom/Window/open-existing-pop-up-blocking-expected.png:
        * platform/chromium-win/fast/dom/attr_dead_doc-expected.png:
        * platform/chromium-win/fast/dom/clone-node-dynamic-style-expected.png:
        * platform/chromium-win/fast/dom/css-inline-style-important-expected.png:
        * platform/chromium-win/fast/dom/isindex-001-expected.png:
        * platform/chromium-win/fast/dom/isindex-002-expected.png:
        * platform/chromium-win/fast/dom/row-inner-text-expected.png:
        * platform/chromium-win/fast/dynamic/012-expected.png:
        * platform/chromium-win/fast/dynamic/013-expected.png:
        * platform/chromium-win/fast/dynamic/015-expected.png:
        * platform/chromium-win/fast/dynamic/selection-highlight-adjust-expected.png:
        * platform/chromium-win/fast/encoding/utf-16-big-endian-expected.png:
        * platform/chromium-win/fast/encoding/utf-16-little-endian-expected.png:
        * platform/chromium-win/fast/forms/006-expected.png:
        * platform/chromium-win/fast/forms/007-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Fix test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update win/linux pixel baselines for r90701 (part 2/??)

        * platform/chromium-linux/css1/box_properties/padding_left_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_right-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_right_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_top-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_top_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/width-expected.png:
        * platform/chromium-linux/css1/cascade/cascade_order-expected.png:
        * platform/chromium-linux/css1/cascade/important-expected.png:
        * platform/chromium-linux/css1/classification/display-expected.png:
        * platform/chromium-linux/css1/classification/list_style-expected.png:
        * platform/chromium-linux/css1/classification/list_style_image-expected.png:
        * platform/chromium-linux/css1/classification/list_style_position-expected.png:
        * platform/chromium-linux/css1/classification/list_style_type-expected.png:
        * platform/chromium-linux/css1/classification/white_space-expected.png:
        * platform/chromium-linux/css1/color_and_background/background-expected.png:
        * platform/chromium-linux/css1/color_and_background/background_attachment-expected.png:
        * platform/chromium-linux/css1/color_and_background/background_color-expected.png:
        * platform/chromium-linux/css1/color_and_background/background_image-expected.png:
        * platform/chromium-linux/css1/color_and_background/background_position-expected.png:
        * platform/chromium-linux/css1/color_and_background/background_repeat-expected.png:
        * platform/chromium-linux/css1/color_and_background/color-expected.png:
        * platform/chromium-linux/css1/font_properties/font-expected.png:
        * platform/chromium-linux/css1/font_properties/font_family-expected.png:
        * platform/chromium-linux/css1/font_properties/font_size-expected.png:
        * platform/chromium-linux/css1/font_properties/font_style-expected.png:
        * platform/chromium-linux/css1/font_properties/font_variant-expected.png:
        * platform/chromium-linux/css1/font_properties/font_weight-expected.png:
        * platform/chromium-linux/css1/formatting_model/canvas-expected.png:
        * platform/chromium-linux/css1/formatting_model/floating_elements-expected.png:
        * platform/chromium-linux/css1/formatting_model/height_of_lines-expected.png:
        * platform/chromium-linux/css1/formatting_model/inline_elements-expected.png:
        * platform/chromium-linux/css1/formatting_model/replaced_elements-expected.png:
        * platform/chromium-linux/css1/formatting_model/vertical_formatting-expected.png:
        * platform/chromium-linux/css1/pseudo/anchor-expected.png:
        * platform/chromium-linux/css1/pseudo/firstletter-expected.png:
        * platform/chromium-linux/css1/pseudo/firstline-expected.png:
        * platform/chromium-linux/css1/pseudo/multiple_pseudo_elements-expected.png:
        * platform/chromium-linux/css1/pseudo/pseudo_elements_in_selectors-expected.png:
        * platform/chromium-linux/css1/text_properties/letter_spacing-expected.png:
        * platform/chromium-linux/css1/text_properties/line_height-expected.png:
        * platform/chromium-linux/css1/text_properties/text_align-expected.png:
        * platform/chromium-linux/css1/text_properties/text_decoration-expected.png:
        * platform/chromium-linux/css1/text_properties/text_indent-expected.png:
        * platform/chromium-linux/css1/text_properties/text_transform-expected.png:
        * platform/chromium-linux/css1/text_properties/vertical_align-expected.png:
        * platform/chromium-linux/css1/text_properties/word_spacing-expected.png:
        * platform/chromium-linux/css1/units/color_units-expected.png:
        * platform/chromium-linux/css1/units/length_units-expected.png:
        * platform/chromium-linux/css1/units/percentage_units-expected.png:
        * platform/chromium-linux/css1/units/urls-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5516-brdr-c-00-a-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5516-ibrdr-c-00-a-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5522-brdr-00-b-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5522-ibrdr-00-a-expected.png:
        * platform/chromium-linux/css3/css3-modsel-33-expected.png:
        * platform/chromium-linux/editing/deleting/5099303-expected.png:
        * platform/chromium-linux/editing/deleting/5126166-expected.png:
        * platform/chromium-linux/editing/deleting/5206311-1-expected.png:
        * platform/chromium-linux/editing/deleting/5433862-2-expected.png:
        * platform/chromium-linux/editing/deleting/5483370-expected.png:
        * platform/chromium-linux/editing/deleting/table-cells-expected.png:
        * platform/chromium-linux/editing/execCommand/5481523-expected.png:
        * platform/chromium-linux/editing/execCommand/create-list-with-hr-expected.png:
        * platform/chromium-linux/editing/execCommand/find-after-replace-expected.png:
        * platform/chromium-linux/editing/execCommand/insertHorizontalRule-expected.png:
        * platform/chromium-linux/editing/execCommand/paste-1-expected.png:
        * platform/chromium-linux/editing/execCommand/paste-2-expected.png:
        * platform/chromium-linux/editing/inserting/4278698-expected.png:
        * platform/chromium-linux/editing/inserting/insert-paragraph-01-expected.png:
        * platform/chromium-linux/editing/inserting/insert-paragraph-02-expected.png:
        * platform/chromium-linux/editing/inserting/insert-paragraph-03-expected.png:
        * platform/chromium-linux/editing/inserting/insert-paragraph-04-expected.png:
        * platform/chromium-linux/editing/inserting/paragraph-separator-in-table-1-expected.png:
        * platform/chromium-linux/editing/inserting/paragraph-separator-in-table-2-expected.png:
        * platform/chromium-linux/editing/pasteboard/4076267-2-expected.png:
        * platform/chromium-linux/editing/pasteboard/4076267-3-expected.png:
        * platform/chromium-linux/editing/pasteboard/4076267-expected.png:
        * platform/chromium-linux/editing/pasteboard/5156401-1-expected.png:
        * platform/chromium-linux/editing/pasteboard/5387578-expected.png:
        * platform/chromium-linux/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png:
        * platform/chromium-linux/editing/pasteboard/drop-text-without-selection-expected.png:
        * platform/chromium-linux/editing/pasteboard/merge-end-table-expected.png:
        * platform/chromium-linux/editing/pasteboard/subframe-dragndrop-1-expected.png:
        * platform/chromium-linux/editing/pasteboard/undoable-fragment-removes-expected.png:
        * platform/chromium-linux/editing/selection/4402375-expected.png:
        * platform/chromium-linux/editing/selection/4776665-expected.png:
        * platform/chromium-linux/editing/selection/4818145-expected.png:
        * platform/chromium-linux/editing/selection/4889598-expected.png:
        * platform/chromium-linux/editing/selection/4895428-2-expected.png:
        * platform/chromium-linux/editing/selection/4960137-expected.png:
        * platform/chromium-linux/editing/selection/4975120-expected.png:
        * platform/chromium-linux/editing/selection/5057506-2-expected.png:
        * platform/chromium-linux/editing/selection/5057506-expected.png:
        * platform/chromium-linux/editing/selection/6476-expected.png:
        * platform/chromium-win/css1/box_properties/padding_left_inline-expected.png:
        * platform/chromium-win/css1/box_properties/padding_right-expected.png:
        * platform/chromium-win/css1/box_properties/padding_right_inline-expected.png:
        * platform/chromium-win/css1/box_properties/padding_top-expected.png:
        * platform/chromium-win/css1/box_properties/padding_top_inline-expected.png:
        * platform/chromium-win/css1/box_properties/width-expected.png:
        * platform/chromium-win/css1/cascade/cascade_order-expected.png:
        * platform/chromium-win/css1/cascade/important-expected.png:
        * platform/chromium-win/css1/classification/display-expected.png:
        * platform/chromium-win/css1/classification/list_style-expected.png:
        * platform/chromium-win/css1/classification/list_style_image-expected.png:
        * platform/chromium-win/css1/classification/list_style_position-expected.png:
        * platform/chromium-win/css1/classification/list_style_type-expected.png:
        * platform/chromium-win/css1/classification/white_space-expected.png:
        * platform/chromium-win/css1/color_and_background/background-expected.png:
        * platform/chromium-win/css1/color_and_background/background_attachment-expected.png:
        * platform/chromium-win/css1/color_and_background/background_color-expected.png:
        * platform/chromium-win/css1/color_and_background/background_image-expected.png:
        * platform/chromium-win/css1/color_and_background/background_position-expected.png:
        * platform/chromium-win/css1/color_and_background/background_repeat-expected.png:
        * platform/chromium-win/css1/color_and_background/color-expected.png:
        * platform/chromium-win/css1/font_properties/font-expected.png:
        * platform/chromium-win/css1/font_properties/font_family-expected.png:
        * platform/chromium-win/css1/font_properties/font_size-expected.png:
        * platform/chromium-win/css1/font_properties/font_style-expected.png:
        * platform/chromium-win/css1/font_properties/font_variant-expected.png:
        * platform/chromium-win/css1/font_properties/font_weight-expected.png:
        * platform/chromium-win/css1/formatting_model/canvas-expected.png:
        * platform/chromium-win/css1/formatting_model/floating_elements-expected.png:
        * platform/chromium-win/css1/formatting_model/height_of_lines-expected.png:
        * platform/chromium-win/css1/formatting_model/inline_elements-expected.png:
        * platform/chromium-win/css1/formatting_model/replaced_elements-expected.png:
        * platform/chromium-win/css1/formatting_model/vertical_formatting-expected.png:
        * platform/chromium-win/css1/pseudo/anchor-expected.png:
        * platform/chromium-win/css1/pseudo/firstletter-expected.png:
        * platform/chromium-win/css1/pseudo/firstline-expected.png:
        * platform/chromium-win/css1/pseudo/multiple_pseudo_elements-expected.png:
        * platform/chromium-win/css1/pseudo/pseudo_elements_in_selectors-expected.png:
        * platform/chromium-win/css1/text_properties/letter_spacing-expected.png:
        * platform/chromium-win/css1/text_properties/line_height-expected.png:
        * platform/chromium-win/css1/text_properties/text_align-expected.png:
        * platform/chromium-win/css1/text_properties/text_decoration-expected.png:
        * platform/chromium-win/css1/text_properties/text_indent-expected.png:
        * platform/chromium-win/css1/text_properties/text_transform-expected.png:
        * platform/chromium-win/css1/text_properties/vertical_align-expected.png:
        * platform/chromium-win/css1/text_properties/word_spacing-expected.png:
        * platform/chromium-win/css1/units/color_units-expected.png:
        * platform/chromium-win/css1/units/length_units-expected.png:
        * platform/chromium-win/css1/units/percentage_units-expected.png:
        * platform/chromium-win/css1/units/urls-expected.png:
        * platform/chromium-win/css2.1/t0805-c5516-brdr-c-00-a-expected.png:
        * platform/chromium-win/css2.1/t0805-c5516-ibrdr-c-00-a-expected.png:
        * platform/chromium-win/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-win/css2.1/t0805-c5522-brdr-00-b-expected.png:
        * platform/chromium-win/css2.1/t0805-c5522-ibrdr-00-a-expected.png:
        * platform/chromium-win/css3/css3-modsel-33-expected.png:
        * platform/chromium-win/editing/deleting/5099303-expected.png:
        * platform/chromium-win/editing/deleting/5126166-expected.png:
        * platform/chromium-win/editing/deleting/5206311-1-expected.png:
        * platform/chromium-win/editing/deleting/5433862-2-expected.png:
        * platform/chromium-win/editing/deleting/5483370-expected.png:
        * platform/chromium-win/editing/deleting/table-cells-expected.png:
        * platform/chromium-win/editing/execCommand/5481523-expected.png:
        * platform/chromium-win/editing/execCommand/create-list-with-hr-expected.png:
        * platform/chromium-win/editing/execCommand/find-after-replace-expected.png:
        * platform/chromium-win/editing/execCommand/insertHorizontalRule-expected.png:
        * platform/chromium-win/editing/execCommand/paste-1-expected.png:
        * platform/chromium-win/editing/execCommand/paste-2-expected.png:
        * platform/chromium-win/editing/inserting/4278698-expected.png:
        * platform/chromium-win/editing/inserting/insert-paragraph-01-expected.png:
        * platform/chromium-win/editing/inserting/insert-paragraph-02-expected.png:
        * platform/chromium-win/editing/inserting/insert-paragraph-03-expected.png:
        * platform/chromium-win/editing/inserting/insert-paragraph-04-expected.png:
        * platform/chromium-win/editing/inserting/paragraph-separator-in-table-1-expected.png:
        * platform/chromium-win/editing/inserting/paragraph-separator-in-table-2-expected.png:
        * platform/chromium-win/editing/pasteboard/4076267-2-expected.png:
        * platform/chromium-win/editing/pasteboard/4076267-3-expected.png:
        * platform/chromium-win/editing/pasteboard/4076267-expected.png:
        * platform/chromium-win/editing/pasteboard/5156401-1-expected.png:
        * platform/chromium-win/editing/pasteboard/5387578-expected.png:
        * platform/chromium-win/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png:
        * platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.png:
        * platform/chromium-win/editing/pasteboard/merge-end-table-expected.png:
        * platform/chromium-win/editing/pasteboard/subframe-dragndrop-1-expected.png:
        * platform/chromium-win/editing/pasteboard/undoable-fragment-removes-expected.png:
        * platform/chromium-win/editing/selection/4402375-expected.png:
        * platform/chromium-win/editing/selection/4776665-expected.png:
        * platform/chromium-win/editing/selection/4818145-expected.png:
        * platform/chromium-win/editing/selection/4889598-expected.png:
        * platform/chromium-win/editing/selection/4895428-2-expected.png:
        * platform/chromium-win/editing/selection/4960137-expected.png:
        * platform/chromium-win/editing/selection/4975120-expected.png:
        * platform/chromium-win/editing/selection/5057506-2-expected.png:
        * platform/chromium-win/editing/selection/5057506-expected.png:
        * platform/chromium-win/editing/selection/6476-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Add win/linux pixel baselines for r90701 (part 1/20)

        * platform/chromium-linux/css1/basic/class_as_selector-expected.png:
        * platform/chromium-linux/css1/basic/comments-expected.png:
        * platform/chromium-linux/css1/basic/containment-expected.png:
        * platform/chromium-linux/css1/basic/contextual_selectors-expected.png:
        * platform/chromium-linux/css1/basic/grouping-expected.png:
        * platform/chromium-linux/css1/basic/id_as_selector-expected.png:
        * platform/chromium-linux/css1/basic/inheritance-expected.png:
        * platform/chromium-linux/css1/box_properties/border-expected.png:
        * platform/chromium-linux/css1/box_properties/border_bottom-expected.png:
        * platform/chromium-linux/css1/box_properties/border_bottom_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_bottom_width-expected.png:
        * platform/chromium-linux/css1/box_properties/border_bottom_width_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_color-expected.png:
        * platform/chromium-linux/css1/box_properties/border_color_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_left-expected.png:
        * platform/chromium-linux/css1/box_properties/border_left_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_left_width-expected.png:
        * platform/chromium-linux/css1/box_properties/border_left_width_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_right-expected.png:
        * platform/chromium-linux/css1/box_properties/border_right_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_right_width-expected.png:
        * platform/chromium-linux/css1/box_properties/border_right_width_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_top-expected.png:
        * platform/chromium-linux/css1/box_properties/border_top_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_top_width-expected.png:
        * platform/chromium-linux/css1/box_properties/border_top_width_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/border_width-expected.png:
        * platform/chromium-linux/css1/box_properties/border_width_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/clear-expected.png:
        * platform/chromium-linux/css1/box_properties/clear_float-expected.png:
        * platform/chromium-linux/css1/box_properties/float-expected.png:
        * platform/chromium-linux/css1/box_properties/float_elements_in_series-expected.png:
        * platform/chromium-linux/css1/box_properties/float_margin-expected.png:
        * platform/chromium-linux/css1/box_properties/float_on_text_elements-expected.png:
        * platform/chromium-linux/css1/box_properties/height-expected.png:
        * platform/chromium-linux/css1/box_properties/margin-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_bottom-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_bottom_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_left-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_left_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_right-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_right_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_top-expected.png:
        * platform/chromium-linux/css1/box_properties/margin_top_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/padding-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_bottom-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_bottom_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_inline-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_left-expected.png:
        * platform/chromium-win/css1/basic/class_as_selector-expected.png:
        * platform/chromium-win/css1/basic/comments-expected.png:
        * platform/chromium-win/css1/basic/containment-expected.png:
        * platform/chromium-win/css1/basic/contextual_selectors-expected.png:
        * platform/chromium-win/css1/basic/grouping-expected.png:
        * platform/chromium-win/css1/basic/id_as_selector-expected.png:
        * platform/chromium-win/css1/basic/inheritance-expected.png:
        * platform/chromium-win/css1/box_properties/border-expected.png:
        * platform/chromium-win/css1/box_properties/border_bottom-expected.png:
        * platform/chromium-win/css1/box_properties/border_bottom_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_bottom_width-expected.png:
        * platform/chromium-win/css1/box_properties/border_bottom_width_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_color-expected.png:
        * platform/chromium-win/css1/box_properties/border_color_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_left-expected.png:
        * platform/chromium-win/css1/box_properties/border_left_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_left_width-expected.png:
        * platform/chromium-win/css1/box_properties/border_left_width_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_right-expected.png:
        * platform/chromium-win/css1/box_properties/border_right_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_right_width-expected.png:
        * platform/chromium-win/css1/box_properties/border_right_width_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_top-expected.png:
        * platform/chromium-win/css1/box_properties/border_top_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_top_width-expected.png:
        * platform/chromium-win/css1/box_properties/border_top_width_inline-expected.png:
        * platform/chromium-win/css1/box_properties/border_width-expected.png:
        * platform/chromium-win/css1/box_properties/border_width_inline-expected.png:
        * platform/chromium-win/css1/box_properties/clear-expected.png:
        * platform/chromium-win/css1/box_properties/clear_float-expected.png:
        * platform/chromium-win/css1/box_properties/float-expected.png:
        * platform/chromium-win/css1/box_properties/float_elements_in_series-expected.png:
        * platform/chromium-win/css1/box_properties/float_margin-expected.png:
        * platform/chromium-win/css1/box_properties/float_on_text_elements-expected.png:
        * platform/chromium-win/css1/box_properties/height-expected.png:
        * platform/chromium-win/css1/box_properties/margin-expected.png:
        * platform/chromium-win/css1/box_properties/margin_bottom-expected.png:
        * platform/chromium-win/css1/box_properties/margin_bottom_inline-expected.png:
        * platform/chromium-win/css1/box_properties/margin_inline-expected.png:
        * platform/chromium-win/css1/box_properties/margin_left-expected.png:
        * platform/chromium-win/css1/box_properties/margin_left_inline-expected.png:
        * platform/chromium-win/css1/box_properties/margin_right-expected.png:
        * platform/chromium-win/css1/box_properties/margin_right_inline-expected.png:
        * platform/chromium-win/css1/box_properties/margin_top-expected.png:
        * platform/chromium-win/css1/box_properties/margin_top_inline-expected.png:
        * platform/chromium-win/css1/box_properties/padding-expected.png:
        * platform/chromium-win/css1/box_properties/padding_bottom-expected.png:
        * platform/chromium-win/css1/box_properties/padding_bottom_inline-expected.png:
        * platform/chromium-win/css1/box_properties/padding_inline-expected.png:
        * platform/chromium-win/css1/box_properties/padding_left-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Windows expectation updates for r90701

        * platform/chromium/test_expectations.txt:

2011-07-10  Kenichi Ishibashi  <bashi@chromium.org>

        Let plugins participate in form submission
        https://bugs.webkit.org/show_bug.cgi?id=13061

        Adds a test that checks getting form value from plugins.
        This test will pass only mac Leopard for now.

        Reviewed by Anders Carlsson.

        * platform/chromium/test_expectations.txt: Added an entry for plugins/form-value.html.
        * platform/gtk/Skipped: Ditto.
        * platform/mac-snowleopard/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.
        * platform/wk2/Skipped: Ditto.
        * plugins/form-value-expected.txt: Added.
        * plugins/form-value.html: Added.

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] More expectation fixes.

        * platform/chromium/test_expectations.txt:

2011-07-10  James Robinson  <jamesr@chromium.org>

        [chromium] Add more test expectations for r90701

        * platform/chromium/test_expectations.txt:

2011-07-10  Tom Hudson  <tomhudson@google.com>

        Reviewed by James Robinson.

        GraphicsContextSkia::drawConvexPolygon doesn't pay attention to shouldAntialias
        https://bugs.webkit.org/show_bug.cgi?id=61369

        * platform/chromium/test_expectations.txt: Temporarily add roughly
        1100 images that were incorrectly being antialiased; will remove
        once they've been rebaselined off of the bots.

2011-07-10  Adam Barth  <abarth@webkit.org>

        Optmize LayoutTest resutls by removing redundant results.

        Rubber-stamped by Eric Seidel.

        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/overflow/clip-descendents-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-add-remove-child-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-resize-expected.txt: Removed.
        * platform/chromium-linux-x86/fast/backgrounds/border-radius-split-background-expected.png: Removed.
        * platform/chromium-linux-x86/fast/backgrounds/border-radius-split-background-image-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/border-antialiasing-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/border-antialiasing-expected.txt: Removed.
        * platform/chromium-linux-x86/fast/borders/border-radius-constraints-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/border-radius-huge-assert-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/border-radius-split-inline-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusAllStylesAllCorners-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusArcs01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed02-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed03-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDotted01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble02-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble03-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusInset01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusInvalidColor-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusOutset01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid01-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid02-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid03-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid04-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/different-color-borders-expected.png: Removed.
        * platform/chromium-linux-x86/fast/borders/fieldsetBorderRadius-expected.png: Removed.
        * platform/chromium-linux-x86/fast/box-shadow/inset-box-shadows-expected.png: Removed.
        * platform/chromium-linux-x86/fast/box-shadow/inset-expected.png: Removed.
        * platform/chromium-linux-x86/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Removed.
        * platform/chromium-linux-x86/fast/box-shadow/spread-multiple-inset-expected.png: Removed.
        * platform/chromium-linux-x86/fast/clip/overflow-border-radius-clip-expected.png: Removed.
        * platform/chromium-linux-x86/fast/css/last-of-type-pseudo-class-expected.png: Removed.
        * platform/chromium-linux-x86/fast/css/nested-rounded-corners-expected.png: Removed.
        * platform/chromium-linux-x86/fast/gradients/css3-linear-right-angle-gradients-expected.png: Removed.
        * platform/chromium-linux-x86/fast/gradients/css3-repeating-linear-gradients2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-child-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-child-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-details-child-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-details-child-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-summary-child-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-add-summary-child-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-nested-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-nested-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-remove-child-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-remove-child-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-remove-summary-child-1-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-remove-summary-child-2-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-replace-summary-child-expected.png: Removed.
        * platform/chromium-linux-x86/fast/html/details-replace-summary-child-expected.txt: Removed.
        * platform/chromium-linux-x86/fast/html/details-replace-text-expected.png: Removed.
        * platform/chromium-linux-x86/fast/overflow/border-radius-clipping-expected.png: Removed.
        * platform/chromium-linux-x86/fast/repaint/border-radius-repaint-expected.png: Removed.
        * platform/chromium-linux-x86/fast/replaced/outline-replaced-elements-expected.png: Removed.
        * platform/chromium-linux-x86/fast/transforms/shadows-expected.png: Removed.
        * platform/chromium-linux-x86/fullscreen/full-screen-iframe-zIndex-expected.png: Removed.
        * platform/chromium-linux-x86/fullscreen/full-screen-zIndex-after-expected.png: Removed.
        * platform/chromium-linux-x86/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Removed.
        * platform/chromium-linux-x86/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Removed.
        * platform/chromium-linux-x86/media/video-zoom-controls-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png: Removed.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png: Removed.
        * platform/chromium-linux-x86/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Removed.
        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/as-object/object-box-sizing-no-width-height-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/dasharrayOrigin-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/embedding-external-svgs-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/embedding-external-svgs-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/fractional-rects-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/gradient-rotated-bbox-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/invalid-fill-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/invalid-fill-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/invalid-fill-hex-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/invalid-stroke-hex-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/invalid-uri-stroke-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-no-size-attributes-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-height-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-height-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-height-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-height-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/custom/rounded-rects-expected.png: Removed.
        * platform/chromium-linux-x86/svg/custom/svg-fonts-in-html-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Removed.
        * platform/chromium-linux-x86/svg/filters/feBlend-invalid-mode-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/filters/feConvolveFilter-y-bounds-expected.png: Removed.
        * platform/chromium-linux-x86/svg/filters/feDropShadow-expected.png: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/001-expected.png: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/001-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/002-expected.png: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/002-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/003-expected.png: Removed.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/003-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/in-html/by-reference-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/text/scaling-font-with-geometric-precision-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/wicd/rightsizing-grid-expected.png: Removed.
        * platform/chromium-linux-x86/svg/wicd/rightsizing-grid-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-a-expected.png: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-a-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-b-expected.png: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-b-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image1-expected.png: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image1-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image2-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Removed.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-foreignObject-expected.txt: Removed.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Removed.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/drag-select-1-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/range-between-block-and-inline-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-2-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-3-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.txt: Removed.
        * platform/chromium-linux/fast/block/positioning/vertical-rl/001-expected.txt: Removed.
        * platform/chromium-linux/fast/borders/border-antialiasing-expected.txt: Removed.
        * platform/chromium-linux/fast/css/percentage-non-integer-expected.txt: Removed.
        * platform/chromium-linux/fast/css/preserve-user-specified-zoom-level-on-reload-expected.txt: Removed.
        * platform/chromium-linux/fast/dom/DeviceOrientation/window-property-expected.txt: Removed.
        * platform/chromium-linux/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt: Removed.
        * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-with-child-crash-expected.txt: Removed.
        * platform/chromium-linux/fast/dom/Window/window-properties-device-orientation-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/cursor-at-editable-content-boundary-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/form-added-to-table-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/input-readonly-autoscroll-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/preserveFormDuringResidualStyle-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/select-background-none-expected.txt: Removed.
        * platform/chromium-linux/fast/gradients/css3-repeating-linear-gradients2-expected.png: Removed.
        * platform/chromium-linux/fast/inline-block/inline-block-vertical-align-expected.txt: Removed.
        * platform/chromium-linux/fast/lists/005-vertical-expected.txt: Removed.
        * platform/chromium-linux/fast/lists/006-vertical-expected.txt: Removed.
        * platform/chromium-linux/fast/lists/007-vertical-expected.txt: Removed.
        * platform/chromium-linux/fast/lists/008-vertical-expected.txt: Removed.
        * platform/chromium-linux/fast/lists/009-vertical-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/column-rules-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/layers-in-multicol-expected.txt: Removed.
        * platform/chromium-linux/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt: Removed.
        * platform/chromium-linux/fast/table/fixed-table-non-cell-in-row-expected.txt: Removed.
        * platform/chromium-linux/fast/table/inline-form-assert-expected.txt: Removed.
        * platform/chromium-linux/fast/table/insert-cell-before-form-expected.txt: Removed.
        * platform/chromium-linux/fast/table/insert-row-before-form-expected.txt: Removed.
        * platform/chromium-linux/fast/table/table-and-parts-outline-expected.txt: Removed.
        * platform/chromium-linux/fast/text/capitalize-empty-generated-string-expected.txt: Removed.
        * platform/chromium-linux/fast/text/international/bidi-linebreak-001-expected.txt: Removed.
        * platform/chromium-linux/fast/text/international/bidi-linebreak-002-expected.txt: Removed.
        * platform/chromium-linux/fast/text/international/bidi-linebreak-003-expected.txt: Removed.
        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-expected.txt: Removed.
        * platform/chromium-linux/fast/text/justify-padding-distribution-expected.png: Removed.
        * platform/chromium-linux/fast/text/softHyphen-expected.txt: Removed.
        * platform/chromium-linux/fast/text/word-break-soft-hyphen-expected.txt: Removed.
        * platform/chromium-linux/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/manifest-redirect-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/resource-redirect-2-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/resource-redirect-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/wrong-content-type-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/wrong-signature-2-expected.txt: Removed.
        * platform/chromium-linux/http/tests/appcache/wrong-signature-expected.txt: Removed.
        * platform/chromium-linux/http/tests/loading/bad-scheme-subframe-expected.txt: Removed.
        * platform/chromium-linux/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Removed.
        * platform/chromium-linux/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Removed.
        * platform/chromium-linux/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Removed.
        * platform/chromium-linux/http/tests/security/xss-DENIED-frame-name-expected.txt: Removed.
        * platform/chromium-linux/platform/chromium/fast/text/text-stroke-with-border-expected.txt: Removed.
        * platform/chromium-linux/printing/page-count-relayout-shrink-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1/masking-path-05-f-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Removed.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/chromium-linux/svg/batik/text/textDecoration2-expected.txt: Removed.
        * platform/chromium-linux/svg/batik/text/textLayout-expected.txt: Removed.
        * platform/chromium-linux/svg/batik/text/textPCDATA-expected.txt: Removed.
        * platform/chromium-linux/svg/css/path-gradient-stroke-shadow-expected.png: Removed.
        * platform/chromium-linux/svg/custom/dominant-baseline-hanging-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/embedding-external-svgs-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/image-rescale-expected.png: Removed.
        * platform/chromium-linux/svg/custom/image-rescale-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/invalid-fill-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/invalid-fill-hex-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/invalid-stroke-hex-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/invalid-uri-stroke-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-no-size-attributes-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-height-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-width-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-no-width-height-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-linux/svg/custom/small-rect-scale-expected.png: Removed.
        * platform/chromium-linux/svg/custom/text-linking-expected.txt: Removed.
        * platform/chromium-linux/svg/filters/feBlend-invalid-mode-expected.txt: Removed.
        * platform/chromium-linux/svg/filters/feConvolveFilter-y-bounds-expected.png: Removed.
        * platform/chromium-linux/svg/filters/feDisplacementMap-expected.png: Removed.
        * platform/chromium-linux/svg/filters/filter-on-filter-for-text-expected.txt: Removed.
        * platform/chromium-linux/svg/filters/filter-on-tspan-expected.txt: Removed.
        * platform/chromium-linux/svg/hixie/intrinsic/001-expected.txt: Removed.
        * platform/chromium-linux/svg/hixie/intrinsic/002-expected.txt: Removed.
        * platform/chromium-linux/svg/in-html/by-reference-expected.txt: Removed.
        * platform/chromium-linux/svg/text/scaling-font-with-geometric-precision-expected.txt: Removed.
        * platform/chromium-linux/svg/wicd/test-rightsizing-a-expected.txt: Removed.
        * platform/chromium-linux/svg/wicd/test-rightsizing-b-expected.txt: Removed.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image1-expected.txt: Removed.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image2-expected.txt: Removed.
        * platform/chromium-linux/svg/zoom/page/zoom-foreignObject-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/adforce_imgis_com-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug16012-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug2516-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug30559-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug32447-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug34538-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug78162-expected.txt: Removed.
        * platform/chromium-linux/tables/mozilla/bugs/bug96343-expected.txt: Removed.
        * platform/chromium-linux/transforms/2d/transform-borderbox-expected.txt: Removed.
        * platform/chromium-linux/transforms/2d/transform-origin-borderbox-expected.txt: Removed.
        * platform/chromium-linux/websocket/tests/bad-sub-protocol-control-chars-expected.txt: Removed.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-04-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-04-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/editing/deleting/delete-tab-003-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/deleting/delete-ws-fixup-001-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/inserting/insert-tab-003-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/css/focus-ring-detached-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/css/focus-ring-multiline-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/css/font-face-default-font-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/forms/file-input-direction-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-AN-after-L-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-AN-after-empty-run-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-CS-after-AN-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/bidi-neutral-run-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/text/international/thai-baht-space-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/painting-marker-03-f-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/circular-marker-reference-2-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/linking-a-03-b-preserveAspectRatio-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/linking-a-03-b-viewTarget-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/linking-a-03-b-zoomAndPan-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/non-circular-marker-reference-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/non-scaling-stroke-markers-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/stroked-pattern-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/text-rotated-gradient-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/custom/use-detach-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/use-detach-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/hixie/links/001-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/text/bidi-text-query-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/text/bidi-tspans-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/text/small-fonts-2-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Removed.
        * platform/chromium-mac/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt: Removed.
        * platform/chromium-mac/fast/block/basic/truncation-rtl-expected.txt: Removed.
        * platform/chromium-mac/fast/block/positioning/rtl-fixed-positioning-expected.txt: Removed.
        * platform/chromium-mac/fast/borders/table-borders-expected.txt: Removed.
        * platform/chromium-mac/fast/css/background-clip-values-expected.png: Removed.
        * platform/chromium-mac/fast/css/stylesheet-candidate-nodes-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/getElementsByClassName/011-expected.txt: Removed.
        * platform/chromium-mac/fast/forms/input-number-unacceptable-style-expected.txt: Removed.
        * platform/chromium-mac/fast/forms/select-background-none-expected.txt: Removed.
        * platform/chromium-mac/fast/invalid/missing-end-tag-expected.txt: Removed.
        * platform/chromium-mac/fast/js/console-non-string-values-expected.txt: Removed.
        * platform/chromium-mac/fast/js/number-toExponential-expected.txt: Removed.
        * platform/chromium-mac/fast/js/number-toprecision-expected.txt: Removed.
        * platform/chromium-mac/fast/lists/003-vertical-expected.txt: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt: Removed.
        * platform/chromium-mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt: Removed.
        * platform/chromium-mac/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt: Removed.
        * platform/chromium-mac/fast/parser/external-entities-expected.txt: Removed.
        * platform/chromium-mac/fast/parser/xhtml-alternate-entities-expected.txt: Removed.
        * platform/chromium-mac/fast/repaint/inline-vertical-rl-overflow-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/after-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/after-table-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/before-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/before-table-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/text/find-kana-expected.txt: Removed.
        * platform/chromium-mac/fast/text/justify-ideograph-simple-expected.png: Removed.
        * platform/chromium-mac/fast/url/path-url-expected.txt: Removed.
        * platform/chromium-mac/fast/url/scheme-expected.txt: Removed.
        * platform/chromium-mac/fast/xmlhttprequest/xmlhttprequest-nonexistent-file-expected.txt: Removed.
        * platform/chromium-mac/fast/xsl/mozilla-tests-expected.txt: Removed.
        * platform/chromium-mac/fast/xsl/xslt-extra-content-at-end-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/cross-frame-access-get-expected.txt: Removed.
        * platform/chromium-mac/http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char-expected.txt: Removed.
        * platform/chromium-mac/http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.12.1.1-0-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.12.1.1-0-3-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.12.2-0-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.12.3-0-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.10-0-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.10-0-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.10-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.10-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-0-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-0-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-0-3-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-10-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-11-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-12-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-13-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-14-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-15-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-16-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-17-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-18-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-19-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-2-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-20-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-21-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-3-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-4-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-5-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-6-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-7-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-8-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.13-2-9-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.14-2-4-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.3-4-22-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.3-4-25-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.2.3.6-4-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-3-26-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-3-27-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-5-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-5-12-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-5-14-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-5-16-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.4.4.15-8-9-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-21-t-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-29-b-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/shapes-ellipse-01-t-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/struct-image-10-t-expected.png: Removed.
        * platform/chromium-mac/svg/custom/gradient-stroke-width-expected.txt: Removed.
        * platform/chromium-mac/svg/custom/use-invalid-pattern-expected.txt: Removed.
        * platform/chromium-mac/svg/custom/use-invalid-style-expected.txt: Removed.
        * platform/chromium-mac/svg/text/bidi-embedded-direction-expected.png: Removed.
        * platform/chromium-mac/svg/text/bidi-embedded-direction-expected.txt: Removed.
        * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug56024-expected.txt: Removed.
        * platform/chromium-win-vista/fast/borders/border-antialiasing-expected.png: Removed.
        * platform/chromium-win-vista/fast/borders/border-antialiasing-expected.txt: Removed.
        * platform/chromium-win-vista/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt: Removed.
        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.txt: Removed.
        * platform/chromium-win-vista/fast/gradients/css3-linear-right-angle-gradients-expected.png: Removed.
        * platform/chromium-win-vista/fast/gradients/css3-repeating-linear-gradients2-expected.png: Removed.
        * platform/chromium-win-vista/fullscreen/full-screen-iframe-zIndex-expected.png: Removed.
        * platform/chromium-win-vista/fullscreen/full-screen-zIndex-after-expected.png: Removed.
        * platform/chromium-win-vista/http/tests/appcache/manifest-redirect-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/appcache/resource-redirect-2-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/appcache/resource-redirect-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/appcache/wrong-content-type-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/appcache/wrong-signature-2-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/appcache/wrong-signature-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Removed.
        * platform/chromium-win-vista/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Removed.
        * platform/chromium-win-vista/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Removed.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Removed.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Removed.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-relative-size-expected.png: Removed.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-relative-size-expected.txt: Removed.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-viewBox-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/embedding-external-svgs-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/embedding-external-svgs-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-fill-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-fill-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-fill-hex-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-fill-hex-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-stroke-hex-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-stroke-hex-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-uri-stroke-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/invalid-uri-stroke-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-no-size-attributes-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-height-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-height-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-height-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-height-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Removed.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
        * platform/chromium-win-vista/svg/custom/small-rect-scale-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Removed.
        * platform/chromium-win-vista/svg/filters/feBlend-invalid-mode-expected.txt: Removed.
        * platform/chromium-win-vista/svg/filters/feConvolveFilter-y-bounds-expected.png: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/001-expected.png: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/001-expected.txt: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/002-expected.png: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/002-expected.txt: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/003-expected.png: Removed.
        * platform/chromium-win-vista/svg/hixie/intrinsic/003-expected.txt: Removed.
        * platform/chromium-win-vista/svg/in-html/by-reference-expected.txt: Removed.
        * platform/chromium-win-vista/svg/text/scaling-font-with-geometric-precision-expected.png: Removed.
        * platform/chromium-win-vista/svg/text/scaling-font-with-geometric-precision-expected.txt: Removed.
        * platform/chromium-win-vista/svg/text/text-fonts-01-t-expected.txt: Removed.
        * platform/chromium-win-vista/svg/wicd/rightsizing-grid-expected.txt: Removed.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-a-expected.png: Removed.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-a-expected.txt: Removed.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-b-expected.txt: Removed.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image1-expected.txt: Removed.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image2-expected.png: Removed.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image2-expected.txt: Removed.
        * platform/chromium-win-vista/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Removed.
        * platform/chromium-win-vista/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Removed.
        * platform/chromium-win-vista/svg/zoom/page/zoom-foreignObject-expected.txt: Removed.
        * platform/chromium-win-xp/css2.1/t0805-c5519-brdr-r-01-e-expected.png: Removed.
        * platform/chromium-win-xp/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c414-flt-fit-01-d-g-expected.png: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c414-flt-fit-01-d-g-expected.txt: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5525-fltblck-00-d-ag-expected.png: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5525-fltblck-00-d-ag-expected.txt: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5525-flthw-00-c-g-expected.png: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5525-flthw-00-c-g-expected.txt: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5526-flthw-00-c-g-expected.png: Removed.
        * platform/chromium-win-xp/css2.1/t0905-c5526-flthw-00-c-g-expected.txt: Removed.
        * platform/chromium-win-xp/fast/forms/input-appearance-spinbutton-layer-expected.png: Removed.
        * platform/chromium-win-xp/platform/chromium/fast/text/text-stroke-with-border-expected.png: Removed.
        * platform/chromium-win-xp/svg/custom/circular-marker-reference-2-expected.txt: Removed.
        * platform/chromium-win-xp/svg/custom/non-circular-marker-reference-expected.txt: Removed.
        * platform/chromium-win-xp/svg/custom/non-scaling-stroke-markers-expected.txt: Removed.
        * platform/chromium-win-xp/svg/hixie/links/001-expected.txt: Removed.
        * platform/chromium-win/fast/css/css3-nth-tokens-script-expected.txt: Removed.
        * platform/chromium-win/fast/css/css3-nth-tokens-style-expected.txt: Removed.
        * platform/chromium-win/fast/dom/getElementsByClassName/011-expected.txt: Removed.
        * platform/chromium-win/fast/forms/cursor-at-editable-content-boundary-expected.txt: Removed.
        * platform/chromium-win/fast/js/console-non-string-values-expected.txt: Removed.
        * platform/chromium-win/fast/js/function-prototype-expected.txt: Removed.
        * platform/chromium-win/fast/js/kde/exception_propagation-expected.txt: Removed.
        * platform/chromium-win/fast/js/number-toExponential-expected.txt: Removed.
        * platform/chromium-win/fast/js/number-toprecision-expected.txt: Removed.
        * platform/chromium-win/fast/repaint/inline-vertical-rl-overflow-expected.txt: Removed.
        * platform/chromium-win/fast/text/justification-padding-mid-word-expected.txt: Removed.
        * platform/chromium-win/fast/url/path-url-expected.txt: Removed.
        * platform/chromium-win/fast/url/scheme-expected.txt: Removed.
        * platform/chromium-win/http/tests/security/cross-frame-access-get-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.12.1.1-0-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.12.1.1-0-3-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.12.2-0-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.12.3-0-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.10-0-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.10-0-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.10-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.10-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-0-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-0-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-0-3-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-10-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-11-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-12-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-13-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-14-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-15-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-16-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-17-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-18-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-19-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-20-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-21-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-3-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-4-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-5-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-6-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-7-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-8-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.13-2-9-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.14-2-4-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.3-4-22-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.3-4-25-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.2.3.6-4-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-3-26-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-3-27-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-5-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-5-12-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-5-14-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-5-16-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.4.4.15-8-9-expected.txt: Removed.
        * platform/chromium-win/svg/custom/gradient-stroke-width-expected.txt: Removed.
        * platform/chromium-win/svg/custom/pattern-rotate-expected.txt: Removed.
        * platform/chromium-win/svg/dom/length-list-parser-expected.txt: Removed.
        * platform/chromium-win/svg/dom/path-parser-expected.txt: Removed.
        * platform/chromium-win/svg/dynamic-updates/SVGLineElement-dom-requiredFeatures-expected.txt: Removed.
        * platform/chromium-win/svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/page-zoom-expected.txt: Removed.
        * platform/gtk/fast/borders/outline-alpha-block-expected.txt: Removed.
        * platform/gtk/fast/borders/outline-alpha-inline-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-toDataURL-case-insensitive-mimetype-expected.txt: Removed.
        * platform/gtk/fast/forms/onselect-textarea-expected.txt: Removed.
        * platform/gtk/fast/table/simple_paint-expected.txt: Removed.
        * platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Removed.
        * platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Removed.
        * platform/gtk/svg/custom/text-zoom-expected.txt: Removed.
        * platform/mac-leopard/accessibility/table-with-aria-role-expected.txt: Removed.
        * platform/mac-leopard/fast/canvas/webgl/css-webkit-canvas-expected.png: Removed.
        * platform/mac-leopard/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Removed.
        * platform/mac-leopard/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt: Removed.
        * platform/mac-leopard/fast/multicol/span/span-margin-collapsing-expected.txt: Removed.
        * platform/mac-leopard/fast/ruby/base-shorter-than-text-expected.txt: Removed.
        * platform/mac-leopard/fast/text/emphasis-combined-text-expected.txt: Removed.
        * platform/mac-leopard/http/tests/xmlhttprequest/basic-auth-nopassword-expected.txt: Removed.
        * platform/mac-leopard/media/controls-strict-mode-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/painting-marker-03-f-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.txt: Removed.
        * platform/mac-leopard/svg/W3C-SVG-1.1/text-text-03-b-expected.txt: Removed.
        * platform/mac-leopard/svg/batik/text/smallFonts-expected.txt: Removed.
        * platform/mac-leopard/svg/carto.net/button-expected.txt: Removed.
        * platform/mac-leopard/svg/carto.net/combobox-expected.txt: Removed.
        * platform/mac-leopard/svg/carto.net/textbox-expected.txt: Removed.
        * platform/mac-leopard/svg/carto.net/window-expected.txt: Removed.
        * platform/mac-leopard/svg/clip-path/clip-in-mask-expected.txt: Removed.
        * platform/mac-leopard/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt: Removed.
        * platform/mac-leopard/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt: Removed.
        * platform/mac-leopard/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/circular-marker-reference-2-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/image-rescale-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/marker-default-width-height-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/non-circular-marker-reference-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/non-scaling-stroke-markers-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/path-textPath-simulation-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/stroke-width-large-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/stroked-pattern-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/text-rotated-gradient-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/tref-update-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/use-detach-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.txt: Removed.
        * platform/mac-leopard/svg/custom/viewBox-hit-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/error/017-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/links/001-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/mixed/004-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/mixed/005-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt: Removed.
        * platform/mac-leopard/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt: Removed.
        * platform/mac-leopard/svg/text/font-size-below-point-five-2-expected.txt: Removed.
        * platform/mac-leopard/svg/text/scaled-font-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-squeeze-1-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-squeeze-2-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-squeeze-3-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-squeeze-4-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-stretch-1-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-stretch-2-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-stretch-3-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacing-stretch-4-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.txt: Removed.
        * platform/mac-leopard/svg/text/select-x-list-3-expected.txt: Removed.
        * platform/mac-leopard/svg/text/small-fonts-2-expected.txt: Removed.
        * platform/mac-leopard/svg/text/small-fonts-3-expected.txt: Removed.
        * platform/mac-leopard/svg/text/small-fonts-expected.txt: Removed.
        * platform/mac-leopard/svg/text/small-fonts-in-html5-expected.txt: Removed.
        * platform/mac-leopard/svg/text/text-text-01-b-expected.txt: Removed.
        * platform/mac-leopard/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt: Removed.
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-2-expected.txt: Removed.
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt: Removed.
        * platform/mac-wk2/fast/forms/cursor-at-editable-content-boundary-expected.txt: Removed.
        * platform/mac-wk2/media/controls-without-preload-expected.txt: Removed.
        * platform/win-wk2/editing/selection/caret-ltr-right-expected.txt: Removed.
        * platform/win-wk2/editing/selection/drag-text-delay-expected.txt: Removed.
        * platform/win-wk2/fast/css/pseudo-any-expected.txt: Removed.
        * platform/win-wk2/fast/forms/textfield-overflow-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/after-block-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/after-table-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/before-block-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/before-table-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Removed.
        * platform/win-wk2/http/tests/uri/username-with-no-hostname-expected.txt: Removed.
        * platform/win-wk2/plugins/npruntime/embed-property-equality-expected.txt: Removed.
        * platform/win-wk2/plugins/resize-from-plugin-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Removed.
        * platform/win-xp/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Removed.
        * platform/win-xp/svg/text/bidi-tspans-expected.txt: Removed.
        * platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Removed.
        * platform/win/editing/inserting/4960120-1-expected.txt: Removed.
        * platform/win/editing/pasteboard/5761530-1-expected.txt: Removed.
        * platform/win/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt: Removed.
        * platform/win/editing/selection/select-text-overflow-ellipsis-expected.txt: Removed.
        * platform/win/fast/css/box-shadow-and-border-radius-expected.txt: Removed.
        * platform/win/fast/css/opacity-float-expected.txt: Removed.
        * platform/win/fast/css/resize-corner-tracking-expected.txt: Removed.
        * platform/win/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt: Removed.
        * platform/win/fast/dom/horizontal-scrollbar-when-dir-change-expected.txt: Removed.
        * platform/win/fast/events/panScroll-click-hyperlink-expected.txt: Removed.
        * platform/win/fast/forms/basic-textareas-expected.txt: Removed.
        * platform/win/fast/forms/basic-textareas-quirks-expected.txt: Removed.
        * platform/win/fast/forms/search-cancel-button-style-sharing-expected.txt: Removed.
        * platform/win/fast/forms/search-display-none-cancel-button-expected.txt: Removed.
        * platform/win/fast/forms/search-placeholder-value-changed-expected.txt: Removed.
        * platform/win/fast/forms/textAreaLineHeight-expected.txt: Removed.
        * platform/win/fast/forms/textarea-metrics-expected.txt: Removed.
        * platform/win/fast/forms/textarea-placeholder-pseudo-style-expected.txt: Removed.
        * platform/win/fast/forms/textarea-placeholder-set-attribute-expected.txt: Removed.
        * platform/win/fast/forms/textarea-placeholder-set-value-expected.txt: Removed.
        * platform/win/fast/forms/textarea-scrollbar-expected.txt: Removed.
        * platform/win/fast/forms/textarea-scrolled-type-expected.txt: Removed.
        * platform/win/fast/forms/textarea-setinnerhtml-expected.txt: Removed.
        * platform/win/fast/images/favicon-as-image-expected.txt: Removed.
        * platform/win/fast/overflow/overflow-x-y-expected.txt: Removed.
        * platform/win/fast/parser/entity-comment-in-textarea-expected.txt: Removed.
        * platform/win/fast/parser/open-comment-in-textarea-expected.txt: Removed.
        * platform/win/fast/text/atsui-negative-spacing-features-expected.txt: Removed.
        * platform/win/fast/text/international/bidi-control-chars-treated-as-ZWS-expected.txt: Removed.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt: Removed.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/win/svg/W3C-SVG-1.1/animate-elem-82-t-expected.txt: Removed.
        * platform/win/svg/W3C-SVG-1.1/coords-trans-01-b-expected.txt: Removed.
        * platform/win/svg/W3C-SVG-1.1/extend-namespace-01-f-expected.png: Removed.
        * platform/win/svg/batik/masking/maskRegions-expected.txt: Removed.
        * platform/win/svg/custom/broken-internal-references-expected.txt: Removed.
        * platform/win/svg/custom/junk-data-expected.txt: Removed.
        * platform/win/svg/filters/feColorMatrix-values-expected.txt: Removed.
        * platform/win/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
        * platform/win/tables/mozilla/bugs/bug30559-expected.txt: Removed.

2011-07-10  Adam Barth  <abarth@webkit.org>

        Remove LayoutTests/platform/android and LayoutTests/platform/android-v8
        https://bugs.webkit.org/show_bug.cgi?id=64240

        Reviewed by Sam Weinig.

        These results directories are basically empty and haven't been touched
        in almost a year.  There are not maintained and are almost certantly
        out of date.

        * platform/android: Removed.
        * platform/android-v8: Removed.
        * platform/android-v8/fast: Removed.
        * platform/android-v8/fast/dom: Removed.
        * platform/android-v8/fast/dom/DeviceMotion: Removed.
        * platform/android-v8/fast/dom/DeviceMotion/window-property-expected.txt: Removed.
        * platform/android-v8/fast/dom/DeviceOrientation: Removed.
        * platform/android-v8/fast/dom/DeviceOrientation/window-property-expected.txt: Removed.
        * platform/android/fast: Removed.
        * platform/android/fast/text: Removed.
        * platform/android/fast/text/hyphenate-character-expected.txt: Removed.
        * platform/android/fast/text/hyphens-expected.txt: Removed.

2011-07-10  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9750062> REGRESSION: Button text missing in many iTunes Store pages
        https://bugs.webkit.org/show_bug.cgi?id=64236

        Reviewed by Maciej Stachowiak.

        * fast/css/empty-display-none-expected.txt: Added.
        * fast/css/empty-display-none.html: Added.

2011-07-08  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new chromium GPU pixel results for overflow-scroll-expected.

        * platform/chromium-gpu-mac/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-08  Adam Roben  <aroben@apple.com>

        Skip all HTMLProgressElement tests on Windows

        <http://webkit.org/b/49769> tracks implementing this element on Windows. For now it's just a
        source of failing tests.

        * platform/win/Skipped: Skip the entire HTMLProgressElement directory so we don't have to
        keep adding new tests one-by-one.

2011-07-08  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test_expectations update.

        Add some MAC GPU failing tests from r90464.

        * platform/chromium/test_expectations.txt:

2011-07-08  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test_expectations update.

        Add some WIN GPU failing tests from r90464 to test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-07-08  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test rebaseline.

        New baseline for a failing test on GPU linux introduced in r90646.

        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:

2011-07-08  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations cleanup.

        Removed some duplicate expectations.

        * platform/chromium/test_expectations.txt:

2011-07-08  David Reveman  <reveman@chromium.org>

        Reviewed by Stephen White.

        [Chromium] Edge anti-aliasing for composited layers.
        https://bugs.webkit.org/show_bug.cgi?id=61388

        * platform/chromium/compositing/tiny-layer-rotated-expected.png: Added.
        * platform/chromium/compositing/tiny-layer-rotated-expected.txt: Added.
        * platform/chromium/compositing/tiny-layer-rotated.html: Added.
        * platform/chromium/test_expectations.txt:

2011-07-08  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSSRegions]Parse content: -webkit-from-flow
        https://bugs.webkit.org/show_bug.cgi?id=63133

        Reviewed by David Hyatt.

        * fast/regions/content-webkit-from-flow-parsing-expected.txt: Added.
        * fast/regions/content-webkit-from-flow-parsing.html: Added.
        * fast/regions/script-tests/content-webkit-from-flow-parsing.js: Added.

2011-07-08  Vsevolod Vlasov  <vsevik@chromium.org>

        REGRESSION (r90557): http/tests/inspector/network/network-embed.html fails
        https://bugs.webkit.org/show_bug.cgi?id=64103

        Unreviewed test fix (typo).

        * http/tests/inspector/network/network-embed.html:

2011-07-08  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: styles-disable-then-delete was flaky.
        https://bugs.webkit.org/show_bug.cgi?id=64170

        Reviewed by Yury Semikhatsky.

        * inspector/styles/styles-add-invalid-property.html:
        * inspector/styles/styles-disable-then-delete.html:

2011-07-08  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: inspector/styles/styles-url-linkify.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=64171

        Added image files because the behavior differs when they are not available.

        Unreviewed test fix: added image files.

        * inspector/styles/resources/fromcss.png: Added.
        * inspector/styles/resources/iframed.png: Added.
        * inspector/styles/styles-url-linkify-expected.txt:

2011-07-08  Andras Becsi  <abecsi@webkit.org>

        [Qt] http/tests/plugins/get-url.html is crashing on the bot
        https://bugs.webkit.org/show_bug.cgi?id=64168

        Unreviewed gardening.

        The cause of the crash revealed itself as a side effect thus
        it is better to expect the test to CRASH rather than skipping it.

        * platform/qt/Skipped: Unskip test.
        * platform/qt/test_expectations.txt: Mark as CRASH

2011-07-08  Andras Becsi  <abecsi@webkit.org>

        [Qt] http/tests/plugins/get-url.html is crashing on the bot
        https://bugs.webkit.org/show_bug.cgi?id=64168

        Unreviewed gardening.

        * platform/qt/Skipped: Skip the test.

2011-07-08  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: CSS inspector gets confused about specificity of !important properties
        https://bugs.webkit.org/show_bug.cgi?id=64074

        Reviewed by Yury Semikhatsky.

        * inspector/elements/elements-panel-styles-expected.txt:
        * inspector/elements/resources/elements-panel-styles.css:
        (#container .foo):
        (.foo):

2011-07-08  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: secure access to extensions API
        https://bugs.webkit.org/show_bug.cgi?id=64080

        Reviewed by Pavel Feldman.

        * inspector/extensions/extensions.html: add explicit base paths to extension resource being loaded.

2011-07-08  Andras Becsi  <abecsi@webkit.org>

        Add BUG modifier which was accidentally removed in the previous commit

        Unreviewed.

        * platform/qt/test_expectations.txt:

2011-07-08  Andras Becsi  <abecsi@webkit.org>

        [Qt] Some tests are flaky with NRWT
        https://bugs.webkit.org/show_bug.cgi?id=64002

        Unreviewed gardening.

        * platform/qt/test_expectations.txt: Skip fast/forms/textfield-overflow-by-value-update.html
        because it sometimes does not produce any output.

2011-07-08  Andras Becsi  <abecsi@webkit.org>

        Rebaseline expected file after r90567

        Unreviewed.

        * inspector/styles/styles-url-linkify-expected.txt:

2011-07-07  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: Adding CSS properties results in messy style rules
        https://bugs.webkit.org/show_bug.cgi?id=63622

        Reviewed by Pavel Feldman.

        * inspector/styles/styles-formatting-expected.txt: Added.
        * inspector/styles/styles-formatting.html: Added.
        * inspector/styles/styles-new-API-expected.txt:
        * inspector/styles/styles-new-API.html:

2011-07-08  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: Quotes are rendered as &quot; in the DOM tree
        https://bugs.webkit.org/show_bug.cgi?id=64154

        Reviewed by Yury Semikhatsky.

        * inspector/elements/elements-panel-structure-expected.txt:
        * inspector/elements/elements-panel-structure.html:

2011-07-08  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: typing undefined = 1 in console crashes browser
        https://bugs.webkit.org/show_bug.cgi?id=64155

        Reviewed by Pavel Feldman.

        * inspector/console/console-eval-undefined-override-expected.txt: Added.
        * inspector/console/console-eval-undefined-override.html: Added.
        * platform/chromium/inspector/console/console-eval-undefined-override-expected.txt: Added.

2011-07-08  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Moving test expectation from platform-specific to generic.

        * fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent-expected.txt: Renamed from LayoutTests/platform/chromium-linux/fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent-expected.txt.

2011-07-07  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Clear cookies after test in httponly-cookie.pl
        https://bugs.webkit.org/show_bug.cgi?id=64145

        Reviewed by Kent Tamura.

        This test leaks cookies, which would cause a test failure if we put
        a copy of this test under http/tests/websocket/tests.

        To avoid this issue, cookies should be removed before the test ends.

        * http/tests/websocket/tests/hixie76/httponly-cookie.pl:
        After the test, send an XHR request to itself with a query parameter,
        which erases cookies used in this test by setting "Max-Age=0".

2011-07-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update baseline files for input-appearance-range.html.

        * platform/chromium-linux/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-mac/fast/forms/input-appearance-range-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-appearance-range-expected.png:
        * platform/chromium/test_expectations.txt:

2011-07-07  MORITA Hajime  <morrita@google.com>

        dump-as-markup.js should support shadow tree
        https://bugs.webkit.org/show_bug.cgi?id=62447
        
        Reviewed by Ryosuke Niwa.

        - Added shadow support to Markup._get()
        - Updated expectations caused by this change.
        - Added explanatory test cases for shadows.
        
        * editing/inserting/5607069-2-expected.txt:
        * editing/inserting/5607069-3-expected.txt:
        * editing/pasteboard/copy-null-characters-expected.txt:
        * editing/selection/dump-as-markup-expected.txt:
        * editing/selection/dump-as-markup-form-text-expected.txt:
        * fast/parser/object-with-textarea-fallback-expected.txt:
        * fast/dom/HTMLMeterElement/meter-element-markup-expected.txt: Added.
        * fast/dom/HTMLMeterElement/meter-element-markup.html: Added.
        * fast/dom/HTMLProgressElement/progress-element-markup-expected.txt: Added.
        * fast/dom/HTMLProgressElement/progress-element-markup.html: Added.
        * fast/dom/HTMLMeterElement/meter-element-markup.html:
        * fast/dom/HTMLProgressElement/progress-element-markup.html:        
        * resources/dump-as-markup.js:
        (Markup._get):

2011-07-07  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Use jsTestIsAsync and finishJSTest() in httponly-cookie.pl
        https://bugs.webkit.org/show_bug.cgi?id=64087

        Reviewed by Kent Tamura.

        * http/tests/websocket/tests/hixie76/httponly-cookie.pl:

2011-07-07  James Robinson  <jamesr@chromium.org>

        [chromium] Add text baseline for spanOverlapsCanvas

        * platform/chromium-gpu-win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-07  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Alexey Proskuryakov.

        fast/dom/HTMLLinkElement/link-and-subresource-test.html is flaky on chromium debug bots
        https://bugs.webkit.org/show_bug.cgi?id=60097

        The culprit was that CachedResource:stopLoading() was using *this
        after a call to checkNotify(), which isn't kosher.  This patch
        uses a CachedResourceHandle to keep the CachedResource alive.

        The test is a very close copy of the eponymous
        link-and-subresource-test.html, only substituting invalid
        resources for the valid ones in that test.  The reproduction is
        timing related, and happens much more consistantly with an invalid
        resource for whatever reason.

        * fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent-expected.txt: Added.
        * fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-07-07  Jeff Timanus  <twiz@chromium.org>

        Reviewed by Stephen White.

        Mark layout tests as failing in Chromium after skia roll r1799:r1814
        https://bugs.webkit.org/show_bug.cgi?id=64121

        * platform/chromium/test_expectations.txt:

2011-07-07  Dirk Schulze  <krit@webkit.org>

        Reviewed by Rob Buis.

        SVGAnimatedPath needs fallback for 'by' animation
        https://bugs.webkit.org/show_bug.cgi?id=63865

        Test fallback to 'to' animation for 'by' animated SVGPath.

        * svg/animations/script-tests/svgpath-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgpath-animation-1-expected.txt: Added.
        * svg/animations/svgpath-animation-1.html: Added.

2011-07-07  Gustavo Noronha Silva  <gns@gnome.org>

        Unreviewed.

        Re-skip the inspector tests, they are still timing out on the
        release bot for some reason.

        * platform/gtk/Skipped:

2011-07-07  Adam Roben  <aroben@apple.com>

        Skip another test that uses beginDragWithFiles on Windows

        * platform/win/Skipped: Added fast/forms/file-input-change-event.html.

2011-07-07  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9737435> Re-enable -webkit-column-break-inside: avoid
        https://bugs.webkit.org/show_bug.cgi?id=64102

        Reviewed by Simon Fraser.

        * fast/multicol/break-properties-expected.txt:
        * fast/multicol/break-properties.html:

2011-07-07  Andras Becsi  <abecsi@webkit.org>

        [Qt]REGRESSION(r90471): It made 4 fast/notifications tests fail on Qt
        https://bugs.webkit.org/show_bug.cgi?id=63255

        Unreviewed gardening.

        * platform/qt/Skipped: Skip tests.

2011-07-07  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by David Hyatt.

        Partial layout when a flex-box has visibility: collapse
        https://bugs.webkit.org/show_bug.cgi?id=63776

        Those tests checks some variation of the same underlying issue.

        * fast/flexbox/crash-button-input-autofocus-expected.txt: Added.
        * fast/flexbox/crash-button-input-autofocus.html: Added.
        * fast/flexbox/crash-button-keygen-expected.txt: Added.
        * fast/flexbox/crash-button-keygen.html: Added.
        * fast/flexbox/crash-button-relayout-expected.txt: Added.
        * fast/flexbox/crash-button-relayout.html: Added.

2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: URL links in styles open new tab instead of showing resources panel.
        https://bugs.webkit.org/show_bug.cgi?id=64090

        Reviewed by Pavel Feldman.

        * inspector/styles/styles-url-linkify-expected.txt:
        * inspector/styles/styles-url-linkify.html:

2011-07-07  Andras Becsi  <abecsi@webkit.org>

        REGRESSION(90557) http/tests/inspector/network/network-embed.html fails
        https://bugs.webkit.org/show_bug.cgi?id=64103

        Unreviewed gardening.

        * platform/qt/Skipped: Skip test.

2011-07-07  Xan Lopez  <xlopez@igalia.com>

        Unreviewed.

        Enable inspector tests again (they should work now), and skip test
        that is timing out in all GTK+ bots.

        * platform/gtk/Skipped:

2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Move resetting NetworkResourcesData out of tests unrelated to replacement testing.
        https://bugs.webkit.org/show_bug.cgi?id=64078

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network-test.js:
        (initialize_NetworkTest.InspectorTest.resetInspectorResourcesData.nextStep):
        (initialize_NetworkTest.InspectorTest.resetInspectorResourcesData):
        (resetInspectorResourcesData):
        * http/tests/inspector/network/network-clear-cache-expected.txt:
        * http/tests/inspector/network/network-clear-cache.html-disabled:
        * http/tests/inspector/network/network-clear-cookies-expected.txt:
        * http/tests/inspector/network/network-clear-cookies.html-disabled:
        * http/tests/inspector/network/network-embed-expected.txt:
        * http/tests/inspector/network/network-embed.html:
        * http/tests/inspector/network/network-xhr-async-expected.txt:
        * http/tests/inspector/network/network-xhr-async.html:
        * http/tests/inspector/network/network-xhr-sync-expected.txt:
        * http/tests/inspector/network/network-xhr-sync.html:

2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Resources panel shows only one resource when multiple resources have the same url.
        https://bugs.webkit.org/show_bug.cgi?id=63936

        Reviewed by Pavel Feldman.

        * http/tests/inspector/resource-tree/resource-tree-non-unique-url-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-non-unique-url.html: Added.
        * http/tests/inspector/resource-tree/resource-tree-test.js:
        (initialize_ResourceTreeTest.InspectorTest.dumpResourcesTree):
        * http/tests/inspector/resource-tree/resources/resource-tree-non-unique-url-iframe.html: Added.
        * http/tests/inspector/resource-tree/resources/styles-non-unique-url.css: Added.
        (body):

2011-07-07  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Eric Carlson.

        GTK: media/video-src-invalid-poster.html Failed
        https://bugs.webkit.org/show_bug.cgi?id=61160

        Wait for loadstart event to check the poster dimensions and avoid a
        potential timeout of the test.

        * media/video-src-invalid-poster-expected.txt:
        * media/video-src-invalid-poster.html:
        * platform/gtk/Skipped:

2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add support for clearing cache and cookies from network panel.
        https://bugs.webkit.org/show_bug.cgi?id=63999

        Added clear cache and cookies tests. Since no port currently supports
        this functionality, the tests are disabled.

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-clear-cache-expected.txt: Added.
        * http/tests/inspector/network/network-clear-cache.html-disabled: Added.
        * http/tests/inspector/network/network-clear-cookies-expected.txt: Added.
        * http/tests/inspector/network/network-clear-cookies.html-disabled: Added.
        * http/tests/inspector/network/resources/random-cached.php: Added.
        * http/tests/inspector/network/resources/set-cookie.php: Added.

2011-07-07  Shinya Kawanaka  <shinyak@google.com>

        Added more key bindings for input[type=range].
        https://bugs.webkit.org/show_bug.cgi?id=52262

        Added PageUp/PageDown/Home/End key bindings tests for input[type=range].

        Reviewed by Kent Tamura.

        * fast/forms/range-keyoperation-expected.txt: Regenerated.
        * fast/forms/range-keyoperation.html: Added more key bindings tests.

2011-07-06  Mihnea Ovidenie  <mihnea@adobe.com>

        Reviewed by David Hyatt.

        [CSSRegions] Parse flow property
        https://bugs.webkit.org/show_bug.cgi?id=61730

        * fast/regions/script-tests/TEMPLATE.html: Added.
        * fast/regions/script-tests/webkit-flow-parsing.js: Added.
        (test):
        (testComputedStyle):
        (testNotInherited):
        * fast/regions/webkit-flow-parsing-expected.txt: Added.
        * fast/regions/webkit-flow-parsing.html: Added.

2011-07-06  MORITA Hajime  <morrita@google.com>

        [ShadowContentElement] Redundant RenderText objects are created on the content boundaries.
        https://bugs.webkit.org/show_bug.cgi?id=63977

        Reviewed by Dimitri Glazkov.

        This test have two set of fixture DOM tree: 
        One is for shadow tree which has one content element,
        another is for light DOM tree, whose root is to have a shadow DOM.
        
        Then the test makes 2 complete DOM trees (DOM tree with shadow and
        flattened dom) for each combination of the fixture items. And
        compare their layout result.
        
        * fast/dom/shadow/content-element-renderers-expected.txt: Added.
        * fast/dom/shadow/content-element-renderers.html: Added.

2011-07-06  Juan C. Montemayor  <jmont@apple.com>

        ASSERT_NOT_REACHED running test 262
        https://bugs.webkit.org/show_bug.cgi?id=63951
        
        Added a test to check compliance with reserved words in strict mode. 
        Updated test results.

        Reviewed by Gavin Barraclough.

        * fast/js/kde/parse-expected.txt:
        * fast/js/reserved-words-as-property-expected.txt:
        * fast/js/reserved-words-strict-expected.txt: Added.
        * fast/js/reserved-words-strict.html: Added.
        * fast/js/script-tests/reserved-words-strict.js: Added.
        (isReserved):
        * platform/chromium/fast/js/reserved-words-strict-expected.txt: Added.
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T13-expected.txt:

2011-07-06  Johnny Ding  <jnd@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=63857
        Remove some crash expectation after implementing "createPopupMenu"

        Reviewed by Tony Chang.

        * platform/chromium/test_expectations.txt:

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Update Chromium GPU expectations with downstream changes
        (http://crrev.com/91625/).

        * platform/chromium/test_expectations.txt:

2011-07-06  Sreeram Ramachandran  <sreeram@chromium.org>

        Fix fast/loader/page-dismissal-modal-dialogs.html.
        https://bugs.webkit.org/show_bug.cgi?id=64020

        Fix by removing an unnecessary call to setPopupBlockingEnabled() (which
        doesn't seem to be implemented in WebKit2's layoutTestController).

        Reviewed by Adam Roben.

        * fast/loader/page-dismissal-modal-dialogs.html:

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Fix duplicate Chromium expectations from r90500 and add additional flakiness
        expectations.

        * platform/chromium/test_expectations.txt:

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Add Chromium Windows 7 timeout expectations.

        * platform/chromium/test_expectations.txt:

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Add Chromium flaky expectations.

        * platform/chromium/test_expectations.txt:

2011-07-06  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION (r90275): 18 editing tests failing on Windows 7 Release (WebKit2 Tests)
        https://bugs.webkit.org/show_bug.cgi?id=64019

        These tests just need rebaselines. While Windows WebKit port ignores editing delegate dumps, Windows WebKit2 does not.
        Since rebaselined in r90275 should only affect Mac port, we need to undo rebaselines done in r90275 for Windows port.

        * platform/win/editing/deleting/delete-br-002-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-002-expected.txt.
        * platform/win/editing/deleting/delete-br-004-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-004-expected.txt.
        * platform/win/editing/deleting/delete-br-005-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-005-expected.txt.
        * platform/win/editing/deleting/delete-br-006-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-006-expected.txt.
        * platform/win/editing/deleting/delete-br-009-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-009-expected.txt.
        * platform/win/editing/deleting/delete-br-010-expected.txt: Copied from LayoutTests/platform/mac/editing/deleting/delete-br-010-expected.txt.
        * platform/win/editing/inserting/insert-3800346-fix-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-3800346-fix-expected.txt.
        * platform/win/editing/inserting/insert-at-end-01-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-at-end-01-expected.txt.
        * platform/win/editing/inserting/insert-at-end-02-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-at-end-02-expected.txt.
        * platform/win/editing/inserting/insert-div-010-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-div-010-expected.txt.
        * platform/win/editing/inserting/insert-div-013-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-div-013-expected.txt.
        * platform/win/editing/inserting/insert-div-015-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-div-015-expected.txt.
        * platform/win/editing/inserting/insert-div-019-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-div-019-expected.txt.
        * platform/win/editing/inserting/insert-paragraph-03-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-paragraph-03-expected.txt.
        * platform/win/editing/selection/4932260-1-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/4932260-1-expected.txt.
        * platform/win/editing/selection/move-by-word-001-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/move-by-word-001-expected.txt.
        * platform/win/editing/selection/triple-click-in-pre-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/triple-click-in-pre-expected.txt.
        * platform/win/editing/style: Added.
        * platform/win/editing/style/create-block-for-style-008-expected.txt: Copied from LayoutTests/platform/mac/editing/style/create-block-for-style-008-expected.txt.

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Remove Chromium Mac failing expectation for fast/text/font-size-zero.html
        (fixed by r89933)
        
        Add Chromium Windows and Linux baselines for
        fast/forms/textfield-overflow-by-value-update.html (needed due to
        different form control metrics).
        
        Remove a bunch of commented out test expectations.

        * platform/chromium-mac/svg/hittest/svg-rect-hit-expected.txt: Removed.
        * platform/chromium-win/fast/forms/textfield-overflow-by-value-update-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-07-06  Nate Chapin  <japhet@chromium.org>

        Test updates for https://bugs.webkit.org/show_bug.cgi?id=62066.

        Reviewed by Adam Barth.

        * http/tests/loading/cross-origin-XHR-willLoadRequest-expected.txt:
        * http/tests/misc/favicon-loads-with-icon-loading-override-expected.txt:
        * http/tests/misc/link-rel-icon-beforeload-expected.txt:

2011-07-06  Mihai Parparita  <mihaip@chromium.org>

        Rebaseline some imagemap focus ring tests for Chromium Mac (mainly for
        Leopard, due to text anti-aliasing differences).

        * platform/chromium-mac/fast/images/imagemap-case-expected.png: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/mac-leopard/fast/images/imagemap-case-expected.png: Added.
        * platform/mac-leopard/fast/images/imagemap-focus-ring-expected.png: Added.
        * platform/mac-leopard/fast/images/imagemap-focus-ring-outline-color-expected.png: Added.
        * platform/mac-leopard/fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map-expected.png: Added.
        * platform/mac-leopard/fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map-expected.png: Added.

2011-07-06  Andras Becsi  <abecsi@webkit.org>

        [Qt] Seems that I still don't get the syntax right

        Unreviewed.

        * platform/qt/test_expectations.txt: Use BUGWK instead of BUG.

2011-07-06  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Fixed test_expectations syntax.

        * platform/chromium/test_expectations.txt:

2011-07-06  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Marked media/video-delay-load-event.html as flaky.

        * platform/chromium/test_expectations.txt:

2011-07-06  Andras Becsi  <abecsi@webkit.org>

        [Qt] Fix the syntax of test_expectations.txt

        Unreviewed gardening.

        * platform/qt/test_expectations.txt: Add a bug for the flaky tests.

2011-07-06  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed, mark fast/events/click-focus-anchor.html as flaky.

        * platform/chromium/test_expectations.txt:

2011-07-06  Andras Becsi  <abecsi@webkit.org>

        [Qt] Try to make the bot green by marking tests flaky.

        Rubber-stamped by Andreas Kling.

        * platform/qt/test_expectations.txt:

2011-07-06  Andras Becsi  <abecsi@webkit.org>

        [Qt] DumpRenderTree needs a beginDragWithFiles implementation
        https://bugs.webkit.org/show_bug.cgi?id=50902

        Unreviewed gardening.

        * platform/qt/Skipped: Skip failing test added in r90438.

2011-07-06  Xan Lopez  <xlopez@igalia.com>

        Unreviewed.

        Remove non-existing test from Skipped.

        * platform/gtk/Skipped:

2011-07-06  Xan Lopez  <xlopez@igalia.com>

        Unreviewed.

        Missed these inspector tests before.

        * platform/gtk/Skipped:

2011-07-06  Xan Lopez  <xlopez@igalia.com>

        Unreviewed.

        Skip inspector tests while we figure why they fail in the
        NWRT/debug bots.

        * platform/gtk/Skipped:

2011-07-05  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Move current WebSocket tests to a new directory
        https://bugs.webkit.org/show_bug.cgi?id=63931

        Reviewed by Kent Tamura.

        In order to put tests for new WebSocket protocol, existing tests for the old protocol
        need to be moved to a subdirectory (namely "hixie76").

        Minimum changes have been made to tests and test results, such as:
        - Update links to resource files (e.g. "../../../js-test-pre.js" to "../../../../js-test-pre.js"), and
        - Update WebSocket URLs in the tests (i.e. adding "hixie76/" to ws:// and wss:// URLs).

        Skipped and test_expectations.txt are also updated accordingly.

        * http/tests/websocket/tests/handler_map.txt:
        This is the only file left in the current directory. This file defines the handler location
        to which accesses to the root directory (e.g. "ws://example.com/") are redirected, and
        cannot be moved.
        * http/tests/websocket/tests/hixie76/alert-in-event-handler-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/alert-in-event-handler-expected.txt.
        * http/tests/websocket/tests/hixie76/alert-in-event-handler.html: Renamed from LayoutTests/http/tests/websocket/tests/alert-in-event-handler.html.
        * http/tests/websocket/tests/hixie76/bad-handshake-crash-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/bad-handshake-crash-expected.txt.
        * http/tests/websocket/tests/hixie76/bad-handshake-crash.html: Renamed from LayoutTests/http/tests/websocket/tests/bad-handshake-crash.html.
        * http/tests/websocket/tests/hixie76/bad-handshake-crash_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/bad-handshake-crash_wsh.py.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars.html: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-control-chars.html.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-empty-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-empty-expected.txt.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-empty.html: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-empty.html.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-non-ascii-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-non-ascii-expected.txt.
        * http/tests/websocket/tests/hixie76/bad-sub-protocol-non-ascii.html: Renamed from LayoutTests/http/tests/websocket/tests/bad-sub-protocol-non-ascii.html.
        * http/tests/websocket/tests/hixie76/bufferedAmount-after-close-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/bufferedAmount-after-close-expected.txt.
        * http/tests/websocket/tests/hixie76/bufferedAmount-after-close.html: Renamed from LayoutTests/http/tests/websocket/tests/bufferedAmount-after-close.html.
        * http/tests/websocket/tests/hixie76/client-close-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/client-close-expected.txt.
        * http/tests/websocket/tests/hixie76/client-close.html: Renamed from LayoutTests/http/tests/websocket/tests/client-close.html.
        * http/tests/websocket/tests/hixie76/client-close_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/client-close_wsh.py.
        * http/tests/websocket/tests/hixie76/close-before-open-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-before-open-expected.txt.
        * http/tests/websocket/tests/hixie76/close-before-open.html: Renamed from LayoutTests/http/tests/websocket/tests/close-before-open.html.
        * http/tests/websocket/tests/hixie76/close-event-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-event-expected.txt.
        * http/tests/websocket/tests/hixie76/close-event.html: Renamed from LayoutTests/http/tests/websocket/tests/close-event.html.
        * http/tests/websocket/tests/hixie76/close-on-navigate-new-location-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-on-navigate-new-location-expected.txt.
        * http/tests/websocket/tests/hixie76/close-on-navigate-new-location.html: Renamed from LayoutTests/http/tests/websocket/tests/close-on-navigate-new-location.html.
        * http/tests/websocket/tests/hixie76/close-on-unload-and-force-gc-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload-and-force-gc-expected.txt.
        * http/tests/websocket/tests/hixie76/close-on-unload-and-force-gc.html: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload-and-force-gc.html.
        * http/tests/websocket/tests/hixie76/close-on-unload-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload-expected.txt.
        * http/tests/websocket/tests/hixie76/close-on-unload-reference-in-parent-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload-reference-in-parent-expected.txt.
        * http/tests/websocket/tests/hixie76/close-on-unload-reference-in-parent.html: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload-reference-in-parent.html.
        * http/tests/websocket/tests/hixie76/close-on-unload.html: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload.html.
        * http/tests/websocket/tests/hixie76/close-on-unload_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/close-on-unload_wsh.py.
        * http/tests/websocket/tests/hixie76/close-unref-websocket-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/close-unref-websocket-expected.txt.
        * http/tests/websocket/tests/hixie76/close-unref-websocket.html: Renamed from LayoutTests/http/tests/websocket/tests/close-unref-websocket.html.
        * http/tests/websocket/tests/hixie76/cross-origin-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/cross-origin-expected.txt.
        * http/tests/websocket/tests/hixie76/cross-origin.html: Renamed from LayoutTests/http/tests/websocket/tests/cross-origin.html.
        * http/tests/websocket/tests/hixie76/echo-challenge_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/echo-challenge_wsh.py.
        * http/tests/websocket/tests/hixie76/echo-cookie_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/echo-cookie_wsh.py.
        * http/tests/websocket/tests/hixie76/echo-location_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/echo-location_wsh.py.
        * http/tests/websocket/tests/hixie76/echo_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/echo_wsh.py.
        * http/tests/websocket/tests/hixie76/error-detect-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/error-detect-expected.txt.
        * http/tests/websocket/tests/hixie76/error-detect.html: Renamed from LayoutTests/http/tests/websocket/tests/error-detect.html.
        * http/tests/websocket/tests/hixie76/fixed-origin_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/fixed-origin_wsh.py.
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-longer-than-buffer-expected.txt.
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer.html: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-longer-than-buffer.html.
        * http/tests/websocket/tests/hixie76/frame-length-longer-than-buffer_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-longer-than-buffer_wsh.py.
        * http/tests/websocket/tests/hixie76/frame-length-overflow-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-overflow-expected.txt.
        * http/tests/websocket/tests/hixie76/frame-length-overflow.html: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-overflow.html.
        * http/tests/websocket/tests/hixie76/frame-length-overflow_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-overflow_wsh.py.
        * http/tests/websocket/tests/hixie76/frame-length-skip-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-skip-expected.txt.
        * http/tests/websocket/tests/hixie76/frame-length-skip.html: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-skip.html.
        * http/tests/websocket/tests/hixie76/frame-length-skip_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/frame-length-skip_wsh.py.
        * http/tests/websocket/tests/hixie76/frame-lengths-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/frame-lengths-expected.txt.
        * http/tests/websocket/tests/hixie76/frame-lengths.html: Renamed from LayoutTests/http/tests/websocket/tests/frame-lengths.html.
        * http/tests/websocket/tests/hixie76/handshake-challenge-randomness-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-challenge-randomness-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-challenge-randomness.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-challenge-randomness.html.
        * http/tests/websocket/tests/hixie76/handshake-error-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-error-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-error.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-error.html.
        * http/tests/websocket/tests/hixie76/handshake-error_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-error_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-cross-origin-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-cross-origin-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-cross-origin.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-cross-origin.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-maxlength-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-maxlength.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-maxlength_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-maxlength_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-connection-header-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-connection-header.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-connection-header_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-connection-header_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-cr-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-cr.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-cr_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-cr_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-upgrade-header-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-no-upgrade-header_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-no-upgrade-header_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-prepended-null-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-prepended-null.html.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-prepended-null_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-prepended-null_wsh.py.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-sub-protocol-mismatch-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-sub-protocol-mismatch-expected.txt.
        * http/tests/websocket/tests/hixie76/handshake-fail-by-sub-protocol-mismatch.html: Renamed from LayoutTests/http/tests/websocket/tests/handshake-fail-by-sub-protocol-mismatch.html.
        * http/tests/websocket/tests/hixie76/hanging-handshake_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/hanging-handshake_wsh.py.
        * http/tests/websocket/tests/hixie76/httponly-cookie-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/httponly-cookie-expected.txt.
        * http/tests/websocket/tests/hixie76/httponly-cookie.pl: Renamed from LayoutTests/http/tests/websocket/tests/httponly-cookie.pl.
        * http/tests/websocket/tests/hixie76/long-invalid-header-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/long-invalid-header-expected.txt.
        * http/tests/websocket/tests/hixie76/long-invalid-header.html: Renamed from LayoutTests/http/tests/websocket/tests/long-invalid-header.html.
        * http/tests/websocket/tests/hixie76/long-invalid-header_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/long-invalid-header_wsh.py.
        * http/tests/websocket/tests/hixie76/multiple-connections-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/multiple-connections-expected.txt.
        * http/tests/websocket/tests/hixie76/multiple-connections.html: Renamed from LayoutTests/http/tests/websocket/tests/multiple-connections.html.
        * http/tests/websocket/tests/hixie76/no-query_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/no-query_wsh.py.
        * http/tests/websocket/tests/hixie76/null-character-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/null-character-expected.txt.
        * http/tests/websocket/tests/hixie76/null-character.html: Renamed from LayoutTests/http/tests/websocket/tests/null-character.html.
        * http/tests/websocket/tests/hixie76/origin-test_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/origin-test_wsh.py.
        * http/tests/websocket/tests/hixie76/protocol-test_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/protocol-test_wsh.py.
        * http/tests/websocket/tests/hixie76/reload-crash-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/reload-crash-expected.txt.
        * http/tests/websocket/tests/hixie76/reload-crash.html: Renamed from LayoutTests/http/tests/websocket/tests/reload-crash.html.
        * http/tests/websocket/tests/hixie76/resources/close-on-unload-iframe-reference-in-parent.html: Renamed from LayoutTests/http/tests/websocket/tests/resources/close-on-unload-iframe-reference-in-parent.html.
        * http/tests/websocket/tests/hixie76/resources/close-on-unload-iframe.html: Renamed from LayoutTests/http/tests/websocket/tests/resources/close-on-unload-iframe.html.
        * http/tests/websocket/tests/hixie76/resources/reload-crash-iframe.html: Added.
        * http/tests/websocket/tests/hixie76/send-after-close-on-unload-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/send-after-close-on-unload-expected.txt.
        * http/tests/websocket/tests/hixie76/send-after-close-on-unload.html: Renamed from LayoutTests/http/tests/websocket/tests/send-after-close-on-unload.html.
        * http/tests/websocket/tests/hixie76/send-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/send-expected.txt.
        * http/tests/websocket/tests/hixie76/send-throw-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/send-throw-expected.txt.
        * http/tests/websocket/tests/hixie76/send-throw.html: Renamed from LayoutTests/http/tests/websocket/tests/send-throw.html.
        * http/tests/websocket/tests/hixie76/send.html: Renamed from LayoutTests/http/tests/websocket/tests/send.html.
        * http/tests/websocket/tests/hixie76/send2_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/send2_wsh.py.
        * http/tests/websocket/tests/hixie76/send_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/send_wsh.py.
        * http/tests/websocket/tests/hixie76/server-close-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/server-close-expected.txt.
        * http/tests/websocket/tests/hixie76/server-close.html: Renamed from LayoutTests/http/tests/websocket/tests/server-close.html.
        * http/tests/websocket/tests/hixie76/server-close_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/server-close_wsh.py.
        * http/tests/websocket/tests/hixie76/simple-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/simple-expected.txt.
        * http/tests/websocket/tests/hixie76/simple-stress-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/simple-stress-expected.txt.
        * http/tests/websocket/tests/hixie76/simple-stress.html: Renamed from LayoutTests/http/tests/websocket/tests/simple-stress.html.
        * http/tests/websocket/tests/hixie76/simple.html: Renamed from LayoutTests/http/tests/websocket/tests/simple.html.
        * http/tests/websocket/tests/hixie76/simple_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/simple_wsh.py.
        * http/tests/websocket/tests/hixie76/sub-protocol-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/sub-protocol-expected.txt.
        * http/tests/websocket/tests/hixie76/sub-protocol-with-space-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/sub-protocol-with-space-expected.txt.
        * http/tests/websocket/tests/hixie76/sub-protocol-with-space.html: Renamed from LayoutTests/http/tests/websocket/tests/sub-protocol-with-space.html.
        * http/tests/websocket/tests/hixie76/sub-protocol.html: Renamed from LayoutTests/http/tests/websocket/tests/sub-protocol.html.
        * http/tests/websocket/tests/hixie76/unicode-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/unicode-expected.txt.
        * http/tests/websocket/tests/hixie76/unicode.html: Renamed from LayoutTests/http/tests/websocket/tests/unicode.html.
        * http/tests/websocket/tests/hixie76/unicode_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/unicode_wsh.py.
        * http/tests/websocket/tests/hixie76/unknown-frame-type_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/unknown-frame-type_wsh.py.
        * http/tests/websocket/tests/hixie76/url-no-trailing-slash-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-no-trailing-slash-expected.txt.
        * http/tests/websocket/tests/hixie76/url-no-trailing-slash.html: Renamed from LayoutTests/http/tests/websocket/tests/url-no-trailing-slash.html.
        * http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-parsing-expected.txt.
        * http/tests/websocket/tests/hixie76/url-parsing.html: Renamed from LayoutTests/http/tests/websocket/tests/url-parsing.html.
        * http/tests/websocket/tests/hixie76/url-with-credential-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-with-credential-expected.txt.
        * http/tests/websocket/tests/hixie76/url-with-credential.html: Renamed from LayoutTests/http/tests/websocket/tests/url-with-credential.html.
        * http/tests/websocket/tests/hixie76/url-with-empty-query-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-with-empty-query-expected.txt.
        * http/tests/websocket/tests/hixie76/url-with-empty-query.html: Renamed from LayoutTests/http/tests/websocket/tests/url-with-empty-query.html.
        * http/tests/websocket/tests/hixie76/url-with-query-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-with-query-expected.txt.
        * http/tests/websocket/tests/hixie76/url-with-query-for-no-query-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/url-with-query-for-no-query-expected.txt.
        * http/tests/websocket/tests/hixie76/url-with-query-for-no-query.html: Renamed from LayoutTests/http/tests/websocket/tests/url-with-query-for-no-query.html.
        * http/tests/websocket/tests/hixie76/url-with-query.html: Renamed from LayoutTests/http/tests/websocket/tests/url-with-query.html.
        * http/tests/websocket/tests/hixie76/websocket-event-target-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/websocket-event-target-expected.txt.
        * http/tests/websocket/tests/hixie76/websocket-event-target.html: Renamed from LayoutTests/http/tests/websocket/tests/websocket-event-target.html.
        * http/tests/websocket/tests/hixie76/websocket-pending-activity-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/websocket-pending-activity-expected.txt.
        * http/tests/websocket/tests/hixie76/websocket-pending-activity.html: Renamed from LayoutTests/http/tests/websocket/tests/websocket-pending-activity.html.
        * http/tests/websocket/tests/hixie76/websocket-protocol-ignored-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/websocket-protocol-ignored-expected.txt.
        * http/tests/websocket/tests/hixie76/websocket-protocol-ignored.html: Renamed from LayoutTests/http/tests/websocket/tests/websocket-protocol-ignored.html.
        * http/tests/websocket/tests/hixie76/workers/close-in-onmessage-crash-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-onmessage-crash-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/close-in-onmessage-crash.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-onmessage-crash.html.
        * http/tests/websocket/tests/hixie76/workers/close-in-shared-worker-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-shared-worker-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/close-in-shared-worker.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-shared-worker.html.
        * http/tests/websocket/tests/hixie76/workers/close-in-worker-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-worker-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/close-in-worker.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/close-in-worker.html.
        * http/tests/websocket/tests/hixie76/workers/resources/close-in-onmessage-crash.js: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/close-in-onmessage-crash.js.
        (runTests.try.ws.onopen):
        (runTests.try.ws.onmessage):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hixie76/workers/resources/close-in-worker.js: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/close-in-worker.js.
        (handleConnect.self.postMessage):
        (handleConnect):
        (runTests.try.ws.onopen):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hixie76/workers/resources/echo-challenge_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/echo-challenge_wsh.py.
        * http/tests/websocket/tests/hixie76/workers/resources/echo_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/echo_wsh.py.
        * http/tests/websocket/tests/hixie76/workers/resources/simple_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/simple_wsh.py.
        * http/tests/websocket/tests/hixie76/workers/resources/worker-handshake-challenge-randomness.js: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/worker-handshake-challenge-randomness.js.
        (endTest):
        (runTests.try.ws1.onmessage):
        (runTests.try.ws1.onclose.ws2.onmessage):
        (runTests.try.ws1.onclose.ws2.onclose):
        (runTests.try.ws1.onclose):
        (runTests):
        * http/tests/websocket/tests/hixie76/workers/resources/worker-simple.js: Renamed from LayoutTests/http/tests/websocket/tests/workers/resources/worker-simple.js.
        (handleConnect.self.postMessage):
        (handleConnect):
        (runTests.try.ws.onopen):
        (runTests.try.ws.onmessage):
        (runTests.try.ws.onclose):
        (runTests):
        * http/tests/websocket/tests/hixie76/workers/shared-worker-simple-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/shared-worker-simple-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/shared-worker-simple.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/shared-worker-simple.html.
        * http/tests/websocket/tests/hixie76/workers/worker-handshake-challenge-randomness-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/worker-handshake-challenge-randomness-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/worker-handshake-challenge-randomness.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html.
        * http/tests/websocket/tests/hixie76/workers/worker-simple-expected.txt: Renamed from LayoutTests/http/tests/websocket/tests/workers/worker-simple-expected.txt.
        * http/tests/websocket/tests/hixie76/workers/worker-simple.html: Renamed from LayoutTests/http/tests/websocket/tests/workers/worker-simple.html.
        * http/tests/websocket/tests/resources/reload-crash-iframe.html: Removed.
        * platform/chromium-linux/http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars-expected.txt: Renamed from LayoutTests/platform/chromium-linux/http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt.
        * platform/chromium-linux/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Renamed from LayoutTests/platform/chromium-win/http/tests/websocket/tests/url-parsing-expected.txt.
        * platform/chromium-mac/http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars-expected.txt: Renamed from LayoutTests/platform/chromium-mac/http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt.
        * platform/chromium-mac/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Renamed from LayoutTests/platform/chromium-linux/http/tests/websocket/tests/url-parsing-expected.txt.
        * platform/chromium-win/http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars-expected.txt: Renamed from LayoutTests/platform/chromium-win/http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt.
        * platform/chromium-win/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Renamed from LayoutTests/platform/chromium-mac/http/tests/websocket/tests/url-parsing-expected.txt.
        * platform/chromium/test_expectations.txt:
        * platform/qt-arm/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/qt/http/tests/websocket/tests/hixie76/bad-sub-protocol-non-ascii-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/websocket/tests/bad-sub-protocol-non-ascii-expected.txt.
        * platform/win/Skipped:

2011-07-05  Kentaro Hara  <haraken@google.com>

        Trigger a 'change' event whenever selected files are changed
        https://bugs.webkit.org/show_bug.cgi?id=63929

        Reviewed by Kent Tamura.

        Record previously selected files and then compare them with newly selected files.
        If the previously selected files and their order are not equal to those of
        the newly selected files, we trigger the 'change' event.

        * fast/forms/file-input-change-event-expected.txt: Added.
        * fast/forms/file-input-change-event.html: Added.

2011-06-29  Kent Tamura  <tkent@chromium.org>

        Reviewed by Alexey Proskuryakov.

        [Mac] REGRESSION (r88415): Range slider doesn't have focus appearance.
        https://bugs.webkit.org/show_bug.cgi?id=63573

        * fast/forms/input-appearance-range.html:
          Give a focus on a slider to check focus appearance.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/forms/input-appearance-range-expected.png:

2011-07-05  Eric Seidel  <eric@webkit.org>

        buildbot needs to understand whether NRWT exited early after having too many failures
        https://bugs.webkit.org/show_bug.cgi?id=63839

        Reviewed by Adam Barth.

        Teach the new results.html how to display a warning when testing exited early.
        The warning isn't quite as nice as ORWT since I couldn't figure out how to
        find the total tests run, or total unexpected crashes.  I figure
        this is enough to get us going and we can refine it further.

        * fast/harness/results.html:

2011-07-05  Sam Weinig  <sam@webkit.org>

        Null deref accessing CustomEvent.detail
        <rdar://problem/9724577>
        https://bugs.webkit.org/show_bug.cgi?id=63885

        Reviewed by Anders Carlsson.

        Add test which exercises an initialized details property on 
        a CustomEvent instance.

        * fast/events/custom-event-uninitialized-expected.txt: Added.
        * fast/events/custom-event-uninitialized.html: Added.

2011-07-05  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=63947
        ASSERT running Object.preventExtensions(Math.sin)

        Reviewed by Oliver Hunt.

        This is due to calling scope() on a hostFunction as a part of
        calling createPrototypeProperty to reify the prototype property.
        But host functions don't have a prototype property anyway!

        Add test case for calling preventExtensions on a host function.

        * fast/js/preventExtensions-expected.txt:
        * fast/js/script-tests/preventExtensions.js:

2011-07-04  Gavin Barraclough  <barraclough@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=63880
        Evaluation order of conversions of operands to >, >= incorrect.

        Reviewed by Sam Weinig.

        Updated layout test results. Two of these tests now pass, however for
        the third we now need to check in failing results, since the test is
        incorrect!

        The problem if that the test author has made the mistake of thinking
        that the evaluation order for the operands to '>' is RHS then LHS.
        This is due to a quirk in the way the spec is written. The greater
        than opeator is defined to call the abstract relational comparison
        algorithm with 'leftFirst' set to false, and as such conversion is
        performed on the second operand ('y') first (see 11.8.5). However
        the abstract relational comparison algorith is performing a less
        than comaprison, and the greater than operator calls this algorithm
        with the operands to the greater than operator reversed (see 11.8.2).
        As such, the second operand to the abstract comaparison is the LHS
        of the greater than. This bug also affects the corresponding less
        than or equals test, where we already we have failing results checked
        in, and again it is the test that is wrong (for the same reason).

        * fast/js/exception-sequencing-binops2-expected.txt:
        * sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.2_The_Greater_than_Operator/S11.8.2_A2.3_T1-expected.txt:
        * sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.4_The_Grater_than_or_equal_Operator/S11.8.4_A2.3_T1-expected.txt:

2011-07-05  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Marked css2.1/20110323/replaced-intrinsic-ratio-001.htm as flaky on mac.

        * platform/chromium/test_expectations.txt:

2011-07-05  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Removed custom chromium-linux baselines for
        navigator-detached-no-crash.html & register-protocol-handler.html

        * platform/chromium-linux/fast/dom/navigator-detached-no-crash-expected.txt: Removed.
        * platform/chromium-linux/fast/dom/register-protocol-handler-expected.txt: Removed.

2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Show content for plugin requests in network panel.
        https://bugs.webkit.org/show_bug.cgi?id=30080

        Added tests for plugin content saving and replacing in NetworkResourcesData.
        Adjusted older tests to use new window.internals method setInspectorResourcesDataSizeLimits
        to ensure NetworkResourcesData is in the correct state before test.

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-content-replacement-embed-expected.txt: Added.
        * http/tests/inspector/network/network-content-replacement-embed.html: Added.
        * http/tests/inspector/network/network-content-replacement-xhr-expected.txt: Added.
        * http/tests/inspector/network/network-content-replacement-xhr.html: Added.
        * http/tests/inspector/network/network-embed-expected.txt: Added.
        * http/tests/inspector/network/network-embed.html: Added.
        * http/tests/inspector/network/network-xhr-async-expected.txt:
        * http/tests/inspector/network/network-xhr-async.html:
        * http/tests/inspector/network/network-xhr-sync-expected.txt:
        * http/tests/inspector/network/network-xhr-sync.html:
        * http/tests/inspector/network/resources/cp1251.xml: Added.
        * http/tests/inspector/network/resources/plugin-data.php: Added.
        * http/tests/inspector/network/resources/resource.php:
        * http/tests/inspector/network/resources/utf8.xml: Added.
        * platform/chromium/test_expectations.txt:

2011-07-04  Kinuko Yasuda  <kinuko@chromium.org>

        [Chromium] LayoutTests/fast/filesystem/workers/simple-persistent-sync.html is failing on chromium worker tests
        https://bugs.webkit.org/show_bug.cgi?id=63906

        The expected text file needs to be updated to reflect the recent API change for adding the prefix vendor (i.e. requestFileSystem -> webkitRequestFileSystem).

        Unreviewed; chromium test expectations change.

        * fast/filesystem/workers/simple-persistent-sync-expected.txt:

2011-07-05  Shinya Kawanaka  <shinyak@google.com>

        Reviewed by Kent Tamura.

        The default step is used when the step attribute of input[type='number'] is "any".
        https://bugs.webkit.org/show_bug.cgi?id=57723

        Changed Layout tests to use the default step when the step attribute of
        input[type='number'] is "any".

        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: Regenerated.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js:

2011-07-04  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=16652
        Firefox and JavaScriptCore differ in Number.toString(integer)

        Our arbitrary radix (2..36) toString conversion is inaccurate.
        This is partly because it uses doubles to perform math that requires
        higher accuracy, and partly becasue it does not attempt to correctly
        detect where to terminate, instead relying on a simple 'epsilon'.

        * fast/js/number-toString-expected.txt:
            - Update expected results from FAIL to PASS.

2011-07-04  Mihai Parparita  <mihaip@chromium.org>

        As of r90372 there are WebKit2 Mac-specific tests; don't expect those to
        pass in Chromium, just like other platform-specific tests.

        * platform/chromium/test_expectations.txt:

2011-07-04  Kent Tamura  <tkent@chromium.org>

        REGRESSION (r87067): Text overflows from short height text field.
        https://bugs.webkit.org/show_bug.cgi?id=61768

        Reviewed by Dimitri Glazkov.

        * fast/forms/textfield-overflow-by-value-update.html: Added.
        * platform/chromium/test_expectations.txt: Add textfield-overflow-by-value-update.html.
        * platform/mac/fast/forms/textfield-overflow-by-value-update-expected.png: Added.
        * platform/mac/fast/forms/textfield-overflow-by-value-update-expected.txt: Added.

2011-07-04  MORITA Hajime  <morrita@google.com>

        Accessing ShadowRoot.nodeList causes an assertion failure.
        http://webkit.org/b/63798
        
        Reviewed by Dimitri Glazkov.
        
        * fast/dom/shadow/shadow-root-node-list-expected.txt: Added.
        * fast/dom/shadow/shadow-root-node-list.html: Added.

2011-07-04  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations change.

        Mark four tests as passing on the GPU step.

        * platform/chromium/test_expectations.txt:

2011-07-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r90373.
        http://trac.webkit.org/changeset/90373
        https://bugs.webkit.org/show_bug.cgi?id=63917

        Breaks Qt Linux Release minimal (Requested by vsevik on
        #webkit).

        * http/tests/inspector/network/network-content-replacement-embed-expected.txt: Removed.
        * http/tests/inspector/network/network-content-replacement-embed.html: Removed.
        * http/tests/inspector/network/network-content-replacement-xhr-expected.txt: Removed.
        * http/tests/inspector/network/network-content-replacement-xhr.html: Removed.
        * http/tests/inspector/network/network-embed-expected.txt: Removed.
        * http/tests/inspector/network/network-embed.html: Removed.
        * http/tests/inspector/network/network-xhr-async-expected.txt:
        * http/tests/inspector/network/network-xhr-async.html:
        * http/tests/inspector/network/network-xhr-sync-expected.txt:
        * http/tests/inspector/network/network-xhr-sync.html:
        * http/tests/inspector/network/resources/cp1251.xml: Removed.
        * http/tests/inspector/network/resources/plugin-data.php: Removed.
        * http/tests/inspector/network/resources/resource.php:
        * http/tests/inspector/network/resources/utf8.xml: Removed.
        * platform/chromium/test_expectations.txt:

2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Show content for plugin requests in network panel.
        https://bugs.webkit.org/show_bug.cgi?id=30080

        Reviewed by Pavel Feldman.

        * http/tests/inspector/network/network-content-replacement-embed-expected.txt: Added.
        * http/tests/inspector/network/network-content-replacement-embed.html: Added.
        * http/tests/inspector/network/network-content-replacement-xhr-expected.txt: Added.
        * http/tests/inspector/network/network-content-replacement-xhr.html: Added.
        * http/tests/inspector/network/network-embed-expected.txt: Added.
        * http/tests/inspector/network/network-embed.html: Added.
        * http/tests/inspector/network/network-xhr-async-expected.txt:
        * http/tests/inspector/network/network-xhr-async.html:
        * http/tests/inspector/network/network-xhr-sync-expected.txt:
        * http/tests/inspector/network/network-xhr-sync.html:
        * http/tests/inspector/network/resources/cp1251.xml: Added.
        * http/tests/inspector/network/resources/plugin-data.php: Added.
        * http/tests/inspector/network/resources/resource.php:
        * http/tests/inspector/network/resources/utf8.xml: Added.
        * platform/chromium/test_expectations.txt:

2011-07-04  Anders Carlsson  <andersca@apple.com>

        NP_RemoveProperty is not called back by Safari when delete npObject.prop is encountered in JavaScript
        https://bugs.webkit.org/show_bug.cgi?id=63915
        <rdar://problem/7124300>

        Reviewed by Sam Weinig.

        Add a test. I made this Mac-WebKit2 specific for now since no other plug-in implementations support this,
        and there doesn't seem to be a way to make a WebKit2 specific test.

        * platform/mac-wk2/plugins/npruntime/remove-property-from-javascript-expected.txt: Added.
        * platform/mac-wk2/plugins/npruntime/remove-property-from-javascript.html: Added.

2011-07-04  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations change.
        
        Mark two tests as failing on the GPU step.

        * platform/chromium/test_expectations.txt:

2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: network-preflight-options.html test is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=63904

        Unreviewed test fix.

        * http/tests/inspector/network-preflight-options-expected.txt:
        * http/tests/inspector/network-preflight-options.html:
        * platform/qt/Skipped:

2011-07-04  Andras Becsi  <abecsi@webkit.org>

        [Qt] http/tests/inspector/network-preflight-options.html fails frequently
        https://bugs.webkit.org/show_bug.cgi?id=63910

        Unreviewed.

        * platform/qt/Skipped: Skip http/tests/inspector/network-preflight-options.html.

2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Resources loaded to Resources Panel from InspectorPageAgent do not have mime type set.
        https://bugs.webkit.org/show_bug.cgi?id=63701

        Added a test that checks mime type when resources are loaded from cache by InspectorPageAgent.

        Reviewed by Yury Semikhatsky.

        * http/tests/inspector/resource-tree/resource-tree-mimetype-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-mimetype.html: Added.
        * http/tests/inspector/resource-tree/resources/empty.png: Added.

2011-07-04  Marcus Bulach  <bulach@chromium.org>

        [chromium] Updates expectations for failures on svg/animations/svgtransform-animation-1.html
        https://bugs.webkit.org/show_bug.cgi?id=63902

        Unreviewed expectations fix.

        * platform/chromium/test_expectations.txt:

2011-07-04  Marcus Bulach  <bulach@chromium.org>

        [chromium] Rebaseline following r90338
        https://bugs.webkit.org/show_bug.cgi?id=63896

        Unreviewed rebaseline.

        * platform/chromium-linux/plugins/mouse-click-plugin-clears-selection-expected.png: Added.
        * platform/chromium-mac/plugins/mouse-click-plugin-clears-selection-expected.png: Added.
        * platform/chromium-mac/plugins/mouse-click-plugin-clears-selection-expected.txt: Added.
        * platform/chromium-win-vista/plugins/mouse-click-plugin-clears-selection-expected.png: Added.

2011-07-04  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Extensions API] audit formatter names should begin with create
        https://bugs.webkit.org/show_bug.cgi?id=63802

        * inspector/extensions/extensions-audits-api-expected.txt:
        * inspector/extensions/extensions-audits.html:

2011-07-04  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Use jsTestIsAsync and finishJSTest() wherever possible in WebSocket tests
        https://bugs.webkit.org/show_bug.cgi?id=63892

        Reviewed by Kent Tamura.

        Use jsTestIsAsync and finishJSTest() in WebSocket tests which are run asynchronously.
        Script tags loading js-test-post-function.js must be removed, and instead js-test-post.js
        must be loaded after each test.

        * http/tests/websocket/tests/alert-in-event-handler.html:
        * http/tests/websocket/tests/bad-handshake-crash.html:
        * http/tests/websocket/tests/bad-sub-protocol-control-chars.html:
        This test is done synchronously, thus there is no need to use jsTestIsAsync and
        finishJSTest(). As we are moving away from js-test-post-function.js,
        isSuccessfullyParsed() should not be used anymore.
        * http/tests/websocket/tests/bad-sub-protocol-empty.html:
        * http/tests/websocket/tests/bad-sub-protocol-non-ascii.html:
        * http/tests/websocket/tests/bufferedAmount-after-close.html:
        * http/tests/websocket/tests/close-before-open.html:
        * http/tests/websocket/tests/close-on-navigate-new-location.html:
        * http/tests/websocket/tests/close-on-unload-and-force-gc.html:
        * http/tests/websocket/tests/close-on-unload-reference-in-parent.html:
        * http/tests/websocket/tests/close-on-unload.html:
        * http/tests/websocket/tests/close-unref-websocket.html:
        * http/tests/websocket/tests/cross-origin.html:
        * http/tests/websocket/tests/error-detect.html:
        * http/tests/websocket/tests/frame-length-longer-than-buffer.html:
        * http/tests/websocket/tests/frame-length-overflow.html:
        Add close tags for <body> and <html> elements which were not present for some reason.
        * http/tests/websocket/tests/frame-length-skip.html:
        * http/tests/websocket/tests/handshake-challenge-randomness.html:
        * http/tests/websocket/tests/handshake-error.html:
        * http/tests/websocket/tests/handshake-fail-by-cross-origin.html:
        * http/tests/websocket/tests/handshake-fail-by-maxlength.html:
        * http/tests/websocket/tests/handshake-fail-by-no-connection-header.html:
        * http/tests/websocket/tests/handshake-fail-by-no-cr.html:
        * http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html:
        * http/tests/websocket/tests/handshake-fail-by-prepended-null.html:
        * http/tests/websocket/tests/handshake-fail-by-sub-protocol-mismatch.html:
        * http/tests/websocket/tests/long-invalid-header.html:
        * http/tests/websocket/tests/null-character.html:
        * http/tests/websocket/tests/reload-crash.html:
        * http/tests/websocket/tests/send-after-close-on-unload.html:
        * http/tests/websocket/tests/send-throw.html:
        * http/tests/websocket/tests/send.html:
        * http/tests/websocket/tests/simple.html:
        * http/tests/websocket/tests/sub-protocol-with-space.html:
        * http/tests/websocket/tests/sub-protocol.html:
        * http/tests/websocket/tests/unicode.html:
        * http/tests/websocket/tests/url-no-trailing-slash.html:
        * http/tests/websocket/tests/url-parsing.html:
        * http/tests/websocket/tests/url-with-credential.html:
        * http/tests/websocket/tests/url-with-empty-query.html:
        * http/tests/websocket/tests/url-with-query-for-no-query.html:
        * http/tests/websocket/tests/url-with-query.html:
        * http/tests/websocket/tests/websocket-event-target.html:
        * http/tests/websocket/tests/websocket-protocol-ignored.html:

2011-07-03  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] Remove passing tests from the qt-wk2 list
        https://bugs.webkit.org/show_bug.cgi?id=63877

        Reviewed by Kenneth Rohde Christiansen.

        * platform/qt-wk2/Skipped:

2011-07-03  Dominic Cooney  <dominicc@chromium.org>

        The value property of an indeterminate progress element should be zero
        https://bugs.webkit.org/show_bug.cgi?id=63861

        Reviewed by Kent Tamura.

        Updates test result, and adds a test for setting value < 0.

        * fast/dom/HTMLProgressElement/script-tests/set-progress-properties.js:
        * fast/dom/HTMLProgressElement/set-progress-properties-expected.txt:

2011-07-03  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: pywebsocket handlers should raise exception to abort the connection
        https://bugs.webkit.org/show_bug.cgi?id=63794

        pywebsocket automatically sends handshake response when web_socket_do_extra_handshake()
        finishes, and starts closing handshake (sends a close frame and waits for client's response)
        after web_socket_transfer_data() exits. To stop this behavior, a handler must raise an
        exception.

        Some of our handlers send broken handshake in web_socket_do_extra_handshake(). If this handler
        function exits without raising an exception, pywebsocket automatically sends another handshake
        response, which is not really necessary. Normally this extra handshake message is not a problem,
        because the client does not read any data beyond the end of the first (broken) handshake if
        the client is working correctly. However, if the client erroneously accepts the first handshake,
        it will be hard to diagnose the problem because of the extra message. The same can happen for
        web_socket_transfer_data().

        Generally, pywebsocket handlers should raise an exception if they do not want to send any more
        data. However, this fact has been overlooked in past changes, and handlers in many tests exit
        normally where they should raise an exception. This change fix these errors.

        * http/tests/websocket/tests/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/frame-length-overflow_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-maxlength_wsh.py:
        Do not need to cycle until disconnection.
        * http/tests/websocket/tests/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/long-invalid-header_wsh.py:
        Some ports (Chromium) intercept handshake messages and do not pass server's response
        to WebCore until they find the end of handshake response (i.e. "\r\n\r\n" and 16-byte data).
        If the handler aborts the connection without sending this end-of-response marker, entire
        response is ignored, which causes the test to fail.

2011-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r90347.
        http://trac.webkit.org/changeset/90347
        https://bugs.webkit.org/show_bug.cgi?id=63886

        Build breaks on Leopard, Chromium-win, WinCairo, and WinCE.
        (Requested by tkent on #webkit).

        * fast/js/number-toString-expected.txt:

2011-07-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=16652
        Firefox and JavaScriptCore differ in Number.toString(integer)

        Our arbitrary radix (2..36) toString conversion is inaccurate.
        This is partly because it uses doubles to perform math that requires
        higher accuracy, and partly becasue it does not attempt to correctly
        detect where to terminate, instead relying on a simple 'epsilon'.

        * fast/js/number-toString-expected.txt:
            - Update expected results from FAIL to PASS.

2011-07-03  Robert Hogan  <robert@webkit.org>

        Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
        https://bugs.webkit.org/show_bug.cgi?id=62482

        If a <meta http-equiv="refresh"> directive schedules a page reload rather than
        a redirect restore the scroll position after the reload. Do the same on location.reload().

        Reviewed by Adam Barth.

        * http/tests/navigation/scrollstate-after-http-equiv-refresh-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh.html: Added.
        * http/tests/navigation/scrollstate-after-location-reload-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-location-reload.html: Added.

2011-07-03  Dirk Schulze  <krit@webkit.org>

        SVGAnimateTransform accumulate=sum restarts on every repeat
        https://bugs.webkit.org/show_bug.cgi?id=63876

        Reviewed by Nikolas Zimmermann.
        
        Test accumulate=sum on SVGAnimateTransform. The animation shouldn't start with initial value
        on every repeat for accumulation.

        * svg/animations/script-tests/svgtransform-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgtransform-animation-1-expected.txt: Added.
        * svg/animations/svgtransform-animation-1.html: Added.

2011-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r90342.
        http://trac.webkit.org/changeset/90342
        https://bugs.webkit.org/show_bug.cgi?id=63875

        Newly added tests fail on Mac, GTK, and Win7 (Requested by
        abarth on #webkit).

        * http/tests/navigation/scrollstate-after-http-equiv-refresh-expected.txt: Removed.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2-expected.txt: Removed.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html: Removed.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-expected.txt: Removed.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html: Removed.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh.html: Removed.
        * http/tests/navigation/scrollstate-after-location-reload-expected.txt: Removed.
        * http/tests/navigation/scrollstate-after-location-reload.html: Removed.

2011-07-03  Robert Hogan  <robert@webkit.org>

        Skip Qt platform-specific test after r90341
        https://bugs.webkit.org/show_bug.cgi?id=45455

        Unreviewed, skip test.

        The Skipped list needs the platform-specific path of the test.

        * platform/qt/Skipped:

2011-07-03  Robert Hogan  <robert@webkit.org>

        Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
        https://bugs.webkit.org/show_bug.cgi?id=62482

        If a <meta http-equiv="refresh"> directive schedules a page reload rather than
        a redirect restore the scroll position after the reload. Do the same on location.reload().

        Reviewed by Adam Barth.

        * http/tests/navigation/scrollstate-after-http-equiv-refresh-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html: Added.
        * http/tests/navigation/scrollstate-after-http-equiv-refresh.html: Added.
        * http/tests/navigation/scrollstate-after-location-reload-expected.txt: Added.
        * http/tests/navigation/scrollstate-after-location-reload.html: Added.

2011-04-02  Robert Hogan  <robert@webkit.org>

        Reviewed by Benjamin Poulain.

        [Qt] Support third-party cookie policy for Qt clients

        Add a new test and move third-party cookie tests to 'pending
        unskipping' for when bots move to 4.8.

        See also: http://gitorious.org/qt/qt/merge_requests/1205
                   (commit 154402f56dcf8303a6ce601a52215226af8d31ba)
                  http://bugreports.qt.nokia.com/browse/QTBUG-13601

        https://bugs.webkit.org/show_bug.cgi?id=45455

        * platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html: Added.
        * platform/qt/http/tests/cookies/strict-third-party-cookie-blocking-expected.txt: Added.
          This test is a stricter version of third-party-cookie-relaxing.html with
          the expected behaviour that all third-party cookies are blocked.
        * platform/qt/Skipped: Prepare tests for unskipping on Qt-4.8.
        * platform/qt/http/tests/cookies/third-party-cookie-relaxing-expected.txt: Added.
          Qt returns cookie lists in a different order from other ports.

2011-07-03  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Web Inspector: Preflight OPTIONS requests are not shown on network panel for asynchronous XHRs.
        https://bugs.webkit.org/show_bug.cgi?id=63712

        * http/tests/inspector/network-preflight-options-expected.txt:
        * http/tests/inspector/network-preflight-options.html:

2011-07-03  Robert Hogan  <robert@webkit.org>

        Add platform-specific results after r90338

        Unreviewed, add platform-specific results for new rendertree test.
        https://bugs.webkit.org/show_bug.cgi?id=30355

        http://trac.webkit.org/changeset/90338

        * platform/gtk/plugins/mouse-click-plugin-clears-selection-expected.txt: Added.
        * platform/qt-mac/plugins/mouse-click-plugin-clears-selection-expected.txt: Added.
        * plugins/mouse-click-plugin-clears-selection-expected.txt: Added.

2011-06-23  Robert Hogan  <robert@webkit.org>

        Reviewed by Simon Hausmann.

        [Qt] Windowless Plugins : <input> cursor blinks even after transferring focus to plugin
        https://bugs.webkit.org/show_bug.cgi?id=30355

        Unfortunately this has to be a rendertree test, as there is no rendertext way of
        determining if a selection is still highlighted.

        * platform/chromium/plugins/mouse-click-plugin-clears-selection-expected.txt: Added.
        * platform/qt/plugins/mouse-click-plugin-clears-selection-expected.txt: Added.
        * plugins/mouse-click-plugin-clears-selection.html: Added.

2011-07-02  Mihai Parparita  <mihaip@chromium.org>

        Remove failing expectation for fast/events/panScroll-click-hyperlink.html
        (Chromium still doesn't pass the test, since it doesn't have pan
        scrolling enabled, but r90235 added failing expectations for the Windows
        port, which Chromium Win and Linux pick up)
        
        Also remove flaky expectations for some tests that have not failed as
        far back as the flakiness dashboard has data for.

        * platform/chromium/test_expectations.txt:

2011-07-02  Anders Carlsson  <andersca@apple.com>

        Update skipped list.

        * platform/wk2/Skipped:

2011-07-02  Mihai Parparita  <mihaip@chromium.org>

        Remove Chromium Leopard failing expectations for two tests (fast/dom/
        HTMLMeterElement/meter-writing-mode.html and fast/images/
        imagemap-focus-ring-zoom.html) sice they pass now. Fix bug links.

        * platform/chromium/test_expectations.txt:

2011-07-02  Mihai Parparita  <mihaip@chromium.org>

        Meant to actually remove expectations in r90322, not just comment them
        out.

        * platform/chromium/test_expectations.txt:

2011-07-02  Mihai Parparita  <mihaip@chromium.org>

        Add Chromium Mac Snow Leopard baselines for editing/selection/vertical*
        since the regular Mac baselines can't be used due to single-pixel
        differences in character rendering (presumably caused by 32-bit vs.
        64-bit binaries).

        * platform/chromium-mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-07-02  Mihai Parparita  <mihaip@chromium.org>

        Chromium expectations update:
        - Add failing expectation for fast/css/last-of-type-pseudo-class.html,
          which fails in debug only.
        - Remove Chromium-specific baselines for fast/js/reserved-words.html,
          the test now passes with the regular baselines.

        * platform/chromium-mac/fast/js/reserved-words-expected.txt: Removed.
        * platform/chromium-win/fast/js/reserved-words-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-07-02  Kent Tamura  <tkent@chromium.org>

        [GTK] Update expectation of fast/forms/input-file-re-render.html
        https://bugs.webkit.org/show_bug.cgi?id=49245

        * platform/gtk/fast/forms/input-file-re-render-expected.png: Remove a stale image.
        * platform/gtk/fast/forms/input-file-re-render-expected.txt:

2011-07-01  Kent Tamura  <tkent@chromium.org>

        [Chromium] Rebaseline for fast/forms/input-file-re-render.html
        https://bugs.webkit.org/show_bug.cgi?id=63733

        Also, input-file-label.html passes now.

        * platform/chromium-linux/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-linux/fast/forms/input-file-re-render-expected.txt:
        * platform/chromium-mac-leopard/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-mac/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-win/fast/forms/input-file-re-render-expected.png:
        * platform/chromium-win/fast/forms/input-file-re-render-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-01  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update the expectation of search-rtl.html
        https://bugs.webkit.org/show_bug.cgi?id=63787

        * platform/chromium-win/fast/forms/search-rtl-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        Remove GTK baseline added in r90294 since the test was fixed in r90309.
        (File name was wrong. It was supposed to be -expected.txt)

        * platform/gtk/editing/selection/directionality-after-undo-replace.html: Removed.

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        [GTK] editing/selection/directionality-after-undo-replace.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=63853

        Reviewed by Ojan Vafai.

        Don't do leapForward between mouseDown and mouseUp so that GTK recognizes the double-click.

        * editing/selection/directionality-after-undo-replace.html:

2011-07-01  Kent Tamura  <tkent@chromium.org>

        Reviewed by Tony Chang.

        Use common functions in fast/forms/search-rtl.html
        https://bugs.webkit.org/show_bug.cgi?id=63787

        * fast/forms/search-rtl.html: Use searchCancelButtonPosition() to make
          this work on Chromium Windows and Chromium Linux.
        * platform/chromium/test_expectations.txt:

2011-07-01  Sam Weinig  <sam@webkit.org>

        Reduce parser nesting cap to 512
        https://bugs.webkit.org/show_bug.cgi?id=63856

        Update test for new cap.

        * fast/parser/block-nesting-cap-expected.txt:
        * fast/parser/script-tests/block-nesting-cap.js:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        editing/selection/directionality-after-undo-replace.html fails on Chromium Windows
        https://bugs.webkit.org/show_bug.cgi?id=63855

        Reviewed by Ryosuke Niwa.
        
        Allow a trailing whitespace in the expected result, since Windows
        has different word iterating behavior.

        * editing/selection/directionality-after-undo-replace.html:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Remove Chromium Windows 7 and Vista media test expectations, since
        clobbering the bots appears to have fixed the timeouts and failures.

        * platform/chromium/test_expectations.txt:

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaseline r90275. The failure of directionality-after-undo-replace.html is tracked by the bug 63853.

        * platform/gtk/editing/selection/after-line-break-expected.txt: Added.
        * platform/gtk/editing/selection/directionality-after-undo-replace.html: Added.

2011-07-01  Nate Chapin  <japhet@chromium.org>

        Unreviewed, remove extraneous newlines from
        expected results for fast/workers/worker-finish-crash.html.

        * fast/workers/worker-finish-crash-expected.txt:

2011-07-01  Darin Adler  <darin@apple.com>

        The commit-bot checked in files without Subversion properties, so adding them now.

        * fast/loader/create-frame-in-DOMContentLoaded-expected.txt: Added property svn:eol-style.
        * fast/loader/create-frame-in-DOMContentLoaded.html: Added properties svn:mime-type and svn:eol-style.

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r90275 in WebKit2 because setEditingBehavior hasn't been implemented in TestRunner.

        * platform/wk2/Skipped:

2011-07-01  Hans Wennborg  <hans@chromium.org>

        IndexedDB: make LevelDB the default back-end
        https://bugs.webkit.org/show_bug.cgi?id=63817

        Reviewed by Tony Chang.

        Disable IndexedDB quota teset since quota enforcement is not yet
        supported by the LevelDB back-end.

        * platform/chromium/test_expectations.txt:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Rebaseline media/media-blocked-by-beforeload.html for Chromium Leopard
        (r90261 added a Leopard expectation for the Mac port, but Chromium 
        Leopard can pass with the default baseline).

        * platform/chromium-mac-leopard/media/media-blocked-by-beforeload-expected.txt: Added.

2011-07-01  Nate Chapin  <japhet@chromium.org>

        Test for https://bugs.webkit.org/show_bug.cgi?id=63835.

        Reviewed by Dmitry Titov.

        * fast/workers/worker-finish-crash-expected.txt: Added.
        * fast/workers/worker-finish-crash.html: Added.

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by Darin Fisher.

        location.replace with a hash change does not update the history entry
        https://bugs.webkit.org/show_bug.cgi?id=63777

        * fast/history/location-replace-hash-expected.txt: Added.
        * fast/history/location-replace-hash.html: Added.
        * fast/history/resources/location-replace-hash-1.html: Added.
        * fast/history/resources/location-replace-hash-2.html: Added.

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        Fix expected results after r90275. I checked in Mac-specific results for these tests.
        Move them to platform/mac and revert the changes in platform-independent results.
        Also copy results to platform/win because they fallback to Mac by default.

        * editing/deleting/delete-br-011-expected.txt:
        * editing/selection/anchor-focus2-expected.txt:
        * editing/selection/anchor-focus3-expected.txt:
        * platform/mac/editing/deleting/delete-br-011-expected.txt: Copied from LayoutTests/editing/deleting/delete-br-011-expected.txt.
        * platform/mac/editing/selection/anchor-focus2-expected.txt: Copied from LayoutTests/editing/selection/anchor-focus2-expected.txt.
        * platform/mac/editing/selection/anchor-focus3-expected.txt: Copied from LayoutTests/editing/selection/anchor-focus3-expected.txt.
        * platform/win/editing/deleting/delete-br-011-expected.txt: Copied from LayoutTests/editing/deleting/delete-br-011-expected.txt.
        * platform/win/editing/selection/anchor-focus2-expected.txt: Copied from LayoutTests/editing/selection/anchor-focus2-expected.txt.
        * platform/win/editing/selection/anchor-focus3-expected.txt: Copied from LayoutTests/editing/selection/anchor-focus3-expected.txt.

2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Ojan Vafai.

        Move m_isDirectional from FrameSelection to VisibleSelection
        https://bugs.webkit.org/show_bug.cgi?id=63473

        Added a test to ensure WebKit preserves non-directional selection after undo on Mac.

        The directionality of selection is still lost after undoing DeleteSelectionCommand or TypingCommand
        and this will be fixed in follow up patches.

        * editing/deleting/delete-br-011-expected.txt:
        * editing/selection/after-line-break-expected.txt:
        * editing/selection/anchor-focus2-expected.txt:
        * editing/selection/anchor-focus3-expected.txt:
        * editing/selection/directionality-after-undo-replace-expected.txt: Added.
        * editing/selection/directionality-after-undo-replace.html: Added.
        * platform/mac/editing/deleting/delete-br-002-expected.txt:
        * platform/mac/editing/deleting/delete-br-004-expected.txt:
        * platform/mac/editing/deleting/delete-br-005-expected.txt:
        * platform/mac/editing/deleting/delete-br-006-expected.txt:
        * platform/mac/editing/deleting/delete-br-009-expected.txt:
        * platform/mac/editing/deleting/delete-br-010-expected.txt:
        * platform/mac/editing/deleting/smart-delete-002-expected.txt:
        * platform/mac/editing/inserting/insert-3800346-fix-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-01-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-02-expected.txt:
        * platform/mac/editing/inserting/insert-div-010-expected.txt:
        * platform/mac/editing/inserting/insert-div-013-expected.txt:
        * platform/mac/editing/inserting/insert-div-015-expected.txt:
        * platform/mac/editing/inserting/insert-div-019-expected.txt:
        * platform/mac/editing/inserting/insert-paragraph-03-expected.txt:
        * platform/mac/editing/pasteboard/3976872-expected.txt:
        * platform/mac/editing/pasteboard/emacs-ctrl-a-k-y-expected.txt:
        * platform/mac/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-014-expected.txt:
        * platform/mac/editing/selection/4932260-1-expected.txt:
        * platform/mac/editing/selection/expanding-selections-expected.txt:
        * platform/mac/editing/selection/expanding-selections2-expected.txt:
        * platform/mac/editing/selection/fake-drag-expected.txt:
        * platform/mac/editing/selection/move-by-word-001-expected.txt:
        * platform/mac/editing/selection/triple-click-in-pre-expected.txt:
        * platform/mac/editing/style/create-block-for-style-008-expected.txt:
        * platform/mac/editing/undo/4063751-expected.txt:
        * platform/mac/editing/undo/undo-forward-delete-boundary-expected.txt:
        * platform/mac/editing/undo/undo-forward-delete-expected.txt:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Add more Chromium flaky expectations.

        * platform/chromium/test_expectations.txt:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Add more failing test expectations for Chromium media tests on Windows 7
        and Vista.

        * platform/chromium/test_expectations.txt:

2011-07-01  Juan C. Montemayor  <jmont@apple.com>

        Reviewed by Oliver Hunt.

        Lexer error messages are currently appalling
        https://bugs.webkit.org/show_bug.cgi?id=63340

        Updated expected test results.

        * fast/js/basic-strict-mode-expected.txt:
        * fast/js/kde/parse-expected.txt:
        * fast/js/kde/string-1-n-expected.txt:
        * fast/js/kde/string-2-n-expected.txt:
        * fast/js/numeric-escapes-in-string-literals-expected.txt:
        * fast/js/removing-Cf-characters-expected.txt:
        * fast/regex/non-pattern-characters-expected.txt:
        * http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt:
        * loader/reload-subresource-when-type-changes-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.1_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.2_T1-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A13_T1-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A13_T2-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A14_T1-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A14_T2-expected.txt:

2011-07-01  Adam Roben  <aroben@apple.com>

        Add Leopard expected failure result for media/media-blocked-by-beforeload.html

        The failure is tracked by <http://webkit.org/b/63829>.

        * platform/mac-leopard/media/media-blocked-by-beforeload-expected.txt: Added.

2011-07-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r90254.
        http://trac.webkit.org/changeset/90254
        https://bugs.webkit.org/show_bug.cgi?id=63825

        "committed with a totally broken changelog" (Requested by
        kbalazs on #webkit).

        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/plugins/netscape-dom-access-expected.txt: Removed.

2011-07-01  Hans Wennborg  <hans@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: Fix constants for webkitIDBTransaction.READ_WRITE/READ_ONLY
        https://bugs.webkit.org/show_bug.cgi?id=63754

        Update layout tests to use the right values for
        webkitIDBTransaction.READ_WRITE/READ_ONLY.

        * storage/indexeddb/constants-expected.txt:
        * storage/indexeddb/constants.html:

2011-07-01  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=63819
        Escaping of forwardslashes in strings incorrect if multiple exist.

        Add tests with multiple forward slashes.

        * fast/regex/script-tests/toString.js:
        * fast/regex/toString-expected.txt:

2011-07-01  Mihai Parparita  <mihaip@chromium.org>

        Add failing test expectations for Chromium media tests on Windows 7 and
        Vista.

        * platform/chromium/test_expectations.txt:

2011-07-01  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Andreas Kling.

        [Qt][WK2] Clean up skipped list
        https://bugs.webkit.org/show_bug.cgi?id=61644

        * platform/qt-wk2/Skipped: Remove everything that we skip via the common wk2 list.

2011-06-30  Brian Weinstein  <bweinstein@apple.com>

        Reviewed by Darin Adler.

        WebKit2: DidFinishLoadForFrame is never called on iframes when loads are 
        cancelled by willSendRequest
        https://bugs.webkit.org/show_bug.cgi?id=63753
        
        Unskip WebKit2 tests that now pass.

        * platform/wk2/Skipped:

2011-07-01  Adam Roben  <aroben@apple.com>

        Skip one asserting and one timing-out test on Windows

        Failures are tracked by <http://webkit.org/b/63806> and <http://webkit.org/b/63807>.

        * platform/win/Skipped: Added
        http/tests/cache/history-only-cached-subresource-loads-max-age-https.html and
        fast/loader/create-frame-in-DOMContentLoaded.html.

2011-07-01  Adam Roben  <aroben@apple.com>

        Land Windows expected failure results for fast/events/panScroll-click-hyperlink.html

        The failure is tracked by <http://webkit.org/b/63809>.

        * platform/win/fast/events/panScroll-click-hyperlink-expected.txt:

2011-07-01  Adam Roben  <aroben@apple.com>

        Land new expected (failure?) results for an accessibility test on Windows

        The failure is tracked by <http://webkit.org/b/63811>.

        * platform/win/accessibility/aria-labelledby-overrides-aria-label-expected.txt:

2011-07-01  Adam Roben  <aroben@apple.com>

        Update expected results after r90159

        Fixes <http://webkit.org/b/63810> REGRESSION (r90159): fast/events/window-onerror5.html
        failing

        * fast/events/window-onerror5-expected.txt: Updated for progression.

2011-07-01  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Andreas Kling.

        [Qt][WK2] netscape-dom-access.html needs new result
        https://bugs.webkit.org/show_bug.cgi?id=63454

        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/plugins/netscape-dom-access-expected.txt: Added.

2011-07-01  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Andreas Kling.

        [Qt][WK2] netscape-dom-access.html needs new result
        https://bugs.webkit.org/show_bug.cgi?id=63454

        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/plugins/netscape-dom-access-expected.txt: Added.

2011-07-01  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Andreas Kling.

        [X11][WK2] plugins/mouse-evets-fixedpos.html is failing because of broken event propagation
        https://bugs.webkit.org/show_bug.cgi?id=63239

        * platform/qt-wk2/Skipped:

2011-07-01  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Adam Roben.

        accessibility/aria-labelledby-overrides-aria-label.html failing on Windows since it was added
        https://bugs.webkit.org/show_bug.cgi?id=63191

        * accessibility/aria-labelledby-overrides-aria-label-expected.txt: Removed.
        * accessibility/aria-labelledby-overrides-aria-label.html:
        * platform/mac/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Added.
        * platform/win/accessibility/aria-labelledby-overrides-aria-label-expected.txt:

2011-07-01  Kentaro Hara  <haraken@google.com>

        Reviewed by Kent Tamura.

        Disallow clicking an [X] button in 'search' input forms when 'disabled' attribute or 'readonly' attribute is set.
        https://bugs.webkit.org/show_bug.cgi?id=63709

        Added a test that checks whether the content in 'search' input forms with 'disabled' attribute
        or 'readonly' attribute is cleared or not, when an [X] button is clicked.

        * fast/forms/search-disabled-readonly-expected.txt: Added.
        * fast/forms/search-disabled-readonly.html: Added.

2011-07-01  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update text expectation for Vista.

        * platform/chromium-win-vista/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.

2011-07-01  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedLengthListAnimator does not take additive="sum" into accout
        https://bugs.webkit.org/show_bug.cgi?id=63705

        Tests additive animations for SVGLengthLists as well as unit animations on SVGLength.

        * svg/animations/script-tests/svglength-animation-unitType.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglengthlist-animation-5.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svglength-animation-unitType-expected.txt: Added.
        * svg/animations/svglength-animation-unitType.html: Added.
        * svg/animations/svglengthlist-animation-5-expected.txt: Added.
        * svg/animations/svglengthlist-animation-5.html: Added.

2011-07-01  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGAnimatedInteger animation
        https://bugs.webkit.org/show_bug.cgi?id=63789
        
        Test animation of SVGAnimatedInteger. Added the test to the wk2 skip list.

        * platform/mac-wk2/Skipped:
        * svg/animations/script-tests/svginteger-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svginteger-animation-1-expected.txt: Added.
        * svg/animations/svginteger-animation-1.html: Added.

2011-07-01  Kent Tamura  <tkent@chromium.org>

        [Chromium] More test expectation update for r90089

        Need to update a Windows XP expectation because the corresponding
        chromium-win expectation was updated.

        * platform/chromium-win-xp/fast/forms/search-styled-expected.png: Added.

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Mac][Chromium] Update test expectations for r90089

        The placeholder position changes are expected because we respect
        paddings for text fields.

        * platform/chromium-linux/fast/forms/placeholder-position-expected.png:
        * platform/chromium-mac-leopard/fast/forms/placeholder-position-expected.png:
        * platform/chromium-win/fast/forms/placeholder-position-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/forms/placeholder-position-expected.png:

2011-06-30  Eugene Klyuchnikov  <eustas.bug@gmail.com>

        Reviewed by Pavel Feldman.

        WebInspector: Performance / memory allocation issue in WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded
        https://bugs.webkit.org/show_bug.cgi?id=40447

        * inspector/editor/text-editor-model-replace-tabs-expected.txt: Added.
        * inspector/editor/text-editor-model-replace-tabs.html: Added.

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectations.

        * platform/chromium-mac-leopard/fast/forms/preserveFormDuringResidualStyle-expected.png: Added.
        * platform/chromium-mac-leopard/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.
        * platform/chromium-win-xp/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectation files for r90089.

        * platform/chromium-linux/fast/css/input-search-padding-expected.png:
        * platform/chromium-linux/fast/css/input-search-padding-expected.txt:
        * platform/chromium-linux/fast/forms/box-shadow-override-expected.txt:
        * platform/chromium-linux/fast/forms/control-restrict-line-height-expected.txt:
        * platform/chromium-linux/fast/forms/input-appearance-height-expected.txt:
        * platform/chromium-linux/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/chromium-linux/fast/forms/placeholder-set-value-expected.png: Added.
        * platform/chromium-linux/fast/forms/search-display-none-cancel-button-expected.png:
        * platform/chromium-linux/fast/forms/search-styled-expected.txt:
        * platform/chromium-linux/fast/forms/search-vertical-alignment-expected.png:
        * platform/chromium-linux/fast/forms/searchfield-heights-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/searchfield-heights-expected.txt.
        * platform/chromium-linux/fast/repaint/search-field-cancel-expected.png:
        * platform/chromium-linux/fast/replaced/width100percent-searchfield-expected.png:
        * platform/chromium-linux/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/chromium-linux/platform/mac/fast/forms/input-appearance-spinbutton-expected.png: Added.
        * platform/chromium-linux/platform/mac/fast/forms/input-appearance-spinbutton-expected.txt: Added.
        * platform/chromium-linux/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/search-vertical-alignment-expected.png: Added.
        * platform/chromium-mac/fast/css/input-search-padding-expected.png: Removed.
        * platform/chromium-mac/fast/forms/box-shadow-override-expected.png:
        * platform/chromium-mac/fast/forms/box-shadow-override-expected.txt:
        * platform/chromium-mac/fast/forms/input-appearance-height-expected.png:
        * platform/chromium-mac/fast/forms/input-appearance-height-expected.txt:
        * platform/chromium-mac/fast/forms/search-vertical-alignment-expected.png: Added.
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-mac/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium-win-vista/fast/forms/search-styled-expected.txt: Removed.
        * platform/chromium-win-xp/fast/forms/search-styled-expected.txt:
        * platform/chromium-win/fast/css/input-search-padding-expected.png:
        * platform/chromium-win/fast/css/input-search-padding-expected.txt:
        * platform/chromium-win/fast/css/pseudo-cache-stale-expected.txt:
        * platform/chromium-win/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/chromium-win/fast/forms/box-shadow-override-expected.txt:
        * platform/chromium-win/fast/forms/control-restrict-line-height-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-height-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-position-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/chromium-win/fast/forms/placeholder-set-value-expected.txt:
        * platform/chromium-win/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/chromium-win/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/chromium-win/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/chromium-win/fast/forms/search-rtl-expected.txt:
        * platform/chromium-win/fast/forms/search-styled-expected.png:
        * platform/chromium-win/fast/forms/search-styled-expected.txt:
        * platform/chromium-win/fast/forms/search-vertical-alignment-expected.png:
        * platform/chromium-win/fast/forms/search-vertical-alignment-expected.txt:
        * platform/chromium-win/fast/forms/searchfield-heights-expected.png: Added.
        * platform/chromium-win/fast/forms/searchfield-heights-expected.txt:
        * platform/chromium-win/fast/repaint/search-field-cancel-expected.png:
        * platform/chromium-win/fast/repaint/search-field-cancel-expected.txt:
        * platform/chromium-win/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/chromium-win/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-win/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium-win/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/chromium-win/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/chromium-win/platform/mac/fast/forms/input-appearance-spinbutton-expected.png: Added.
        * platform/chromium-win/platform/mac/fast/forms/input-appearance-spinbutton-expected.txt: Added.
        * platform/chromium-win/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/replaced/width100percent-searchfield-expected.png.
        * platform/chromium-win/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Chromium-Mac] Update test expectation files.

        * platform/chromium-mac-leopard/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-mac/fast/dom/HTMLInputElement/input-slider-update-expected.png: Removed.
        * platform/chromium-mac/fast/forms/basic-buttons-expected.png: Added.
        * platform/chromium-mac/fast/forms/button-sizes-expected.png: Added.
        * platform/chromium-mac/fast/forms/file-input-direction-expected.png:
        * platform/chromium-mac/fast/forms/file-input-direction-expected.txt:
        * platform/chromium-mac/fast/forms/input-appearance-bkcolor-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-appearance-range-expected.png:
        * platform/chromium-mac/fast/forms/preserveFormDuringResidualStyle-expected.png:
        * platform/chromium-mac/fast/forms/slider-padding-expected.png: Removed.
        * platform/chromium-mac/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/chromium-mac/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/chromium-mac/fast/repaint/slider-thumb-drag-release-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-30  Kent Tamura  <tkent@chromium.org>

        Reviewed by Tony Chang.

        [Chromium] Input type="range" slider thumb is rendered upside down on Mac OS X.
        https://bugs.webkit.org/show_bug.cgi?id=63697

        * platform/chromium/test_expectations.txt: Some tests need new expectation images.

2011-06-30  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Simon Fraser.

        [Chromium] -webkit-text-stroke doesn't affect with non-zero width border property
        https://bugs.webkit.org/show_bug.cgi?id=63698

        Added a test which ensures text stroke is rendered with non-zero width border.

        * platform/chromium-linux/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.
        * platform/chromium-linux/platform/chromium/fast/text/text-stroke-with-border-expected.txt: Added.
        * platform/chromium-mac/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.
        * platform/chromium-mac/platform/chromium/fast/text/text-stroke-with-border-expected.txt: Added.
        * platform/chromium-win/platform/chromium/fast/text/text-stroke-with-border-expected.png: Added.
        * platform/chromium-win/platform/chromium/fast/text/text-stroke-with-border-expected.txt: Added.
        * platform/chromium/fast/text/text-stroke-with-border.html: Added.

2011-06-30  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed.

        Rebaselining video-currentTime-set.html for Chromium due to FFmpeg update.

        * platform/chromium-mac/media/video-currentTime-set-expected.txt:
        * platform/chromium-win/media/video-currentTime-set-expected.txt:

2011-06-30  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Don't use old Hixie75 handshake in pywebsocket handlers
        https://bugs.webkit.org/show_bug.cgi?id=63704

        * http/tests/websocket/tests/bad-handshake-crash_wsh.py:
        Use handshake format of Hixie's protocol draft 76 which we are currently supporting.
        * http/tests/websocket/tests/long-invalid-header_wsh.py:
        Content of web_socket_transfer_data() is completely bogus. It's not necessary.

2011-06-30  Kent Tamura  <tkent@chromium.org>

        Reviewed by Darin Fisher.

        [Chromium] Implement WebCore::defaultDetailsSummaryText()
        https://bugs.webkit.org/show_bug.cgi?id=63700

        * platform/chromium/test_expectations.txt: Tests for <details> fail temporarily.

2011-06-30  Zhenyao Mo  <zmo@google.com>

        Reviewed by Kenneth Russell.

        Improve WebGL object lifetime management in WebGLRenderingContext
        https://bugs.webkit.org/show_bug.cgi?id=63635

        * fast/canvas/webgl/gl-object-get-calls-expected.txt:
        * fast/canvas/webgl/gl-object-get-calls.html: Fix a bug so getFramebufferAtatchmentParameter generates an error if nothing is attached and something other than TYPE is queried.
        * fast/canvas/webgl/object-deletion-behaviour-expected.txt:
        * fast/canvas/webgl/object-deletion-behaviour.html: Ditto.
        * fast/canvas/webgl/program-test.html: Fix the test so the order of shaders returned by getAttachedShaders doesn't matter.

2011-06-27  Diego Gonzalez  <diegohcg@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] DRT: Provide LayoutTestController::setDefersLoading and ::goBack support
        https://bugs.webkit.org/show_bug.cgi?id=63489

        Unskipped:
            loader/navigation-while-deferring-loads.html

        * platform/qt/Skipped:

2011-06-30  Alan Stearns  <stearns@adobe.com>

        Reviewed by Tony Chang.

        Modify Skipped files so that future css exclusions LayoutTests are
        skipped by default.

        [CSSExclusions] Add test and skip entries
        https://bugs.webkit.org/show_bug.cgi?id=63751

        * fast/exclusions/triangle-exclusion.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-30  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Update SVG position values on SVG DOM updates
        https://bugs.webkit.org/show_bug.cgi?id=62439

        * svg/custom/crash-textPath-attributes-expected.txt: Added.
        * svg/custom/crash-textPath-attributes.html: Added.
        * svg/custom/resources/crash-textPath-attributes-iframe.svg: Added.

2011-06-30  Sreeram Ramachandran  <sreeram@chromium.org>

        Reviewed by Adam Barth.

        Suppress modal JavaScript/HTML dialogs during unload events
        https://bugs.webkit.org/show_bug.cgi?id=56397

        Adds Chromium-specific test expectations that show alerts in unload
        handlers being replaced by console messages.

        * fast/loader/page-dismissal-modal-dialogs-expected.txt: Added.
        * fast/loader/page-dismissal-modal-dialogs.html: Added.
        * fast/loader/resources/page-dismissal-modal-dialogs-iframe.html: Added.
        * platform/chromium-mac/fast/history/timed-refresh-in-cached-frame-expected.txt:
        * platform/chromium-win/fast/history/timed-refresh-in-cached-frame-expected.txt:
        * platform/chromium/fast/dom/Geolocation/notimer-after-unload-expected.txt: Added.
        * platform/chromium/fast/events/onbeforeunload-focused-iframe-expected.txt: Added.
        * platform/chromium/fast/events/onunload-clears-onbeforeunload-expected.txt: Added.
        * platform/chromium/fast/events/onunload-expected.txt: Added.
        * platform/chromium/fast/events/onunload-not-on-body-expected.txt: Added.
        * platform/chromium/fast/events/onunload-window-property-expected.txt: Added.
        * platform/chromium/fast/events/pageshow-pagehide-on-back-uncached-expected.txt: Added.
        * platform/chromium/fast/history/timed-refresh-in-cached-frame-expected.txt: Added.
        * platform/chromium/fast/loader/frames-with-unload-handlers-in-page-cache-expected.txt: Added.
        * platform/chromium/fast/loader/page-dismissal-modal-dialogs-expected.txt: Added.
        * platform/chromium/fast/loader/recursive-before-unload-crash-expected.txt: Added.

2011-06-30  Juan C. Montemayor  <jmont@apple.com>

        Reviewed by Geoffrey Garen.

        Web Inspector fails to display source for eval with syntax error
        https://bugs.webkit.org/show_bug.cgi?id=63583

        Added new LayoutTest to check that the correct line number is added to a
        syntax error inside an eval statement.

        * fast/js/eval-contained-syntax-error-expected.txt: Added.
        * fast/js/eval-contained-syntax-error.html: Added.
        * fast/js/script-tests/eval-contained-syntax-error.js: Added.
        * platform/chromium/fast/js/eval-contained-syntax-error-expected.txt: Added.

2011-06-30  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium test update after r90148.

        * platform/chromium/test_expectations.txt:

2011-06-30  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Assertion failure in RenderSVGInlineText::characterStartsNewTextChunk
        https://bugs.webkit.org/show_bug.cgi?id=63076

        * svg/custom/crash-text-in-textpath-expected.txt: Added.
        * svg/custom/crash-text-in-textpath.svg: Added.
        Original crashing test case.

        * svg/custom/text-node-in-text-invalidated-expected.txt: Added.
        * svg/custom/text-node-in-text-invalidated.svg: Added.
        This test case was not crashing. However it is good to make sure this change
        did not regress that.

2011-06-30  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Anders Carlsson.

        [GTK] Crash observed with nspluginwrapper and flash
        https://bugs.webkit.org/show_bug.cgi?id=62249

        Added a test which verifies that WebKit does not crash when InvalidateRect
        is called with a null instance.

        * platform/gtk/plugins/invalidate-rect-with-null-npp-argument-expected.txt: Added.
        * platform/gtk/plugins/invalidate-rect-with-null-npp-argument.html: Added.

2011-06-30  Tab Atkins  <jackalmage@gmail.com>

        Reviewed by Adam Barth.

        Fix legacy color attribute parsing to match HTML spec
        https://bugs.webkit.org/show_bug.cgi?id=63029

        Tests <body bgcolor> parsing.

        * fast/dom/attribute-legacy-colors-expected.txt: Added.
        * fast/dom/attribute-legacy-colors.html: Added.
        * fast/dom/script-tests/attribute-legacy-colors.js: Added.

2011-06-30  Nate Chapin  <japhet@chromium.org>

        Unreviewed, remove passing tests from chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-29  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Ryosuke Niwa.

        Crash when calling DOMSubtreeModified event when extracting range
        contents.
        https://bugs.webkit.org/show_bug.cgi?id=63650

        * fast/dom/Range/range-extract-contents-event-fire-crash-expected.txt: Added.
        * fast/dom/Range/range-extract-contents-event-fire-crash.html: Added.
        * fast/dom/Range/range-extract-contents-event-fire-crash2-expected.txt: Added.
        * fast/dom/Range/range-extract-contents-event-fire-crash2.html: Added.
        * fast/dom/Range/range-extractContents.html: remove the appending of fragment
        in this crasher test since we now refptr the nodes and leftContents will be visible.
        This crasher test does not need to show the extractContents fragment.

2011-06-30  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium test expectations update after r90101.

        * platform/chromium/test_expectations.txt:

2011-06-30  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [WK2] Create a general wk2 specific LayoutTests/platform/wk2 platform
        Common Skipped list copied from LayoutTests/platform/mac-wk2/Skipped.
        https://bugs.webkit.org/show_bug.cgi?id=61785 

        * platform/mac-wk2/Skipped:
        * platform/wk2/Skipped: Copied from LayoutTests/platform/mac-wk2/Skipped.

2011-06-30  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Protocol: error object needs some improvement.
        https://bugs.webkit.org/show_bug.cgi?id=63707

        Current implementation is not useful in the code.
        We need to have toString implementation with nice formatting
        I'd like to use error.message property as the main place for the error's text.

        * inspector/elements/set-attribute.html:
        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-06-30  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip a failing media test on GTK because of
        https://bugs.webkit.org/show_bug.cgi?id=63699

        * platform/gtk/Skipped: skip media/media-blocked-by-willsendrequest.html

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Chromium] Resolve a conflict.

        * platform/chromium/test_expectations.txt:

2011-06-30  Kentaro Hara  <haraken@google.com>

        Reviewed by Kent Tamura.

        Change the label of an HTML5 file chooser button to "Choose Files"
        https://bugs.webkit.org/show_bug.cgi?id=49245

        We should notify capability of multiple files to users.
        input-file-label.html is a test that checks a label of the file chooser
        with/without 'multiple' attribute. input-file-label.html will fail in Chromium
        until a planned Chromium patch is landed. input-file-re-render.html will
        also fail in Chromium, gtk and MacLeopard until we update the expected images
        for the test.

        * fast/forms/input-file-label-expected.txt: Added.
        * fast/forms/input-file-label.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/forms/input-file-re-render-expected.png:
        * platform/mac/fast/forms/input-file-re-render-expected.txt:

2011-06-30  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Don't use script-tests for WebSocket tests
        https://bugs.webkit.org/show_bug.cgi?id=63691

        Move content of script-tests/XXX.js into XXX.html.

        No changes were made to script code. Hence, these tests are not using
        window.jsTestAsync and finishJSTest() for now. I will fix this later.

        * http/tests/websocket/tests/alert-in-event-handler.html:
        * http/tests/websocket/tests/bad-handshake-crash.html:
        * http/tests/websocket/tests/bad-sub-protocol-control-chars.html:
        * http/tests/websocket/tests/bad-sub-protocol-empty.html:
        * http/tests/websocket/tests/bad-sub-protocol-non-ascii.html:
        * http/tests/websocket/tests/bufferedAmount-after-close.html:
        * http/tests/websocket/tests/cross-origin.html:
        * http/tests/websocket/tests/error-detect.html:
        * http/tests/websocket/tests/frame-length-longer-than-buffer.html:
        * http/tests/websocket/tests/frame-length-skip.html:
        * http/tests/websocket/tests/handshake-challenge-randomness.html:
        * http/tests/websocket/tests/handshake-error.html:
        * http/tests/websocket/tests/handshake-fail-by-cross-origin.html:
        * http/tests/websocket/tests/handshake-fail-by-no-cr.html:
        * http/tests/websocket/tests/handshake-fail-by-sub-protocol-mismatch.html:
        * http/tests/websocket/tests/long-invalid-header.html:
        * http/tests/websocket/tests/null-character.html:
        * http/tests/websocket/tests/script-tests/TEMPLATE.html: Removed.
        * http/tests/websocket/tests/script-tests/alert-in-event-handler.js: Removed.
        * http/tests/websocket/tests/script-tests/bad-handshake-crash.js: Removed.
        * http/tests/websocket/tests/script-tests/bad-sub-protocol-control-chars.js: Removed.
        * http/tests/websocket/tests/script-tests/bad-sub-protocol-empty.js: Removed.
        * http/tests/websocket/tests/script-tests/bad-sub-protocol-non-ascii.js: Removed.
        * http/tests/websocket/tests/script-tests/bufferedAmount-after-close.js: Removed.
        * http/tests/websocket/tests/script-tests/cross-origin.js: Removed.
        * http/tests/websocket/tests/script-tests/error-detect.js: Removed.
        * http/tests/websocket/tests/script-tests/frame-length-longer-than-buffer.js: Removed.
        * http/tests/websocket/tests/script-tests/frame-length-skip.js: Removed.
        * http/tests/websocket/tests/script-tests/handshake-challenge-randomness.js: Removed.
        * http/tests/websocket/tests/script-tests/handshake-error.js: Removed.
        * http/tests/websocket/tests/script-tests/handshake-fail-by-cross-origin.js: Removed.
        * http/tests/websocket/tests/script-tests/handshake-fail-by-no-cr.js: Removed.
        * http/tests/websocket/tests/script-tests/handshake-fail-by-sub-protocol-mismatch.js: Removed.
        * http/tests/websocket/tests/script-tests/long-invalid-header.js: Removed.
        * http/tests/websocket/tests/script-tests/null-character.js: Removed.
        * http/tests/websocket/tests/script-tests/send-throw.js: Removed.
        * http/tests/websocket/tests/script-tests/send.js: Removed.
        * http/tests/websocket/tests/script-tests/simple.js: Removed.
        * http/tests/websocket/tests/script-tests/sub-protocol-with-space.js: Removed.
        * http/tests/websocket/tests/script-tests/sub-protocol.js: Removed.
        * http/tests/websocket/tests/script-tests/unicode.js: Removed.
        * http/tests/websocket/tests/script-tests/url-no-trailing-slash.js: Removed.
        * http/tests/websocket/tests/script-tests/url-parsing.js: Removed.
        * http/tests/websocket/tests/script-tests/url-with-credential.js: Removed.
        * http/tests/websocket/tests/script-tests/url-with-empty-query.js: Removed.
        * http/tests/websocket/tests/script-tests/url-with-query-for-no-query.js: Removed.
        * http/tests/websocket/tests/script-tests/url-with-query.js: Removed.
        * http/tests/websocket/tests/script-tests/websocket-event-target.js: Removed.
        * http/tests/websocket/tests/script-tests/websocket-protocol-ignored.js: Removed.
        * http/tests/websocket/tests/send-throw.html:
        * http/tests/websocket/tests/send.html:
        * http/tests/websocket/tests/simple.html:
        * http/tests/websocket/tests/sub-protocol-with-space.html:
        * http/tests/websocket/tests/sub-protocol.html:
        * http/tests/websocket/tests/unicode.html:
        * http/tests/websocket/tests/url-no-trailing-slash.html:
        * http/tests/websocket/tests/url-parsing.html:
        * http/tests/websocket/tests/url-with-credential.html:
        * http/tests/websocket/tests/url-with-empty-query.html:
        * http/tests/websocket/tests/url-with-query-for-no-query.html:
        * http/tests/websocket/tests/url-with-query.html:
        * http/tests/websocket/tests/websocket-event-target.html:
        * http/tests/websocket/tests/websocket-protocol-ignored.html:

2011-06-30  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Fix style issues of pywebsocket handlers
        https://bugs.webkit.org/show_bug.cgi?id=63689

        Fix minor style errors such as wrong indentation or wrong number of blank lines.

        * http/tests/websocket/tests/bad-handshake-crash_wsh.py:
        * http/tests/websocket/tests/close-on-unload_wsh.py:
        * http/tests/websocket/tests/echo-challenge_wsh.py:
        * http/tests/websocket/tests/echo-cookie_wsh.py:
        * http/tests/websocket/tests/frame-length-longer-than-buffer_wsh.py:
        * http/tests/websocket/tests/frame-length-overflow_wsh.py:
        * http/tests/websocket/tests/frame-length-skip_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-maxlength_wsh.py:
        Use sequence repetition pattern instead of a loop.
        * http/tests/websocket/tests/handshake-fail-by-no-connection-header_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-no-cr_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-no-upgrade-header_wsh.py:
        * http/tests/websocket/tests/handshake-fail-by-prepended-null_wsh.py:
        * http/tests/websocket/tests/hanging-handshake_wsh.py:
        * http/tests/websocket/tests/long-invalid-header_wsh.py:
        * http/tests/websocket/tests/send2_wsh.py:
        * http/tests/websocket/tests/unknown-frame-type_wsh.py:
        * http/tests/websocket/tests/workers/resources/echo-challenge_wsh.py:

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [Mac-wk2] Update expectation files for r90089.
        https://bugs.webkit.org/show_bug.cgi?id=61415

        * platform/mac-wk2/fast/forms/textfield-overflow-expected.txt:

2011-06-30  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        Crash if ShadowRoot has a text node.
        https://bugs.webkit.org/show_bug.cgi?id=63607

        * fast/dom/shadow/shadow-root-text-child-expected.txt: Added.
        * fast/dom/shadow/shadow-root-text-child.html: Added.

2011-06-30  Kent Tamura  <tkent@chromium.org>

        [GTK][Mac][Win] Update expectation files for r90089.
        https://bugs.webkit.org/show_bug.cgi?id=61415

        * platform/gtk/fast/block/float/032-expected.txt:
        * platform/gtk/fast/css/input-search-padding-expected.txt:
        * platform/gtk/fast/css/pseudo-cache-stale-expected.txt:
        * platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/gtk/fast/forms/input-text-word-wrap-expected.txt:
        * platform/gtk/fast/forms/placeholder-position-expected.txt:
        * platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/placeholder-set-value-expected.txt:
        * platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/gtk/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-styled-expected.txt:
        * platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
        * platform/gtk/fast/forms/searchfield-heights-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/repaint/search-field-cancel-expected.txt:
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/fast/block/float/032-expected.txt:
        * platform/win/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/win/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/win/fast/forms/search-placeholder-value-changed-expected.txt:

2011-06-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Update platform specific expected files after r90089.

        * platform/qt/fast/css/pseudo-cache-stale-expected.png: Added.
        * platform/qt/fast/css/pseudo-cache-stale-expected.txt:
        * platform/qt/fast/css/text-input-with-webkit-border-radius-expected.png: Added.
        * platform/qt/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/qt/fast/forms/control-restrict-line-height-expected.png:
        * platform/qt/fast/forms/control-restrict-line-height-expected.txt:
        * platform/qt/fast/forms/placeholder-set-value-expected.png: Added.
        * platform/qt/fast/forms/placeholder-set-value-expected.txt:
        * platform/qt/fast/forms/search-cancel-button-style-sharing-expected.png: Added.
        * platform/qt/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/qt/fast/forms/search-display-none-cancel-button-expected.png: Added.
        * platform/qt/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/qt/fast/forms/search-placeholder-value-changed-expected.png: Added.
        * platform/qt/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.png: Added.
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-styled-expected.png: Added.
        * platform/qt/fast/forms/search-styled-expected.txt:
        * platform/qt/fast/forms/search-vertical-alignment-expected.png: Added.
        * platform/qt/fast/forms/search-vertical-alignment-expected.txt:
        * platform/qt/fast/replaced/width100percent-searchfield-expected.png:
        * platform/qt/fast/replaced/width100percent-searchfield-expected.txt:

2011-06-29  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Avoid custom layout code of RenderTextControlSingleLine
        https://bugs.webkit.org/show_bug.cgi?id=61415

        Update tests including <input type=search> or <input type=number>. Their
        internal structures are changed.
        Slight position changes for search result buttons and search cancel
        buttons are expected.

        * fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/css/input-search-padding-expected.png:
        * platform/mac/fast/css/input-search-padding-expected.txt:
        * platform/mac/fast/css/pseudo-cache-stale-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/placeholder-set-value-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.png:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.png:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:

2011-06-29  Simon Fraser  <simon.fraser@apple.com>

        Fix the test description.

        * fast/layers/negative-scroll-positions-expected.txt:
        * fast/layers/script-tests/negative-scroll-positions.js:

2011-06-29  Keishi Hattori  <keishi@webkit.org>

        Reviewed by Adam Barth.

        Remove extra space at EOL in view source mode
        https://bugs.webkit.org/show_bug.cgi?id=63620

        * fast/frames/resources/viewsource-frame-5.html: Added.
        * fast/frames/viewsource-empty-attribute-value-expected.txt: Regenerated.
        * fast/frames/viewsource-linebreak-expected.txt: Added.
        * fast/frames/viewsource-linebreak.html: Added. Test that there are no extra spaces at EOL.
        And that the multiple consecutive line breaks are maintained in the frame.

2011-06-23  Abhishek Arya  <inferno@chromium.org>

        Reviewed by James Robinson.

        Tests that we do not crash when failing to remove the linebreak
        object(widget, block, replaced, etc) from parent block lineboxes. The
        testcase tries to fuzz over the list of html and svg tags.
        https://bugs.webkit.org/show_bug.cgi?id=60307

        * fast/block/block-not-removed-from-parent-lineboxes-crash-expected.txt: Added.
        * fast/block/block-not-removed-from-parent-lineboxes-crash.html: Added.
        * fast/block/child-not-removed-from-parent-lineboxes-crash-expected.txt: Added.
        * fast/block/child-not-removed-from-parent-lineboxes-crash.html: Added.

2011-06-29  Alan Stearns  <stearns@adobe.com>

        Reviewed by Tony Chang.

        Modify Skipped files so that future css regions layout tests are
        skipped by default.

        [CSS Regions] Add support for skipped tests
        https://bugs.webkit.org/show_bug.cgi?id=63632

        * fast/regions/flow-content-basic.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-29  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Beth Dakin.

        Lay some groundwork for rubber-banding in overflow:scroll divs
        https://bugs.webkit.org/show_bug.cgi?id=63654

        Test clamping of scrollTo with negative values.

        * fast/layers/negative-scroll-positions-expected.txt: Added.
        * fast/layers/negative-scroll-positions.html: Added.
        * fast/layers/script-tests/TEMPLATE.html: Added.
        * fast/layers/script-tests/negative-scroll-positions.js: Added.
        (attemptScroll):

2011-06-29  Jessie Berlin  <jberlin@apple.com>

        eventSender.keyDown is unimplemented (WKTR)
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Add another test that uses eventSender.keyDown to the mac-wk2 Skipped list.

        * platform/mac-wk2/Skipped:

2011-06-29  Jian Li  <jianli@chromium.org>

        Reviewed by Kenneth Russell.

        WebGL test failing on SL bots: fast/canvas/webgl/data-view-test.html 
        https://bugs.webkit.org/show_bug.cgi?id=63151

        Updated the expected result and removed the rebaselined files that are not needed.

        * fast/canvas/webgl/data-view-test-expected.txt:
        * platform/chromium-mac/fast/canvas/webgl/data-view-test-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/webgl/data-view-test-expected.txt: Removed.
        * platform/mac/fast/canvas/webgl/data-view-test-expected.txt: Removed.

2011-06-29  Jeff Timanus  <twiz@chromium.org>

        Reviewed by Stephen White.

        [Chromium] Remove flakiness marker from fast/canvas/canvas-longlived-context.html
        https://bugs.webkit.org/show_bug.cgi?id=63649

        * platform/chromium/test_expectations.txt:

2011-06-29  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

        Media element loads blocked by a resource load delegate do not generate an error event
        https://bugs.webkit.org/show_bug.cgi?id=63558

        * media/media-blocked-by-beforeload-expected.txt: Added.
        * media/media-blocked-by-beforeload.html: Added.
        * media/media-blocked-by-willsendrequest-expected.txt: Added.
        * media/media-blocked-by-willsendrequest.html: Added.

2011-06-29  Darin Adler  <darin@apple.com>

        Reviewed by Anders Carlsson.

        [WebKit2] Crash loading page that adds/removes frame in DOMContentLoaded/loaded
        https://bugs.webkit.org/show_bug.cgi?id=63483

        * fast/loader/create-frame-in-DOMContentLoaded-expected.txt: Added.
        * fast/loader/create-frame-in-DOMContentLoaded.html: Added.

2011-06-29  Nat Duca  <nduca@chromium.org>

        [chromium] Unreviewed, mark fast/canvas/webgl/context-lost-restored failing
        https://bugs.webkit.org/show_bug.cgi?id=63643

        * platform/chromium/test_expectations.txt:

2011-06-29  Nat Duca  <nduca@chromium.org>

        [chromium] Unreviewed, mark index-validation-with-resized-buffer as failing.
        https://bugs.webkit.org/show_bug.cgi?id=63638

        * platform/chromium/test_expectations.txt:

2011-06-29  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/paragraph-in-preserveNewline.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=63362

        Converted editing/deleting/paragraph-in-preserveNewline.html to dump-as-markup,
        added doctype, added new baseline, and removed old baselines.

        * editing/deleting/paragraph-in-preserveNewline.html:
        * editing/deleting/paragraph-in-preserveNewline-expected.html: Added.
        * platform/chromium-linux/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/chromium-win/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/chromium-win/editing/deleting/paragraph-in-preserveNewline-expected.txt: Removed.
        * platform/gtk/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/mac-leopard/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/mac/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/mac/editing/deleting/paragraph-in-preserveNewline-expected.txt: Removed.
        * platform/qt/editing/deleting/paragraph-in-preserveNewline-expected.png: Removed.
        * platform/qt/editing/deleting/paragraph-in-preserveNewline-expected.txt: Removed.

2011-06-29  Nate Chapin  <japhet@chromium.org>

        Unreviewed, more chromium test updates.

        * platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/chromium-win/svg/foreignObject/text-tref-02-b-expected.png:

2011-06-29  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium test updates.

        * platform/chromium-mac-leopard/svg/foreignObject: Added.
        * platform/chromium-mac-leopard/svg/foreignObject/text-tref-02-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/foreignObject/text-tref-02-b-expected.txt: Added.
        * platform/chromium-mac/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: REGRESSION Resource revision fails to request content if it was not yet loaded for resource.
        https://bugs.webkit.org/show_bug.cgi?id=63631

        * http/tests/inspector/network/network-request-revision-content-expected.txt: Added.
        * http/tests/inspector/network/network-request-revision-content.html: Added.
        * http/tests/inspector/network/resources/script.js: Added.

2011-06-29  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt][WK2] plugins/document-open.html need new result for wk2
        https://bugs.webkit.org/show_bug.cgi?id=63633

        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/plugins/document-open-expected.txt: Added.

2011-06-29  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: tab crash after deleting trailing quote when editing attribute
        https://bugs.webkit.org/show_bug.cgi?id=63544

        * inspector/elements/set-attribute-expected.txt:
        * inspector/elements/set-attribute.html:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, remove erroneous test name from GTK Skipped list.

        * platform/gtk/Skipped:

2011-06-29  Mike West  <mkwst@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Missing fields in HAR
        https://bugs.webkit.org/show_bug.cgi?id=58127

        Setting correct expectations for the following fields newly added to
        the HAR implementation:

        - entry.request.httpVersion
        - entry.request.headersSize
        - entry.request.bodySize
        - entry.response.httpVersion
        - entry.response.headersSize
        - entry.response.bodySize
        - entry.response.content.compression

        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-har-conversion.html:
        * http/tests/inspector/resource-har-headers-expected.txt: Added.
        * http/tests/inspector/resource-har-headers.html: Added.
        * http/tests/inspector/resource-parameters-expected.txt:
        * http/tests/inspector/resources-test.js:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 acid tests on GTK due to bug 54119. They were
        failing only in 32-Bits Release though.

        * platform/gtk/Skipped:

2011-06-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Qt specific results committed in r90007, but fail on Qt-Mac platform

        * platform/qt-mac/Skipped: Skip failing tests.

2011-06-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected results for new passing tests.

        * platform/qt/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
        * platform/qt/svg/custom/text-tref-03-b-change-href-dom-expected.png: Added.
        * platform/qt/svg/custom/text-tref-03-b-change-href-dom-expected.txt: Added.
        * platform/qt/svg/custom/text-tref-03-b-change-href-expected.png: Added.
        * platform/qt/svg/custom/text-tref-03-b-change-href-expected.txt: Added.
        * platform/qt/svg/custom/text-tref-03-b-referenced-element-removal-expected.png: Added.
        * platform/qt/svg/custom/text-tref-03-b-referenced-element-removal-expected.txt: Added.
        * platform/qt/svg/custom/text-tref-03-b-tref-removal-expected.png: Added.
        * platform/qt/svg/custom/text-tref-03-b-tref-removal-expected.txt: Added.
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of 2 more tests.

        * inspector/console/console-trace-in-eval-expected.txt:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.txt:

2011-06-29  Hayato Ito  <hayato@chromium.org>

        Reviewed by Hajime Morita.

        Make a shadow host transfer a focus to the first focusable element in the shadow root when its focus() is called.
        https://bugs.webkit.org/show_bug.cgi?id=62358.

        This patch doesn't take an effect on the following elements to keep a compatibility.
        - <input>, <textarea>, <video> and <audio> elements
        We'll address these elements separately after re-targeting focus events
        (bug 61421) is implemented.

        A shadow root's <content> is not considered in this patch.
        That should be addressed in another patch. See bug 63522.

        * fast/dom/shadow/shadow-host-transfer-focus-expected.txt: Added.
        * fast/dom/shadow/shadow-host-transfer-focus.html: Added.

2011-06-29  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: last last ruby expectations for WebKit2 Win.

        * platform/win-wk2/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip
        http/tests/history/cross-origin-replace-history-object-child.html
        on GTK, due to bug 61937.

        * platform/gtk/Skipped:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of 3 svg/custom/linking tests.

        * platform/gtk/svg/custom/linking-a-03-b-all-expected.txt:
        * platform/gtk/svg/custom/linking-a-03-b-transform-expected.txt:
        * platform/gtk/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of
        fast/html/details-open-javascript.html

        * platform/gtk/fast/html/details-open-javascript-expected.txt:

2011-06-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip crashing tests on GTK because of
        https://bugs.webkit.org/show_bug.cgi?id=63611

        * platform/gtk/Skipped: skip 5 editing tests

2011-06-29  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: update the (hopefully) last ruby expectation stragglers in WebKit2

        * platform/win-wk2/fast/ruby/after-block-doesnt-crash-expected.txt:
        * platform/win-wk2/fast/ruby/after-table-doesnt-crash-expected.txt:
        * platform/win-wk2/fast/ruby/before-block-doesnt-crash-expected.txt:
        * platform/win-wk2/fast/ruby/before-table-doesnt-crash-expected.txt:

2011-06-29  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: more juggling with ruby expectation files, trying to
        find my way out of the expectations dependency jungle...

        * platform/chromium-mac/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/before-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/before-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.

2011-06-29  Darin Adler  <darin@apple.com>

        Reviewed by Adam Barth.

        Consolidate the fast/loader and fast/loading directories
        https://bugs.webkit.org/show_bug.cgi?id=63587

        * fast/loader/resources/subframe-that-removes-itself.html: Copied from LayoutTests/fast/loading/resources/subframe-that-removes-itself.html.
        * fast/loader/subframe-removes-itself-expected.txt: Copied from LayoutTests/fast/loading/subframe-removes-itself-expected.txt.
        * fast/loader/subframe-removes-itself.html: Copied from LayoutTests/fast/loading/subframe-removes-itself.html.
        * fast/loading/resources/subframe-that-removes-itself.html: Removed.
        * fast/loading/subframe-removes-itself-expected.txt: Removed.
        * fast/loading/subframe-removes-itself.html: Removed.

        * platform/gtk/Skipped: Updated for new location of test.
        * platform/mac-wk2/Skipped: Ditto.
        * platform/qt-wk2/Skipped: Ditto.

2011-06-28  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGBoolean animation
        https://bugs.webkit.org/show_bug.cgi?id=63529
        
        Test animation of SVGBoolean. Add the test to the skip list of wk2.
        Convert animate-number-calcMode-discrete-keyTimes to common style, no change
        on the test itself.

        * platform/mac-wk2/Skipped:
        * svg/animations/animate-number-calcMode-discrete-keyTimes-expected.txt:
        * svg/animations/animate-number-calcMode-discrete-keyTimes.html:
        * svg/animations/script-tests/svgboolean-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgboolean-animation-1-expected.txt: Added.
        * svg/animations/svgboolean-animation-1.html: Added.

2011-06-28  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Adam Barth.

        form.autocomplete="off" does not work
        https://bugs.webkit.org/show_bug.cgi?id=35823

        * fast/forms/autocomplete-expected.txt: Added.
        * fast/forms/autocomplete.html: Added.

2011-06-28  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: change URLs in ruby layout tests to lower case in order
        to avoid having to have separate Chromium expectations.

        * fast/ruby/after-block-doesnt-crash-expected.txt:
        * fast/ruby/after-block-doesnt-crash.html:
        * fast/ruby/after-table-doesnt-crash-expected.txt:
        * fast/ruby/after-table-doesnt-crash.html:
        * fast/ruby/before-block-doesnt-crash-expected.txt:
        * fast/ruby/before-block-doesnt-crash.html:
        * fast/ruby/before-table-doesnt-crash-expected.txt:
        * fast/ruby/before-table-doesnt-crash.html:
        * fast/ruby/generated-after-counter-doesnt-crash-expected.txt:
        * fast/ruby/generated-after-counter-doesnt-crash.html:
        * fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt:
        * fast/ruby/generated-before-and-after-counter-doesnt-crash.html:
        * fast/ruby/generated-before-counter-doesnt-crash-expected.txt:
        * fast/ruby/generated-before-counter-doesnt-crash.html:
        * platform/chromium-mac/fast/ruby/after-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/after-table-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/before-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/before-table-doesnt-crash-expected.txt: Removed.
        * platform/chromium-win/fast/ruby/after-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-win/fast/ruby/after-table-doesnt-crash-expected.txt: Removed.
        * platform/chromium-win/fast/ruby/before-block-doesnt-crash-expected.txt: Removed.
        * platform/chromium-win/fast/ruby/before-table-doesnt-crash-expected.txt: Removed.

2011-06-28  Roland Steiner  <rolandsteiner@chromium.org>

        Reviewed by Eric Seidel.

        Bug 55930 - (CVE-2011-1440) Incorrect handling of 'display:' property within nested <ruby> tags
        https://bugs.webkit.org/show_bug.cgi?id=55930

        Test that a generated block child + counter within a <ruby> doesn't crash.
        (Test as provided by original reporter).

        * fast/ruby/generated-after-counter-doesnt-crash-expected.txt: Added.
        * fast/ruby/generated-after-counter-doesnt-crash.html: Added.
        * fast/ruby/generated-before-and-after-counter-doesnt-crash-expected.txt: Added.
        * fast/ruby/generated-before-and-after-counter-doesnt-crash.html: Added.
        * fast/ruby/generated-before-counter-doesnt-crash-expected.txt: Added.
        * fast/ruby/generated-before-counter-doesnt-crash.html: Added.

2011-06-28  Adam Langley  <agl@chromium.org>

        Reviewed by Adam Barth.

        Skip cache validation on back with HTTPS.
        https://bugs.webkit.org/show_bug.cgi?id=63537

        * http/tests/cache/history-only-cached-subresource-loads-max-age-https-expected.txt: Added.
        * http/tests/cache/history-only-cached-subresource-loads-max-age-https.html: Added.
        * http/tests/cache/resources/max-age-resource-forward.html: Added.
        * http/tests/cache/resources/max-age-resource-next.html: Added.
        * http/tests/cache/resources/max-age-resource.html: Added.
        * http/tests/cache/resources/random-max-age.cgi: Added.

2011-06-27  Diego Gonzalez  <diegohcg@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] DRT support for setInteractiveFormValidationEnabled
        https://bugs.webkit.org/show_bug.cgi?id=63496

        * platform/qt/Skipped:

2011-06-28  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium test update for r89951.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/chromium-linux/svg/custom/text-tref-03-b-change-href-dom-expected.png: Added.
        * platform/chromium-linux/svg/custom/text-tref-03-b-change-href-expected.png: Added.
        * platform/chromium-linux/svg/custom/text-tref-03-b-referenced-element-removal-expected.png: Added.
        * platform/chromium-linux/svg/custom/text-tref-03-b-tref-removal-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-change-href-dom-expected.png: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-change-href-dom-expected.txt: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-change-href-expected.png: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-change-href-expected.txt: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-referenced-element-removal-expected.png: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-referenced-element-removal-expected.txt: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-tref-removal-expected.png: Added.
        * platform/chromium-win/svg/custom/text-tref-03-b-tref-removal-expected.txt: Added.

2011-06-28  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium test update for r89946.

        * platform/chromium/fast/regex: Added.
        * platform/chromium/fast/regex/constructor-expected.txt: Added.

2011-06-28  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        SVG1.1SE test text-tref-03-b.svg fails
        https://bugs.webkit.org/show_bug.cgi?id=63390

        - text-tref-03-b.svg, the w3c SVG1.1 testcase mentioned in the bug.
        - text-tref-03-b-dynamic.svg, tests dynamically adding the tref.
        - text-tref-03-b-dynamic2.svg, tests dynamically adding the referenced content.
        - text-tref-03-b-tref-removal.svg, tests removal of tref.
        - text-tref-03-b-referenced-element-removal.svg, tests removal of referenced content.
        - text-tref-03-b-change-href.svg, tests changing href attribute dynamically through setAttribute.
        - text-tref-03-b-change-href-dom.svg, tests changing href attribute dynamically through href animated property.
        - foreignObject/text-tref-02-b.svg has improved result, but is still not perfect.

        * platform/mac/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
        * platform/mac/svg/custom/text-tref-03-b-change-href-dom-expected.png: Added.
        * platform/mac/svg/custom/text-tref-03-b-change-href-dom-expected.txt: Added.
        * platform/mac/svg/custom/text-tref-03-b-change-href-expected.png: Added.
        * platform/mac/svg/custom/text-tref-03-b-change-href-expected.txt: Added.
        * platform/mac/svg/custom/text-tref-03-b-referenced-element-removal-expected.png: Added.
        * platform/mac/svg/custom/text-tref-03-b-referenced-element-removal-expected.txt: Added.
        * platform/mac/svg/custom/text-tref-03-b-tref-removal-expected.png: Added.
        * platform/mac/svg/custom/text-tref-03-b-tref-removal-expected.txt: Added.
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.txt:
        * svg/W3C-SVG-1.1-SE/text-tref-03-b.svg: Added.
        * svg/custom/text-tref-03-b-change-href-dom.svg: Added.
        * svg/custom/text-tref-03-b-change-href.svg: Added.
        * svg/custom/text-tref-03-b-dynamic-expected.txt: Added.
        * svg/custom/text-tref-03-b-dynamic.svg: Added.
        * svg/custom/text-tref-03-b-dynamic2-expected.txt: Added.
        * svg/custom/text-tref-03-b-dynamic2.svg: Added.
        * svg/custom/text-tref-03-b-referenced-element-removal.svg: Added.
        * svg/custom/text-tref-03-b-tref-removal.svg: Added.

2011-06-28  Greg Simon  <gregsimon@chromium.org>

        Reviewed by Dimitri Glazkov.

        Update migration LayoutTest to include indexes and successful migration.
        https://bugs.webkit.org/show_bug.cgi?id=62780

        * storage/indexeddb/migrate-basics-expected.txt:
        * storage/indexeddb/migrate-basics.html:

2011-06-28  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=55040
        RegExp constructor returns the argument regexp instead of a new object

        Per 15.10.3.1, our current behaviour is correct if called as a function,
        but incorrect when called as a constructor.

        * fast/regex/constructor-expected.txt: Added.
        * fast/regex/constructor.html: Added.
        * fast/regex/script-tests/constructor.js: Added.

2011-06-28  Jessie Berlin  <jberlin@apple.com>

        Better Windows rebaseline for the changes in r89864, with pixel results, to get the bots
        green.

        * platform/win/fast/text/international/unicode-bidi-plaintext-expected.png: Added.
        * platform/win/fast/text/international/unicode-bidi-plaintext-expected.txt:

2011-06-28  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs to implement undo client (Windows).
        https://bugs.webkit.org/show_bug.cgi?id=58103

        Add another undo test to the win-wk2 skipped list to get the bots green.

        * platform/win-wk2/Skipped:

2011-06-28  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Remove some now-passing tests from Chromium's test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-28  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        REGRESSION (r89449): http/tests/inspector/extensions-resources-redirect.html failing on SnowLeopard Intel Release (Tests), Windows 7 Release (Tests), Qt
        https://bugs.webkit.org/show_bug.cgi?id=63178

        * http/tests/inspector/extensions-resources-redirect-expected.txt:
        * platform/mac/http/tests/inspector/extensions-resources-redirect-expected.txt: Removed.
        * platform/qt/Skipped:

2011-06-28  Ryosuke Niwa  <rniwa@webkit.org>

        Fix the test added by the previous commit. Also add it to the WebKit2's skipped list
        since it uses a eventSender method that hasn't been implemented by TestRunner.

        * fast/events/selectstart-prevent-selection-on-right-click.html:
        * platform/mac-wk2/Skipped:

2011-06-28  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        Add a test for canceling selectstart when a word is selected by right click
        https://bugs.webkit.org/show_bug.cgi?id=63530

        Add a regression now that the bug no longer reproduces.

        * fast/events/selectstart-prevent-selection-on-right-click-expected.txt: Added.
        * fast/events/selectstart-prevent-selection-on-right-click.html: Added.

2011-06-28  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Chromium test_expectations update.

        * platform/chromium/test_expectations.txt:

2011-06-27  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Change the inspector model API and backend to allow CSS pseudoclass inspection
        https://bugs.webkit.org/show_bug.cgi?id=63446

        * inspector/styles/get-set-stylesheet-text.html:
        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:

2011-06-28  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [X11][WK2] X error with plugin tests
        https://bugs.webkit.org/show_bug.cgi?id=63520

        * platform/qt-wk2/Skipped:

2011-06-28  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        Verify cloning elements with validation messages works.
        https://bugs.webkit.org/show_bug.cgi?id=61988

        * fast/forms/validation-message-clone-expected.txt: Added.
        * fast/forms/validation-message-clone.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-28  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Hajime Morita.

        convert editing/deleting/4845371.html to runDumpAsTextEditingTest
        https://bugs.webkit.org/show_bug.cgi?id=63214

        Renamed editing/deleting/4845371.html to editing/deleting/delete-cell-contents.html 
        and converted editing/deleting/delete-cell-contents.html to runDumpAsTextEditingTest; left
        it without a doctype, etc, because they changed functionality of the image test. Also 
        added the rdar number.

        * editing/deleting/delete-cell-contents-expected.txt: Added.
        * editing/deleting/delete-cell-contents.html: Added.
        * editing/deleting/4845371.html: Removed.
        * platform/chromium-linux/editing/deleting/4845371-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/deleting/4845371-expected.png: Removed.
        * platform/chromium-win/editing/deleting/4845371-expected.png: Removed.
        * platform/chromium-win/editing/deleting/4845371-expected.txt: Removed.
        * platform/gtk/editing/deleting/4845371-expected.png: Removed.
        * platform/gtk/editing/deleting/4845371-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/4845371-expected.png: Removed.
        * platform/mac/editing/deleting/4845371-expected.png: Removed.
        * platform/mac/editing/deleting/4845371-expected.txt: Removed.
        * platform/qt/editing/deleting/4845371-expected.png: Removed.
        * platform/qt/editing/deleting/4845371-expected.txt: Removed.

2011-06-28  Kentaro Hara  <haraken@google.com>

        Reviewed by Kent Tamura.

        Allow spaces between e-mail addresses in 'email' input type.
        https://bugs.webkit.org/show_bug.cgi?id=55987

        Allowed spaces between e-mail addresses in 'email' input type,
        e.g. ' a@p.com , b@p.com ' is a valid value. Implemented the
        value sanitization algorithm for an e-mail value.  Added more unit
        tests that check the e-mail value parser.

        * fast/forms/ValidityState-typeMismatch-email-expected.txt:
        * fast/forms/resources/ValidityState-typeMismatch-email.js:

2011-06-28  Csaba Osztrogonác  <ossy@webkit.org>

        Qt specific results committed in r89901, but some of them fail on Qt-WK2 and/or Qt-Mac platform

        * platform/qt-mac/Skipped: Skip failing tests and typo fix.
        * platform/qt-wk2/Skipped: Skip failing tests.

2011-06-28  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: console.group messages should never be coalesced
        https://bugs.webkit.org/show_bug.cgi?id=63521

        * inspector/console/console-nested-group-expected.txt:
        * inspector/console/console-nested-group.html:

2011-06-28  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: added chromium test suppression.

        * platform/chromium/test_expectations.txt:

2011-06-28  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [X11][WK2] plugins/plugin-javascript-access fails
        https://bugs.webkit.org/show_bug.cgi?id=63464

        * platform/qt-wk2/Skipped:

2011-06-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] http/tests/misc/link-rel-icon-beforeload.html is flakey
        https://bugs.webkit.org/show_bug.cgi?id=63518

        * platform/qt/Skipped: Add http/tests/misc/link-rel-icon-beforeload.html until fix.

2011-06-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed daily gardening. Add platform specific expected files
        for new passing tests and add failing new tests to the Skipped list.

        * platform/qt/Skipped:
        * platform/qt/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/qt/editing/selection/extend-inside-transforms-backward-expected.txt: Added.
        * platform/qt/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/qt/editing/selection/extend-inside-transforms-forward-expected.txt: Added.
        * platform/qt/fast/borders/only-one-border-with-width-expected.png: Added.
        * platform/qt/fast/borders/only-one-border-with-width-expected.txt: Added.
        * platform/qt/fast/css/color-leakage-expected.png: Added.
        * platform/qt/fast/css/color-leakage-expected.txt: Added.
        * platform/qt/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Added.
        * platform/qt/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Added.
        * platform/qt/fast/inline/inline-wrap-with-parent-padding-expected.png: Added.
        * platform/qt/fast/inline/inline-wrap-with-parent-padding-expected.txt: Added.
        * platform/qt/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/qt/fast/multicol/span/span-as-nested-inline-block-child-expected.txt: Added.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Added.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
        * platform/qt/svg/custom/invalid-dasharray-expected.png: Added.
        * platform/qt/svg/custom/invalid-dasharray-expected.txt: Added.
        * platform/qt/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/qt/svg/custom/linking-uri-01-b-expected.txt: Added.
        * platform/qt/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/qt/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Added.
        * platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.

2011-06-28  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Csaba Osztrogonác.

        WebKitTestRunner needs layoutTestController.setCallCloseOnWebViews
        https://bugs.webkit.org/show_bug.cgi?id=46714

        Skip these tests via the mac list to make them skipped on every wk2 platform.
        * platform/mac-wk2/Skipped:
        * platform/win-wk2/Skipped:

2011-06-27  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Darin Adler & Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=50554
        RegExp.prototype.toString does not escape slashes

        The problem here is that we don't escape forwards slashes when converting
        a RegExp to a string. This means that RegExp("/").toString() is "///",
        which is not a valid RegExp literal. Also, we return an invalid literal
        for RegExp.prototype.toString() ("//", which is an empty single-line comment).

        From ES5:
        "NOTE: The returned String has the form of a RegularExpressionLiteral that
        evaluates to another RegExp object with the same behaviour as this object."

        Added test cases.

        * fast/regex/script-tests/toString.js: Added.
        (testFwdSlash):
        * fast/regex/toString-expected.txt: Added.
        * fast/regex/toString.html: Added.

2011-06-27  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: chromium baselines update.

        * platform/chromium-mac-leopard/fast/text/international/unicode-bidi-plaintext-expected.png: Added.

2011-06-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        [chromium] editing/style/smoosh-styles-003.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=63509

        Don't let spellcheck kick in this test because it's nothing to do with spellcheck.

        * editing/style/smoosh-styles-003.html:

2011-06-27  Ryosuke Niwa  <rniwa@webkit.org>

        Fix r89879.

        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.png: Removed.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.txt: Removed.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-expected.png: Copied from LayoutTests/platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.png.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.txt.

2011-06-27  Levi Weintraub  <leviw@chromium.org>

        Unreviewed.

        Renaming incorrectly named linux test expectation.

        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-actual.png: Removed.
        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-expected.png: Copied 
        from LayoutTests/platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-actual.png.

2011-06-27  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/5156801-2.html to dumpAsText and rename
        https://bugs.webkit.org/show_bug.cgi?id=63359

        converted editing/deleting/5156801-2.html to dump-as-markup test, with
        new results. Renamed 5156801.html to delete-node-after-DOMNodeRemoved,
        and 5156801-2.html to delete-table-cell-contents.html; they were only
        noticeably related by their rdar number, which is now included in each.

        * editing/deleting/5156801.html: Removed.
        * editing/deleting/5156801-expected.txt: Removed.
        * editing/deleting/5156801-2.html: Removed.
        * editing/deleting/delete-node-after-DOMNodeRemoved.html: Added.
        * editing/deleting/delete-node-after-DOMNodeRemoved-expected.txt: Added.
        * editing/deleting/delete-table-cell-contents.html: Added.
        * editing/deleting/delete-table-cell-contents-expected.txt: Added.
        * platform/chromium-linux/editing/deleting/5156801-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5156801-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5156801-2-expected.txt: Removed.
        * platform/gtk/editing/deleting/5156801-2-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5156801-2-expected.png: Removed.
        * platform/mac/editing/deleting/5156801-2-expected.png: Removed.
        * platform/mac/editing/deleting/5156801-2-expected.txt: Removed.
        * platform/qt/editing/deleting/5156801-2-expected.png: Removed.
        * platform/qt/editing/deleting/5156801-2-expected.txt: Removed.

2011-06-27  Levi Weintraub  <leviw@chromium.org>

        Unreviewed.

        Windows rebaseline for my commit r89864.

        * platform/win/fast/text/international/unicode-bidi-plaintext-expected.txt: Added.

2011-06-27  Levi Weintraub  <leviw@chromium.org>

        Unreviewed.

        Chromium rebaselines for my commit r89864

        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-actual.png: Added.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.png: Added.
        * platform/chromium-win/fast/text/international/unicode-bidi-plaintext-actual.txt: Added.

2011-06-27  Joe Wild  <joseph.wild@nokia.com>

        Reviewed by Simon Fraser.

        Crash on www.crave.cnet.com in FrameView::windowClipRect()
        https://bugs.webkit.org/show_bug.cgi?id=56393

        Tests that a plugin of a swf file in a hidden iframe will not
        crash. This test required more than 1 content file and a
        timeout or else it would not repeat the error condition.

        This test will only crash on platforms (like Symbian) that
        don't allow nonvirtual functions to have a null this pointer.

        * plugins/hidden-iframe-with-swf-plugin-expected.txt: Added.
        * plugins/hidden-iframe-with-swf-plugin.html: Added.
        * plugins/resources/iframe-content-with-swf-plugin.html: Added.

2011-06-27  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        new-run-webkit-tests should upload crash logs
        https://bugs.webkit.org/show_bug.cgi?id=55907

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-06-27  Nate Chapin  <japhet@chromium.org>

        Unreviewed, Chromium expectations update.

        * platform/chromium/fast/js/recursion-limit-equal-expected.txt: Rebaseline after r89842.

2011-06-27  Adam Klein  <adamk@chromium.org>

        Reviewed by Adam Barth.

        Fix filesystem-no-callback-null-ptr-crash.html test to reference proper file api methods
        https://bugs.webkit.org/show_bug.cgi?id=63486

        * fast/filesystem/filesystem-no-callback-null-ptr-crash.html:

2011-06-27  Jay Civelli  <jcivelli@chromium.org>

        Reviewed by Darin Fisher.

        Adding binary part support to MHTML.
        https://bugs.webkit.org/show_bug.cgi?id=63310

        * mhtml/multi_frames_binary.mht: Added.
        * platform/chromium/mhtml/multi_frames_binary-expected.txt: Added.

2011-06-27  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        Add support for unicode-bidi:plaintext CSS property
        https://bugs.webkit.org/show_bug.cgi?id=50949
        Adding support for the 'plaintext' mode of unicode-bidi.

        * fast/text/international/unicode-bidi-plaintext.html: Added.
        * platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-expected.txt: added
        * platform/mac/fast/text/international/unicode-bidi-plaintext-expected.png: Added.
        * platform/mac/fast/text/international/unicode-bidi-plaintext-expected.txt: Added.

2011-06-27  Jessie Berlin  <jberlin@apple.com>

        Add Windows-specific results for the test added in r89745.

        I checked these results with Rob - they are not failing expected results.

        * platform/win/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/win/svg/custom/linking-uri-01-b-expected.txt: Added.

2011-06-27  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/whitespace-pre-1.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=63372

        converted editing/deleting/whitespace-pre-1.html to dump-as-markup, removed
        old baselines, and added the new one.

        * editing/deleting/whitespace-pre-1-expected.txt: Added.
        * editing/deleting/whitespace-pre-1.html:
        * platform/chromium-linux/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/chromium-win/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/chromium-win/editing/deleting/whitespace-pre-1-expected.txt: Removed.
        * platform/gtk/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/gtk/editing/deleting/whitespace-pre-1-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/mac/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/mac/editing/deleting/whitespace-pre-1-expected.txt: Removed.
        * platform/qt/editing/deleting/whitespace-pre-1-expected.png: Removed.
        * platform/qt/editing/deleting/whitespace-pre-1-expected.txt: Removed.

2011-06-27  Jessie Berlin  <jberlin@apple.com>

        Add Windows-specific results for the test added in r89769.

        I checked these results with Dan - they are not failing expected results.

        * platform/win/fast/text/midword-break-before-surrogate-pair-expected.png: Added.
        * platform/win/fast/text/midword-break-before-surrogate-pair-expected.txt: Added.

2011-06-27  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implemenation of allowRoundingHacks.
        https://bugs.webkit.org/show_bug.cgi?id=63477

        Add platform/mac/fast/text/rounding-hacks.html to the mac-wk2 skipped list to get the bots
        green.

        * platform/mac-wk2/Skipped:

2011-06-27  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Chromium rebaselines for my commit r89836.

        * platform/chromium-linux/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png: Added.
        * platform/chromium-linux/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.png: Added.
        * platform/chromium-linux/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.png: Added.
        * platform/chromium-linux/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-add-in-static-position-block-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.png: Added.
        * platform/chromium-linux/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-add-in-static-position-block-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.txt: Added.
        * platform/chromium-win/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.txt: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.txt: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.txt: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.txt: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.png: Added.
        * platform/chromium-win/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-add-in-static-position-block-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-add-in-static-position-block-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-add-in-static-position-block2-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.txt: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.txt: Added.

2011-06-27  Filip Pizlo  <fpizlo@apple.com>

        Reviewed by Gavin Barraclough.

        The fast/js/recursion-limit-equal test is too fragile
        https://bugs.webkit.org/show_bug.cgi?id=63352

        * fast/js/recursion-limit-equal-expected.txt:
        * fast/js/script-tests/recursion-limit-equal.js:

2011-06-27  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Simon Fraser.

        Tests that overhanging floats are removed during style changes to absolute/fixed
        position and gets added back when coming back to static position.
        https://bugs.webkit.org/show_bug.cgi?id=63355

        * fast/block/float/intruding-float-add-in-sibling-block-on-static-position.html: Added.
        * fast/block/float/intruding-float-add-in-sibling-block-on-static-position2.html: Added.
        * fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position.html: Added.
        * fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2.html: Added.
        * fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position.html: Added.
        * fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2.html: Added.
        * fast/block/float/overhanging-float-add-in-static-position-block.html: Added.
        * fast/block/float/overhanging-float-add-in-static-position-block2.html: Added.
        * fast/block/float/overhanging-float-remove-from-absolute-position-block.html: Added.
        * fast/block/float/overhanging-float-remove-from-absolute-position-block2.html: Added.
        * fast/block/float/overhanging-float-remove-from-fixed-position-block.html: Added.
        * fast/block/float/overhanging-float-remove-from-fixed-position-block2.html: Added.
        * platform/mac/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.txt: Added.
        * platform/mac/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.txt: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position-expected.txt: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2-expected.txt: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position-expected.txt: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.png: Added.
        * platform/mac/fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-add-in-static-position-block-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-add-in-static-position-block-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-add-in-static-position-block2-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-fixed-position-block-expected.txt: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-float-remove-from-fixed-position-block2-expected.txt: Added.

2011-06-27  Nate Chapin  <japhet@chromium.org>

        Unreviewed, chromium expectations update.

        Add chromium mac failure after r89733.

        * platform/chromium/test_expectations.txt:

2011-06-27  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGPreserveAspectRatio animation
        https://bugs.webkit.org/show_bug.cgi?id=63456
        
        Test for animation of SVGPreserveAspectRatio.

        * svg/animations/script-tests/svgPreserveAspectRatio-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgPreserveAspectRatio-animation-1-expected.txt: Added.
        * svg/animations/svgPreserveAspectRatio-animation-1.html: Added.

2011-06-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Crash in TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=63334

        Added a test to ensure WebKit does not crash when iterating through letters in a RTL block
        with first-letter rule applied where letters are not contiguous.

        * editing/text-iterator/first-letter-rtl-crash-expected.txt: Added.
        * editing/text-iterator/first-letter-rtl-crash.html: Added.

2011-06-27  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        WebKitTestRunner needs layoutTestController.setPopupBlockingEnabled
        https://bugs.webkit.org/show_bug.cgi?id=63458

        Put a failing test to the mac list because all wk2 platforms are affected.
        Move the group to the section where the items have bug report.
        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-06-27  Alexandru Chiculita  <achicu@adobe.com>

        Reviewed by Ojan Vafai.

        css combinator "+" in combination with NAV tag is buggy
        https://bugs.webkit.org/show_bug.cgi?id=47971

        * fast/css/div_plus_nav_bug47971-expected.txt: Added.
        * fast/css/div_plus_nav_bug47971.html: Added.

2011-06-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89822.
        http://trac.webkit.org/changeset/89822
        https://bugs.webkit.org/show_bug.cgi?id=63461

        Broken builds (Requested by apavlov on #webkit).

        * inspector/styles/get-set-stylesheet-text.html:
        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:

2011-06-27  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Change the inspector model API and backend to allow CSS pseudoclass inspection
        https://bugs.webkit.org/show_bug.cgi?id=63446

        * inspector/styles/get-set-stylesheet-text.html:
        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:

2011-06-27  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: updating chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-06-27  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Daily gardening.

        Remove non-existent svg/animations/animate-points.html from the Skipped list.

        * platform/mac-wk2/Skipped:

2011-06-27  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: naive approach to fixing flaky inspector tests.

        * inspector/styles/styles-cancel-editing.html:
        * inspector/styles/styles-commit-editing.html:

2011-06-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac]REGRESSION?(r89397) It made fast/css/custom-font-xheight.html crash
        https://bugs.webkit.org/show_bug.cgi?id=63132

        * platform/qt-mac/Skipped: Skip fast/css/custom-font-xheight.html.

2011-06-26  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: roll out r88337 for making tests flaky.
        https://bugs.webkit.org/show_bug.cgi?id=63422

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.selectNodeWithId.onNodeFound):
        (initialize_ElementTest.InspectorTest.selectNodeWithId):
        (initialize_ElementTest.InspectorTest.waitForStyles):
        (initialize_ElementTest.InspectorTest.selectNodeAndWaitForStyles.nodeSelected):
        (initialize_ElementTest.InspectorTest.selectNodeAndWaitForStyles.stylesUpdated):
        (initialize_ElementTest.InspectorTest.selectNodeAndWaitForStyles):
        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/edit-dom-actions.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/metrics-box-sizing.html:
        * inspector/styles/parse-utf8-bom.html:
        * inspector/styles/styles-add-blank-property.html:
        * inspector/styles/styles-add-invalid-property.html:
        * inspector/styles/styles-cancel-editing.html:
        * inspector/styles/styles-commit-editing.html:
        * inspector/styles/styles-computed-trace.html:
        * inspector/styles/styles-disable-inherited.html:
        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-disable-then-delete.html:
        * inspector/styles/styles-disable-then-enable.html:
        * inspector/styles/styles-iframe-expected.txt:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-source-lines-expected.txt:
        * inspector/styles/styles-source-lines-inline.html:
        * inspector/styles/styles-source-lines.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-url-linkify.html:
        * inspector/styles/up-down-numerics-and-colors-expected.txt:
        * inspector/styles/up-down-numerics-and-colors.html:

2011-06-27  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] SVG animation pause API missing
        https://bugs.webkit.org/show_bug.cgi?id=63396

        * platform/mac-wk2/Skipped: Skip new tests introduced in r89783.

2011-06-27  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] SVG animation pause API missing
        https://bugs.webkit.org/show_bug.cgi?id=63396

        * platform/mac-wk2/Skipped: Skip a new test.

2011-06-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed gardening. Add platform specific expected results after r89745.

        * platform/qt/Skipped: Revert accidentally committed (r89732) changes.
        * platform/qt/svg/custom/linking-a-03-b-all-expected.png:
        * platform/qt/svg/custom/linking-a-03-b-all-expected.txt:
        * platform/qt/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/qt/svg/custom/linking-a-03-b-transform-expected.txt:
        * platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:

2011-06-26  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGLengthList animation
        https://bugs.webkit.org/show_bug.cgi?id=63399

        Test animations of attributes with type SVGLengthList.

        * svg/animations/script-tests/svglengthlist-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglengthlist-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglengthlist-animation-3.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglengthlist-animation-4.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svglengthlist-animation-1-expected.txt: Added.
        * svg/animations/svglengthlist-animation-1.html: Added.
        * svg/animations/svglengthlist-animation-2-expected.txt: Added.
        * svg/animations/svglengthlist-animation-2.html: Added.
        * svg/animations/svglengthlist-animation-3-expected.txt: Added.
        * svg/animations/svglengthlist-animation-3.html: Added.
        * svg/animations/svglengthlist-animation-4-expected.txt: Added.
        * svg/animations/svglengthlist-animation-4.html: Added.

2011-06-26  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        window.location should use the holder's prototype chain
        https://bugs.webkit.org/show_bug.cgi?id=63411

        * http/tests/security/location-prototype-expected.txt: Added.
        * http/tests/security/location-prototype.html: Added.
        * http/tests/security/resources/location-prototype-overwrite.html: Added.

2011-06-26  Adam Barth  <abarth@webkit.org>

        Reviewed by Kent Tamura.

        m_formElementsWithFormAttribute doesn't ref the objects it holds
        https://bugs.webkit.org/show_bug.cgi?id=62956

        * fast/forms/form-associated-element-crash3-expected.txt: Added.
        * fast/forms/form-associated-element-crash3.html: Added.

2011-06-26  Adam Barth  <abarth@webkit.org>

        Baselines for new test.

        * platform/chromium-linux/fast/text/midword-break-before-surrogate-pair-expected.png: Added.
        * platform/chromium-linux/fast/text/midword-break-before-surrogate-pair-expected.txt: Added.
        * platform/chromium-win/fast/text/midword-break-before-surrogate-pair-expected.png: Added.
        * platform/chromium-win/fast/text/midword-break-before-surrogate-pair-expected.txt: Added.

2011-06-26  Young Han Lee  <joybro@company100.net>

        Reviewed by Dirk Schulze.

        SVGAnimation - keyTime value 1 never get animated
        https://bugs.webkit.org/show_bug.cgi?id=63230

        According to the SMIL 3.0 specification, the index of the keyTimes should be 
        determined under the end-point-exclusive rule (e.g. Given keyTimes(0;0.5;1) 
        and t=0.5, the current index of the keyTimes have to be 1 not 0).
        http://www.w3.org/TR/SMIL3/smil-animation.html#animationNS-InterpolationExamplesAdvanced

        * svg/animations/animate-number-calcMode-discrete-keyTimes-expected.txt: Added.
        * svg/animations/animate-number-calcMode-discrete-keyTimes.html: Added.
        * svg/animations/script-tests/animate-number-calcMode-discrete-keyTimes.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):

2011-06-26  Adam Barth  <abarth@webkit.org>

        Darn.  Need BUGWG to make the file parse.

        * platform/chromium/test_expectations.txt:

2011-06-26  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        With word-break: break-all, words do not break correctly before a surrogate pair
        https://bugs.webkit.org/show_bug.cgi?id=63401

        * fast/text/midword-break-before-surrogate-pair.html: Added.

2011-06-26  Adam Barth  <abarth@webkit.org>

        Note that this test ASSERTs on Linux Debug.

        * platform/chromium/test_expectations.txt:

2011-06-26  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed gardening.

        [WK2] SVG animation pause API missing
        https://bugs.webkit.org/show_bug.cgi?id=63396

        Skip new tests that depend on pause API. Put them to the
        mac list that is used by all WebKit2 platforms.
        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-06-26  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGNumberOptionalNumber animation
        https://bugs.webkit.org/show_bug.cgi?id=63397

        Test animation of SVGNumberOptionalNumber values with and without optional number, as well as 'to' and 'by' animations.

        * svg/animations/script-tests/svgnumberoptionalnumber-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumberoptionalnumber-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumberoptionalnumber-animation-3.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumberoptionalnumber-animation-4.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgnumberoptionalnumber-animation-1-expected.txt: Added.
        * svg/animations/svgnumberoptionalnumber-animation-1.html: Added.
        * svg/animations/svgnumberoptionalnumber-animation-2-expected.txt: Added.
        * svg/animations/svgnumberoptionalnumber-animation-2.html: Added.
        * svg/animations/svgnumberoptionalnumber-animation-3-expected.txt: Added.
        * svg/animations/svgnumberoptionalnumber-animation-3.html: Added.
        * svg/animations/svgnumberoptionalnumber-animation-4-expected.txt: Added.
        * svg/animations/svgnumberoptionalnumber-animation-4.html: Added.

2011-06-26  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed. Skip failing tests.

        [Qt][WK2] svgnumberlist-animation-[1,2] fails since added
        https://bugs.webkit.org/show_bug.cgi?id=63396

        * platform/qt-wk2/Skipped:

2011-06-25  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: new chromium rebaselines.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/chromium-linux/svg/custom/linking-a-03-b-all-expected.png:
        * platform/chromium-linux/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/chromium-linux/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/chromium-linux/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/chromium-linux/svg/custom/linking-uri-01-b-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/chromium-mac/svg/custom/linking-a-03-b-all-expected.png:
        * platform/chromium-mac/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/chromium-mac/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/chromium-mac/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/chromium-win/svg/custom/linking-a-03-b-all-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-all-expected.txt:
        * platform/chromium-win/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-transform-expected.txt:
        * platform/chromium-win/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/chromium-win/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:
        * platform/chromium-win/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/chromium-win/svg/custom/linking-uri-01-b-expected.txt: Added.

2011-06-25  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Adam Barth.

        Crash in frameless document with media element.
        https://bugs.webkit.org/show_bug.cgi?id=63393

        * fast/dom/shadow/frameless-media-element-crash.html: Added.
        * fast/dom/shadow/frameless-media-element-crash-expected.txt: Added.

2011-06-25  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGNumberList animation
        https://bugs.webkit.org/show_bug.cgi?id=63387

        Test animation of attributes with type SVGNumberList.

        * svg/animations/script-tests/svgnumberlist-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumberlist-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgnumberlist-animation-1-expected.txt: Added.
        * svg/animations/svgnumberlist-animation-1.html: Added.
        * svg/animations/svgnumberlist-animation-2-expected.txt: Added.
        * svg/animations/svgnumberlist-animation-2.html: Added.

2011-06-25  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed. Gardening.
        Skip css3/flexbox tests on Qt since ENABLE(CSS3_FLEXBOX) is disabled.

        * platform/qt/Skipped:

2011-06-25  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        SVG1.1SE test linking-uri-01-b.svg fails
        https://bugs.webkit.org/show_bug.cgi?id=63322

        Add a test for navigating to an inner <view> anchor. The changed test results
        are improvements.

        * platform/mac/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/linking-uri-01-b-expected.txt: Added.
        * platform/mac/svg/custom/linking-a-03-b-all-expected.png:
        * platform/mac/svg/custom/linking-a-03-b-all-expected.txt:
        * platform/mac/svg/custom/linking-a-03-b-transform-expected.png:
        * platform/mac/svg/custom/linking-a-03-b-transform-expected.txt:
        * platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
        * platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:
        * platform/mac/svg/custom/linking-uri-01-b-expected.png: Added.
        * platform/mac/svg/custom/linking-uri-01-b-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/linking-uri-01-b.svg: Added.
        * svg/custom/linking-uri-01-b.svg: Added.

2011-06-25  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Update expectations after r89732.
        https://bugs.webkit.org/show_bug.cgi?id=59085

        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-24  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION (r77740): Shadow DOM pseudo elements aren't matching when combined with descendant selectors
        https://bugs.webkit.org/show_bug.cgi?id=63373

        * fast/css/unknown-pseudo-element-matching-expected.txt: Updated results.
        * fast/css/unknown-pseudo-element-matching.html: Added more tests.

2011-06-25  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: chromium rebaselines.

        * platform/chromium-linux/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/chromium-linux/svg/custom/svg-fonts-fallback-expected.txt: Added.
        * platform/chromium-linux/svg/custom/svg-fonts-segmented-expected.png: Added.
        * platform/chromium-linux/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/chromium-linux/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/chromium-mac-leopard/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/chromium-mac/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/chromium-win/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/chromium-win/svg/custom/svg-fonts-fallback-expected.txt: Added.
        * platform/chromium-win/svg/custom/svg-fonts-segmented-expected.png: Added.
        * platform/chromium-win/svg/custom/svg-fonts-segmented-expected.txt: Added.
        * platform/chromium-win/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/chromium-win/svg/custom/svg-fonts-word-spacing-expected.txt: Added.
        * platform/chromium-win/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/chromium-win/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        Update gtk baseline. The rebaselines should be done now.

        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/batik/text/textEffect-expected.txt:
        * platform/gtk/svg/batik/text/textEffect3-expected.txt:
        * platform/gtk/svg/batik/text/xmlSpace-expected.txt:
        * platform/gtk/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/text/text-text-04-t-expected.txt:
        * platform/gtk/svg/text/text-text-05-t-expected.txt:
        * platform/gtk/svg/text/text-text-06-t-expected.txt:
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.txt:

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        Update win baseline.

        * platform/win-wk2/Skipped: Skip newly added svg/text test just like in mac-wk2.
        * platform/win-xp/svg/custom: Added.
        * platform/win-xp/svg/custom/svg-fonts-fallback-expected.txt: Added. XP has different metrics here.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Update result from Win7 slave.

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        Skip svg/text/select-text-svgfont.html on mac-wk2, just like the other svg/text tests.

        * platform/mac-wk2/Skipped:

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Gardening.

        http/tests/inspector/network/network-iframe-load-and-delete.html fails on Leopard
        https://bugs.webkit.org/show_bug.cgi?id=63379

        http/tests/navigation/anchor-basic.html fails on Leopard
        https://bugs.webkit.org/show_bug.cgi?id=63380

        Skip last two tests that kept Leopard red, should turn green again now.

        * platform/mac-leopard/Skipped:

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Gardening.

        REGRESSION (r89305-r89312): webarchive/loading/mainresource-null-mimetype-crash.html failing on Leopard/SnowLeopard release
        https://bugs.webkit.org/show_bug.cgi?id=63169

        Skip failing test for mac, to turn bots green again.

        * platform/mac/Skipped:

2011-06-25  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        Update a stale Leopard result.

        * platform/mac-leopard/svg/foreignObject/text-tref-02-b-expected.txt:

2011-06-24  Dan Bernstein  <mitz@apple.com>

        Reviewed by Anders Carlsson.

        Add an option to enable legacy rounding hacks
        https://bugs.webkit.org/show_bug.cgi?id=63363

        * platform/mac/fast/text/rounding-hacks.html: Added.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expected.png: Added.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expected.txt: Added.

2011-06-24  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        font substitution doesn't work for HTML text using SVG fonts
        https://bugs.webkit.org/show_bug.cgi?id=17608

        Selection rects are wrong for text with SVG fonts
        https://bugs.webkit.org/show_bug.cgi?id=25460

        With @font-face, SVG fonts only work as primary, non-segmented
        https://bugs.webkit.org/show_bug.cgi?id=32227

        When using SVG fonts with @font-face word-spacing and text-align: justify are not being honored
        https://bugs.webkit.org/show_bug.cgi?id=34236

        SVG @font-face breaks text-overflow: ellipsis
        https://bugs.webkit.org/show_bug.cgi?id=36840

        REGRESSION: SVG Font selection problems
        https://bugs.webkit.org/show_bug.cgi?id=41934

        Rewrite the SVG Fonts support to fully integrate within the GlyphPage concept and the "simple" code path used to render platform fonts.
        That means the special logic for measuring text using SVG Fonts, calculating offset for positions, computing selection rects etc. is all gone now.
        There's no difference anymore between using a native font or a SVG Font, in terms of these operations.

        Update SVG pixel test baseline. Use all results that have been checked in when I landed the patch the last time.

        * platform/chromium/test_expectations.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/batik/text/textEffect-expected.png:
        * platform/mac/svg/batik/text/textEffect-expected.txt:
        * platform/mac/svg/batik/text/textEffect3-expected.png:
        * platform/mac/svg/batik/text/textEffect3-expected.txt:
        * platform/mac/svg/batik/text/xmlSpace-expected.png:
        * platform/mac/svg/batik/text/xmlSpace-expected.txt:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.png:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/mac/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-fallback-expected.txt: Added.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.txt: Added.
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.png:
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.png:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt: Added.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/mac/svg/text/text-altglyph-01-b-expected.png:
        * platform/mac/svg/text/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Added.
        * platform/mac/svg/text/text-text-04-t-expected.png:
        * platform/mac/svg/text/text-text-04-t-expected.txt:
        * platform/mac/svg/text/text-text-05-t-expected.png:
        * platform/mac/svg/text/text-text-05-t-expected.txt:
        * platform/mac/svg/text/text-text-06-t-expected.png:
        * platform/mac/svg/text/text-text-06-t-expected.txt:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.png:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.txt:
        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/Skipped:
        * platform/qt/fast/dom/Window/window-properties-expected.png: Added.
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.png: Added.
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.png: Added.
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.png: Added.
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.png: Added.
        * platform/qt/fast/js/global-constructors-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-06-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-07-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-08-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt:
        * platform/qt/svg/custom/glyph-transformation-with-hkern-expected.png: Added.
        * platform/qt/svg/custom/glyph-transformation-with-hkern-expected.txt: Added.
        * platform/qt/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/qt/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/qt/svg/custom/svg-features-expected.png: Added.
        * platform/qt/svg/custom/svg-features-expected.txt: Added.
        * platform/qt/svg/custom/svg-fonts-in-html-expected.png:
        * platform/qt/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/qt/svg/wicd/test-rightsizing-b-expected.png:
        * platform/qt/svg/wicd/test-rightsizing-b-expected.txt:
        * svg/custom/resources/ABCFont.svg:
        * svg/custom/svg-fonts-fallback.xhtml: Added.
        * svg/custom/svg-fonts-segmented.xhtml: Added.
        * svg/custom/svg-fonts-word-spacing.html: Added.
        * svg/text/select-text-svgfont-expected.txt: Added.
        * svg/text/select-text-svgfont.html: Added.
        * svg/text/text-overflow-ellipsis-svgfont.html: Added.

2011-06-24  Tony Chang  <tony@chromium.org>

        Reviewed by Ojan Vafai.

        add flexbox and inline-flexbox as possible CSS display values
        https://bugs.webkit.org/show_bug.cgi?id=63361

        * css3/flexbox/display-property-expected.txt: Added.
        * css3/flexbox/display-property.html: Added.
        * css3/flexbox/script-tests/display-property.js: Added.
        (testFlex):

2011-06-24  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        REGRESSION (r89687): 5 compositing/rtl tests failing on Windows 7 Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=63343

        These tests were failing since they were introduced in r89687.  The
        layerTreeAsText dump on the iframe document was causing the outer
        layerTreeAsText dump to be affected by font metrics.  Fixed in this
        case by not putting layerTreeAsText output in an element when inside
        an iframe.

        * compositing/rtl/rtl-absolute-overflow-scrolled.html:
        * compositing/rtl/rtl-absolute-overflow.html:
        * compositing/rtl/rtl-absolute.html:
        * compositing/rtl/rtl-fixed-overflow-scrolled.html:
        * compositing/rtl/rtl-fixed-overflow.html:
        * compositing/rtl/rtl-fixed.html:
        * compositing/rtl/rtl-iframe-absolute-expected.txt:
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
        * compositing/rtl/rtl-iframe-fixed-expected.txt:
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.txt:
        * compositing/rtl/rtl-iframe-relative-expected.txt:
        * compositing/rtl/rtl-relative.html:

2011-06-24  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Darin Adler.

        Tests that font size for svg text zoom is clamped and we do not
        crash on ASSERT(isfinite(s)) in FontDescription.h
        https://bugs.webkit.org/show_bug.cgi?id=53449

        * svg/text/svg-zoom-large-value-expected.txt: Added.
        * svg/text/svg-zoom-large-value.xhtml: Added.

2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Unreviewed: Skipping failing progress-clone.html on win.

        r89682 unskipped fast/dom/HTMLProgressElement/progress-clone.html
        on win, but it should stay skipped because there is no progress
        element on win (bug 49769)

        * platform/win/Skipped:

2011-06-24  Jessie Berlin  <jberlin@apple.com>

        fast/css/font-face-in-shadow-DOM.html is flaky on Chromium, failing on Win XP Debug.
        https://bugs.webkit.org/show_bug.cgi?id=63115

        Better solution: this test appears to give different results depending on what other test
        is run before it, so just disable it.

        * fast/css/font-face-in-shadow-DOM.html: Removed.
        * fast/css/font-face-in-shadow-DOM.html-disabled: Copied from fast/css/font-face-in-shadow-DOM.html.
        * platform/win-xp/fast/css: Removed.
        * platform/win-xp/fast/css/font-face-in-shadow-DOM-expected.txt: Removed.

2011-06-24  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        Incorrect RenderLayer transforms on overflow RTL pages
        https://bugs.webkit.org/show_bug.cgi?id=60741

        Add a number of composited positioning tests on pages with dir=rtl.
        The reference images are all identical to what the non-composited path
        generates.

        The overflow-scrolled tests on Safari do not generate the right images
        due to bug 63284, but the layer tree is correct so they are not
        skipped.

        * compositing/rtl/rtl-absolute-expected.png: Added.
        * compositing/rtl/rtl-absolute-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-expected.png: Added.
        * compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-absolute-overflow.html: Added.
        * compositing/rtl/rtl-absolute.html: Added.
        * compositing/rtl/rtl-fixed-expected.png: Added.
        * compositing/rtl/rtl-fixed-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-expected.png: Added.
        * compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-fixed-overflow.html: Added.
        * compositing/rtl/rtl-fixed.html: Added.
        * compositing/rtl/rtl-iframe-absolute-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow.html: Added.
        * compositing/rtl/rtl-iframe-absolute.html: Added.
        * compositing/rtl/rtl-iframe-fixed-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow.html: Added.
        * compositing/rtl/rtl-iframe-fixed.html: Added.
        * compositing/rtl/rtl-iframe-relative-expected.png: Added.
        * compositing/rtl/rtl-iframe-relative-expected.txt: Added.
        * compositing/rtl/rtl-iframe-relative.html: Added.
        * compositing/rtl/rtl-relative-expected.png: Added.
        * compositing/rtl/rtl-relative-expected.txt: Added.
        * compositing/rtl/rtl-relative.html: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:

2011-06-24  Jessie Berlin  <jberlin@apple.com>

        fast/css/font-face-in-shadow-DOM.html is flaky on Chromium, failing on Win XP Debug.
        https://bugs.webkit.org/show_bug.cgi?id=63115

        Add expected (failing?) results for win-xp to get the bots green.

        * platform/win-xp/fast/css: Added.
        * platform/win-xp/fast/css/font-face-in-shadow-DOM-expected.txt: Added.

2011-06-24  Matthew Delaney  <mdelaney@apple.com>

        Fixing burning trees from change to tests in https://bugs.webkit.org/show_bug.cgi?id=63327
        Adding new platform specific results since the new layout in the tests changes the render tree spew.
        Pixel tests are still good.

        * platform/mac/transforms/3d/point-mapping/3d-point-mapping-expected.txt:
        * platform/mac/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.txt:

2011-06-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert shadow DOM-related tests to use window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61671

        Update tests to use internals.{ensureShadowRoot, shadowRoot,
        shadowPseudoId, removeShadowRoot} instead of layoutTestController.

        * fast/dom/HTMLKeygenElement/keygen-expected.txt:
        * fast/dom/HTMLKeygenElement/keygen.html:
        * fast/dom/HTMLMeterElement/meter-clone-expected.txt:
        * fast/dom/HTMLMeterElement/meter-clone.html:
        * fast/dom/HTMLProgressElement/progress-clone-expected.txt:
        * fast/dom/HTMLProgressElement/progress-clone.html:
        * fast/dom/shadow/activeelement-should-be-shadowhost.html:
        * fast/dom/shadow/create-content-element.html:
        * fast/dom/shadow/gc-shadow-expected.txt:
        * fast/dom/shadow/gc-shadow.html:
        * fast/dom/shadow/layout-tests-can-access-shadow-expected.txt: shadowRoot of non-element throws now, so verify new behavior.
        * fast/dom/shadow/layout-tests-can-access-shadow.html:
        * fast/dom/shadow/nodetype.html:
        * fast/dom/shadow/tab-order-iframe-and-shadow.html:
        * fast/events/shadow-boundary-crossing.html:
        * fast/forms/resources/common.js:
        (getValidationMessageBubbleNode):
        * fast/html/clone-keygen-expected.txt:
        * fast/html/clone-keygen.html:
        * fast/html/clone-range-expected.txt:
        * fast/html/clone-range.html:
        * fast/html/details-clone.html:
        * fullscreen/video-controls-override-expected.txt:
        * fullscreen/video-controls-override.html:
        * media/audio-controls-do-not-fade-out.html:
        * media/media-controls.js:
        (mediaControlsButtonCoordinates):
        * media/video-controls-in-media-document.html:
        * platform/win/Skipped: shadowRoot and friends now available on win.

2011-06-24  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Change transforms/3d/point-mapping/3d-point-mapping{,-preserve-3d}.html to absolutely position divs
        https://bugs.webkit.org/show_bug.cgi?id=63327

        * transforms/3d/point-mapping/3d-point-mapping-preserve-3d.html:
        * transforms/3d/point-mapping/3d-point-mapping.html:

2011-06-24  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89457-r89462): fast/forms/textfield-overflow.html failing on SnowLeopard Intel
        Release (WebKit2 Tests)
        https://bugs.webkit.org/show_bug.cgi?id=63328

        Add win-wk2 expected results that match the mac, but not mac-wk2, results so that the test
        does not start failing on win-wk2.

        * platform/win-wk2/fast/forms: Added.
        * platform/win-wk2/fast/forms/textfield-overflow-expected.txt: Added.

2011-06-24  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89457-r89462): fast/forms/textfield-overflow.html failing on SnowLeopard Intel
        Release (WebKit2 Tests)
        https://bugs.webkit.org/show_bug.cgi?id=63328

        Add (failing?) expected results for mac-wk2 to get the bots green.

        * platform/mac-wk2/fast/forms/textfield-overflow-expected.txt: Added.

2011-06-24  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Alexey Proskuryakov.
        
        Exit immediately if the last condition tested fails.

        Make <video> app cache test exit immediately on failure
        https://bugs.webkit.org/show_bug.cgi?id=63323

2011-06-24  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89657): http/tests/inspector/extensions-headers.html,
        http/tests/inspector/extensions-resources-redirect.html timing out on SnowLeopard Intel
        Release (WebKit2 Tests).
        https://bugs.webkit.org/show_bug.cgi?id=63325

        Skip those tests to get the bots green.

        * platform/mac-wk2/Skipped:

2011-06-24  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] fast/frames/iframe-plugin-load-remove-document-crash.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=63321

        * platform/qt-wk2/Skipped: Skip fast/frames/iframe-plugin-load-remove-document-crash.html until fix.

2011-06-24  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed.
        Remove non-existent items from the qt-wk2 skipped list.

        * platform/qt-wk2/Skipped:

2011-06-24  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Clean up some tests for search cancel buttons.
        https://bugs.webkit.org/show_bug.cgi?id=63121

        - Introduce a function to retrieve a reliable position of a search
          cancel button.
        - Convert two tests to dumpAsText().

        * fast/forms/resources/common.js:
        (searchCancelButtonPosition): Added.
        * fast/forms/search-abs-pos-cancel-button.html: Use searchCancelButtonPosition().
        * fast/forms/search-cancel-button-mouseup.html: Use searchCancelButtonPosition().
        * fast/forms/search-transformed-expected.txt: Added.
        * fast/forms/search-transformed.html:
          - Use searchCancelButtonPosition().
          - Convert to dumpAsText().
        * fast/forms/search-zoomed-expected.txt: Added.
        * fast/forms/search-zoomed.html:
          - Use searchCancelButtonPosition().
          - Convert to dumpAsText().
        * platform/chromium/test_expectation.txt:
          search-transformed.html should pass.
        * platform/chromium-linux/fast/forms/search-zoomed-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/search-transformed-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/search-zoomed-expected.png: Removed.
        * platform/chromium-mac/fast/forms/search-transformed-expected.png: Removed.
        * platform/chromium-win/fast/forms/search-zoomed-expected.png: Removed.
        * platform/chromium-win/fast/forms/search-zoomed-expected.txt: Removed.
        * platform/gtk/fast/forms/search-transformed-expected.png: Removed.
        * platform/gtk/fast/forms/search-transformed-expected.txt: Removed.
        * platform/gtk/fast/forms/search-zoomed-expected.png: Removed.
        * platform/gtk/fast/forms/search-zoomed-expected.txt: Removed.
        * platform/mac-leopard/fast/forms/search-zoomed-expected.png: Removed.
        * platform/mac/fast/forms/search-transformed-expected.png: Removed.
        * platform/mac/fast/forms/search-transformed-expected.txt: Removed.
        * platform/mac/fast/forms/search-zoomed-expected.png: Removed.
        * platform/mac/fast/forms/search-zoomed-expected.txt: Removed.
        * platform/qt/fast/forms/search-transformed-expected.txt: Removed.
        * platform/qt/fast/forms/search-zoomed-expected.txt: Removed.

2011-06-24  Kent Tamura  <tkent@chromium.org>

        Remove an JavaScript error in media-controls-clone.html.
        https://bugs.webkit.org/show_bug.cgi?id=63195

        * media/media-controls-clone.html: Remove run() call.
        * platform/chromium-mac/media/media-controls-clone-expected.txt: Remove an error message.
        * platform/chromium-win/media/media-controls-clone-expected.txt: ditto.
        * platform/mac/media/media-controls-clone-expected.txt: ditto.
        * platform/win/media/media-controls-clone-expected.txt: ditto.

2011-06-24  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: uncommenting chromium devtools tests.

        * platform/chromium/inspector/timeline/timeline-layout-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-24  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] Consider rows being ignored when adding children to tables
        https://bugs.webkit.org/show_bug.cgi?id=62718

        Unskip accessibility test that will be passing from now on.

        * platform/gtk/Skipped: Unskipped passing test.

2011-06-24  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: extension panel iframes do not span entire panel client area
        https://bugs.webkit.org/show_bug.cgi?id=63165

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.InspectorTest.showPanel):
        ():
        * http/tests/inspector/inspector-test.js:
        ():
        * http/tests/inspector/resources/extension-main.html:
        * http/tests/inspector/resources/extension-main.js:
        (dumpObject):
        (dumpArray):
        (evaluateOnFrontend.callbackWrapper):
        (evaluateOnFrontend):
        ():
        * http/tests/inspector/resources/extension-panel.html:
        * inspector/extensions/extensions-events.html:
        * inspector/extensions/extensions-expected.txt:
        * inspector/extensions/extensions.html:

2011-06-24  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [refactoring] extension tests: replace dispatchOnFrontend with a more generic evaluateOnFrontend()
        https://bugs.webkit.org/show_bug.cgi?id=63160

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.InspectorTest._replyToExtension):
        (initialize_ExtensionsTest):
        * http/tests/inspector/resources/extension-main.html:
        * http/tests/inspector/resources/extension-main.js:
        (onError):
        (onTestsDone):
        * inspector/extensions/extensions-audits-tests.js:
        (extension_runAudits):
        (initialize_ExtensionsAuditsTest.InspectorTest.startExtensionAudits.onAuditsDone):
        (initialize_ExtensionsAuditsTest.InspectorTest.startExtensionAudits):
        (initialize_ExtensionsAuditsTest):
        * inspector/extensions/extensions-events.html:
        * inspector/extensions/extensions.html:

2011-06-23  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Need to turn off default animations for anchorPointZ in PlatformCALayer
        https://bugs.webkit.org/show_bug.cgi?id=63159
        
        Test that changes transform-origin-z and relies on the pixel result
        to determine if it's animating.

        * transforms/3d/general/transform-origin-z-change-expected.png: Added.
        * transforms/3d/general/transform-origin-z-change-expected.txt: Added.
        * transforms/3d/general/transform-origin-z-change.html: Added.

2011-06-20  MORITA Hajime <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        [ShadowContentElement] should layout child whitespace between span.
        https://bugs.webkit.org/show_bug.cgi?id=62202

        - Added a new test case.
        - Updated expectations, which missed necessary RnederText objects.
        
        * platform/chromium-win/fast/html/details-add-child-2-expected.txt:
        * platform/chromium-win/fast/html/details-add-details-child-2-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary4-expected.txt:
        * platform/chromium-win/fast/html/details-open-javascript-expected.txt:
        * platform/chromium-win/fast/html/details-open2-expected.txt:
        * platform/chromium-win/fast/html/details-open4-expected.txt:
        * platform/chromium-win/fast/html/details-remove-child-2-expected.txt:
        * platform/chromium-win/fast/html/details-replace-text-expected.txt:
        * platform/gtk/fast/html/details-add-child-2-expected.txt:
        * platform/gtk/fast/html/details-add-details-child-2-expected.txt:
        * platform/gtk/fast/html/details-no-summary4-expected.txt:
        * platform/gtk/fast/html/details-open-javascript-expected.txt:
        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/gtk/fast/html/details-open4-expected.txt:
        * platform/gtk/fast/html/details-remove-child-2-expected.txt:
        * platform/gtk/fast/html/details-replace-text-expected.txt:
        * platform/mac/fast/html/details-add-child-2-expected.txt:
        * platform/mac/fast/html/details-add-details-child-2-expected.txt:
        * platform/mac/fast/html/details-no-summary4-expected.txt:
        * platform/mac/fast/html/details-open-javascript-expected.txt:
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-remove-child-2-expected.txt:
        * platform/mac/fast/html/details-replace-text-expected.txt:
        * platform/qt/fast/html/details-add-child-2-expected.txt:
        * platform/qt/fast/html/details-add-details-child-2-expected.txt:
        * platform/qt/fast/html/details-no-summary4-expected.txt:
        * platform/qt/fast/html/details-open-javascript-expected.txt:
        * platform/qt/fast/html/details-open2-expected.txt:
        * platform/qt/fast/html/details-open4-expected.txt:
        * platform/qt/fast/html/details-remove-child-2-expected.txt:
        * platform/qt/fast/html/details-replace-text-expected.txt:
        * fast/dom/shadow/create-content-element-expected.txt: Added.
        * fast/dom/shadow/create-content-element.html: Added.

2011-06-23  Adrienne Walker  <enne@google.com>

        Unreviewed, rolling out r89632 and r89640.
        http://trac.webkit.org/changeset/89632
        http://trac.webkit.org/changeset/89640
        https://bugs.webkit.org/show_bug.cgi?id=60741

        Breaks ancestor-overflow-change unexpectedly

        * compositing/rtl/rtl-absolute-expected.png: Removed.
        * compositing/rtl/rtl-absolute-expected.txt: Removed.
        * compositing/rtl/rtl-absolute-overflow-expected.png: Removed.
        * compositing/rtl/rtl-absolute-overflow-expected.txt: Removed.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.png: Removed.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Removed.
        * compositing/rtl/rtl-absolute-overflow-scrolled.html: Removed.
        * compositing/rtl/rtl-absolute-overflow.html: Removed.
        * compositing/rtl/rtl-absolute.html: Removed.
        * compositing/rtl/rtl-fixed-expected.png: Removed.
        * compositing/rtl/rtl-fixed-expected.txt: Removed.
        * compositing/rtl/rtl-fixed-overflow-expected.png: Removed.
        * compositing/rtl/rtl-fixed-overflow-expected.txt: Removed.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.png: Removed.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Removed.
        * compositing/rtl/rtl-fixed-overflow-scrolled.html: Removed.
        * compositing/rtl/rtl-fixed-overflow.html: Removed.
        * compositing/rtl/rtl-fixed.html: Removed.
        * compositing/rtl/rtl-iframe-absolute-expected.png: Removed.
        * compositing/rtl/rtl-iframe-absolute-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.png: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.png: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html: Removed.
        * compositing/rtl/rtl-iframe-absolute-overflow.html: Removed.
        * compositing/rtl/rtl-iframe-absolute.html: Removed.
        * compositing/rtl/rtl-iframe-fixed-expected.png: Removed.
        * compositing/rtl/rtl-iframe-fixed-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.png: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.png: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html: Removed.
        * compositing/rtl/rtl-iframe-fixed-overflow.html: Removed.
        * compositing/rtl/rtl-iframe-fixed.html: Removed.
        * compositing/rtl/rtl-iframe-relative-expected.png: Removed.
        * compositing/rtl/rtl-iframe-relative-expected.txt: Removed.
        * compositing/rtl/rtl-iframe-relative.html: Removed.
        * compositing/rtl/rtl-relative-expected.png: Removed.
        * compositing/rtl/rtl-relative-expected.txt: Removed.
        * compositing/rtl/rtl-relative.html: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:

2011-06-23  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/5026848-1.html to dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=63289

        Renamed editing/deleting/5026848* to editing/deleting/delete-across-editable-content-boundaries*,
        and converted editing/deleting/delete-across-editable-content-boundaries-1 to a dump-as-markup test.
        Removed old png/txt test results, and added new result. Also included radr number.

        * editing/deleting/delete-across-editable-content-boundaries-1.html: Added.
        * editing/deleting/delete-across-editable-content-boundaries-1-expected.txt: Added.
        * editing/deleting/delete-across-editable-content-boundaries-2.html: Added.
        * editing/deleting/delete-across-editable-content-boundaries-2-expected.txt: Added.
        * editing/deleting/delete-across-editable-content-boundaries-3.html: Added.
        * editing/deleting/delete-across-editable-content-boundaries-3-expected.txt: Added.
        * editing/deleting/5026848-1.html: Removed.
        * editing/deleting/5026848-2.html: Removed.
        * editing/deleting/5026848-2-expected.txt: Removed.
        * editing/deleting/5026848-3.html: Removed.
        * editing/deleting/5026848-3-expected.txt: Removed.
        * platform/chromium-linux/editing/deleting/5026848-1-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5026848-1-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5026848-1-expected.txt: Removed.
        * platform/gtk/editing/deleting/5026848-1-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5026848-1-expected.png: Removed.
        * platform/mac/editing/deleting/5026848-1-expected.png: Removed.
        * platform/mac/editing/deleting/5026848-1-expected.txt: Removed.
        * platform/qt/editing/deleting/5026848-1-expected.png: Removed.
        * platform/qt/editing/deleting/5026848-1-expected.txt: Removed.

2011-06-23  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, mark a few tests failing on OSX after r89632.
        https://bugs.webkit.org/show_bug.cgi?id=60741

        * platform/chromium/test_expectations.txt:

2011-06-23  Ryosuke Niwa  <rniwa@webkit.org>

        GTK Rebaseline after r89627.

        * platform/gtk/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/gtk/editing/selection/extend-inside-transforms-backward-expected.txt: Added.
        * platform/gtk/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/gtk/editing/selection/extend-inside-transforms-forward-expected.txt: Added.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        WKTR: eventSender.keyDown is unimplemented
        https://bugs.webkit.org/show_bug.cgi?id=57515

        Add another test that uses eventSender.keyDown to the mac-wk2 skipped list.

        * platform/mac-wk2/Skipped:

2011-06-23  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        Incorrect RenderLayer transforms on overflow RTL pages
        https://bugs.webkit.org/show_bug.cgi?id=60741

        Add a number of composited positioning tests on pages with dir=rtl.
        The reference images are all identical to what the non-composited path
        generates.

        The overflow-scrolled tests on Safari do not generate the right images
        due to bug 63284, but the layer tree is correct so they are not
        skipped.

        * compositing/rtl/rtl-absolute-expected.png: Added.
        * compositing/rtl/rtl-absolute-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-expected.png: Added.
        * compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-absolute-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-absolute-overflow.html: Added.
        * compositing/rtl/rtl-absolute.html: Added.
        * compositing/rtl/rtl-fixed-expected.png: Added.
        * compositing/rtl/rtl-fixed-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-expected.png: Added.
        * compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-fixed-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-fixed-overflow.html: Added.
        * compositing/rtl/rtl-fixed.html: Added.
        * compositing/rtl/rtl-iframe-absolute-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-iframe-absolute-overflow.html: Added.
        * compositing/rtl/rtl-iframe-absolute.html: Added.
        * compositing/rtl/rtl-iframe-fixed-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.png: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html: Added.
        * compositing/rtl/rtl-iframe-fixed-overflow.html: Added.
        * compositing/rtl/rtl-iframe-fixed.html: Added.
        * compositing/rtl/rtl-iframe-relative-expected.png: Added.
        * compositing/rtl/rtl-iframe-relative-expected.txt: Added.
        * compositing/rtl/rtl-iframe-relative.html: Added.
        * compositing/rtl/rtl-relative-expected.png: Added.
        * compositing/rtl/rtl-relative-expected.txt: Added.
        * compositing/rtl/rtl-relative.html: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled-expected.png: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled-expected.txt: Added.
        * compositing/rtlclipping/rtl-absolute-overflow-scrolled.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        compositing/tiling/huge-layer* flakey
        https://bugs.webkit.org/show_bug.cgi?id=48454

        These tests have been flaking on multiple platforms, so disable the tests in order to get
        the bots green.

        * compositing/tiling/huge-layer-add-remove-child.html: Removed.
        * compositing/tiling/huge-layer-add-remove-child.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer-add-remove-child.html.
        * compositing/tiling/huge-layer-img.html: Removed.
        * compositing/tiling/huge-layer-img.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer-img.html.
        * compositing/tiling/huge-layer-resize.html: Removed.
        * compositing/tiling/huge-layer-resize.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer-resize.html.
        * compositing/tiling/huge-layer-with-layer-children-resize.html: Removed.
        * compositing/tiling/huge-layer-with-layer-children-resize.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer-with-layer-children-resize.html.
        * compositing/tiling/huge-layer-with-layer-children.html: Removed.
        * compositing/tiling/huge-layer-with-layer-children.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer-with-layer-children.html.
        * compositing/tiling/huge-layer.html: Removed.
        * compositing/tiling/huge-layer.html-disabled: Copied from LayoutTests/compositing/tiling/huge-layer.html.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        compositing/iframes/invisible-nested-iframe-show.html failing on SnowLeopard Intel Release
        (WebKit2 Tests) since introduction.
        https://bugs.webkit.org/show_bug.cgi?id=59864

        Update the mac-wk2 results to contain the transform line and get the bots green.

        * platform/mac-wk2/compositing/iframes/invisible-nested-iframe-show-expected.txt:

2011-06-23  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Simon Fraser.

        Add a test for vertical caret movements inside transform
        https://bugs.webkit.org/show_bug.cgi?id=62834

        Add regression tests for vertical caret movements inside rotated contents.

        * editing/selection/extend-inside-transforms-backward.html: Added.
        * editing/selection/extend-inside-transforms-forward.html: Added.
        * platform/chromium/test_expectations.txt: Added test expectations to keep bots green
        until we rebaseline these tests on Chromium.
        * platform/mac/editing/selection/extend-inside-transforms-backward-expected.png: Added.
        * platform/mac/editing/selection/extend-inside-transforms-backward-expected.txt: Added.
        * platform/mac/editing/selection/extend-inside-transforms-forward-expected.png: Added.
        * platform/mac/editing/selection/extend-inside-transforms-forward-expected.txt: Added.

2011-06-23  Gregg Tavares  <gman@google.com>

        Reviewed by Kenneth Russell.

        add test expectation fast/canvas/canvas-large-dimensions.html for new assert in command buffer.
        https://bugs.webkit.org/show_bug.cgi?id=63278

        * platform/chromium/test_expectations.txt:

2011-06-23  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        input/textarea onchange doesn't fire if value is set in key listener
        https://bugs.webkit.org/show_bug.cgi?id=63092

        Add test for text field onchange when setting the value in a key listener.

        * fast/events/onchange-setvalue-expected.txt: Added.
        * fast/events/onchange-setvalue.html: Added.

2011-06-23  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/delete-select-all-00* to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=63193

        converted editing/deleting/delete-select-all-002/003 to 
        runDumpAsTextEditingTest(true), removed old test files (including a 
        superfluous expected file for 001 on qt), and added new test files.

        * editing/deleting/delete-select-all-002-expected.txt: Added.
        * editing/deleting/delete-select-all-002.html:
        * editing/deleting/delete-select-all-003-expected.txt: Added.
        * editing/deleting/delete-select-all-003.html:

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        [Windows Tests] http/tests/media/video-cross-site.html sometimes crashes.
        https://bugs.webkit.org/show_bug.cgi?id=62024

        Skip the test on Windows to get the bots green.

        * platform/win/Skipped:

2011-06-23  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Simon Fraser.

        Add a test with a single <source> element
        https://bugs.webkit.org/show_bug.cgi?id=63285

        * media/video-single-valid-source-expected.txt: Added.
        * media/video-single-valid-source.html: Added.

2011-06-23  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=61585
        Crash running regexp /(?:(?=g))|(?:m).{2147483648,}/

        Add regression tests where an alterative has a size of ~2^31.

        * fast/regex/overflow-expected.txt: Added.
        * fast/regex/overflow.html: Added.
        * fast/regex/script-tests/overflow.js: Added.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        [Snow Leopard WebKit2 Tests]  http/tests/appcache/interrupted-update.html failing, probably
        since introduction in r86478.
        https://bugs.webkit.org/show_bug.cgi?id=63288

        Add expected failing results in order to get the bots green.

        * platform/mac-wk2/http/tests/appcache/interrupted-update-expected.txt: Added.

2011-06-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89591 and r89593.
        http://trac.webkit.org/changeset/89591
        http://trac.webkit.org/changeset/89593
        https://bugs.webkit.org/show_bug.cgi?id=63279

        Caused test crashes in SL and Chromium (Requested by dimich_
        on #webkit).

        * platform/mac/accessibility/aria-liveregion-without-element-access-expected.txt: Removed.
        * platform/mac/accessibility/aria-liveregion-without-element-access.html: Removed.

2011-06-23  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

        Incorrect MIME type used for some media layout tests
        https://bugs.webkit.org/show_bug.cgi?id=63275

        * media/video-can-play-type-expected.txt: video/mpeg -> video/mp4
        * media/video-can-play-type.html: Ditto.
        * media/video-source-error.html: Ditto.
        * media/video-source-type.html: Ditto.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Tests] svg/zoom/page/zoom-replaced-intrinsic-ratio-001.html failing since
        introduction in r88913.
        https://bugs.webkit.org/show_bug.cgi?id=63277

        Add the (failing?) expected results in order to get the WK2 bots green.

        * platform/mac-wk2/svg: Added.
        * platform/mac-wk2/svg/zoom: Added.
        * platform/mac-wk2/svg/zoom/page: Added.
        * platform/mac-wk2/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.

2011-06-23  Dan Bernstein  <mitz@apple.com>

        Added expected results for Snow Leopard and earlier.

        * platform/mac-snowleopard/platform/mac/fast/text: Added.
        * platform/mac-snowleopard/platform/mac/fast/text/line-break-locale-expected.txt: Added.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        http/tests/multipart/win-boundary-crash.html flakey.
        https://bugs.webkit.org/show_bug.cgi?id=63268

        Disable the test. I was wrong in thinking that the win skipped list inherits from mac.

        * http/tests/multipart/win-boundary-crash.html: Removed.
        * http/tests/multipart/win-boundary-crash.html-disabled: Copied from LayoutTests/http/tests/multipart/win-boundary-crash.html.
        * platform/mac/Skipped:

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        http/tests/multipart/win-boundary-crash.html flakey.
        https://bugs.webkit.org/show_bug.cgi?id=63268

        The flakiness is happening on mac as well, move it to the mac skipped list.

        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-06-23  Nate Chapin  <japhet@chromium.org>

        Unreviewed.

        Partial revert of test expectations for r89503.

        * http/tests/loading/cross-origin-XHR-willLoadRequest-expected.txt:
        * http/tests/misc/favicon-loads-with-icon-loading-override-expected.txt:
        * http/tests/misc/link-rel-icon-beforeload-expected.txt:

2011-06-23  Young Han Lee  <joybro@company100.net>

        Reviewed by Simon Fraser.

        runAnimationTest always fails if the pause API is enabled and the test target animation has "infinite" iteration count.
        https://bugs.webkit.org/show_bug.cgi?id=63152

        The pausing conditions are modified. Now it accepts the infinite-iteration-count,
        but rejects the zero-iteration-count. There is no reason to consider the zero-count meaning no animation.

        * animations/keyframes-infinite-iterations-expected.txt: Added.
        * animations/keyframes-infinite-iterations.html: Added.

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        [Windows 7 Release Tests] http/tests/multipart/win-boundary-crash.html flakey.
        https://bugs.webkit.org/show_bug.cgi?id=63268

        Add it to the Windows skipped list to get the bots green.

        * platform/win/Skipped:

2011-06-23  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Adam Barth.

        Tests that we do not crash when doing a media query match.
        https://bugs.webkit.org/show_bug.cgi?id=63264

        * fast/css/media-query-evaluator-crash-expected.txt: Added.
        * fast/css/media-query-evaluator-crash.html: Added.

2011-06-23  Dan Bernstein  <mitz@apple.com>

        Reviewed by Alexey Proskuryakov.

        Make line breaking obey the -webkit-locale property
        https://bugs.webkit.org/show_bug.cgi?id=63209

        * platform/mac/fast/text/line-break-locale.html: Added.
        * platform/mac/platform/mac/fast/text/line-break-locale-expected.png: Added.
        * platform/mac/platform/mac/fast/text/line-break-locale-expected.txt: Added.

2011-06-23  Chris Fleizach  <cfleizach@apple.com>

        ARIA live regions don't trigger notifications for elements that aren't in the AX tree
        https://bugs.webkit.org/show_bug.cgi?id=62289

        Actually add the layout tests this time.

        * platform/mac/accessibility/aria-liveregion-without-element-access-expected.txt: Added.
        * platform/mac/accessibility/aria-liveregion-without-element-access.html: Added.

2011-06-23  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by Darin Adler.

        ARIA live regions don't trigger notifications for elements that aren't in the AX tree
        https://bugs.webkit.org/show_bug.cgi?id=62289

        * platform/mac/accessibility/aria-liveregion-without-element-access-expected.txt: Added.
        * platform/mac/accessibility/aria-liveregion-without-element-access.html: Added.

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: marking debugger test as slow in chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-06-23  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac rebaseline.

        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png:

2011-06-23  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        remove references to dump-as-markup in editing/deleting/delete-by-word tests
        https://bugs.webkit.org/show_bug.cgi?id=62903

        Each of these files had '../../../resources/dump-as-markup.js' referenced, which was broken.
        Neither of them was using dump-as-markup, so it did not break anything - this fix just removes
        the unused broken references.

        * editing/deleting/delete-by-word-001.html:
        * editing/deleting/delete-by-word-002.html:

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: marking debugger test as slow in chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-06-23  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Tests] plugins/npruntime/embed-property-equality.html failing since introduction in
        r88679.
        https://bugs.webkit.org/show_bug.cgi?id=63205

        This test does not fail on Windows, so add back in the passing expected results to get the
        bots green.

        * platform/win-wk2/plugins/npruntime: Added.
        * platform/win-wk2/plugins/npruntime/embed-property-equality-expected.txt: Added.

2011-06-23  Csaba Osztrogonác  <ossy@webkit.org>

        REGRESSION (r89449): http/tests/inspector/extensions-resources-redirect.html failing on SnowLeopard Intel Release (Tests), Windows 7 Release (Tests), Qt
        https://bugs.webkit.org/show_bug.cgi?id=63178

        * platform/qt/Skipped: Skip http/tests/inspector/extensions-resources-redirect.html until fix.

2011-06-23  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]REGRESSION(r89503): It made 4 fast/notifications tests fail on Qt
        https://bugs.webkit.org/show_bug.cgi?id=63255

        * platform/qt/Skipped: Skip failing tests until fix.

2011-06-23  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for a newish accessibility test

        The failure is tracked by <http://webkit.org/b/63191>.

        * platform/win/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Added.

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: updated chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-06-23  Csaba Osztrogonác  <ossy@webkit.org>

        Inspector may close at the start of the next inspector test in DRT
        https://bugs.webkit.org/show_bug.cgi?id=60881

        * platform/qt/Skipped: Unskip inspector tests after fix, skip still failing tests.

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: fix conflicting chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: brush up chromium inspector expectations.

        * http/tests/inspector/inspector-test.js:
        * platform/chromium/test_expectations.txt:

2011-06-23  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>

        Reviewed by Pavel Feldman.

        Inspector may close at the start of the next inspector test in DRT
        https://bugs.webkit.org/show_bug.cgi?id=60881

        The didEvaluateForTestInFrontend function call is postponed until
        all messages in the dispatch queue is processed.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.completeTest):

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, final round of baselines for the new CSS2.1 tests added in r88913.

        * platform/gtk/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-non-replaced-width-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-block-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-non-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-013-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-014-expected.txt: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/gtk/css2.1/20110323/inline-replaced-width-015-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-elements-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-elements-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/replaced-min-max-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/width-non-replaced-inline-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/width-replaced-element-001-expected.txt: Added.

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed. Unexpected passes in chromium expectations removed from excludes.

        * platform/chromium/inspector/debugger/debugger-activation-crash2-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed. Chromium test expectations updated.

        * platform/chromium/test_expectations.txt:

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, baselines for the new CSS2.1 tests added in r88913.

        * platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
        * platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
        * platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
        * platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
        * platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-013-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-014-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-015-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-height-016-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-non-replaced-width-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/block-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-non-replaced-width-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/float-replaced-width-011-expected.txt: Added.

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, more GTK+ baselines for the new CSS2.1 tests added in r88913.

        * platform/gtk/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-014-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-016-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-017-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-018-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-019-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-021-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-022-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-023-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-024-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-025-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-026-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-028-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-029-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-030-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-031-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-032-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-033-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-035-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-height-036-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-013-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-015-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-020-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-022-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-027-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-029-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-034-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-036-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-041-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-043-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-048-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-050-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-055-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-057-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-062-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-064-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-069-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-071-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-replaced-width-076-expected.txt: Added.

2011-06-23  Jeffrey Pfau  <jpfau@apple.com>

        Reviewed by Nikolas Zimmermann.

        Incorrectly placed SVG gradients can cause crashes when referenced
        https://bugs.webkit.org/show_bug.cgi?id=62914

        Added tests to make sure fallback color is used properly with invalid gradients.

        * svg/custom/invalid-gradient-with-xlink-expected.png: Added.
        * svg/custom/invalid-gradient-with-xlink-expected.txt: Added.
        * svg/custom/invalid-gradient-with-xlink.svg: Added.
        * svg/custom/xlink-to-invalid-gradient-expected.png: Added.
        * svg/custom/xlink-to-invalid-gradient-expected.txt: Added.
        * svg/custom/xlink-to-invalid-gradient.svg: Added.

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, another bunch of GTK+ baselines for the new CSS2.1 tests added in r88913.

        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-013-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-014-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-015-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-016-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-017-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-018-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-019-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-020-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-021-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-022-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-023-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-width-024-expected.txt: Added.

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, add GTK+ baselines for the new CSS2.1 tests added in r88913.

        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-height-012-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-001-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-002-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-003-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-004-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-005-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-006-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-007-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-008-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-009-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-010-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-011-expected.txt: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/gtk/css2.1/20110323/absolute-non-replaced-max-height-012-expected.txt: Added.

2011-06-23  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, rebaseline a couple of SVG tests for GTK+.

        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt:
        * platform/gtk/svg/custom/pointer-events-text-expected.txt:

2011-06-23  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: updating chromium expectations.

        * platform/chromium/fast/js/parser-xml-close-comment-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-23  Csaba Osztrogonác  <ossy@webkit.org>

        Add new "CONSOLE MESSAGE: line 0: SVG animation pause API missing!" tests to the WK2 skipped list.

        * platform/mac-wk2/Skipped:

2011-06-22  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: rebaseline chromium expectation.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-22  Dirk Schulze  <krit@webkit.org>

        Reviewed by Rob Buis.

        Convert SVGPointList to SVGAnimatorFactory concept
        https://bugs.webkit.org/show_bug.cgi?id=63171

        Renamed test animate-points to svgpointlist-animation-1 and cleaned it up.
        svgpointlist-animation-2 checks from-by animations of SVGPointLists.

        * svg/animations/animate-points-expected.txt: Removed.
        * svg/animations/animate-points.html: Removed.
        * svg/animations/script-tests/animate-points.js: Removed.
        * svg/animations/script-tests/svgpointlist-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgpointlist-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgpointlist-animation-1-expected.txt: Added.
        * svg/animations/svgpointlist-animation-1.html: Added.
        * svg/animations/svgpointlist-animation-2-expected.txt: Added.
        * svg/animations/svgpointlist-animation-2.html: Added.

2011-06-22  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-06-22  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-06-22  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Mark Rowe.

        Add window.internals to WebKit2's WebKitTestRunner.
        https://bugs.webkit.org/show_bug.cgi?id=61073

        * platform/mac-wk2/Skipped: unskip fast/harness/internals-object.html

2011-06-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Barth.

        Lower HTML parser DOM depth limit to 2048
        https://bugs.webkit.org/show_bug.cgi?id=63219

        Update nest test to reflect new limit and remove tests that were
        testing specific behaviors of the old parser.

        * fast/parser/block-nesting-cap-expected.txt:
        * fast/parser/block-nesting-cap-table-expected.txt: Removed.
        * fast/parser/block-nesting-cap-table.html: Removed.
        * fast/parser/element-nesting-cap-expected.txt: Removed.
        * fast/parser/element-nesting-cap.html: Removed.
        * fast/parser/script-tests/block-nesting-cap-table.js: Removed.
        * fast/parser/script-tests/block-nesting-cap.js:
        * fast/parser/script-tests/element-nesting-cap.js: Removed.

2011-06-22  Kent Tamura  <tkent@chromium.org>

        [Win] media/media-controls-clone.html failing on Windows 7 Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=63195

        * platform/win/media/media-controls-clone-expected.txt: Added.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by James Robinson.

        Fixing test spanOverlapsCanvas.html to properly use layer tree text and rebaselining test off that for windows and mac.
        https://bugs.webkit.org/show_bug.cgi?id=63190

        * compositing/layer-creation/spanOverlapsCanvas-expected.txt: Copied from LayoutTests/platform/mac/compositing/layer-creation/spanOverlapsCanvas-expected.txt.
        * compositing/layer-creation/spanOverlapsCanvas.html:
        * platform/mac-snowleopard/compositing: Added.
        * platform/mac-snowleopard/compositing/layer-creation: Added.
        * platform/mac-snowleopard/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
        * platform/mac/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Removed.
        * platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt:

2011-06-22  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IndexedDB open (database) should NOT throw if name is null
        https://bugs.webkit.org/show_bug.cgi?id=63110

        * storage/indexeddb/database-name-undefined-expected.txt:
        * storage/indexeddb/database-name-undefined.html: removed some code here
        because it's duplicated in the mozilla/open-database-null-name test
        * storage/indexeddb/mozilla/open-database-null-name-expected.txt:
        * storage/indexeddb/mozilla/open-database-null-name.html: fixed expected
        behavior (db.name ends up as four-character string "null")

2011-06-22  Nate Chapin  <japhet@chromium.org>

        Reviewed by Adam Barth.

        Test updates for https://bugs.webkit.org/show_bug.cgi?id=62066.

        * fast/preloader/scan-body-from-head-import.html: Use window.internals.
        * fast/preloader/scan-body-from-head-script.html: Use window.internals.
        * http/tests/loading/cross-origin-XHR-willLoadRequest-expected.txt:
        * http/tests/loading/cross-origin-XHR-willLoadRequest.html:
        * http/tests/loading/preload-append-scan-expected.txt:
        * http/tests/loading/preload-append-scan.php: Use window.internals.
        * http/tests/misc/favicon-loads-with-icon-loading-override-expected.txt:
        * http/tests/misc/link-rel-icon-beforeload-expected.txt:
        * platform/chromium-linux/fast/preloader/scan-body-from-head-script-expected.txt:  Removed.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Tests] plugins/npruntime/embed-property-equality.html failing since introduction in
        r88679.
        https://bugs.webkit.org/show_bug.cgi?id=63205

        Add expected failing result in order to get the bots green.

        * platform/mac-wk2/plugins: Added.
        * platform/mac-wk2/plugins/npruntime: Added.
        * platform/mac-wk2/plugins/npruntime/embed-property-equality-expected.txt: Added.

2011-06-22  Ojan Vafai  <ojan@chromium.org>

        Update listing for perf tests to list each individual test.
        A number of the tests in this directory are not flaky.

        * platform/chromium/test_expectations.txt:

2011-06-22  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed, baseline for new test added in http://trac.webkit.org/changeset/89490

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.

2011-06-22  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed, rebaseline tests after http://trac.webkit.org/changeset/89475/

        * platform/chromium-mac-leopard/fast/gradients/gradient-after-transparent-border-expected.png:
        * platform/chromium-mac/fast/borders/border-radius-wide-border-01-expected.png: Added.
        * platform/chromium-mac/fast/borders/mixed-border-styles-radius-expected.png:
        * platform/chromium-mac/fast/gradients/gradient-after-transparent-border-expected.png:

2011-06-22  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        REGRESSION: Hitting enter in the middle of this span causes the cursor to go to the end of the span
        https://bugs.webkit.org/show_bug.cgi?id=61594

        Adds two layout tests to verify that hitting enter in the middle of the span splits the span correctly
        and places the cursor in the correct position.

        * editing/inserting/return-key-before-br-in-span-expected.txt: Added.
        * editing/inserting/return-key-before-br-in-span.html: Added.
        * editing/inserting/return-key-middle-of-span-expected.txt: Added.
        * editing/inserting/return-key-middle-of-span.html: Added.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        Add more "CONSOLE MESSAGE: line 0: SVG animation pause API missing!" tests to the WK2
        Skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-06-22  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        SVG1.1SE test with pointer-events and invalid gradient fill fails
        https://bugs.webkit.org/show_bug.cgi?id=63109

        * platform/mac/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/interact-pointer-03-t.svg: Added.
        * svg/custom/pointer-events-invalid-fill-expected.txt: Added.
        * svg/custom/pointer-events-invalid-fill.svg: Added.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Adam Roben.

        Setting expected results for platform/win
        https://bugs.webkit.org/show_bug.cgi?id=63190

        * platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.

2011-06-22  Adam Roben  <aroben@apple.com>

        Add Windows expected results for some new tests from r87779

        These differ from Mac due to some small rounding differences in a path.

        * platform/win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.

2011-06-22  Adam Roben  <aroben@apple.com>

        Skip some flaky animation tests on Windows

        See <http://webkit.org/b/62561> and <http://webkit.org/b/62569>.

        * platform/win/Skipped: Added animations/animation-direction-normal.html and
        animations/play-state-paused.html.

2011-06-22  Adam Roben  <aroben@apple.com>

        Disable zoom-svg-through-object-with-*.xhtml

        These tests are flaky. See <http://webkit.org/b/63186>.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        Removed mentions of these tests.

        * svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml.
        * svg/zoom/page/zoom-svg-through-object-with-auto-size.html-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-auto-size.html.
        * svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml.
        * svg/zoom/page/zoom-svg-through-object-with-override-size.html-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-override-size.html.
        * svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml.
        * svg/zoom/page/zoom-svg-through-object-with-text.xhtml-disabled: Renamed from LayoutTests/svg/zoom/page/zoom-svg-through-object-with-text.xhtml.

2011-06-22  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Andreas Kling.

        [Qt][WK2] Set up plugin tests
        https://bugs.webkit.org/show_bug.cgi?id=63066

        * platform/qt-wk2/Skipped:
        Unskip passing plugin tests and create a new group for those
        that still fail for some reason.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        WebKit2 needs layoutTestController.overridePreference.
        https://bugs.webkit.org/show_bug.cgi?id=42197

        Add more tests that use layoutTestController.overridePreference to the WK2 Skipped list.

        * platform/mac-wk2/Skipped:

2011-06-22  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IndexedDB createIndex should NOT throw if name arg is null
        https://bugs.webkit.org/show_bug.cgi?id=63114

        * storage/indexeddb/mozilla/create-index-null-name-expected.txt:
        * storage/indexeddb/mozilla/create-index-null-name.html:

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89449): http/tests/inspector/extensions-resources-redirect.html failing on
        SnowLeopard Intel Release (Tests), Windows 7 Release (Tests).
        https://bugs.webkit.org/show_bug.cgi?id=63178

        Add failing expected results in order to get the bots green.

        * platform/mac/http/tests/inspector/extensions-resources-redirect-expected.txt: Added.

2011-06-22  Tony Chang  <tony@chromium.org>

        Add test that got renamed.  Should have been included with r89466.

        * storage/indexeddb/keypath-basics.html: Renamed from LayoutTests/storage/indexeddb/keypath-as-array.html.

2011-06-22  Beth Dakin  <bdakin@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=63174
        Don't draw the borders as one path unless there really are 4 borders
        -and corresponding-
        <rdar://problem/9457997>

        * fast/borders/only-one-border-with-width.html: Added.
        * platform/mac/fast/borders/only-one-border-with-width-expected.png: Added.
        * platform/mac/fast/borders/only-one-border-with-width-expected.txt: Added.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Oliver Hunt.

        Canvas in layer obscures overlapping span
        https://bugs.webkit.org/show_bug.cgi?id=63161

        * compositing/layer-creation/spanOverlapsCanvas.html: Added.
        * platform/mac/compositing/layer-creation: Added.
        * platform/mac/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
        * platform/mac/compositing/layer-creation/spanOverlapsCanvas-expected.png: Added.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89426-r89428): inspector/console/console-trace-in-eval.html failing on
        SnowLeopard Intel Release (Tests) and Windows 7 Release (Tests).
        https://bugs.webkit.org/show_bug.cgi?id=63175

        Add platform-specific results to in order to get the bots green.

        * platform/mac/inspector/console: Added.
        * platform/mac/inspector/console/console-trace-in-eval-expected.txt: Added.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs layoutTestController.dumpFrameLoadCallbacks.
        https://bugs.webkit.org/show_bug.cgi?id=42331

        Add another test that uses dumpFrameLoadCallbacks to the WK2 Skipped list.

        * platform/mac-wk2/Skipped:

2011-06-22  Kentaro Hara  <haraken@google.com>

        Reviewed by Tony Chang.

        Check |keypath| argument of createObjectStore(). Remove storage/indexeddb/keypath-as-array.html.
        https://bugs.webkit.org/show_bug.cgi?id=63054

        At the head of createObjectStore(), we parse |keypath| argument and throw an exception
        if the |keypath| is invalid. With this parsing, we remove keypath-as-array.html because
        the current keypath parser does not support an array of keypath and (more importantly)
        the current implementation of ObjectStore does not support multiple keypaths.
        We added keypath-basics.html that demonstrates that we do not support an array of keypaths.

        * storage/indexeddb/keypath-as-array-expected.txt: Removed.
        * storage/indexeddb/keypath-as-array.html: Removed.
        * storage/indexeddb/keypath-basics-expected.txt: Added.
        * storage/indexeddb/keypath-basics.html: Added.

2011-06-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Removed the conceit that global variables are local variables when running global code
        https://bugs.webkit.org/show_bug.cgi?id=63106
        
        * fast/js/recursion-limit-equal-expected.txt: Updated to reflect slightly
        changed recursion limit.

2011-06-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Removed the conceit that global variables are local variables when running global code
        https://bugs.webkit.org/show_bug.cgi?id=63106
        
        * fast/js/recursion-limit-equal-expected.txt: Updated to reflect slightly
        changed recursion limit.

2011-06-22  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r89305-r89312): webarchive/loading/mainresource-null-mimetype-crash.html failing
        on SnowLeopard Intel Release (Tests).
        https://bugs.webkit.org/show_bug.cgi?id=63169

        Add (failing?) expected results to get the bots green.

        * platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt: Added.

2011-06-22  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed update of test expectations.

        * platform/chromium-mac/fast/canvas/webgl/data-view-test-expected.txt: Added.
        * platform/chromium-win/fast/canvas/webgl/data-view-test-expected.txt: Added.

2011-06-22  Young Han Lee  <joybro@company100.net>

        Reviewed by Simon Fraser.

        animation-timing-function property with a list uses first item for all animations
        https://bugs.webkit.org/show_bug.cgi?id=60303

        When an element has multiple animations that have different timingFunctions,
        the progress of each animation should be calculated using its respective timingFunction.
        But at this point, the timingFunction of the first animation is only used for the
        calculation, regardless of how many animations the element has.

        The code for getting a timingFunction is changed by this patch
        so that the timingFunction of the correct animation searched by its name will be used.

        * animations/multiple-animations-timing-function-expected.txt: Added.
        * animations/multiple-animations-timing-function.html: Added.

2011-06-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89407, r89409, r89410, and r89411.
        http://trac.webkit.org/changeset/89407
        http://trac.webkit.org/changeset/89409
        http://trac.webkit.org/changeset/89410
        http://trac.webkit.org/changeset/89411
        https://bugs.webkit.org/show_bug.cgi?id=63168

        Broke Chromium tests for Forms and Autofill (Requested by
        dimich on #webkit).

        * fast/css/text-input-with-webkit-border-radius-expected.txt:
        * fast/forms/search-abs-pos-cancel-button.html:
        * fast/forms/search-cancel-button-mouseup.html:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/css/input-search-padding-expected.txt:
        * platform/gtk/fast/css/pseudo-cache-stale-expected.txt:
        * platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/gtk/fast/forms/placeholder-position-expected.txt:
        * platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/placeholder-set-value-expected.txt:
        * platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/gtk/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-styled-expected.txt:
        * platform/gtk/fast/forms/search-transformed-expected.txt:
        * platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
        * platform/gtk/fast/forms/search-zoomed-expected.txt:
        * platform/gtk/fast/forms/searchfield-heights-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/repaint/search-field-cancel-expected.txt:
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/fast/css/input-search-padding-expected.png:
        * platform/mac/fast/css/input-search-padding-expected.txt:
        * platform/mac/fast/css/pseudo-cache-stale-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/placeholder-set-value-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-transformed-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.png:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/search-zoomed-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.png:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/qt/fast/css/pseudo-cache-stale-expected.txt:
        * platform/qt/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/qt/fast/forms/control-restrict-line-height-expected.txt:
        * platform/qt/fast/forms/placeholder-set-value-expected.txt:
        * platform/qt/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/qt/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/qt/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-styled-expected.txt:
        * platform/qt/fast/forms/search-transformed-expected.txt:
        * platform/qt/fast/forms/search-vertical-alignment-expected.txt:
        * platform/qt/fast/forms/search-zoomed-expected.txt:
        * platform/qt/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/win/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/win/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/win/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/win/media/media-controls-clone-expected.txt: Removed.

2011-06-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Barth.

        HTML parser should limit element depth of produced tree
        https://bugs.webkit.org/show_bug.cgi?id=63082

        * fast/parser/block-nesting-cap-expected.txt:
        * fast/parser/element-nesting-cap-expected.txt:
        Update expectations for new parser depth limit.

2011-06-22  Adam Barth  <abarth@webkit.org>

        Rollout 88332.

        * editing/spelling/spellcheck-api-expected.txt: Removed.
        * editing/spelling/spellcheck-api-pixel.html: Removed.
        * editing/spelling/spellcheck-api.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-22  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IndexedDB: fix multiple issues in IDBDatabase.idl
        https://bugs.webkit.org/show_bug.cgi?id=63140

        * storage/indexeddb/createObjectStore-name-argument-required-expected.txt: Added.
        * storage/indexeddb/createObjectStore-name-argument-required.html: Added.
        * storage/indexeddb/createObjectStore-null-name-expected.txt: Added.
        * storage/indexeddb/createObjectStore-null-name.html: Added.
        * storage/indexeddb/deleteObjectStore-name-argument-required-expected.txt: Added.
        * storage/indexeddb/deleteObjectStore-name-argument-required.html: Added.
        * storage/indexeddb/deleteObjectStore-null-name-expected.txt: Added.
        * storage/indexeddb/deleteObjectStore-null-name.html: Added.
        * storage/indexeddb/mozilla/create-objectstore-null-name-expected.txt:
        * storage/indexeddb/mozilla/create-objectstore-null-name.html:
        * storage/indexeddb/setVersion-null-expected.txt: Added.
        * storage/indexeddb/setVersion-null.html: Added.
        * storage/indexeddb/setVersion-undefined-expected.txt:
        * storage/indexeddb/setVersion-undefined.html:
        * storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
        * storage/indexeddb/transaction-and-objectstore-calls.html:
        * storage/indexeddb/transaction-crash-on-abort-expected.txt:
        * storage/indexeddb/transaction-crash-on-abort.html:
        * storage/indexeddb/transaction-read-only-expected.txt:
        * storage/indexeddb/transaction-read-only.html:
        * storage/indexeddb/transaction-storeNames-required-expected.txt: Added.
        * storage/indexeddb/transaction-storeNames-required.html: Added.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Adding a mac platform expected result for webgl test to help fix burning bot.
        Filed https://bugs.webkit.org/show_bug.cgi?id=63151 for a real fix

        * platform/mac/fast/canvas/webgl/data-view-test-expected.txt: Added.

2011-06-22  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Assertion failure in RenderBlock::createLineBoxes() when a legend has display: inline
        https://bugs.webkit.org/show_bug.cgi?id=23753

        The bug got fixed, so landing the test case.

        * fast/dom/legend-display-inline-expected.txt: Added.
        * fast/dom/legend-display-inline.html: Added.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Reverting rebaseline from r89434, because it needs more investigation.
        Filed this bug for figuring it out: https://bugs.webkit.org/show_bug.cgi?id=63151

        * fast/canvas/webgl/data-view-test-expected.txt:

2011-06-22  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: split setAttributes and setAttributeValue.
        https://bugs.webkit.org/show_bug.cgi?id=63138

        * inspector/elements/set-attribute.html:
        * inspector/elements/set-attribute-expected.txt:

2011-06-22  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Dan Bernstein.

        video-loop.html sometimes fails on slow system
        https://bugs.webkit.org/show_bug.cgi?id=63143

        * media/video-loop.html: Don't seek if an exception will be generated.

2011-06-22  Matthew Delaney  <mdelaney@apple.com>

        Fixing burning mac SL trees. These tests's expected results needed
        updating after parts of them were fixed recently in r89315.

        * fast/canvas/webgl/data-view-test-expected.txt:
        * platform/mac/canvas/philip/tests/2d.missingargs-expected.txt:

2011-06-22  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        Animate viewBox attribute in SVG
        https://bugs.webkit.org/show_bug.cgi?id=20057

        Test SVGRect animation with from-to and from-by animations.

        * svg/animations/script-tests/svgrect-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgrect-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgrect-animation-1-expected.txt: Added.
        * svg/animations/svgrect-animation-1.html: Added.
        * svg/animations/svgrect-animation-2-expected.txt: Added.
        * svg/animations/svgrect-animation-2.html: Added.

2011-06-22  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, apply a couple of Chromium test expectation changes to test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-06-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Update platform specific exprected results after r89367 and r89381.

        * platform/qt/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt:
        * platform/qt/svg/custom/pointer-events-text-expected.png:
        * platform/qt/svg/custom/pointer-events-text-expected.txt:

2011-06-22  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, fix a syntax error in the last change in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-06-22  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectations for tests started to fail since V8 3.4.5.1 roll.

        * platform/chromium/test_expectations.txt:

2011-06-22  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, check in new Chromium-Leopard baselines.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/pointer-events-text-expected.png: Added.

2011-06-22  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, whitespace expectations change to trigger a round of
        builds.

        * platform/chromium/test_expectations.txt:

2011-06-21  Kent Tamura  <tkent@chromium.org>

        [Win][Mac] Correct an accidental change in r89410.

        * platform/mac/media/media-controls-clone-expected.txt:
        * platform/win/media/media-controls-clone-expected.txt: Copied from LayoutTests/platform/mac/media/media-controls-clone-expected.txt.

2011-06-21  Kent Tamura  <tkent@chromium.org>

        [Win][GTK] Test expectation update for r89407.

        * platform/gtk/fast/css/input-search-padding-expected.txt:
        * platform/gtk/fast/css/pseudo-cache-stale-expected.txt:
        * platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/gtk/fast/forms/placeholder-position-expected.txt:
        * platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/placeholder-set-value-expected.txt:
        * platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/gtk/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-styled-expected.txt:
        * platform/gtk/fast/forms/search-transformed-expected.txt:
        * platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
        * platform/gtk/fast/forms/search-zoomed-expected.txt:
        * platform/gtk/fast/forms/searchfield-heights-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/repaint/search-field-cancel-expected.txt:
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/media/media-controls-clone-expected.txt:
        * platform/win/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/win/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/win/fast/forms/search-placeholder-value-changed-expected.txt:

2011-06-21  Kent Tamura  <tkent@chromium.org>

        [Qt] Test expectation update for r89407.

        * platform/qt/fast/css/pseudo-cache-stale-expected.txt:
        * platform/qt/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/qt/fast/forms/control-restrict-line-height-expected.txt:
        * platform/qt/fast/forms/placeholder-set-value-expected.txt:
        * platform/qt/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/qt/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/qt/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-styled-expected.txt:
        * platform/qt/fast/forms/search-transformed-expected.txt:
        * platform/qt/fast/forms/search-vertical-alignment-expected.txt:
        * platform/qt/fast/forms/search-zoomed-expected.txt:
        * platform/qt/fast/replaced/width100percent-searchfield-expected.txt:

2011-06-21  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectation for some speech tests.

        * platform/chromium/test_expectations.txt:

2011-06-21  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Avoid custom layout code of RenderTextControlSingleLine
        https://bugs.webkit.org/show_bug.cgi?id=61415

        Update tests including <input type=search> or <input type=number>. Their
        internal structures are changed.
        Slight position changes for search result buttons and search cancel
        buttons are expected.

        * fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/css/input-search-padding-expected.png:
        * platform/mac/fast/css/input-search-padding-expected.txt:
        * platform/mac/fast/css/pseudo-cache-stale-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/placeholder-set-value-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-transformed-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.png:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/search-zoomed-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.png:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * fast/forms/search-cancel-button-mouseup.html: Adjust click position for the cancel button.
        * fast/forms/search-abs-pos-cancel-button.html: ditto.

2011-06-21  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, remove duplicate Chromium test expectation.

        * platform/chromium/test_expectations.txt:

2011-06-21  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Update Chromium test expectations and baselines.

        * platform/chromium-win/fast/css/color-leakage-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-21  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        beginTransparencyLayer leaves context color out of sync, bleeds color into text
        https://bugs.webkit.org/show_bug.cgi?id=63093

        * fast/css/color-leakage.html: Added pixel regression test that previously would have the
          border's color spilling into the text.
        * platform/mac/fast/css/color-leakage-expected.png: Added.
        * platform/mac/fast/css/color-leakage-expected.txt: Added.

2011-06-21  Tony Chang  <tony@chromium.org>

        Reviewed by Eric Seidel.

        add css parsing of flex()
        https://bugs.webkit.org/show_bug.cgi?id=62050

        Add a new script-test, but skip it on all platforms since we don't
        build with ENABLE_CSS3_FLEXBOX anywhere.

        * css3/flexbox/flex-parsing-expected.txt: Added.
        * css3/flexbox/flex-parsing.html: Added.
        * css3/flexbox/script-tests/TEMPLATE.html: Added.
        * css3/flexbox/script-tests/flex-parsing.js: Added.
        (testFlex):
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-21  Ryosuke Niwa  <rniwa@webkit.org>

        Remove failing test expectations from various tests for Chromium Windows.

        * platform/chromium/test_expectations.txt:

2011-06-21  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        Add child layers to the overlap map if their parent belatedly becomes composited
        https://bugs.webkit.org/show_bug.cgi?id=62181

        * compositing/layer-creation/overlap-transformed-layer-expected.txt: Added.
        * compositing/layer-creation/overlap-transformed-layer.html: Added.

2011-06-21  Zhenyao Mo  <zmo@google.com>

        Reviewed by Kenneth Russell.

        Implement drawingBufferWidth/drawingBufferHeight in WebGL
        https://bugs.webkit.org/show_bug.cgi?id=58497

        * fast/canvas/webgl/webgl-specific-expected.txt:
        * fast/canvas/webgl/webgl-specific.html: Test drawingBufferWidth/Height attributes.
        * fast/canvas/webgl/canvas-zero-size-expected.txt:
        * fast/canvas/webgl/canvas-zero-size.html: Added.
        * fast/canvas/webgl/drawingbuffer-test-expected.txt:
        * fast/canvas/webgl/drawingbuffer-test.html: Added.

2011-06-21  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed update of test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-21  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Adjust some GPU test expectations to match bot reality.

        * platform/chromium/test_expectations.txt:

2011-06-21  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89354.
        http://trac.webkit.org/changeset/89354
        https://bugs.webkit.org/show_bug.cgi?id=63099

        Broke tests on Mac (Requested by rniwa on #webkit).

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest.InspectorTest.completeDebuggerTest.disableDebugger):

2011-06-21  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed update of test expectations after r89381.

        * platform/chromium-linux/svg/custom/pointer-events-text-expected.png:
        * platform/chromium-win/svg/custom/pointer-events-text-expected.png:
        * platform/chromium-win/svg/custom/pointer-events-text-expected.txt:

2011-06-21  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IndexedDB: IDBObjectStore methods should throw TypeError if required arguments are missing
        https://bugs.webkit.org/show_bug.cgi?id=63087

        * storage/indexeddb/objectStore-required-arguments-expected.txt: Added.
        * storage/indexeddb/objectStore-required-arguments.html: Added.

2011-06-21  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        convert editing/deleting/delete-3608430-fix.html to DumpAsTextEditingTest
        https://bugs.webkit.org/show_bug.cgi?id=62823

        Fixed a superfluous quote, added a doctype, fixed a broken reference to 'abe.gif'
        (now points to abe.png, in the correct location), added a description, and converted
        to a DumpAsTextEditingTest. This test checks that deletion over an image will correctly
        remove an empty element before the image.

        * editing/deleting/delete-3608430-fix-expected.txt: Added.
        * editing/deleting/delete-3608430-fix.html:
        * platform/chromium-linux/editing/deleting/delete-3608430-fix-expected.png: Removed.
        * platform/chromium-win/editing/deleting/delete-3608430-fix-expected.png: Removed.
        * platform/chromium-win/editing/deleting/delete-3608430-fix-expected.txt: Removed.
        * platform/gtk/editing/deleting/delete-3608430-fix-expected.txt: Removed.
        * platform/mac/editing/deleting/delete-3608430-fix-expected.png: Removed.
        * platform/mac/editing/deleting/delete-3608430-fix-expected.txt: Removed.
        * platform/qt/editing/deleting/delete-3608430-fix-expected.txt: Removed.

2011-06-21  Rob Buis  <rbuis@rim.com>

        Reviewed by Dirk Schulze.

        All pointer-events fail if text has visibility="hidden"
        https://bugs.webkit.org/show_bug.cgi?id=62209

        Update test results (improvement).

        * platform/mac/svg/custom/pointer-events-text-expected.png:
        * platform/mac/svg/custom/pointer-events-text-expected.txt:

2011-06-21  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IndexedDB: keyrange methods should throw TypeError if required arguments are missing
        https://bugs.webkit.org/show_bug.cgi?id=63085

        * storage/indexeddb/keyrange-required-arguments-expected.txt: Added.
        * storage/indexeddb/keyrange-required-arguments.html: Added.

2011-06-21  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed, updating test expectations after r89367,
        fixing typo in test_expectations.txt

        * platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt: Removed.
        * platform/chromium-win-xp/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png: Removed.
        * platform/chromium-win-xp/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-21  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: should throw TypeError when indexedDB.open() name argument is missing
        https://bugs.webkit.org/show_bug.cgi?id=63065

        * storage/indexeddb/database-name-undefined-expected.txt:
        * storage/indexeddb/database-name-undefined.html:

2011-06-21  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: should throw TypeError when index .get() key argument is missing
        https://bugs.webkit.org/show_bug.cgi?id=63079

        * storage/indexeddb/index-get-key-argument-required-expected.txt: Added.
        * storage/indexeddb/index-get-key-argument-required.html: Added.

2011-06-21  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: cursor update() value argument is required
        https://bugs.webkit.org/show_bug.cgi?id=63032

        * storage/indexeddb/cursor-update-value-argument-required-expected.txt: Added.
        * storage/indexeddb/cursor-update-value-argument-required.html: Added.

2011-06-21  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Dirk Schulze.

        [GTK] r89314 caused several shadow tests to start failing
        https://bugs.webkit.org/show_bug.cgi?id=63045

        * platform/gtk/Skipped: Unskip tests that are now passing.

2011-06-21  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Remove old (aggregating) heap profiler.
        https://bugs.webkit.org/show_bug.cgi?id=63049

        * inspector/profiler/detailed-heapshots-test.js:

2011-06-21  Dirk Schulze  <krit@webkit.org>

        Reviewed by Rob Buis.

        SVG no fallback to discrete animation on attribute 'values' for SVGString
        https://bugs.webkit.org/show_bug.cgi?id=57085
        
        Added new test to check fallback to discrete animations on string values. One
        test needed rebaseline. Even if we do not pass the test it is still a progression. 

        * platform/mac/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt:
        * svg/animations/script-tests/svgstring-animation-fallback-to-discrete.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgstring-animation-fallback-to-discrete-expected.txt: Added.
        * svg/animations/svgstring-animation-fallback-to-discrete.html: Added.

2011-06-21  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Adding version of fast/events/offsetX-offsetY.html without text run or line height deps
        https://bugs.webkit.org/show_bug.cgi?id=63073

        * fast/events/document-elementFromPoint-expected.txt: Added.
        * fast/events/document-elementFromPoint.html: Added.

2011-06-21  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Remove a now-passing test from chromium's text_expectations.  Also 
        comment out expectations for a few newly-added tests which were
        removed by a revert.  This makes lint-test-files run cleanly.

        * platform/chromium/test_expectations.txt:

2011-06-21  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Removing a now-passing test from chromium's test_expectations.

        * platform/chromium/test_expectations.txt:

2011-06-20  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: introduce InspectorFrontendAPI for actions initiated from the application menu.
        https://bugs.webkit.org/show_bug.cgi?id=62985

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest.InspectorTest.completeDebuggerTest.disableDebugger):

2011-06-21  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Skip a test that takes too long on the GPU.

        * platform/chromium/test_expectations.txt:

2011-06-20  Stephen White  <senorblanco@chromium.org>

        Reviewed by James Robinson.

        New test for patch introduced in r89250
        https://bugs.webkit.org/show_bug.cgi?id=63016

        * fast/canvas/script-tests/text-globalAlpha.js: Added.
        * fast/canvas/text-globalAlpha-expected.txt: Added.
        * fast/canvas/text-globalAlpha.html: Added.

2011-06-21  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Show content in network panel correctly when two resources were loaded from the same url with different content.
        https://bugs.webkit.org/show_bug.cgi?id=62992

        * http/tests/inspector/network/network-cachedresources-with-same-urls.html: Added.
        * http/tests/inspector/network/resources/resource.php:

2011-06-20  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Chromium layout test failure after r89317
        https://bugs.webkit.org/show_bug.cgi?id=63031

        Event Listener sidebar output prints out the full path
        to the source file in the sourceName property. For testing
        purposes, since the path will be different per system,
        clip the early part of the path and leave the expected part.

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.dumpSelectedElementEventListeners):
        (initialize_ElementTest.InspectorTest.dumpObjectPropertySection):
        * platform/chromium/inspector/elements/event-listener-sidebar-expected.txt:

2011-06-17  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: can't set breakpoint on the last script line.
        https://bugs.webkit.org/show_bug.cgi?id=62861

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/debugger-pause-on-breakpoint-expected.txt:
        * inspector/debugger/debugger-pause-on-breakpoint.html:

2011-06-20  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: console messages shouldn't prevent garbage collection of iframes
        https://bugs.webkit.org/show_bug.cgi?id=62996

        * http/tests/inspector-enabled/console-clear-arguments-on-frame-remove-expected.txt: Added.
        * http/tests/inspector-enabled/console-clear-arguments-on-frame-remove.html: Added.
        * http/tests/inspector-enabled/resources/console-clear-arguments-iframe.html: Added.

2011-06-21  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test expectations for some flaky tests.

        * platform/chromium/test_expectations.txt:

2011-06-21  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed rollout r89237, r89238 and part of r89243,
        because the original patch r89233 was rolled out by r89320.

2011-06-20  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update expected test results on Chromium Mac-Leopard.

        * platform/chromium-mac-leopard/svg/dom/SVGNumberList-basics-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dom/SVGStringList-basics-expected.png: Added.

2011-06-20  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a few more SVG tests for GTK+.

        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/batik/text/textEffect-expected.txt:
        * platform/gtk/svg/batik/text/textEffect3-expected.txt:
        * platform/gtk/svg/batik/text/xmlSpace-expected.txt:
        * platform/gtk/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/text/text-text-04-t-expected.txt:
        * platform/gtk/svg/text/text-text-05-t-expected.txt:
        * platform/gtk/svg/text/text-text-06-t-expected.txt:
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.txt:

2011-06-20  Martin Robinson  <mrobinson@igalia.com>

        Update the GTK+ skipped list.

        Unskip some tests which should now be passing and skip a bunch that
        were caused by a recent regression. Reclassify one failure that isn't
        actually a crasher.

        * platform/gtk/Skipped: Update the skipped list.

2011-06-20  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Update Chromium test expectation for inspector/elements/event-listener-sidebar.html
        and rebaseline SVG tests changed in r89315.

        * platform/chromium-win/svg/dom/SVGNumberList-basics-expected.png:
        * platform/chromium-win/svg/dom/SVGStringList-basics-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-20  Kenneth Russell  <kbr@google.com>

        Unreviewed. Updated Chromium test expectations to fix ui_test
        WorkerTest.WorkerScriptError after WebKit roll to r89329.

        * platform/chromium-win/fast/workers/worker-script-error-expected.txt:

2011-06-20  Dai Mikurube  <dmikurube@chromium.org>

        Reviewed by Kent Tamura.

        Webkit allows disabled option as value of "required" select
        https://bugs.webkit.org/show_bug.cgi?id=62668

        * fast/forms/ValidityState-valueMissing-001-expected.txt:
        * fast/forms/ValidityState-valueMissing-001.html: Changed to generate form validation error for disabled placeholder label option.

2011-06-20  Kent Tamura  <tkent@chromium.org>

        [Chromium] text expectation update for r89116.

        * platform/chromium-linux/media/media-controls-clone-expected.png: Added.
        * platform/chromium-mac/media/media-controls-clone-expected.png: Added.
        * platform/chromium-mac/media/media-controls-clone-expected.txt: Added.
        * platform/chromium-win/media/media-controls-clone-expected.png: Added.
        * platform/chromium-win/media/media-controls-clone-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-20  Zhenyao Mo  <zmo@google.com>

        Reviewed by Kenneth Russell.

        Update ANGLE to r696
        https://bugs.webkit.org/show_bug.cgi?id=56396

        * fast/canvas/webgl/glsl-conformance.html: Fix a bug in the test (otherwise after the roll this test will fail).
        * platform/chromium/test_expectations.txt: Once this test is fixed, it should pass in chromium.

2011-06-20  Kenneth Russell  <kbr@google.com>

        Unreviewed Chromium expectations update. Suppressions after recent commits.

        * platform/chromium/test_expectations.txt:

2011-06-20  Adam Barth  <abarth@webkit.org>

        Update image results after mpilgrim's exception type change.

        * platform/chromium-linux/svg/dom/SVGNumberList-basics-expected.png:
        * platform/chromium-linux/svg/dom/SVGStringList-basics-expected.png:
        * platform/chromium-mac/svg/dom/SVGNumberList-basics-expected.png: Added.
        * platform/chromium-mac/svg/dom/SVGStringList-basics-expected.png: Added.

2011-06-20  Kenneth Russell  <kbr@google.com>

        Unreviewed Chromium expectations update. Revert the expectations
        for http/tests/misc/acid3.html after r89233 was rolled out.
        Commented on other test expectations added for r89233.

        * platform/chromium/test_expectations.txt:

2011-06-20  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Pavel Feldman.

        Web Inspector: CRASH if Expanding Event Listener on document
        https://bugs.webkit.org/show_bug.cgi?id=61834

        Add a test to list the event listeners in the sidebar.
        This test includes event listeners on the document, and
        it expands each of the sections which would have caused
        the CRASH fixed by this patch.

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.expandAndDumpSelectedElementEventListeners):
        (initialize_ElementTest.InspectorTest.expandSelectedElementEventListeners):
        (initialize_ElementTest.InspectorTest.expandSelectedElementEventListenersSubsections):
        (initialize_ElementTest.InspectorTest.expandSelectedElementEventListenersEventBars):
        (initialize_ElementTest.InspectorTest.dumpSelectedElementEventListeners):
        (initialize_ElementTest.InspectorTest.dumpObjectPropertySection):
        * inspector/elements/event-listener-sidebar-expected.txt: Added.
        * inspector/elements/event-listener-sidebar.html: Added.
        * platform/chromium/inspector/elements/event-listener-sidebar-expected.txt: Added.
        Chromium has slightly different results. It has more properties
        and includes extra information, like line numbers, for functions.

2011-06-20  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Darin Adler.

        Minimize memory due to layer backing stores for pages in the Page Cache
        https://bugs.webkit.org/show_bug.cgi?id=62675

        Test the layer tree of a page with composited content,
        including content in iframes, looks like we expect.
        Enabling clearing backing stores in the PageCache should
        produce the same expected results.

        * compositing/iframes/page-cache-layer-tree-expected.txt: Added.
        * compositing/iframes/page-cache-layer-tree.html: Added.
        * compositing/iframes/resources/page-cache-helper.html: Added.
        * compositing/iframes/resources/page-cache-iframe.html: Added.

2011-06-20  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Adam Barth.

        IDL generator should throw TypeError instead of SyntaxError on not enough arguments
        https://bugs.webkit.org/show_bug.cgi?id=63011

        To align with WebIDL, we should throw TypeError whenever a function
        is called with missing required arguments.

        * fast/canvas/canvas-overloads-drawImageFromRect-expected.txt:
        * fast/canvas/canvas-overloads-fillText-expected.txt:
        * fast/canvas/canvas-overloads-strokeText-expected.txt:
        * fast/canvas/script-tests/canvas-overloads-drawImageFromRect.js:
        * fast/canvas/script-tests/canvas-overloads-fillText.js:
        * fast/canvas/script-tests/canvas-overloads-strokeText.js:
        * fast/canvas/webgl/data-view-test-expected.txt:
        * http/tests/xmlhttprequest/exceptions-expected.txt:
        * platform/chromium-mac/svg/dom/svgpath-out-of-bounds-getPathSeg-expected.txt:
        * platform/chromium-win/svg/dom/svgpath-out-of-bounds-getPathSeg-expected.txt:
        * svg/dom/SVGAngle-expected.txt:
        * svg/dom/SVGColor-expected.txt:
        * svg/dom/SVGLength-expected.txt:
        * svg/dom/SVGLengthList-basics-expected.txt:
        * svg/dom/SVGMatrix-expected.txt:
        * svg/dom/SVGNumberList-basics-expected.txt:
        * svg/dom/SVGPaint-expected.txt:
        * svg/dom/SVGPoint-expected.txt:
        * svg/dom/SVGPointList-basics-expected.txt:
        * svg/dom/SVGStringList-basics-expected.txt:
        * svg/dom/SVGTransform-expected.txt:
        * svg/dom/SVGTransformList-basics-expected.txt:
        * svg/dom/SVGTransformList-expected.txt:
        * svg/dom/svgpath-out-of-bounds-getPathSeg-expected.txt:

2011-05-03  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Dirk Schulze.

        REGRESSION: [CAIRO] wrong drawing of Gradients and Patterns on texts
        https://bugs.webkit.org/show_bug.cgi?id=31507

        Unskip a test which is now passing and update pixel results with correct
        output.

        * platform/gtk/Skipped:
        * platform/gtk/fast/canvas/canvas-text-alignment-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.png:
        * platform/gtk/svg/batik/text/textDecoration-expected.png:
        * platform/gtk/svg/batik/text/textEffect-expected.png:
        * platform/gtk/svg/batik/text/textEffect3-expected.png:
        * platform/gtk/svg/css/composite-shadow-text-expected.png:
        * platform/gtk/svg/css/text-gradient-shadow-expected.png:
        * platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.png:
        * platform/gtk/svg/custom/js-late-gradient-creation-expected.png:
        * platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.png:
        * platform/gtk/svg/custom/js-late-pattern-creation-expected.png:
        * platform/gtk/svg/custom/pattern-with-transformation-expected.png:
        * platform/gtk/svg/text/text-align-03-b-expected.png:
        * platform/gtk/svg/transforms/text-with-pattern-with-svg-transform-expected.png:

2011-06-20  Tim Horton  <timothy_horton@apple.com>

        Reviewed by Darin Adler.

        Incorrect clamping on SVG masks when root element is not located at (0,0)
        https://bugs.webkit.org/show_bug.cgi?id=63019

        * platform/mac/svg/custom/absolute-root-position-masking-expected.png: Added.
        * platform/mac/svg/custom/absolute-root-position-masking-expected.txt: Added.
        * platform/qt/svg/custom/absolute-root-position-masking-expected.png: Added.
        * platform/qt/svg/custom/absolute-root-position-masking-expected.txt: Added.
        * svg/custom/absolute-root-position-masking.xhtml: Added.

2011-06-20  Kenneth Russell  <kbr@google.com>

        Unreviewed.

        Rolled out r89233 and r89235 because of crashes in http/tests/misc/acid3.html on Snow Leopard and other platforms
        https://bugs.webkit.org/show_bug.cgi?id=63022

        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/batik/text/textEffect-expected.png:
        * platform/mac/svg/batik/text/textEffect-expected.txt:
        * platform/mac/svg/batik/text/textEffect3-expected.png:
        * platform/mac/svg/batik/text/textEffect3-expected.txt:
        * platform/mac/svg/batik/text/xmlSpace-expected.png:
        * platform/mac/svg/batik/text/xmlSpace-expected.txt:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.png:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/mac/svg/custom/svg-fonts-fallback-expected.png: Removed.
        * platform/mac/svg/custom/svg-fonts-fallback-expected.txt: Removed.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.png: Removed.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.txt: Removed.
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.png:
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.png:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.png: Removed.
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt: Removed.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/mac/svg/text/text-altglyph-01-b-expected.png:
        * platform/mac/svg/text/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.png: Removed.
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Removed.
        * platform/mac/svg/text/text-text-04-t-expected.png:
        * platform/mac/svg/text/text-text-04-t-expected.txt:
        * platform/mac/svg/text/text-text-05-t-expected.png:
        * platform/mac/svg/text/text-text-05-t-expected.txt:
        * platform/mac/svg/text/text-text-06-t-expected.png:
        * platform/mac/svg/text/text-text-06-t-expected.txt:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.png:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.txt:
        * svg/custom/resources/ABCFont.svg:
        * svg/custom/svg-fonts-fallback.xhtml: Removed.
        * svg/custom/svg-fonts-segmented.xhtml: Removed.
        * svg/custom/svg-fonts-word-spacing.html: Removed.
        * svg/text/select-text-svgfont-expected.txt: Removed.
        * svg/text/select-text-svgfont.html: Removed.
        * svg/text/text-overflow-ellipsis-svgfont.html: Removed.

2011-06-20  Ryosuke Niwa  <rniwa@webkit.org>

        Qt Rebaseline for r89257.

        * platform/qt/fast/tokenizer/002-expected.txt:
        * platform/qt/fast/tokenizer/external-script-document-write_2-expected.txt:
        * platform/qt/fast/tokenizer/script_extra_close-expected.txt:

2011-06-20  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline some tests for GTK+ after r89257.

        * platform/gtk/fast/tokenizer/002-expected.txt:
        * platform/gtk/fast/tokenizer/external-script-document-write_2-expected.txt:
        * platform/gtk/fast/tokenizer/script_extra_close-expected.txt:

2011-06-20  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline many SVG tests for GTK+ after r89233 and update the skipped list to include
        a new test that relies on the didRunInsecureContent callback. Add a platform-specific
        result for fast/dom/Window/window-properties.html as we now have the media stream
        feature enabled on the bots.

        * platform/gtk/Skipped: Update the skipped list.
        * platform/gtk/fast/dom/Window/window-properties-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/batik/text/textEffect-expected.png:
        * platform/gtk/svg/batik/text/textEffect-expected.txt:
        * platform/gtk/svg/batik/text/textEffect3-expected.png:
        * platform/gtk/svg/batik/text/textEffect3-expected.txt:
        * platform/gtk/svg/batik/text/xmlSpace-expected.png:
        * platform/gtk/svg/batik/text/xmlSpace-expected.txt:
        * platform/gtk/svg/custom/glyph-selection-lang-attribute-expected.png:
        * platform/gtk/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.png:
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.png:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.txt:
        * platform/gtk/svg/text/text-text-04-t-expected.png:
        * platform/gtk/svg/text/text-text-04-t-expected.txt:
        * platform/gtk/svg/text/text-text-05-t-expected.png:
        * platform/gtk/svg/text/text-text-05-t-expected.txt:
        * platform/gtk/svg/text/text-text-06-t-expected.png:
        * platform/gtk/svg/text/text-text-06-t-expected.txt:
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.png:
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.txt:
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:

2011-06-20  David Levin  <levin@chromium.org>

        Reviewed by Dmitry Titov.

        Expand Web Worker test coverage for onerror to have test for url/line numbers.
        https://bugs.webkit.org/show_bug.cgi?id=62898

        * fast/workers/resources/worker-script-error-bubbled.js:
        (onerror): Added a check for the url and put the last part in the message.
        * fast/workers/worker-script-error-expected.txt: Update to have the new result.
        * fast/workers/worker-script-error.html: Actually print the message from the worker.

2011-06-20  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r79060): Searching for a flight at united.com fails
        https://bugs.webkit.org/show_bug.cgi?id=63003

        Roll out tests that were added by the patch we're rolling out, and add
        a test for the united.com Date.

        * fast/js/date-parse-test-expected.txt:
        * fast/js/script-tests/date-parse-test.js:

2011-06-20  Alex Milowski  <alex@milowski.com>

        Reviewed by Darin Adler.

        New tests for scripting changes to DOM for msub, msup, msubsup.
        https://bugs.webkit.org/show_bug.cgi?id=62098

        * mathml/presentation/msub-base-changed.xhtml: Added.
        * mathml/presentation/msub-sub-changed.xhtml: Added.
        * mathml/presentation/msubsup-base-changed.xhtml: Added.
        * mathml/presentation/msubsup-sub-changed.xhtml: Added.
        * mathml/presentation/msubsup-sup-changed.xhtml: Added.
        * mathml/presentation/msup-base-changed.xhtml: Added.
        * mathml/presentation/msup-sup-changed.xhtml: Added.
        * platform/mac/mathml/presentation/msub-base-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msub-base-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msub-sub-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msub-sub-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msubsup-base-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msubsup-base-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msubsup-sub-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msubsup-sub-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msubsup-sup-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msubsup-sup-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msup-base-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msup-base-changed-expected.txt: Added.
        * platform/mac/mathml/presentation/msup-sup-changed-expected.png: Added.
        * platform/mac/mathml/presentation/msup-sup-changed-expected.txt: Added.

2011-06-20  Chang Shu  <cshu@webkit.org>

        Reviewed by Adam Barth.

        fast/js/sputnik/Conformance/10_Execution_Contexts/10.2_Entering_An_Execution_Context/10.2.2_Eval_Code tests fail when showModalDialog isn't supported
        https://bugs.webkit.org/show_bug.cgi?id=53676

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-06-20  Alex Milowski  <alex@milowski.com>

        Reviewed by Darin Adler.

        New baselines for tests for the change to use anonymous blocks in the fix for:
        https://bugs.webkit.org/show_bug.cgi?id=57901

        * platform/mac/mathml/presentation/over-expected.png:
        * platform/mac/mathml/presentation/over-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.png:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/under-expected.png:
        * platform/mac/mathml/presentation/under-expected.txt:
        * platform/mac/mathml/presentation/underover-expected.png:
        * platform/mac/mathml/presentation/underover-expected.txt:

2011-06-20  Stephen White  <senorblanco@chromium.org>

        Unreviewed, test_expectations fix.

        Revert some unintentional changes from my last patch.

        * platform/chromium/test_expectations.txt:

2011-06-20  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        New baselines for tests affected by r62988.

        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image2-expected.png: Removed.
        * platform/chromium-linux/plugins/embed-attributes-style-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-text-08-b-expected.png:
        * platform/chromium-linux/svg/batik/text/textDecoration-expected.png:
        * platform/chromium-linux/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium-linux/svg/filters/sourceAlpha-expected.png:
        * platform/chromium-linux/svg/text/text-text-08-b-expected.png:
        * platform/chromium-linux/svg/wicd/test-scalable-background-image2-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-20  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        ASSERT in WebCore::HTMLToken::appendToAttributeName when visiting www.nba.com
        https://bugs.webkit.org/show_bug.cgi?id=61774

        * fast/parser/attributes-on-close-script-expected.txt: Added.
        * fast/parser/attributes-on-close-script.html: Added.

2011-06-20  Juan C. Montemayor  <jmont@apple.com>

        Reviewed by Oliver Hunt.

        No context for javascript parse errors.
        https://bugs.webkit.org/show_bug.cgi?id=62613
        
        Ran 'run-webkit-tests --reset' with 'fast/js/' and 'sputnik' to update
        those tests with the new parser error messages.
        
        The test 'fast/js/script-tests/parser-syntax-check.js' was fixed to 
        not fail with the new parser error messages.

        * fast/dom/SelectorAPI/unknown-pseudo-expected.txt:
        * fast/dom/javascript-url-exception-isolation-expected.txt:
        * fast/encoding/meta-in-script-expected.txt:
        * fast/events/window-onerror5-expected.txt:
        * fast/events/window-onerror6-expected.txt:
        * fast/js/assign-expected.txt:
        * fast/js/basic-strict-mode-expected.txt:
        * fast/js/break-ASI-expected.txt:
        * fast/js/function-declaration-expected.txt:
        * fast/js/function-toString-object-literals-expected.txt:
        * fast/js/function-toString-parentheses-expected.txt:
        * fast/js/js-continue-break-restrictions-expected.txt:
        * fast/js/kde/garbage-n-expected.txt:
        * fast/js/kde/parse-expected.txt:
        * fast/js/kde/string-1-n-expected.txt:
        * fast/js/kde/string-2-n-expected.txt:
        * fast/js/mozilla/strict/12.14.1-expected.txt:
        * fast/js/mozilla/strict/13.1-expected.txt:
        * fast/js/mozilla/strict/regress-532254-expected.txt:
        * fast/js/no-semi-insertion-at-end-of-script-expected.txt:
        * fast/js/numeric-escapes-in-string-literals-expected.txt:
        * fast/js/object-extra-comma-expected.txt:
        * fast/js/object-literal-syntax-expected.txt:
        * fast/js/parser-xml-close-comment-expected.txt:
        * fast/js/postfix-syntax-expected.txt:
        * fast/js/regexp-compile-crash-expected.txt:
        * fast/js/removing-Cf-characters-expected.txt:
        * fast/js/reserved-words-as-property-expected.txt:
        * fast/js/script-tests/parser-syntax-check.js:
        (runTest):
        * fast/parser/entity-end-script-tag-expected.txt:
        * fast/regex/non-pattern-characters-expected.txt:
        * html5lib/runner-expected.txt:
        * http/tests/websocket/tests/bad-sub-protocol-control-chars-expected.txt:
        * http/tests/workers/shared-worker-importScripts-expected.txt:
        * http/tests/workers/worker-importScripts-expected.txt:
        * inspector/console/console-log-syntax-error-expected.txt:
        * inspector/debugger/debugger-autocontinue-on-syntax-error-expected.txt:
        * java/lc3/JavaObject/JavaObjectToBoolean-001-n-expected.txt:
        * loader/reload-subresource-when-type-changes-expected.txt:
        * platform/mac/fast/tokenizer/002-expected.txt:
        * platform/mac/fast/tokenizer/external-script-document-write_2-expected.txt:
        * platform/mac/fast/tokenizer/script_extra_close-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.2_White_Space/S7.2_A5_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A2.4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.1_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.3_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A3.4_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.3_Line_Terminators/S7.3_A6_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A4_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A4_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.10-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.11-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.12-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.13-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.14-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.15-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.16-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.17-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.19-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.20-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.21-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.22-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.23-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.24-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.25-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.2_Keywords/S7.5.2_A1.9-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.10-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.11-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.16-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.27-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.9-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T10-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.7_Punctuators/S7.7_A2_T9-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A1.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.1_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A3.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.1_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.2_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.2_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.3_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.3_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.5_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A1.5_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.3_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.3_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.5_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A2.5_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A3.1_T7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A3.1_T8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.5_Regular_Expression_Literals/S7.8.5_A3.1_T9-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/7.9.2_Examples/S7.9.2_A1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/7.9.2_Examples/S7.9.2_A1_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/7.9.2_Examples/S7.9.2_A1_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A10_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A10_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A10_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A10_T8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A11_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A11_T8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A5.1_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A5.3_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T10-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T8-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.2_T9-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T3-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T4-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T5-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.3_T7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.4_T1-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A6.4_T2-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A9_T6-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A9_T7-expected.txt:
        * sputnik/Conformance/07_Lexical_Conventions/7.9_Automatic_Semicolon_Insertion/S7.9_A9_T8-expected.txt:
        * sputnik/Conformance/08_Types/8.2_The_Null_Type/S8.2_A2-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A13_T1-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A13_T2-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A13_T3-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A14_T1-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A14_T2-expected.txt:
        * sputnik/Conformance/08_Types/8.4_The_String_Type/S8.4_A14_T3-expected.txt:
        * sputnik/Conformance/11_Expressions/11.2_Left_Hand_Side_Expressions/11.2.4_Argument_Lists/S11.2.4_A1.3_T1-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.1_Postfix_Increment_Operator/S11.3.1_A1.1_T1-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.1_Postfix_Increment_Operator/S11.3.1_A1.1_T2-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.1_Postfix_Increment_Operator/S11.3.1_A1.1_T3-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.1_Postfix_Increment_Operator/S11.3.1_A1.1_T4-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.2_Postfix_Decrement_Operator/S11.3.2_A1.1_T1-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.2_Postfix_Decrement_Operator/S11.3.2_A1.1_T2-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.2_Postfix_Decrement_Operator/S11.3.2_A1.1_T3-expected.txt:
        * sputnik/Conformance/11_Expressions/11.3_PostfixExpressions/11.3.2_Postfix_Decrement_Operator/S11.3.2_A1.1_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A2_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A3_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A3_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A3_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A3_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.11_The_switch_Statement/S12.11_A3_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T10-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T11-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T12-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T13-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T14-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T15-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T6-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T7-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T8-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T9-expected.txt:
        * sputnik/Conformance/12_Statement/12.1_Block/S12.1_A4_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.1_Block/S12.1_A4_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T6-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T7-expected.txt:
        * sputnik/Conformance/12_Statement/12.2_Variable_Statement/S12.2_A8_T8-expected.txt:
        * sputnik/Conformance/12_Statement/12.4_Expression_Statement/S12.4_A1-expected.txt:
        * sputnik/Conformance/12_Statement/12.5_The_if_Statement/S12.5_A11-expected.txt:
        * sputnik/Conformance/12_Statement/12.5_The_if_Statement/S12.5_A6_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.5_The_if_Statement/S12.5_A6_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.5_The_if_Statement/S12.5_A8-expected.txt:
        * sputnik/Conformance/12_Statement/12.5_The_if_Statement/S12.5_A9_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A12-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A13_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A15-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.1_The_do_while_Statement/S12.6.1_A6_T6-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A13_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A15-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.2_The_while_statement/S12.6.2_A6_T6-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A11.1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A11_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A12.1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A12_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A4.1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A4_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A4_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A7.1_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A7.1_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A7_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A7_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8.1_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8.1_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8.1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.3_The_for_Statement/S12.6.3_A8_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.4_The_for_in_Statement/S12.6.4_A13_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.6_Iteration_Statements/12.6.4_The_for_in_Statement/S12.6.4_A15-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A1_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A1_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A1_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A5_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A5_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A5_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A6-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A8_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.7_The_continue_Statement/S12.7_A8_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A1_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A1_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A1_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A5_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A5_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A5_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A6-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A8_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.8_The_break_Statement/S12.8_A8_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T1-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T10-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T2-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T3-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T4-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T6-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T7-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T8-expected.txt:
        * sputnik/Conformance/12_Statement/12.9_The_return_Statement/S12.9_A1_T9-expected.txt:
        * sputnik/Conformance/13_Function_Definition/S13_A7_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.1_eval/S15.1.2.1_A2_T2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.2_Function.prototype.toString/S15.3.4.2_A1_T1-expected.txt:

2011-06-20  Mike Reed  <reed@google.com>

        Reviewed by Stephen White.

        disable test in preparation for chromium change and new baseline
        https://bugs.webkit.org/show_bug.cgi?id=62984

        * platform/chromium/test_expectations.txt:

2011-06-20  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: It would be useful to be able to pause on element's style change.
        https://bugs.webkit.org/show_bug.cgi?id=62982

        Current workaround is to use mutation events but it's awkward and doesn't
        compare _usability-wise_ to what could be implemented as native support in web inspector.
        In complex applications, being able to see which code causes element to change its style is indispensable.

        * inspector/debugger/dom-breakpoints.html:
        * platform/chromium/inspector/debugger/dom-breakpoints-expected.txt:

2011-06-20  Chang Shu  <cshu@webkit.org>

        unreviewed.

        Unskip passing tests. The bug(42317) has been resolved for a long time.

        * platform/qt-wk2/Skipped:

2011-06-20  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Daily gardening.

        * platform/mac-wk2/Skipped: Skip some tests bacause of missing animation pause API
          and skip one test because of missing window.internals.createShadowContentElement.
        * platform/qt-wk2/Skipped: Skip one failing SVG test after r89233.
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Updated after r89233.
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt: Updated after r89233.
        * platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt: Updated after r89233.

2011-06-20  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add more Chromium expectations for tests which started to fail since r89233.

        * platform/chromium/test_expectations.txt:

2011-06-20  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, fix an error in the last edit of Chromium test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-06-20  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add new Chromium test expectations since r89233.

        * platform/chromium/test_expectations.txt:

2011-06-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-06-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed, update Qt specific expected results after r89233, and skip failing tests until fix.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths
        from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        * platform/qt/Skipped:
        * platform/qt/fast/dom/Window/window-properties-expected.png: Added.
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.png: Added.
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-2-expected.png: Added.
        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.png: Added.
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.png: Added.
        * platform/qt/fast/js/global-constructors-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-06-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-07-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-08-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
        * platform/qt/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt:
        * platform/qt/svg/custom/glyph-transformation-with-hkern-expected.png: Added.
        * platform/qt/svg/custom/glyph-transformation-with-hkern-expected.txt: Added.
        * platform/qt/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/qt/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/qt/svg/custom/svg-features-expected.png: Added.
        * platform/qt/svg/custom/svg-features-expected.txt: Added.
        * platform/qt/svg/custom/svg-fonts-in-html-expected.png:
        * platform/qt/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/qt/svg/wicd/test-rightsizing-b-expected.png:
        * platform/qt/svg/wicd/test-rightsizing-b-expected.txt:

2011-06-20  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
        https://bugs.webkit.org/show_bug.cgi?id=59085

        font substitution doesn't work for HTML text using SVG fonts
        https://bugs.webkit.org/show_bug.cgi?id=17608

        Selection rects are wrong for text with SVG fonts
        https://bugs.webkit.org/show_bug.cgi?id=25460

        With @font-face, SVG fonts only work as primary, non-segmented
        https://bugs.webkit.org/show_bug.cgi?id=32227

        When using SVG fonts with @font-face word-spacing and text-align: justify are not being honored
        https://bugs.webkit.org/show_bug.cgi?id=34236

        SVG @font-face breaks text-overflow: ellipsis
        https://bugs.webkit.org/show_bug.cgi?id=36840

        REGRESSION: SVG Font selection problems
        https://bugs.webkit.org/show_bug.cgi?id=41934

        Rewrite the SVG Fonts support to fully integrate within the GlyphPage concept and the "simple" code path used to render platform fonts.
        That means the special logic for measuring text using SVG Fonts, calculating offset for positions, computing selection rects etc. is all gone now.
        There's no difference anymore between using a native font or a SVG Font, in terms of these operations.

        Update SVG pixel test baseline.

        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/batik/text/textEffect-expected.png:
        * platform/mac/svg/batik/text/textEffect-expected.txt:
        * platform/mac/svg/batik/text/textEffect3-expected.png:
        * platform/mac/svg/batik/text/textEffect3-expected.txt:
        * platform/mac/svg/batik/text/xmlSpace-expected.png:
        * platform/mac/svg/batik/text/xmlSpace-expected.txt:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.png:
        * platform/mac/svg/custom/glyph-selection-lang-attribute-expected.txt:
        * platform/mac/svg/custom/svg-fonts-fallback-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-fallback-expected.txt: Added.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-segmented-expected.txt: Added.
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.png:
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.png:
        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.png: Added.
        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt: Added.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/mac/svg/text/text-altglyph-01-b-expected.png:
        * platform/mac/svg/text/text-altglyph-01-b-expected.txt:
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.png: Added.
        * platform/mac/svg/text/text-overflow-ellipsis-svgfont-expected.txt: Added.
        * platform/mac/svg/text/text-text-04-t-expected.png:
        * platform/mac/svg/text/text-text-04-t-expected.txt:
        * platform/mac/svg/text/text-text-05-t-expected.png:
        * platform/mac/svg/text/text-text-05-t-expected.txt:
        * platform/mac/svg/text/text-text-06-t-expected.png:
        * platform/mac/svg/text/text-text-06-t-expected.txt:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.png:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.txt:
        * svg/custom/resources/ABCFont.svg:
        * svg/custom/svg-fonts-fallback.xhtml: Added.
        * svg/custom/svg-fonts-segmented.xhtml: Added.
        * svg/custom/svg-fonts-word-spacing.html: Added.
        * svg/text/select-text-svgfont-expected.txt: Added.
        * svg/text/select-text-svgfont.html: Added.
        * svg/text/text-overflow-ellipsis-svgfont.html: Added.

2011-06-19  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        The internals object should have createShadowContentElement()
        https://bugs.webkit.org/show_bug.cgi?id=62432

        * fast/dom/shadow/create-content-element-expected.txt: Added.
        * fast/dom/shadow/create-content-element.html: Added.

2011-06-19  Keishi Hattori  <keishi@webkit.org>

        Reviewed by Kent Tamura.

        Clicking indeterminate checkbox should flip checkedness state
        https://bugs.webkit.org/show_bug.cgi?id=62262

        * fast/forms/checkbox-click-indeterminate-expected.txt: Added.
        * fast/forms/checkbox-click-indeterminate.html: Added. Tests behavior when clicking indeterminate checkbox.

2011-06-19  Oliver Hunt  <oliver@apple.com>

        Reviewed by Sam Weinig.

        Correct logic for putting errors on the correct line when handling JSONP
        https://bugs.webkit.org/show_bug.cgi?id=62962

        Add test case this time

        * fast/js/parser-syntax-check-expected.txt:
        * fast/js/script-tests/parser-syntax-check.js:

2011-06-19  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        Reviewed by Martin Robinson.

        [GTK] Enable Media Stream feature and make it default on
        https://bugs.webkit.org/show_bug.cgi?id=60394

        Unskipped the Media Stream tests.

        * platform/gtk/Skipped:

2011-06-19  Dirk Schulze  <krit@webkit.org>

        Uneviewed.

        SVGAnimatorFactory does not support SVGNumber
        https://bugs.webkit.org/show_bug.cgi?id=62938
        
        Add animation tests of previous patch to skip list for webkit2.

        * platform/mac-wk2/Skipped:

2011-06-19  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatorFactory does not support SVGNumber
        https://bugs.webkit.org/show_bug.cgi?id=62938
        
        Added new tests to check behavior on SVGNumber animation.

        * svg/animations/script-tests/svgnumber-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumber-animation-2.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgnumber-animation-3.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgnumber-animation-1-expected.txt: Added.
        * svg/animations/svgnumber-animation-1.html: Added.
        * svg/animations/svgnumber-animation-2-expected.txt: Added.
        * svg/animations/svgnumber-animation-2.html: Added.
        * svg/animations/svgnumber-animation-3-expected.txt: Added.
        * svg/animations/svgnumber-animation-3.html: Added.

2011-06-19  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Marking several tests as crashing on Mac GPU.

        * platform/chromium/test_expectations.txt:

2011-06-19  Robert Hogan  <robert@webkit.org>

        Reviewed by Alexey Proskuryakov.

        [Qt] Qt Counterpart for http://trac.webkit.org/changeset/42078
        https://bugs.webkit.org/show_bug.cgi?id=62514

        * platform/qt/Skipped: Unskip http/tests/xmlhttprequest/redirect-cross-origin-tripmine.html

2011-06-18  Yufeng Shen  <miletus@chromium.org>

        Reviewed by Darin Fisher.

        Adding "force" filed to Touch Event
        https://bugs.webkit.org/show_bug.cgi?id=62766

        * fast/events/touch/document-create-touch-expected.txt:
        * fast/events/touch/script-tests/document-create-touch.js:

2011-06-18  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Chris Fleizach.

        Accessibility description for an element should make use of aria-labelledby.
        https://bugs.webkit.org/show_bug.cgi?id=61995

        * accessibility/aria-labelledby-on-input.html:
        * accessibility/aria-labelledby-overrides-aria-label-expected.txt: Added.
        * accessibility/aria-labelledby-overrides-aria-label.html: Added.
        * accessibility/aria-labelledby-overrides-label-expected.txt:
        * accessibility/aria-labelledby-overrides-label.html:
        * accessibility/aria-labelledby-stay-within.html:
        * platform/mac/accessibility/aria-labelledby-on-input-expected.txt:

2011-06-18  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        Reviewed by Tony Gentilcore.

        Media Stream no-interface-object test should not have ReferenceError message in expected results
        https://bugs.webkit.org/show_bug.cgi?id=60391

        Fixed no-interface-object test to not include ReferenceError message in expected results

        * fast/dom/MediaStream/no-interface-object-expected.txt:
        * fast/dom/MediaStream/script-tests/no-interface-object.js:
        (shouldThrowReferenceError):
        (test):

2011-06-18  Jeremy Moskovich  <jeremy@chromium.org>

        Reviewed by Eric Seidel.

        Set text-align:-webkit-match-parent for li elements in the default style sheet.
        https://bugs.webkit.org/show_bug.cgi?id=57232

        * fast/css/list-item-text-align-expected.txt: Added.
        * fast/css/list-item-text-align.html: Added.

2011-06-18  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-06-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89154.
        http://trac.webkit.org/changeset/89154
        https://bugs.webkit.org/show_bug.cgi?id=62926

        It broke debug build on Qt (Requested by Ossy_weekend on
        #webkit).

        * platform/qt/Skipped:

2011-06-17  Dirk Schulze  <krit@webkit.org>

        Reviewed by Rob Buis.

        SVGAnimation should use direct unit animation for SVGAngle
        https://bugs.webkit.org/show_bug.cgi?id=62807

        Tests animation of SVGAngle with different units.

        * svg/animations/script-tests/svgangle-animation-deg-to-grad.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-deg-to-rad.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-grad-to-deg.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-grad-to-rad.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-rad-to-deg.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svgangle-animation-rad-to-grad.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svgangle-animation-deg-to-grad-expected.txt: Added.
        * svg/animations/svgangle-animation-deg-to-grad.html: Added.
        * svg/animations/svgangle-animation-deg-to-rad-expected.txt: Added.
        * svg/animations/svgangle-animation-deg-to-rad.html: Added.
        * svg/animations/svgangle-animation-grad-to-deg-expected.txt: Added.
        * svg/animations/svgangle-animation-grad-to-deg.html: Added.
        * svg/animations/svgangle-animation-grad-to-rad-expected.txt: Added.
        * svg/animations/svgangle-animation-grad-to-rad.html: Added.
        * svg/animations/svgangle-animation-rad-to-deg-expected.txt: Added.
        * svg/animations/svgangle-animation-rad-to-deg.html: Added.
        * svg/animations/svgangle-animation-rad-to-grad-expected.txt: Added.
        * svg/animations/svgangle-animation-rad-to-grad.html: Added.

2011-06-17  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Assertion failure in SVGTextLayoutEngine constructor (!m_layoutAttributes.isEmpty())
        https://bugs.webkit.org/show_bug.cgi?id=62884

        * svg/custom/assert-empty-layout-attributes-expected.txt: Added.
        * svg/custom/assert-empty-layout-attributes.svg: Added.

2011-06-17  David Grogan  <dgrogan@chromium.org>

        Reviewed by Eric Seidel.

        layout test for misalignment caused by float->int rounding error
        https://bugs.webkit.org/show_bug.cgi?id=61906

        Just the layout test demonstrating the problem.  It will be a while
        until I have cycles to play around with the fix started in
        https://bugs.webkit.org/show_bug.cgi?id=22759.  And it'd be nice to
        know if this were fixed for free via the ongoing systemic int->float
        refactoring.

        * css1/units/rounding-expected.txt: Added.
        * css1/units/rounding.html: Added.

2011-06-17  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Some new chromium test expectations and updates.

        * platform/chromium-mac-leopard/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-17  Gavin Barraclough  <barraclough@apple.com>

        Rubber Stamped by Sam Weinig.

        Land a couple more regex tests.

        * fast/regex/pcre-test-1-expected.txt:
        * fast/regex/script-tests/pcre-test-1.js:

2011-06-17  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash when unable to remove floats from
        parent's next siblings blocks.
        https://bugs.webkit.org/show_bug.cgi?id=62875

        * fast/block/float/float-not-removed-from-next-sibling5-expected.txt: Added.
        * fast/block/float/float-not-removed-from-next-sibling5.html: Added.

2011-06-17  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Network panel does not show main resource content for iframes deleted from the document
        https://bugs.webkit.org/show_bug.cgi?id=62810

        * http/tests/inspector/network/network-iframe-load-and-delete-expected.txt: Added.
        * http/tests/inspector/network/network-iframe-load-and-delete.html: Added.

2011-06-17  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-17  Ryosuke Niwa  <rniwa@webkit.org>

        Add image failing expectations for Leopard after r89091.
        I'm giving up on these tests; no matter what I do, they fail.

        * platform/chromium/test_expectations.txt:

2011-06-17  Chris Evans  <cevans@chromium.org>

        Reviewed by Adam Barth.

        Detect mixed-scripting involving https -> http redirects
        https://bugs.webkit.org/show_bug.cgi?id=62846

        * http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe-expected.txt: Update expectation.
        * http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html: Remove FIXME as the test is now working as expected.

2011-06-12  Robert Hogan  <robert@webkit.org>

        Reviewed by Alexey Proskuryakov.

        [Qt] Qt Counterpart for http://trac.webkit.org/changeset/42078
        https://bugs.webkit.org/show_bug.cgi?id=62514

        * platform/qt/Skipped: Unskip http/tests/xmlhttprequest/redirect-cross-origin-tripmine.html

2011-06-17  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac rebaselines for r89091.

        * platform/chromium-mac-leopard/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png: Added.
        * platform/chromium-mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-actual.png: Added.
        * platform/chromium-mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-actual.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-17  Chang Shu  <cshu@webkit.org>

        Reviewed by Anders Carlsson.

        [Qt] [WK2] Debug info leaks to stdout from plugins in Qt WebKit2 layout tests
        https://bugs.webkit.org/show_bug.cgi?id=61940

        Unskip passed tests.

        * platform/qt-wk2/Skipped:

2011-06-17  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Layout tests editing/inserting/return-key-in-hidden-field.html and return-key-span-start.html don't run in webkit2
        https://bugs.webkit.org/show_bug.cgi?id=62734

        Modify tests to use execCommand(insertParagraph) instead of eventSender to inject a new line.

        * editing/inserting/return-key-in-hidden-field-expected.txt:
        * editing/inserting/return-key-in-hidden-field.html:
        * editing/inserting/return-key-span-start.html:
        * platform/mac-wk2/Skipped:

2011-06-17  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        div can be a child of span on InsertParagraph
        https://bugs.webkit.org/show_bug.cgi?id=62687

        Update layout test results with new code to prevent div inside of span.

        * editing/inserting/return-key-span-start-expected.txt: The new result is the correct behavior.
        * editing/inserting/return-with-object-element-expected.txt: An extra space has been added before the newline.

2011-06-17  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test expectation for fast/dom/HTMLMeterElement/meter-writing-mode.html.

        * platform/chromium/test_expectations.txt:

2011-06-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] fast/frames/flattening tests fail intermittently
        https://bugs.webkit.org/show_bug.cgi?id=62785

        * platform/qt-wk2/Skipped: Add one more flakey test - fast/frames/flattening/frameset-flattening-grid.html

2011-06-17  Csaba Osztrogonác  <ossy@webkit.org>

        new test introduced in r89118, but fail on Qt
        https://bugs.webkit.org/show_bug.cgi?id=62847

        * platform/qt/Skipped: Skip fast/parser/xhtml-innerhtml-null-byte.xhtml.

2011-06-17  Kent Tamura  <tkent@chromium.org>

        [Mac] Correct svn:mime-type to image/png.

        * platform/mac/compositing/framesets/composited-frame-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/geometry/horizontal-scroll-composited-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/geometry/layer-due-to-layer-children-deep-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/geometry/layer-due-to-layer-children-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/geometry/vertical-scroll-composited-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/iframes/composited-iframe-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/iframes/iframe-in-composited-layer-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/images/content-image-change-expected.png: Added property svn:mime-type.
        * platform/mac/compositing/objects/composited-object-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/repaint/layer-repaint-expected.png: Modified property svn:mime-type.
        * platform/mac/compositing/webgl/webgl-no-alpha-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/class_as_selector-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/comments-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/containment-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/contextual_selectors-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/grouping-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/id_as_selector-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/basic/inheritance-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_bottom_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_bottom_width-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_bottom_width_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_color-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_color_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_left-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_left_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_left_width-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_left_width_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_right-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_right_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_right_width-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_right_width_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_style-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_style_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_top-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_top_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_top_width-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_top_width_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_width-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/border_width_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/clear-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/clear_float-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/float-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/float_elements_in_series-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/float_on_text_elements-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/height-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_bottom_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_left-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_left_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_right-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_right_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_top-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/margin_top_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_bottom_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_left-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_left_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_right-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_right_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_top-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/box_properties/padding_top_inline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/cascade/cascade_order-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/cascade/important-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/display-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/list_style-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/list_style_image-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/list_style_position-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/list_style_type-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/classification/white_space-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background_attachment-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background_color-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background_image-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background_position-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/background_repeat-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/color_and_background/color-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/font_properties/font-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/font_properties/font_size-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/font_properties/font_style-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/font_properties/font_weight-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/canvas-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/floating_elements-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/height_of_lines-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/horizontal_formatting-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/inline_elements-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/replaced_elements-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/formatting_model/vertical_formatting-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/pseudo/anchor-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/pseudo/firstletter-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/pseudo/firstline-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/pseudo/multiple_pseudo_elements-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/pseudo/pseudo_elements_in_selectors-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/letter_spacing-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/line_height-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/text_align-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/text_decoration-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/text_indent-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/vertical_align-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/text_properties/word_spacing-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/units/color_units-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/units/length_units-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/units/percentage_units-expected.png: Modified property svn:mime-type.
        * platform/mac/css1/units/urls-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-014-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-016-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-017-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-018-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-019-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-021-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-022-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-023-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-024-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-025-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-026-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-028-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-029-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-030-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-031-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-032-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-033-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-035-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-height-036-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-013-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-015-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-020-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-022-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-027-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-029-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-034-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-036-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-041-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-043-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-048-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-050-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-055-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-057-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-062-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-064-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-069-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-071-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/absolute-replaced-width-076-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-013-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-014-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-015-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-height-016-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-non-replaced-width-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/block-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-008-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-009-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-010-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-non-replaced-width-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/float-replaced-width-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-height-007-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-006-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-011-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-012-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-013-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-014-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/inline-replaced-width-015-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-elements-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-002-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-003-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-004-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-005-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/replaced-min-max-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/width-non-replaced-inline-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/20110323/width-replaced-element-001-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-c71-fwd-parsing-00-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-c71-fwd-parsing-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-c71-fwd-parsing-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-c71-fwd-parsing-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-c71-fwd-parsing-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-05-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0402-syntax-06-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0505-c16-descendant-00-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0505-c16-descendant-01-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0505-c16-descendant-02-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0509-c15-ids-00-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0509-c15-ids-01-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0509-id-sel-syntax-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0509-id-sel-syntax-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0510-c25-pseudo-elmnt-00-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0511-c21-pseud-anch-00-e-i-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0511-c21-pseud-link-00-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0511-c21-pseud-link-01-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0511-c21-pseud-link-02-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0511-c21-pseud-link-03-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0602-c13-inh-underlin-00-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0602-c13-inheritance-00-e-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0602-inherit-bdr-pad-b-00-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0603-c11-import-00-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0801-c412-hz-box-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-01-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-02-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-03-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-04-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-05-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-imrgn-r-06-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-mrgn-r-01-c-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-mrgn-r-02-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5502-mrgn-r-03-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-01-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-03-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-04-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-05-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-imrgn-l-06-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-mrgn-l-01-c-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-mrgn-l-02-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5504-mrgn-l-03-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5505-imrgn-00-a-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5505-mrgn-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5505-mrgn-01-e-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5505-mrgn-02-c-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0803-c5505-mrgn-03-c-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5506-ipadn-t-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5506-ipadn-t-01-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5506-ipadn-t-02-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5506-padn-t-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-ipadn-r-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-ipadn-r-01-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-ipadn-r-02-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-ipadn-r-03-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-ipadn-r-04-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-padn-r-00-c-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-padn-r-01-c-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-padn-r-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5507-padn-r-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5508-ipadn-b-00-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5508-ipadn-b-01-f-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5508-ipadn-b-02-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-ipadn-l-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-ipadn-l-01-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-ipadn-l-03-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-ipadn-l-04-f-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-padn-l-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-padn-l-01-b-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-padn-l-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5509-padn-l-03-f-g-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5510-ipadn-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5510-padn-01-e-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0804-c5510-padn-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5511-brdr-tw-00-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5511-brdr-tw-01-b-g-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5511-brdr-tw-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5511-brdr-tw-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5511-ibrdr-tw-00-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5512-brdr-rw-00-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5512-brdr-rw-01-b-g-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5512-brdr-rw-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5512-brdr-rw-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t0805-c5512-ibrdr-rw-00-a-expected.png: Modified property svn:mime-type.
        * platform/mac/css2.1/t09-c5526c-display-00-e-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/4922367-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5026848-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5099303-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5126166-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5144139-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5206311-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5272440-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5369009-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5390681-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5433862-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/5483370-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-br-013-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-first-list-item-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-line-015-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-line-016-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-line-017-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/delete-ws-fixup-002-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/merge-endOfParagraph-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/merge-into-empty-block-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/merge-no-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/merge-whitespace-pre-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/pruning-after-merge-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/smart-delete-003-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/smart-delete-004-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/table-cells-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/deleting/type-delete-after-quote-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4580583-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4580583-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4641880-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4641880-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4747450-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4916402-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4916541-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/4924441-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5080333-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5080333-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5136770-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5138441-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5190926-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5481523-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/5482023-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/create-list-with-hr-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/find-after-replace-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/findString-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/insertHorizontalRule-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/insertImage-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/execCommand/remove-list-from-range-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/12882-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/4278698-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/4840662-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/4875189-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5002441-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5058163-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5058163-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5156401-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5418891-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5510537-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/5549929-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/6703873-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/break-blockquote-after-delete-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/editable-html-element-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/edited-whitespace-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/editing-empty-divs-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-3786362-fix-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-at-end-01-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-at-end-02-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-009-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-001-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-002-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-003-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-004-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-005-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-br-quoted-006-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-paragraph-01-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-paragraph-02-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-paragraph-03-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-paragraph-04-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/insert-paragraph-05-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/line-break-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/multiple-lines-selected-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/paragraph-separator-03-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/paragraph-separator-in-table-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/inserting/typing-around-br-001-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/3976872-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4076267-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4242293-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4631972-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4641033-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4944770-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4944770-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4947130-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/4989774-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5032095-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5071074-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5071074-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5247341-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5368833-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5387578-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5478250-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/5601583-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/8145-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/8145-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/bad-placeholder-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/copy-standalone-image-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/displaced-generic-placeholder-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/drop-text-without-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-after-delete-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-after-delete-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-end-blockquote-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-end-borders-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-end-list-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-end-table-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/merge-start-blockquote-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-RTFD-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-blockquote-after-blockquote-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-4-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-table-003-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-text-013-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-text-014-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/paste-text-016-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/pasting-object-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/pasting-tabs-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/prevent-block-nesting-01-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/quirks-mode-br-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/smart-drag-drop-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/smart-paste-008-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/styled-element-markup-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/subframe-dragndrop-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/testcase-9507-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/undoable-fragment-removes-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/pasteboard/unrendered-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/13804-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/14971-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/25228-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4402375-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4818145-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4889598-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4895428-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4895428-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4932260-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4947387-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4960116-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4975120-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/4983858-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5007143-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5007143-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5057506-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5057506-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5076323-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5081257-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5099303-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5131716-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5131716-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5131716-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5131716-4-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5195166-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5232159-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5234383-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5234383-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5240265-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/5354455-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/6476-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/7152-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/7152-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/addRange-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/after-line-wrap-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-and-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-ltr-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-ltr-2-left-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-ltr-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-ltr-right-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-rtl-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-rtl-2-left-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-rtl-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/caret-rtl-right-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/clear-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/click-start-of-line-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/contenteditable-click-inside-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/designmode-no-caret-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/drag-in-iframe-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/editable-html-element-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/editable-non-editable-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/end-of-document-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/expanding-selections-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/expanding-selections2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/focus_editable_html-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/iframe-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/inline-closest-leaf-child-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/inline-table-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/leave-requested-block-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-4-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-5-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-6-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-7-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-8-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/mixed-editability-9-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/move-by-sentence-linebreak-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/node-removal-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/node-removal-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/paragraph-granularity-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/previous-line-position-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/replace-selection-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/replaced-boundaries-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/replaced-boundaries-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/replaced-boundaries-3-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.png: Added property svn:mime-type.
        * platform/mac/editing/selection/select-across-readonly-input-2-expected.png: Added property svn:mime-type.
        * platform/mac/editing/selection/select-across-readonly-input-3-expected.png: Added property svn:mime-type.
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.png: Added property svn:mime-type.
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.png: Added property svn:mime-type.
        * platform/mac/editing/selection/select-all-005-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-all-006-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-all-iframe-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-box-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-element-paragraph-boundary-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-from-textfield-outwards-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/select-text-overflow-ellipsis-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/selection-actions-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/selection-background-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/triple-click-in-pre-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/unrendered-space-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/word-granularity-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/wrapped-line-caret-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/selection/wrapped-line-caret-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.png: Added property svn:mime-type.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.png: Added property svn:mime-type.
        * platform/mac/editing/spelling/delete-autocorrected-word-2-expected.png: Added property svn:mime-type.
        * platform/mac/editing/spelling/inline_spelling_markers-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5017613-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5017613-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5046875-1-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5046875-2-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5065910-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/5084241-expected.png: Modified property svn:mime-type.
        * platform/mac/editing/style/apple-style-editable-mix-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/background-position-parsing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/positioned-root-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/quirks-mode-line-box-backgrounds-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/size/backgroundSize20-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/size/backgroundSize21-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/size/backgroundSize22-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/backgrounds/table-root-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/basic/quirk-percent-height-grandchild-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/avoidance-percent-width-compat-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/avoidance-percent-width-strict-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/clamped-right-float-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/float-overflow-hidden-containing-block-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/float-overhangs-root-expected.png: Added property svn:mime-type.
        * platform/mac/fast/block/float/floatstack-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/in-margin-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/nested-clearance-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/overhanging-tall-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/float/overlapping-floats-with-overflow-hidden-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/block-font-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/block-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/font-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/font-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/glyphs-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/inline-box-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/inline-box-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/inline-box-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/inline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/inline-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/none-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/parsing-invalid-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/lineboxcontain/replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/010-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/011-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/012-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/015-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/016-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/017-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/018-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/019-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/020-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/021-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/022-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/margin-collapse/block-inside-inline/025-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/absolute-positioning-no-scrollbar-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/complex-positioned-movement-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/differing-writing-modes-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/differing-writing-modes-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/move-with-auto-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/negative-rel-position-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/replaced-inside-fixed-top-bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/rtl-static-positioning-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/rtl-static-positioning-inline-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/table-cell-static-position-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-lr/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/block/positioning/vertical-rl/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/background-horizontal-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/background-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/background-vertical-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/basic-vertical-line-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/block-level-images-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/body-direction-propagation-blocked-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/body-direction-propagation-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/body-writing-mode-propagation-blocked-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/body-writing-mode-propagation-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/border-image-horizontal-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/border-image-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/border-image-vertical-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/border-radius-clipping-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/border-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/box-shadow-horizontal-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/box-shadow-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/box-shadow-vertical-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/broken-ideograph-small-caps-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/broken-ideographic-font-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/english-bt-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/english-lr-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/english-rl-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/fallback-orientation-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/fieldsets-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/floats-in-block-layout-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/horizontal-bt-replaced-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/inline-direction-positioning-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-lr-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-lr-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-rl-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-rl-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-ruby-horizontal-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-ruby-vertical-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/japanese-ruby-vertical-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/margin-collapse-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/root-lr-basic-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/self-collapsing-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/text-orientation-basic-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/vertical-align-table-baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/vertical-baseline-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/vertical-font-fallback-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/vertical-lr-replaced-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/blockflow/vertical-rl-replaced-selection-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/001-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/002-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/003-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/003-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/004-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/004-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/005-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/005-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/006-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/006-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/007-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/007-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/007-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/008-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-color/008-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/001-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/002-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/003-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/003-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/004-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/004-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/005-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/005-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/006-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/006-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/007-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/007-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/007-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/008-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/008-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/009-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/009-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/010-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/background-image/010-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/001-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/002-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/003-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/003-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/004-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/004-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/004-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/005-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/005-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/005-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/006-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/006-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/006-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/007-declarative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/007-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/body-propagation/overflow/007-xhtml-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/bidi-002-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/bidi-009a-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/bidi-012-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-image-border-radius-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-circle-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-constraints-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-groove-01-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-groove-02-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-groove-03-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-inline-flow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-split-inline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-wide-border-01-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-wide-border-02-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDashed04-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDashed05-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDashed06-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDotted04-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDotted05-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDotted06-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble04-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble05-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble06-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble07-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble08-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/borderRadiusDouble09-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/different-color-borders-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/borders/outline-alpha-block-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/outline-alpha-inline-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/rtl-border-01-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/rtl-border-02-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/rtl-border-03-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/rtl-border-04-expected.png: Added property svn:mime-type.
        * platform/mac/fast/borders/rtl-border-05-expected.png: Added property svn:mime-type.
        * platform/mac/fast/box-shadow/inset-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/box-shadow/spread-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/box-shadow/transform-fringing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/canvas/canvas-text-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/canvas/canvas-text-baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/clip/overflow-border-radius-clip-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/after-duplicated-after-split-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/table-before-after-child-add-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/table-cell-before-after-child-add-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/table-row-before-after-child-add-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/table-row-before-after-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css-generated-content/table-table-before-after-child-add-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/attribute-selector-empty-value-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/begin-end-contain-selector-empty-value-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/border-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/border-radius-non-negative-expected.png: Added property svn:mime-type.
        * platform/mac/fast/css/color-correction-backgrounds-and-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-on-background-image-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-on-backgrounds-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-on-box-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-on-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-on-text-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/color-correction-untagged-images-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/css3-space-in-nth-and-lang-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/disabled-author-styles-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/focus-ring-detached-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/focus-ring-multiline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/focus-ring-outline-color-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/focus-ring-outline-offset-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/focus-ring-outline-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/font-face-in-shadow-DOM-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/font-face-woff-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/font-smoothing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/line-height-determined-by-primary-font-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/line-height-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/namespaces/namespaces-comments-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/namespaces/namespaces-empty-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/namespaces/namespaces-escapes-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/namespaces/namespaces-invalid-at-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/negative-leading-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/nested-floating-relative-position-percentages-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/nested-layers-with-hover-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/nested-rounded-corners-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/percent-top-relative-container-height-unspecified-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/percent-top-value-with-relative-position-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/positioned-overflow-scroll-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/pseudo-cache-stale-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/rem-dynamic-scaling-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/rem-units-on-root-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/rtl-to-viewport-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/css/text-rendering-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dom/34176-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dom/52776-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Added property svn:mime-type.
        * platform/mac/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dom/scroll-reveal-left-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dom/scroll-reveal-top-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dynamic/text-combine-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dynamic/window-resize-scrollbars-test-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/dynamic/window-scrollbars-test-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/events/context-no-deselect-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/events/pointer-events-dashboard-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/fast-mobile-scrolling/fixed-position-element-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/fast-mobile-scrolling/no-fixed-position-elements-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/caret-rtl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/color/input-appearance-color-expected.png: Added property svn:mime-type.
        * platform/mac/fast/forms/form-added-to-table-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/form-in-malformed-markup-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/image-border-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/input-field-text-truncated-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/input-placeholder-visibility-1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/input-placeholder-visibility-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/input-placeholder-visibility-3-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/input-type-text-min-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/isindex-placeholder-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/listbox-bidi-align-expected.png: Added property svn:mime-type.
        * platform/mac/fast/forms/menulist-style-color-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/password-placeholder-text-security-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/search-placeholder-value-changed-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/search-vertical-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/textarea-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/forms/textfield-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/content-opacity-1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/content-opacity-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/frameset-flattening-advanced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/frameset-flattening-grid-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/frameset-flattening-simple-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/frameset-flattening-subframe-resize-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/frameset-flattening-subframesets-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-fixed-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-fixed-width-and-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-fixed-width-and-height-no-scrolling-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-fixed-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-nested-expected.png: Added property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-offscreen-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.png: Added property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-expected.png: Added property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.png: Added property svn:mime-type.
        * platform/mac/fast/frames/flattening/iframe-flattening-simple-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/frame-length-fractional-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/frameset-style-recalc-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/frames/take-focus-from-iframe-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/gradients/background-clipped-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added property svn:mime-type.
        * platform/mac/fast/history/visited-link-background-color-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/html/link-rel-stylesheet-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/html/marquee-scrollamount-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/favicon-as-image-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/icon-decoding-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-circle-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-focus-ring-outline-color-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/images/imagemap-polygon-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/25277-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/25277-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/continuation-outlines-with-layers-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/inline-continuation-borders-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/inline-focus-ring-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/inline-wrap-with-parent-padding-expected.png: Added property svn:mime-type.
        * platform/mac/fast/inline/long-wrapped-line-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/nested-top-alignment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/positioned-object-between-replaced-elements-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/inline/vertical-align-text-bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/js/missing-title-end-tag-js-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/layers/inline-dirty-z-order-lists-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/layers/opacity-stacking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/layers/remove-only-this-layer-update-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/layers/self-painting-outline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/001-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/002-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/003-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/005-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/006-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/007-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/008-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/009-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/anonymous-items-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/lists/list-marker-with-line-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/media/media-query-invalid-value-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/border-padding-pagination-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/column-break-with-balancing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/column-count-with-rules-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/column-rules-stacking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/float-paginate-complex-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/float-paginate-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/layers-in-multicol-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/layers-split-across-columns-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/margin-collapse-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/max-height-columns-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/nested-columns-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/paginate-block-replaced-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/positioned-split-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/positioned-with-constrained-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/scrolling-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/shadow-breaking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/anonymous-before-child-parent-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/anonymous-split-block-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/anonymous-style-inheritance-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-removal-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added property svn:mime-type.
        * platform/mac/fast/multicol/span/span-margin-collapsing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/table-margin-collapse-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/table-vertical-align-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/unsplittable-inline-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/border-padding-pagination-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/column-break-with-balancing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/column-count-with-rules-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/column-rules-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/float-multicol-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/float-paginate-complex-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/float-paginate-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/nested-columns-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-lr/unsplittable-inline-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/border-padding-pagination-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/column-break-with-balancing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/column-count-with-rules-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/column-rules-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/float-multicol-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/float-paginate-complex-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/float-paginate-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/nested-columns-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/multicol/vertical-rl/unsplittable-inline-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/border-radius-clipping-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/float-in-relpositioned-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/line-clamp-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/overflow-float-stacking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/overflow-rtl-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/overflow-stacking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/overflow-with-local-background-attachment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/overflow_hidden-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/overflow/trailing-float-linebox-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/reflections/reflection-masks-opacity-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/reflections/transparent-reflected-sublayers-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/background-generated-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/background-misaligned-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/block-selection-gap-in-table-cell-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/block-selection-gap-stale-cache-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/block-selection-gap-stale-cache-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/button-spurious-layout-hint-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/fixed-move-after-keyboard-scroll-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/float-in-new-block-with-layout-delta-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/float-new-in-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/inline-block-resize-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/inline-color-change-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/inline-horizontal-bt-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/inline-vertical-lr-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/inline-vertical-rl-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/japanese-rl-selection-clear-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/layout-state-relative-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/layout-state-scrolloffset-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/layout-state-scrolloffset2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/layout-state-scrolloffset3-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/line-in-scrolled-clipped-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/moving-shadow-on-container-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/moving-shadow-on-path-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/no-caret-repaint-in-non-content-editable-element-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/opacity-change-on-overflow-float-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/rel-positioned-inline-with-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/repaint-during-scroll-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/scale-page-shrink-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/selection-clear-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/selection-gap-overflow-scroll-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/selection-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/stacked-diacritics-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/text-append-dirty-lines-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/view-background-from-body-1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/repaint/view-background-from-body-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/border-radius-clip-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/max-width-percent-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/outline-replaced-elements-expected.png: Added property svn:mime-type.
        * platform/mac/fast/replaced/percent-height-in-anonymous-block-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/percent-height-in-anonymous-block-in-table-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/percent-height-in-anonymous-block-widget-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-lr/absolute-position-percentage-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-lr/absolute-position-with-auto-height-and-top-and-bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-lr/absolute-position-with-auto-width-and-left-and-right-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-rl/absolute-position-percentage-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-rl/absolute-position-with-auto-height-and-top-and-bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/replaced/vertical-rl/absolute-position-with-auto-width-and-left-and-right-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/base-shorter-than-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/nested-ruby-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/quirks-mode-ruby-spacing-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/quirks-mode-ruby-spacing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-auto-line-expansion-bt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-auto-line-expansion-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-auto-line-expansion-lr-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-auto-line-expansion-rl-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-empty-rt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-length-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-run-break-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-runs-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-runs-spans-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-simple-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-simple-rp-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/ruby-trailing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/ruby/rubyDOM-remove-text2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/runin/002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/runin/generated-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/runin/generated2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/runin/generated3-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/runin/generated4-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/027-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/028-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/035-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/038-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/040-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/auto-with-percent-height-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/001-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/002-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/003-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/004-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/dynamic-caption-add-before-child-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/dynamic-descendant-percentage-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/empty-row-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-granular-cols-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-percent-inside-percent-table-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-percent-width-inside-auto-table-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-percent-width-inside-div-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-percent-width-inside-extra-large-div-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-percent-width-inside-fixed-width-table-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-table-with-small-percent-width-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/fixed-with-auto-with-colspan-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/floating-th-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/growCellForImageQuirk-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/height-percent-test-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/multiple-captions-display-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/percent-widths-stretch-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/relative-position-containment-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/relative-position-offsets-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/relative-position-stacking-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/rowspan-paint-order-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/table-and-parts-outline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/table-continuation-outline-paint-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/table-display-types-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/table-display-types-strict-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/table-display-types-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/table/vertical-align-baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/backslash-to-yen-sign-euc-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/bidi-embedding-pop-and-push-same-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/complex-text-opacity-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/decorations-transformed-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/emphasis-combined-text-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/emphasis-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/emphasis-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/hyphenate-character-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/hyphenate-first-word-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/hyphenate-limit-before-after-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/hyphenate-locale-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/hyphens-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/bidi-neutral-run-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/hindi-spacing-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/text-combine-image-test-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/international/vertical-text-glyph-test-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/justify-ideograph-complex-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/justify-ideograph-simple-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/justify-ideograph-vertical-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/line-breaking-with-kerning-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/myanmar-shaping-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/selection-rect-rounding-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/shadow-translucent-fill-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/sticky-typesetting-features-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/thai-combining-mark-positioning-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/x-height-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/text/zero-font-size-expected.png: Added property svn:mime-type.
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-1-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-2-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/transforms/transform-overflow-expected.png: Modified property svn:mime-type.
        * platform/mac/fast/transforms/transform-positioned-ancestor-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/color-bitmap-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/cursive-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/default-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/fantasy-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/monospace-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/sans-serif-expected.png: Modified property svn:mime-type.
        * platform/mac/fonts/serif-expected.png: Modified property svn:mime-type.
        * platform/mac/fullscreen/full-screen-iframe-zIndex-expected.png: Added property svn:mime-type.
        * platform/mac/fullscreen/full-screen-remove-ancestor-after-expected.png: Added property svn:mime-type.
        * platform/mac/fullscreen/full-screen-stacking-context-expected.png: Added property svn:mime-type.
        * platform/mac/fullscreen/full-screen-zIndex-after-expected.png: Added property svn:mime-type.
        * platform/mac/fullscreen/full-screen-zIndex-expected.png: Added property svn:mime-type.
        * platform/mac/http/tests/misc/favicon-as-image-expected.png: Modified property svn:mime-type.
        * platform/mac/http/tests/misc/generated-content-inside-table-expected.png: Modified property svn:mime-type.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Modified property svn:mime-type.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Modified property svn:mime-type.
        * platform/mac/http/tests/misc/slow-loading-image-in-pattern-expected.png: Modified property svn:mime-type.
        * platform/mac/http/tests/webarchive/cross-origin-stylesheet-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/media/media-controls-clone-expected.png: Added property svn:mime-type.
        * platform/mac/printing/simultaneous-position-float-change-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/basic-scrollbar-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/disabled-scrollbar-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/key-window-not-first-responder-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/listbox-scrollbar-combinations-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/overflow-scrollbar-combinations-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/scrollbar-buttons-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/scrollbar-orientation-expected.png: Modified property svn:mime-type.
        * platform/mac/scrollbars/scrollbars-on-positioned-content-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-37-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-39-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-40-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-41-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-46-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-60-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-61-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-62-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-63-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-65-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-66-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-67-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-68-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-69-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-70-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-77-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-78-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-81-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-83-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/coords-units-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/coords-units-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/coords-units-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-light-04-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/linking-a-05-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/linking-uri-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/linking-uri-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/linking-uri-03-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-14-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/script-handle-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/struct-frag-06-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/text-text-04-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/as-object/object-box-sizing-no-width-height-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/filters/feTile-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/paints/patternRegions-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/smallFonts-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textAnchor3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textLayout-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textLength-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textOnPath-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textOnPath2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textOnPathSpaces-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textPCDATA-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/textProperties-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/verticalTextOnPath-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/batik/text/xmlSpace-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-in-mask-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-in-mask-objectBoundingBox-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-in-mask-userSpaceOnUse-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-child-clipped-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-childs-clipped-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-clipped-evenodd-twice-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-clipped-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-clipped-no-content-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-clipped-nonzero-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-evenodd-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-evenodd-nonzero-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-nonzero-evenodd-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-nonzero-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-objectBoundingBox-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-on-clipped-use-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-on-g-and-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-on-g-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-on-svg-and-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-on-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-pixelation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-recursive-call-by-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-recursive-call-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-text-and-shape-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-text-and-stroke-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-use-as-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-use-as-child2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-use-as-child3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-use-as-child4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-use-as-child5-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-userSpaceOnUse-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-with-container-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-with-different-unittypes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-with-different-unittypes2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-with-invisibile-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/clip-path-with-text-clipped-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/deep-nested-clip-in-mask-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/arrow-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/circle-in-mask-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/clippath-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/composite-shadow-example-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/composite-shadow-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/composite-shadow-with-opacity-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/group-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/mask-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/path-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/shadow-and-opacity-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/shadow-changes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/shadow-with-large-radius-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/shadow-with-negative-offset-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/stars-with-shadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/css/text-shadow-multiple-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/SVGPaint-mutate-attribute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/SVGPaint-mutate-inline-style-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/absolute-sized-content-with-resources-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/altglyph-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/animate-target-id-changed-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/animate-target-removed-from-document-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/animation-currentColor-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/baseval-animval-equality-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/broken-internal-references-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/bug45331-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/clip-path-id-changes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/clip-path-referencing-use-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/clip-path-referencing-use2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/clone-element-with-animated-svg-properties-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/dominant-baseline-hanging-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/embedding-external-svgs-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/empty-mask-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/feComponentTransfer-Discrete-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/feComponentTransfer-Gamma-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/feComponentTransfer-Linear-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/feComponentTransfer-Table-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/fill-fallback-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/fill-opacity-update-expected.png: Added property svn:mime-type.
        * platform/mac/svg/custom/getPresentationAttribute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/getscreenctm-in-scrollable-div-area-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/getscreenctm-in-scrollable-svg-area-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/getsvgdocument-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/glyph-transformation-with-hkern-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/gradient-with-1d-boundingbox-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/image-parent-translation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/immutable-properties-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/invalid-dasharray-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/invalid-fill-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/invalid-fill-hex-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/invalid-stroke-hex-expected.png: Added property svn:mime-type.
        * platform/mac/svg/custom/invalid-uri-stroke-expected.png: Added property svn:mime-type.
        * platform/mac/svg/custom/invisible-text-after-scrolling-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/js-repaint-rect-on-path-with-stroke-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/js-update-stop-linked-gradient-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/marker-child-changes-css-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/marker-opacity-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/marker-referencePoint-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/marker-strokeWidth-changes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mask-invalidation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mask-on-multiple-objects-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mask-with-default-value-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/massive-coordinates-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mouse-move-on-svg-container-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mouse-move-on-svg-root-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/nested-pattern-boundingBoxModeContent-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/non-scaling-stroke-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/non-scaling-stroke-markers-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-no-size-attributes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-explicit-height-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-explicit-width-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-explicit-width-height-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-no-width-height-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/painting-marker-07-f-inherit-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/path-zero-strokewidth-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-excessive-malloc-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-incorrect-tiling-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-no-pixelation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-size-bigger-than-target-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-skew-transformed-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pattern-with-transformation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/percentage-of-html-parent-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pointer-events-image-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/pointer-events-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/recursive-filter-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/recursive-gradient-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/recursive-mask-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/recursive-pattern-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-content-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-content-with-resources-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-deep-shadow-tree-content-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-inner-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-shadow-tree-content-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-use-on-symbol-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/repaint-moving-svg-and-div-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/repaint-on-constant-size-change-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/repaint-stroke-width-changes-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/resource-invalidate-on-target-update-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/rootmost-svg-xy-attrs-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/shape-rendering-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/small-rect-scale-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/stroke-fallback-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/stroke-opacity-update-expected.png: Added property svn:mime-type.
        * platform/mac/svg/custom/svg-float-border-padding-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/svg-modify-currentTranslate-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/tearoffs-with-tearoffs-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/text-rotated-gradient-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/text-rotation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/text-x-dy-lists-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/text-xy-updates-SVGList-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-font-face-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-instanceRoot-as-event-target-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-instanceRoot-event-bubbling-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-instanceRoot-event-listeners-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-on-clip-path-with-transformation-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-property-synchronization-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-setAttribute-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-appendItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-basics-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-getItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-initialize-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-insertItemBefore-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-removeItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-replaceItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGLengthList-xml-dom-modifications-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-appendItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-clear-and-initialize-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-cloning-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-insertItemBefore-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-removeItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-replaceItem-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-segment-modification-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-xml-dom-synchronization-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGPathSegList-xml-dom-synchronization2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGScriptElement/script-load-and-error-events-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGScriptElement/script-reexecution-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dom/SVGScriptElement/script-set-href-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCircleElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCircleElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGClipPath-influences-hitTesting-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCursorElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCursorElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGEllipseElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGEllipseElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-remove-lightSource-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-limitingConeAngle-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtX-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtY-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtZ-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-specularExponent-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-dom-z-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-limitingConeAngle-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtX-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtY-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtZ-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-specularExponent-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFESpotLightElement-svgdom-z-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFETileElement-dom-in-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFETileElement-svgdom-in-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-filterRes-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-filterUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-primitiveUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-filterRes-call-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-filterResX-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-filterResY-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-filterUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-primitiveUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-result-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-result-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGForeignObjectElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGForeignObjectElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGGElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGGElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGImageElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-dom-x1-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-dom-x2-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-dom-y1-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-dom-y2-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-svgdom-x1-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-svgdom-x2-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-svgdom-y1-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGLineElement-svgdom-y2-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-orient-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-refX-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-refY-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPathElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPathElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-patternContentUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-patternTransform-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-patternUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-patternContentUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-patternTransform-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-patternUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPolygonElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPolygonElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPolylineElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGPolylineElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-cx-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-cy-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-fx-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-fy-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-gradientTransform-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-gradientUnits-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-dom-r-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-cx-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-cy-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-fx-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-fy-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-gradientTransform-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-gradientUnits-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRadialGradientElement-svgdom-r-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-dom-height-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-dom-width-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-dom-x-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-dom-y-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-svgdom-height-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-svgdom-width-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-svgdom-x-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGRectElement-svgdom-y-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGSVGElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGSVGElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTRefElement-dom-href-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-transform-attr-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-rotate-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-transform-prop-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGUseElement-dom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/big-sized-filter-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feColorMatrix-values-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feComposite-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feConvolveFilter-y-bounds-expected.png: Added property svn:mime-type.
        * platform/mac/svg/filters/feDisplacementMap-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feDropShadow-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feGaussianBlur-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feLighting-crash-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feMerge-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feMerge-wrong-input-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feOffset-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/feTile-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filter-on-filter-for-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filter-on-tspan-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filter-rounding-issues-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filter-width-update-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filterRes1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filterRes2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filterRes3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/filteredImage-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/parent-children-with-same-filter-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/shadow-on-filter-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/shadow-on-rect-with-filter-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/sourceAlpha-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/subRegion-in-userSpace-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/subRegion-one-effect-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/filters/subRegion-two-effects-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/foreignObject/disallowed-svg-nodes-as-direct-children-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/foreignObject/svg-document-as-direct-child-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/foreignObject/svg-document-in-html-document-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/foreignObject/text-tref-02-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/hixie/intrinsic/001-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/hixie/intrinsic/002-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/hixie/intrinsic/003-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/in-html/circle-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-foreignObject-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-inner-svg-element-defaults-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-inner-svg-element-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-defaults-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/repaint/filter-repaint-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/font-size-below-point-five-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/font-size-below-point-five-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/foreignObject-text-clipping-bug-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/kerning-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/multichar-glyph-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/scaled-font-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-squeeze-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-squeeze-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-squeeze-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-squeeze-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-stretch-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-stretch-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-stretch-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacing-stretch-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-with-tspans-1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-with-tspans-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-with-tspans-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/select-x-list-with-tspans-4-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/selection-styles-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/small-fonts-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/small-fonts-3-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/small-fonts-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/small-fonts-in-html5-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/text-hkern-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/text-hkern-on-vertical-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/text-path-middle-align-expected.png: Added property svn:mime-type.
        * platform/mac/svg/text/text-repaint-rects-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/text-vkern-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/text/text-vkern-on-horizontal-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/wicd/rightsizing-grid-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/wicd/test-rightsizing-a-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/wicd/test-rightsizing-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/wicd/test-scalable-background-image1-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/wicd/test-scalable-background-image2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-foreignObject-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-no-width-height-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-text-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-foreignObject-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.png: Modified property svn:mime-type.
        * platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/layering/paint-test-layering-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/layering/paint-test-layering-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug10296-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug1055-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug106816-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug113235-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug11944-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug119786-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug131020-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug13118-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug13196-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug133756-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug139524-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug14159-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug1430-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug14929-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug15247-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug17130-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug17130-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug1800-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug18359-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug18955-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug19061-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug19061-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug194024-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug19599-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug20804-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2267-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug23235-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug23299-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug24627-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2479-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2479-4-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug25086-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug25663-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2684-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug27038-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2773-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2886-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug29058-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug29429-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2947-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2981-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2981-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug2997-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug30692-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug3103-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug32205-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug33855-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug3454-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug3681-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug3977-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug41890-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug42187-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug43039-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug4382-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug43854-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug4427-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug44505-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug45055-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug45486-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug46368-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug46368-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug46623-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug46924-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug47432-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug51727-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug52505-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug52506-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug5538-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug55694-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug57300-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug5799-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug5835-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug60749-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug6184-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug6404-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug650-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug68912-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug69382-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7112-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7112-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7121-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7342-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7471-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug7714-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug78162-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug80762-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug82946-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug8858-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug8950-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug9123-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug9123-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug92143-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug93363-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug96334-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/bugs/bug965-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/collapsing_borders/bug41262-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/borders-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_span-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_auto_autoPer-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_auto_fix-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_auto_fixPer-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_auto_per-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_fix_autoFix-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_fix_autoPer-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_fix_fix-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/col_widths_fix_fixPer-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/margins-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/one_row-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/row_span-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/table_rules-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/core/table_widths-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/dom/deleteTbodyRebuild1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/dom/insertCellsRebuild1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/body_tbody-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/body_tfoot-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/body_thead-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/col_span-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_span-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_width_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/colgroup_width_px-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_frame_border-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_frame_box-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_row_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_row_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_row_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_rules_all-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_rules_groups-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/table_rules_none-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_border_0-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_border_1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_border_2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_border_3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_cellpadding-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_cellpadding_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_cellspacing-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_class-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_id-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_row_th_nowrap-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_style-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_colspan-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_height-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_nowrap-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_rowspan-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_td_width-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_colspan-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_height-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_rowspan-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_th_width-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_width_percent-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tables_width_px-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tbody_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/td_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tfoot_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/thead_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/tr_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_col_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_col_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_col_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_col_width_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_col_width_rel-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_colgroup_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_colgroup_width_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_colgroup_width_rel-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_bgcolor_name-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_border-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_border_none-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_border_px-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_frame_void-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_rules_groups-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_rules_none-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_width_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_table_width_px-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_bgcolor_name-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_height-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_nowrap-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_td_width-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_align_center-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_align_left-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_align_right-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_bgcolor_name-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_nowrap-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_th_width-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_align_char-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_class-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_id-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_style-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_valign_middle-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_thead_valign_top-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tr_align_justify-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tr_bgcolor_name-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tr_valign_baseline-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/marvin/x_tr_valign_bottom-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/cell_widths-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/cellspacing-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/nested2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/nestedTables-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/padding-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/test3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/test6-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla/other/wa_table_thtd_rowspan-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1010-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug10140-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug101759-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug10216-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1055-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug106966-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1128-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug11331-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug11945-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug131020-3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug14007-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug14489-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1725-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug17826-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug18770-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug21518-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug22122-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug25707-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug3166-18-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug3166-5-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug32205-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug32205-4-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug42043-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug4294-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug51000-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug56024-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug59252-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug61042-1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug61042-2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug73629-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/bugs/bug91057-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/captions1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/captions2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/captions3-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/columns-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/core/standards1-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_above-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_below-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_void-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_above-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_below-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_border-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_box-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_hsides-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_lhs-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_rhs-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_frame_vsides-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_rules_all-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_rules_cols-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/marvin/x_table_rules_rows-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/other/empty_cells-expected.png: Modified property svn:mime-type.
        * platform/mac/tables/mozilla_expected_failures/other/test4-expected.png: Modified property svn:mime-type.
        * platform/mac/transforms/2d/hindi-rotated-expected.png: Modified property svn:mime-type.
        * platform/mac/transforms/2d/zoom-menulist-expected.png: Modified property svn:mime-type.
        * platform/mac/transforms/svg-vs-css-expected.png: Modified property svn:mime-type.
        * platform/mac/transitions/opacity-transition-zindex-expected.png: Modified property svn:mime-type.
        * platform/mac/transitions/svg-text-shadow-transition-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/archive-empty-frame-dom-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/archive-empty-frame-source-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/archive-with-unencoded-url-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/doctype-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-body-background-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-css-import-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-duplicate-resources-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-frameset-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-img-src-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-input-src-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-link-href-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-object-data-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-script-src-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-table-background-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-td-background-expected.png: Modified property svn:mime-type.
        * platform/mac/webarchive/test-xml-stylesheet-expected.png: Modified property svn:mime-type.

2011-06-16  MORITA Hajime <morrita@google.com>

        Unreviewed expectations update for:
        - fast/speech/input-appearance-numberandspeech.html
        and just unskips them because they pass always.
        - input-appearance-spinbutton-disabled-readonly.html
        - input-appearance-spinbutton-layer.html
        - input-appearance-spinbutton-visibility.html

        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-16  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update for
        meter-styles.html, meter-writing-mode.html, progress-writing-mode.html

        * platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Added.
        * platform/chromium-win/fast/dom/HTMLProgressElement/progress-writing-mode-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-16  Jeffrey Pfau  <jpfau@apple.com>

        Reviewed by Alexey Proskuryakov.

        Using null bytes when setting innerHTML in XTHML results in assertion and a crash due to null-pointer dereference
        https://bugs.webkit.org/show_bug.cgi?id=61053

        Added test cases covering two cases of using innerHTML with null bytes in XHTML.

        * fast/parser/xhtml-innerhtml-null-byte-expected.txt: Added.
        * fast/parser/xhtml-innerhtml-null-byte-first-expected.txt: Added.
        * fast/parser/xhtml-innerhtml-null-byte-first.xhtml: Added.
        * fast/parser/xhtml-innerhtml-null-byte.xhtml: Added.

2011-06-16  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, mark more Chromium test failures for tests added in r89091.

        * platform/chromium/test_expectations.txt:

2011-06-16  Kent Tamura  <tkent@chromium.org>

        Reviewed by Eric Seidel.

        Verify cloned <audio> and <video> are rendered correctly.
        https://bugs.webkit.org/show_bug.cgi?id=62001

        Add a test to verify cloned media controls are rendered correctly.

        * media/media-controls-clone.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/media/media-controls-clone-expected.png: Added.
        * platform/mac/media/media-controls-clone-expected.txt: Added.

2011-06-16  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for fast/js/keywords-and-reserved_words.html.

        * platform/chromium/test_expectations.txt:

2011-06-16  Gavin Barraclough  <barraclough@apple.com>

        Rubber stamped by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=25079
        JS Arrays et al receive the wrong prototype

        Adding abarth's testcase, for this issue that was already fixed in ToT by other changes.

        * fast/js/cross-frame-prototype-expected.txt: Added.
        * fast/js/cross-frame-prototype.html: Added.

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Another Windows rebaseline after r89091.

        The problem was that my original rebaseline for Windows overrode mac's expected results.
        This rebaseline should work.

        * platform/win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt: Added.
        * platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt: Added.

2011-06-16  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=53014
        ES5 strict mode keyword restrictions aren't implemented

        The following are future restricted words is strict mode code:
            implements, interface, let, package, private, protected, public, static, yield

        * fast/js/keywords-and-reserved_words-expected.txt: Added.
        * fast/js/keywords-and-reserved_words.html: Added.
        * fast/js/script-tests/keywords-and-reserved_words.js: Added.
        (isKeyword):
        (isStrictKeyword):
        (classifyIdentifier):

2011-06-16  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r89107.
        http://trac.webkit.org/changeset/89107

        The test already had correct expectation.

        * platform/chromium/test_expectations.txt:

2011-06-16  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for fast/js/multiline-comment-newline.html.

        * platform/chromium/test_expectations.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Windows XP rebaseline after r89091.

        * platform/chromium-win-xp/editing/selection: Added.
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Fix Mac baselines for r89091. I don't know why the original baseline was wrong.

        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Update Chromium test expectation after r89100.

        * platform/chromium/test_expectations.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Update Chromium Mac test expectations after r89091.

        * platform/chromium/test_expectations.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        GTK+ rebaselines after r89091.

        * platform/gtk/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt: Added.
        * platform/gtk/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt: Added.

2011-06-16  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=23611
        Multiline Javascript comments cause incorrect parsing of following script.

        From the spec:
        "A MultiLineComment [is] simply discarded if it contains no line terminator,
        but if a MultiLineComment contains one or more line terminators, then it is
        replaced with a single line terminator, which becomes part of the stream of
        inputs for the syntactic grammar." 

        This may result in behavioural changes, due to automatic semicolon insertion.

        * fast/js/multiline-comment-newline-expected.txt: Added.
        * fast/js/multiline-comment-newline.html: Added.
        * fast/js/script-tests/multiline-comment-newline.js: Added.
        (shouldBeUndefined):

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Qt rebaselines after r89091.

        * platform/qt/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt: Added.
        * platform/qt/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt: Added.

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Windows rebaselines for r89091.

        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines after r89091.

        They are all considered passing even though vertical text aren't rendered correctly in these tests
        because only selection range matters in these tests.

        * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png: Added.
        * platform/chromium-linux/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png: Added.
        * platform/chromium-win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt: Added.

2011-06-16  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Your chromium layout test results are now diamonds!  Ok, not really. 
        But they're 0.03% better.

        * platform/chromium-linux/fast/transforms/transformed-document-element-expected.png:
        * platform/chromium-win/fast/transforms/transformed-document-element-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89055.
        http://trac.webkit.org/changeset/89055
        https://bugs.webkit.org/show_bug.cgi?id=62835

        Caused failures on all ports except GTK (Requested by
        mrobinson on #webkit).

        * http/tests/loading/resources/status-code-error-with-response-body.php: Removed.
        * http/tests/loading/resources/status-code-error-without-response-body.php: Removed.
        * http/tests/loading/status-code-error-without-response-body-expected.txt: Removed.
        * http/tests/loading/status-code-error-without-response-body.html: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-16  Wyatt Carss  <wcarss@chromium.org>

        Reviewed by Ryosuke Niwa.

        markup-dump conversion + rename: editing/deleting/5408255.html
        https://bugs.webkit.org/show_bug.cgi?id=62680

        Tests if the UI delete button works while '-webkit-user-select: none' is applied. 
        There should be no visible content in the dumped markup. Holding off on rename.

        * editing/deleting/5408255.html:
        * editing/deleting/5408255-expected.txt:
        * platform/chromium-linux/editing/deleting/5408255-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/deleting/5408255-expected.png: Removed.
        * platform/chromium-mac/editing/deleting/5408255-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5408255-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5408255-expected.txt: Removed.
        * platform/gtk/editing/deleting/5408255-expected.png: Removed.
        * platform/gtk/editing/deleting/5408255-expected.txt: Removed.
        * platform/mac/editing/deleting/5408255-expected.png: Removed.
        * platform/mac/editing/deleting/5408255-expected.txt: Removed.
        * platform/qt/editing/deleting/5408255-expected.txt: Removed.

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        Support logical line movement in vertical writing mode
        https://bugs.webkit.org/show_bug.cgi?id=62743

        Added various tests to ensure WebKit uses a proper line direction point
        when extending selection horizontally in vertical writing modes.

        * editing/selection/vertical-lr-ltr-extend-line-backward-br.html: Added.
        * editing/selection/vertical-lr-ltr-extend-line-forward-br.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-backward-br.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-backward-p.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-backward-wrap.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-forward-br.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-forward-p.html: Added.
        * editing/selection/vertical-rl-ltr-extend-line-forward-wrap.html: Added.
        * editing/selection/vertical-rl-rtl-extend-line-backward-br.html: Added.
        * editing/selection/vertical-rl-rtl-extend-line-backward-p.html: Added.
        * editing/selection/vertical-rl-rtl-extend-line-forward-br.html: Added.
        * editing/selection/vertical-rl-rtl-extend-line-forward-p.html: Added.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.png: Added.
        * platform/mac/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt: Added.

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the failing test added by r89056 on Qt.
        The failure is tracked by the bug 62821.

        * platform/qt/Skipped:

2011-06-16  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        A yak.  Just kidding.  More test expectations updates.

        * platform/chromium/test_expectations.txt:

2011-06-16  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Yet more chromium expectations updates.

        * platform/chromium/test_expectations.txt:

2011-06-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        Consider padding and border when looking for the next/previous line position
        https://bugs.webkit.org/show_bug.cgi?id=55481

        Added a test to ensure WebKit can allow vertical caret movements even when
        inline elements that span multiple lines have paddings, borders, or both.

        * editing/selection/move-vertically-with-paddings-borders-expected.txt: Added.
        * editing/selection/move-vertically-with-paddings-borders.html: Added.

2011-06-16  Keunsoon Lee  <keunsoon.lee@samsung.com>

        Reviewed by Martin Robinson.

        [SOUP] Abnormal operation if server sends 5xx status code without HTTP body
        https://bugs.webkit.org/show_bug.cgi?id=60875

        * http/tests/loading/resources/status-code-error-with-response-body.php: Added.
            Accepting status code and creating response having body with the received status code
        * http/tests/loading/resources/status-code-error-without-response-body.php: Added.
            Accepting status code and creating response having no body with the received status code
        * http/tests/loading/status-code-error-without-response-body-expected.txt: Added.
        * http/tests/loading/status-code-error-without-response-body.html: Added.
            Sending XMLHttpRequest and check if return callback is onerror or onload for all 4xx and 5xx status codes.
        * platform/chromium/test_expectations.txt: add BUGWK60875

2011-06-16  Chang Shu  <cshu@webkit.org>

        Reviewed by Sam Weinig.

        [Qt] [WK2] Qt WebKit2 needs undo/redo support
        https://bugs.webkit.org/show_bug.cgi?id=62637

        Unskip passed tests.

        * platform/qt-wk2/Skipped:

2011-06-16  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Network panel shows incorrect query parameters when url has fragment.
        https://bugs.webkit.org/show_bug.cgi?id=62723

        * http/tests/inspector/resource-parameters-expected.txt:
        * http/tests/inspector/resource-parameters.html:

2011-06-16  Stephen White  <senorblanco@chromium.org>

        Unreviewed.

        Update chromium test expectations.  Add some missing bug ID's (lazy
        gardener, no chocolate for you), and remove some now-passing tests.

        * platform/chromium/test_expectations.txt:

2011-06-16  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Cache XHR content in backend, do not use initialContentSet for XHRs.
        https://bugs.webkit.org/show_bug.cgi?id=61205

        Added inspector backend cache for XHR content.

        * http/tests/inspector/network/network-xhr-async-expected.txt: Added.
        * http/tests/inspector/network/network-xhr-async.html: Added.
        * http/tests/inspector/network/network-xhr-sync-expected.txt: Added.
        * http/tests/inspector/network/network-xhr-sync.html: Added.

2011-06-16  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        HTMLTable should cache its 'rows' collection results
        https://bugs.webkit.org/show_bug.cgi?id=62800

        * perf/table-rows-length-caching-expected.txt: Added.
        * perf/table-rows-length-caching.html: Added.
        This test checks that the call to table.rows is CONSTANT once it has
        been populated once (and the DOM is not mutated).

2011-06-16  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Adding more new baselines.

        * platform/chromium-mac-leopard/fast/forms/basic-textareas-expected.png:
        * platform/chromium-mac-leopard/svg/hixie/text/003-expected.png:

2011-06-16  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Adding new baselines.

        * platform/chromium-mac-leopard/fast/replaced/outline-replaced-elements-expected.png: Added.

2011-06-16  Eric Carlson  <eric.carlson@apple.com>

        Unreviewed, removing test incorrectly added to GTK skipped list.

        [Qt] http/tests/appcache/video.html fails
        https://bugs.webkit.org/show_bug.cgi?id=62741

        * platform/gtk/Skipped: Unskip test.
        * platform/qt/Skipped: Add bug url.

2011-06-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r89025.
        http://trac.webkit.org/changeset/89025
        https://bugs.webkit.org/show_bug.cgi?id=62799

        "Some layout tests fail" (Requested by yurys on #webkit).

        * http/tests/inspector/network/network-xhr-async-expected.txt: Removed.
        * http/tests/inspector/network/network-xhr-async.html: Removed.
        * http/tests/inspector/network/network-xhr-sync-expected.txt: Removed.
        * http/tests/inspector/network/network-xhr-sync.html: Removed.

2011-06-16  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Cache XHR content in backend, do not use initialContentSet for XHRs.
        https://bugs.webkit.org/show_bug.cgi?id=61205

        Added inspector backend cache for XHR content.

        * http/tests/inspector/network/network-xhr-async-expected.txt: Added.
        * http/tests/inspector/network/network-xhr-async.html: Added.
        * http/tests/inspector/network/network-xhr-sync-expected.txt: Added.
        * http/tests/inspector/network/network-xhr-sync.html: Added.

2011-06-16  Florian Schneider  <fschneider@chromium.org>

        Unreviewed.

        Remove an outdated chromium test expectation.
        https://bugs.webkit.org/show_bug.cgi?id=62716

        * platform/chromium/test_expectations.txt:

2011-06-16  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Updating test expectations after V8 push.

        * platform/chromium-mac/fast/js/function-prototype-descriptor-expected.txt:
        * platform/chromium-win/fast/js/function-prototype-descriptor-expected.txt:

2011-06-16  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        Unskip passing tests what needs layoutTestController.clearBackForwardList
        https://bugs.webkit.org/show_bug.cgi?id=42333

        * platform/qt-wk2/Skipped:

2011-06-16  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Updating text expectations.

        * platform/chromium/test_expectations.txt:

2011-06-16  MORITA Hajime <morrita@google.com>

        Unreviewed expectations update for meter-element.html
        
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-16  Adam Barth  <abarth@webkit.org>

        Disable a subtest while we investigate.  I'm going to need dglazkov's
        help to understand what's going on in the shadows here.

        * fast/events/shadow-boundary-crossing-expected.txt:
        * fast/events/shadow-boundary-crossing.html:

2011-06-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] fast/frames/flattening tests fail intermittently
        https://bugs.webkit.org/show_bug.cgi?id=62785

        * platform/qt-wk2/Skipped: Skip flakey tests until fix.
         - fast/frames/flattening/frameset-flattening-advanced.html
         - fast/frames/flattening/frameset-flattening-simple.html
        * platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt: Added,
        because NotificationCenter and NotificationCenterPrototype is missing.

2011-06-16  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update.
        - spellcheck-api-pixel.html -> Added expectations
        - spellcheck-api.html -> Removed test_expectations.txt entry because it passes.

        * platform/chromium-linux/editing/spelling/spellcheck-api-pixel-expected.png: Added.
        * platform/chromium-mac-leopard/editing/spelling/spellcheck-api-pixel-expected.png: Added.
        * platform/chromium-mac/editing/spelling/spellcheck-api-pixel-expected.png: Added.
        * platform/chromium-mac/editing/spelling/spellcheck-api-pixel-expected.txt: Added.
        * platform/chromium-win/editing/spelling/spellcheck-api-pixel-expected.png: Added.
        * platform/chromium-win/editing/spelling/spellcheck-api-pixel-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-15  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] new test introduced in r88958 fail on Qt

        * platform/qt/Skipped: Skip http/tests/appcache/video.html until fix.

2011-06-15  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        WebInspector [Chromium]: Make heap snapshots UI more responsive.
        https://bugs.webkit.org/show_bug.cgi?id=62360

        Two changes have been made:
          - when we request elements, sort array only partially;
          - when populating children, do it in batches;

        * inspector/profiler/heap-snapshot.html:
        * inspector/utilities.html:

2011-06-08  Keishi Hattori  <keishi@webkit.org>

        Reviewed by Kent Tamura.

        Fix range element not updating when value attribute is set with JS
        https://bugs.webkit.org/show_bug.cgi?id=61857

        * fast/forms/range-set-attribute-expected.txt: Added.
        * fast/forms/range-set-attribute.html: Added. Test to see if setting the value attribute of a 
        range input element updates the value.

2011-06-15  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Chromium][Qt] Some slider clicking tests fail.
        https://bugs.webkit.org/show_bug.cgi?id=62683

        * fast/forms/slider-mouse-events-expected.txt:
        * fast/forms/slider-mouse-events.html: Add step=5 to ignore small difference of thumb sizes.
        * platform/chromium-win/fast/forms/slider-mouse-events-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/qt/Skipped: slider-onchange-event.html should pass by this change.

2011-06-15  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, whitespace change to force a build.

        * platform/chromium/test_expectations.txt:

2011-06-15  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Refine expectations to eliminate some unexpected passes.

        * platform/chromium/test_expectations.txt:

2011-06-15  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Refine expectations to eliminate some unexpected passes.

        * platform/chromium/test_expectations.txt:

2011-06-15  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Add Mac Leopard baselines for the new CSS2.1 tests added in
        r88913.

        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-width-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-elements-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-15  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Antti Koivisto.

        Tests that accessing the parent stylesheet in nodes (not in document)
        do not result in crash when document is cleared.
        https://bugs.webkit.org/show_bug.cgi?id=62586

        * fast/dom/body-clone-link-decl-parent-crash-expected.txt: Added.
        * fast/dom/body-clone-link-decl-parent-crash.html: Added.
        * fast/dom/styled-clone-inline-style-decl-parent-crash-expected.txt: Added.
        * fast/dom/styled-clone-inline-style-decl-parent-crash.html: Added.
        * fast/dom/styled-not-in-document-clone-inline-style-decl-parent-crash-expected.txt: Added.
        * fast/dom/styled-not-in-document-clone-inline-style-decl-parent-crash.html: Added.

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; more test expectations cleanup.

        Get rid of some unexpected passes from the GPU bots.

        * platform/chromium/test_expectations.txt:

2011-06-15  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Have Document keep track of whether scroll listeners are registered
        https://bugs.webkit.org/show_bug.cgi?id=62757
        
        This test relied on the fact that, with async scroll event dispatch,
        an element would get a scroll event even if the listener is registered
        after the scroll happens. Fix the test to register the listener before
        the first scroll.

        * fast/events/remove-child-onscroll.html:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; test expectations cleanup.

        Removing some incorrect text results (platform/mac fallback is correct).
        Adding some bug IDs from my lazy gardening last time around.

        * platform/chromium-win/animations/animation-drt-api-expected.txt: Removed.
        * platform/chromium-win/animations/animation-drt-api-multiple-keyframes-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; yet more test expectations updates.

        * platform/chromium/test_expectations.txt:

2011-06-15  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r88719): 5by5.tv schedule is not visible
        https://bugs.webkit.org/show_bug.cgi?id=62720

        Add test for the "interesting" ascii characters that may occur in an identifier

        * fast/js/parser-syntax-check-expected.txt:
        * fast/js/script-tests/parser-syntax-check.js:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; more chromium test expectations updates.

        Rebaseline one GPU test on Linux.

        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; more chromium test expectations updates.

        Rebaselined one additional CSS 2.1 test on Linux.

        * platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new chromium test baselines.

        New chromium baselines for CSS 2.1 tests introduced in r88913.  Note
        that some results are incorrect, and were left failing in
        test_expectations (yes, I checked them all).

        * platform/chromium-linux/css2.1/20110323: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/chromium-linux/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/chromium-mac/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-height-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-max-height-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-013-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-014-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-015-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-016-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-017-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-018-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-019-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-020-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-021-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-022-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-023-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-non-replaced-width-024-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-014-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-016-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-017-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-018-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-019-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-021-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-022-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-023-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-024-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-025-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-026-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-028-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-029-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-030-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-031-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-032-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-033-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-035-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-height-036-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-013-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-015-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-020-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-022-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-027-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-029-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-034-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-036-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-041-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-043-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-048-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-050-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-055-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-057-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-062-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-064-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-069-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-071-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/absolute-replaced-width-076-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-013-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-014-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-015-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-height-016-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-non-replaced-width-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/block-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-008-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-009-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-010-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-non-replaced-width-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/float-replaced-width-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-non-replaced-width-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-block-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-non-replaced-width-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-height-007-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-006-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-011-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-012-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-013-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-014-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/inline-replaced-width-015-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-002-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-003-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-004-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-intrinsic-005-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/replaced-min-max-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/width-non-replaced-inline-001-expected.txt: Added.
        * platform/chromium-win/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/chromium-win/css2.1/20110323/width-replaced-element-001-expected.txt: Added.
        * platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Added.
        * platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Added.
        * platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-15  Eric Carlson  <eric.carlson@apple.com>

        Skip new failing test.

        [Qt] http/tests/appcache/video.html fails
        https://bugs.webkit.org/show_bug.cgi?id=62741

        * platform/gtk/Skipped:

2011-06-15  Tony Chang  <tony@chromium.org>

        Fix Qt results for RenderDeprecatedFlexibleBox rename.

        * platform/qt/fast/forms/range-thumb-height-percentage-expected.txt:
        * platform/qt/fast/multicol/client-rects-expected.txt:

2011-06-15  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Alexey Proskuryakov.

        MediaPlayerPrivate should not know about application cache
        https://bugs.webkit.org/show_bug.cgi?id=62648

        Add test for <video> in the application cache.

        * http/tests/appcache/resources/video.manifest: Added.
        * http/tests/appcache/video-expected.txt: Added.
        * http/tests/appcache/video.html: Added.

2011-06-15  Tony Chang  <tony@chromium.org>

        Fixing more results with RenderDeprecatedFlexibleBox rename.

        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/audio-repaint-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-mac/media/video-zoom-controls-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/audio-repaint-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/video-zoom-controls-expected.txt:
        * platform/win-xp/media/audio-repaint-expected.txt:

2011-06-15  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaseline after r88913.

        * platform/gtk/svg/hixie/text/003-expected.txt:

2011-06-15  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: indexedDB.open() name argument is required
        https://bugs.webkit.org/show_bug.cgi?id=62398

        * storage/indexeddb/database-name-undefined-expected.txt: Added.
        * storage/indexeddb/database-name-undefined.html: Added.

2011-06-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Dimitri Glazkov.

        Can't type text when input element is shrunken by a CSS rule
        https://bugs.webkit.org/show_bug.cgi?id=62550

        Added a regression test now that the bug no longer reproduces.

        * fast/forms/type-after-focus-rule-shrink-width-expected.txt: Added.
        * fast/forms/type-after-focus-rule-shrink-width.html: Added.

2011-06-15  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Serious performance regression during continuous focused element style updates
        https://bugs.webkit.org/show_bug.cgi?id=61038

        * inspector/elements/edit-dom-actions.html:
        * inspector/elements/set-attribute.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:

2011-06-15  Martin Robinson  <mrobinson@igalia.com>

        Reclassify a failing GTK+ test.

        * platform/gtk/Skipped: This test is actually failing because
        EventSender.mouseScrollBy is missing.

2011-06-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Textarea will not accept space characters at end of line
        https://bugs.webkit.org/show_bug.cgi?id=61483

        Added a regression test now that the bug has been resolved by r88883.

        * editing/input/insert-wrapping-space-in-textarea-expected.txt: Added.
        * editing/input/insert-wrapping-space-in-textarea.html: Added.

2011-06-15  Andrey Kosyakov  <caseq@chromium.org>

       Unreviewed, rolled out r88937 (broke build on mac)

        * http/tests/inspector/network/network-xhr-async-expected.txt: Removed.
        * http/tests/inspector/network/network-xhr-async.html: Removed.
        * http/tests/inspector/network/network-xhr-sync-expected.txt: Removed.
        * http/tests/inspector/network/network-xhr-sync.html: Removed.

2011-06-15  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: fixing new inspector test.

        * inspector/debugger/error-in-watch-expressions-expected.txt:
        * inspector/debugger/error-in-watch-expressions.html:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        A few more updates to bring test_expectations in line with reality.

        * platform/chromium/test_expectations.txt:

2011-06-15  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: script select can be too wide.
        https://bugs.webkit.org/show_bug.cgi?id=62701

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:

2011-06-15  Noel Gordon  <noel.gordon@gmail.com>

        Reviewed by Eric Seidel.

        CSS property outline not displayed on an iframe.
        https://bugs.webkit.org/show_bug.cgi?id=57439

        * fast/replaced/no-focus-ring-embed-expected.txt: Added.
        * fast/replaced/no-focus-ring-embed.html: Added.
        * fast/replaced/no-focus-ring-iframe-expected.txt: Added.
        * fast/replaced/no-focus-ring-iframe.html: Added.
        * fast/replaced/no-focus-ring-object-expected.txt: Added.
        * fast/replaced/no-focus-ring-object.html: Added.
        * fast/replaced/outline-replaced-elements-expected.txt: Added.
        * fast/replaced/outline-replaced-elements.html: Added.
        * fast/replaced/resources/focus-test.js: Added.
        (element.onfocus): Use a small delay to avoid test false positives.
        * platform/mac/fast/replaced/outline-replaced-elements-expected.png: Added.

2011-06-15  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88916.
        http://trac.webkit.org/changeset/88916
        https://bugs.webkit.org/show_bug.cgi?id=62728

        Broke a bunch of layout tests on chromium (Requested by
        podivilov on #webkit).

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:

2011-06-15  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        Suppressing the failures introduced at r88913.

        * platform/chromium/test_expectations.txt:

2011-06-15  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: script links are displayed with original line number in pretty-print mode.
        https://bugs.webkit.org/show_bug.cgi?id=62282

        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html:

2011-06-15  Kent Tamura  <tkent@chromium.org>

        [Chromium] Test expectation update for r88757 and r88901.
        https://bugs.webkit.org/show_bug.cgi?id=52920
        https://bugs.webkit.org/show_bug.cgi?id=62685

        * platform/chromium-gpu-linux/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-linux/media/controls-strict-expected.png:
        * platform/chromium-gpu-linux/media/controls-styling-expected.png:
        * platform/chromium-gpu-linux/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-mac/media/controls-strict-expected.png:
        * platform/chromium-gpu-mac/media/controls-styling-expected.png:
        * platform/chromium-gpu-mac/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-mac/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-win/media/controls-strict-expected.png:
        * platform/chromium-gpu-win/media/controls-styling-expected.png:
        * platform/chromium-gpu-win/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-win/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png:
        * platform/chromium-linux/media/video-volume-slider-expected.png:
        * platform/chromium-mac-leopard/media/video-volume-slider-expected.png:
        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/audio-repaint-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.png:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-mac/media/video-zoom-controls-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/audio-repaint-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.png:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/video-zoom-controls-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-15  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-06-14  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: "data" URLs not detected in CSS url(...) values properly
        https://bugs.webkit.org/show_bug.cgi?id=62643

        * inspector/styles/styles-url-linkify-expected.txt:
        * inspector/styles/styles-url-linkify.html:

2011-06-15  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped accessibility test failing in GTK.

        Failing after r88830, filed bug 62335 for fixing this issue.

        * platform/gtk/Skipped: Skipped test.

2011-06-15  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [REGRESSION] errors in watches and in console are not rendered in red.
        https://bugs.webkit.org/show_bug.cgi?id=62708

        * inspector/debugger/error-in-watch-expressions-expected.txt: Added.
        * inspector/debugger/error-in-watch-expressions.html: Added.

2011-06-15  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: script select can be too wide.
        https://bugs.webkit.org/show_bug.cgi?id=62701

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:

2011-06-15  Csaba Osztrogonác  <ossy@webkit.org>

        Add Qt specific expected files for new passing tests introduced in r88913.

        [Qt] css2.1/20110323/inline-non-replaced-height-* tests fail
        https://bugs.webkit.org/show_bug.cgi?id=62710

        * platform/qt/Skipped: Skip failing tests.
         - css2.1/20110323/inline-non-replaced-height-002.htm
         - css2.1/20110323/inline-non-replaced-height-003.htm

        * platform/qt/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-height-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-max-height-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-013-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-014-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-015-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-016-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-017-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-018-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-019-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-020-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-021-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-022-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-023-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-non-replaced-width-024-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-014-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-016-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-017-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-018-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-019-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-021-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-022-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-023-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-024-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-025-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-026-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-028-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-029-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-030-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-031-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-032-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-033-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-035-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-height-036-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-013-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-015-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-020-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-022-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-027-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-029-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-034-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-036-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-041-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-043-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-048-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-050-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-055-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-057-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-062-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-064-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-069-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-071-expected.txt: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/qt/css2.1/20110323/absolute-replaced-width-076-expected.txt: Added.
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
        * platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
        * platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-013-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-014-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-015-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-height-016-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-008-expected.png: Added.
        * platform/qt/css2.1/20110323/block-non-replaced-width-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/block-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-008-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-009-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-010-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/qt/css2.1/20110323/float-non-replaced-width-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/qt/css2.1/20110323/float-replaced-width-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-non-replaced-width-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-block-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-non-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-non-replaced-width-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-height-007-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-006-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-011-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-012-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-013-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-014-expected.txt: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/qt/css2.1/20110323/inline-replaced-width-015-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-elements-001-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-elements-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-002-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-003-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-004-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-005-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/qt/css2.1/20110323/replaced-min-max-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/qt/css2.1/20110323/width-non-replaced-inline-001-expected.txt: Added.
        * platform/qt/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/qt/css2.1/20110323/width-replaced-element-001-expected.txt: Added.

2011-06-10  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Dmitry Titov.

        [Chromium] Worker object may be garbage collected if it doesn't send any messages
        https://bugs.webkit.org/show_bug.cgi?id=62446

        * fast/workers/resources/worker-init.js: Added.
        * fast/workers/worker-init-expected.txt: Added.
        * fast/workers/worker-init.html: Added.

2011-06-15  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by David Hyatt.

        CSS 2.1: Support replaced elements with relative intrinsic sizes
        https://bugs.webkit.org/show_bug.cgi?id=15849

        CSS 2.1 failure: html4/replaced-intrinsic-ratio-001
        https://bugs.webkit.org/show_bug.cgi?id=53099

        Imported all CSS 2.1 tests named *replaced* and *intrinsic* (except the still failing background-intrinsic-*) tests.
        All of these pass now, except block-non-replaced-width-008.htm which is unrelated to this patch.

        * css2.1/20110323: Added.
        * css2.1/20110323/absolute-non-replaced-height-001.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-002.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-003.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-004.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-005.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-006.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-007.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-008.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-009.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-010.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-011.htm: Added.
        * css2.1/20110323/absolute-non-replaced-height-012.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-001.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-002.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-003.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-004.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-005.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-006.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-007.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-008.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-009.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-010.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-011.htm: Added.
        * css2.1/20110323/absolute-non-replaced-max-height-012.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-001.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-002.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-003.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-004.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-005.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-006.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-007.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-008.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-009.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-010.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-011.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-012.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-013.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-014.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-015.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-016.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-017.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-018.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-019.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-020.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-021.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-022.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-023.htm: Added.
        * css2.1/20110323/absolute-non-replaced-width-024.htm: Added.
        * css2.1/20110323/absolute-replaced-height-001.htm: Added.
        * css2.1/20110323/absolute-replaced-height-002.htm: Added.
        * css2.1/20110323/absolute-replaced-height-003.htm: Added.
        * css2.1/20110323/absolute-replaced-height-004.htm: Added.
        * css2.1/20110323/absolute-replaced-height-005.htm: Added.
        * css2.1/20110323/absolute-replaced-height-007.htm: Added.
        * css2.1/20110323/absolute-replaced-height-008.htm: Added.
        * css2.1/20110323/absolute-replaced-height-009.htm: Added.
        * css2.1/20110323/absolute-replaced-height-010.htm: Added.
        * css2.1/20110323/absolute-replaced-height-011.htm: Added.
        * css2.1/20110323/absolute-replaced-height-012.htm: Added.
        * css2.1/20110323/absolute-replaced-height-014.htm: Added.
        * css2.1/20110323/absolute-replaced-height-016.htm: Added.
        * css2.1/20110323/absolute-replaced-height-017.htm: Added.
        * css2.1/20110323/absolute-replaced-height-018.htm: Added.
        * css2.1/20110323/absolute-replaced-height-019.htm: Added.
        * css2.1/20110323/absolute-replaced-height-021.htm: Added.
        * css2.1/20110323/absolute-replaced-height-022.htm: Added.
        * css2.1/20110323/absolute-replaced-height-023.htm: Added.
        * css2.1/20110323/absolute-replaced-height-024.htm: Added.
        * css2.1/20110323/absolute-replaced-height-025.htm: Added.
        * css2.1/20110323/absolute-replaced-height-026.htm: Added.
        * css2.1/20110323/absolute-replaced-height-028.htm: Added.
        * css2.1/20110323/absolute-replaced-height-029.htm: Added.
        * css2.1/20110323/absolute-replaced-height-030.htm: Added.
        * css2.1/20110323/absolute-replaced-height-031.htm: Added.
        * css2.1/20110323/absolute-replaced-height-032.htm: Added.
        * css2.1/20110323/absolute-replaced-height-033.htm: Added.
        * css2.1/20110323/absolute-replaced-height-035.htm: Added.
        * css2.1/20110323/absolute-replaced-height-036.htm: Added.
        * css2.1/20110323/absolute-replaced-width-001.htm: Added.
        * css2.1/20110323/absolute-replaced-width-006.htm: Added.
        * css2.1/20110323/absolute-replaced-width-008.htm: Added.
        * css2.1/20110323/absolute-replaced-width-013.htm: Added.
        * css2.1/20110323/absolute-replaced-width-015.htm: Added.
        * css2.1/20110323/absolute-replaced-width-020.htm: Added.
        * css2.1/20110323/absolute-replaced-width-022.htm: Added.
        * css2.1/20110323/absolute-replaced-width-027.htm: Added.
        * css2.1/20110323/absolute-replaced-width-029.htm: Added.
        * css2.1/20110323/absolute-replaced-width-034.htm: Added.
        * css2.1/20110323/absolute-replaced-width-036.htm: Added.
        * css2.1/20110323/absolute-replaced-width-041.htm: Added.
        * css2.1/20110323/absolute-replaced-width-043.htm: Added.
        * css2.1/20110323/absolute-replaced-width-048.htm: Added.
        * css2.1/20110323/absolute-replaced-width-050.htm: Added.
        * css2.1/20110323/absolute-replaced-width-055.htm: Added.
        * css2.1/20110323/absolute-replaced-width-057.htm: Added.
        * css2.1/20110323/absolute-replaced-width-062.htm: Added.
        * css2.1/20110323/absolute-replaced-width-064.htm: Added.
        * css2.1/20110323/absolute-replaced-width-069.htm: Added.
        * css2.1/20110323/absolute-replaced-width-071.htm: Added.
        * css2.1/20110323/absolute-replaced-width-076.htm: Added.
        * css2.1/20110323/abspos-non-replaced-width-margin-000-ref.htm: Added.
        * css2.1/20110323/abspos-non-replaced-width-margin-000.htm: Added.
        * css2.1/20110323/abspos-replaced-width-margin-000-ref.htm: Added.
        * css2.1/20110323/abspos-replaced-width-margin-000.htm: Added.
        * css2.1/20110323/block-non-replaced-height-001.htm: Added.
        * css2.1/20110323/block-non-replaced-height-002.htm: Added.
        * css2.1/20110323/block-non-replaced-height-003.htm: Added.
        * css2.1/20110323/block-non-replaced-height-004.htm: Added.
        * css2.1/20110323/block-non-replaced-height-005.htm: Added.
        * css2.1/20110323/block-non-replaced-height-006.htm: Added.
        * css2.1/20110323/block-non-replaced-height-007.htm: Added.
        * css2.1/20110323/block-non-replaced-height-008.htm: Added.
        * css2.1/20110323/block-non-replaced-height-009.htm: Added.
        * css2.1/20110323/block-non-replaced-height-010.htm: Added.
        * css2.1/20110323/block-non-replaced-height-011.htm: Added.
        * css2.1/20110323/block-non-replaced-height-012.htm: Added.
        * css2.1/20110323/block-non-replaced-height-013.htm: Added.
        * css2.1/20110323/block-non-replaced-height-014.htm: Added.
        * css2.1/20110323/block-non-replaced-height-015.htm: Added.
        * css2.1/20110323/block-non-replaced-height-016.htm: Added.
        * css2.1/20110323/block-non-replaced-width-001.htm: Added.
        * css2.1/20110323/block-non-replaced-width-002.htm: Added.
        * css2.1/20110323/block-non-replaced-width-003.htm: Added.
        * css2.1/20110323/block-non-replaced-width-004.htm: Added.
        * css2.1/20110323/block-non-replaced-width-005.htm: Added.
        * css2.1/20110323/block-non-replaced-width-006.htm: Added.
        * css2.1/20110323/block-non-replaced-width-007.htm: Added.
        * css2.1/20110323/block-non-replaced-width-008.htm: Added.
        * css2.1/20110323/block-replaced-height-001.htm: Added.
        * css2.1/20110323/block-replaced-height-002.htm: Added.
        * css2.1/20110323/block-replaced-height-003.htm: Added.
        * css2.1/20110323/block-replaced-height-004.htm: Added.
        * css2.1/20110323/block-replaced-height-005.htm: Added.
        * css2.1/20110323/block-replaced-height-007.htm: Added.
        * css2.1/20110323/block-replaced-width-001.htm: Added.
        * css2.1/20110323/block-replaced-width-006.htm: Added.
        * css2.1/20110323/float-non-replaced-height-001.htm: Added.
        * css2.1/20110323/float-non-replaced-width-001.htm: Added.
        * css2.1/20110323/float-non-replaced-width-002.htm: Added.
        * css2.1/20110323/float-non-replaced-width-003.htm: Added.
        * css2.1/20110323/float-non-replaced-width-004.htm: Added.
        * css2.1/20110323/float-non-replaced-width-005.htm: Added.
        * css2.1/20110323/float-non-replaced-width-006.htm: Added.
        * css2.1/20110323/float-non-replaced-width-007.htm: Added.
        * css2.1/20110323/float-non-replaced-width-008.htm: Added.
        * css2.1/20110323/float-non-replaced-width-009.htm: Added.
        * css2.1/20110323/float-non-replaced-width-010.htm: Added.
        * css2.1/20110323/float-non-replaced-width-011.htm: Added.
        * css2.1/20110323/float-non-replaced-width-012.htm: Added.
        * css2.1/20110323/float-replaced-height-001.htm: Added.
        * css2.1/20110323/float-replaced-height-002.htm: Added.
        * css2.1/20110323/float-replaced-height-003.htm: Added.
        * css2.1/20110323/float-replaced-height-004.htm: Added.
        * css2.1/20110323/float-replaced-height-005.htm: Added.
        * css2.1/20110323/float-replaced-height-007.htm: Added.
        * css2.1/20110323/float-replaced-width-001.htm: Added.
        * css2.1/20110323/float-replaced-width-002.htm: Added.
        * css2.1/20110323/float-replaced-width-003.htm: Added.
        * css2.1/20110323/float-replaced-width-004.htm: Added.
        * css2.1/20110323/float-replaced-width-005.htm: Added.
        * css2.1/20110323/float-replaced-width-006.htm: Added.
        * css2.1/20110323/float-replaced-width-011.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-height-001.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-height-002.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-width-001.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-width-002.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-width-003.htm: Added.
        * css2.1/20110323/inline-block-non-replaced-width-004.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-001.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-002.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-003.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-004.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-005.htm: Added.
        * css2.1/20110323/inline-block-replaced-height-007.htm: Added.
        * css2.1/20110323/inline-block-replaced-width-001.htm: Added.
        * css2.1/20110323/inline-block-replaced-width-006.htm: Added.
        * css2.1/20110323/inline-non-replaced-height-002.htm: Added.
        * css2.1/20110323/inline-non-replaced-height-003.htm: Added.
        * css2.1/20110323/inline-non-replaced-width-001.htm: Added.
        * css2.1/20110323/inline-non-replaced-width-002.htm: Added.
        * css2.1/20110323/inline-replaced-height-001.htm: Added.
        * css2.1/20110323/inline-replaced-height-002.htm: Added.
        * css2.1/20110323/inline-replaced-height-003.htm: Added.
        * css2.1/20110323/inline-replaced-height-004.htm: Added.
        * css2.1/20110323/inline-replaced-height-005.htm: Added.
        * css2.1/20110323/inline-replaced-height-007.htm: Added.
        * css2.1/20110323/inline-replaced-width-001.htm: Added.
        * css2.1/20110323/inline-replaced-width-006.htm: Added.
        * css2.1/20110323/inline-replaced-width-011.htm: Added.
        * css2.1/20110323/inline-replaced-width-012.htm: Added.
        * css2.1/20110323/inline-replaced-width-013.htm: Added.
        * css2.1/20110323/inline-replaced-width-014.htm: Added.
        * css2.1/20110323/inline-replaced-width-015.htm: Added.
        * css2.1/20110323/replaced-elements-001.htm: Added.
        * css2.1/20110323/replaced-intrinsic-001.htm: Added.
        * css2.1/20110323/replaced-intrinsic-002.htm: Added.
        * css2.1/20110323/replaced-intrinsic-003.htm: Added.
        * css2.1/20110323/replaced-intrinsic-004.htm: Added.
        * css2.1/20110323/replaced-intrinsic-005.htm: Added.
        * css2.1/20110323/replaced-intrinsic-ratio-001.htm: Added.
        * css2.1/20110323/replaced-min-max-001.htm: Added.
        * css2.1/20110323/resources: Added.
        * css2.1/20110323/resources/1x1-green.png: Added.
        * css2.1/20110323/resources/1x1-lime.png: Added.
        * css2.1/20110323/resources/1x1-red.png: Added.
        * css2.1/20110323/resources/abspos-replaced-width-margin-000-narrow.png: Added.
        * css2.1/20110323/resources/abspos-replaced-width-margin-000-wide.png: Added.
        * css2.1/20110323/resources/blue15x15.png: Added.
        * css2.1/20110323/resources/blue96x96.png: Added.
        * css2.1/20110323/resources/intrinsic-ratio.svg: Added.
        * css2.1/20110323/resources/replaced-intrinsic-001.svg: Added.
        * css2.1/20110323/resources/replaced-intrinsic-002.svg: Added.
        * css2.1/20110323/resources/replaced-intrinsic-003.svg: Added.
        * css2.1/20110323/resources/replaced-intrinsic-004.svg: Added.
        * css2.1/20110323/resources/replaced-intrinsic-005.svg: Added.
        * css2.1/20110323/resources/replaced-min-max-1.png: Added.
        * css2.1/20110323/resources/replaced-min-max-10.png: Added.
        * css2.1/20110323/resources/replaced-min-max-11.png: Added.
        * css2.1/20110323/resources/replaced-min-max-12.png: Added.
        * css2.1/20110323/resources/replaced-min-max-13.png: Added.
        * css2.1/20110323/resources/replaced-min-max-14.png: Added.
        * css2.1/20110323/resources/replaced-min-max-15.png: Added.
        * css2.1/20110323/resources/replaced-min-max-16.png: Added.
        * css2.1/20110323/resources/replaced-min-max-17.png: Added.
        * css2.1/20110323/resources/replaced-min-max-18.png: Added.
        * css2.1/20110323/resources/replaced-min-max-19.png: Added.
        * css2.1/20110323/resources/replaced-min-max-2.png: Added.
        * css2.1/20110323/resources/replaced-min-max-3.png: Added.
        * css2.1/20110323/resources/replaced-min-max-4.png: Added.
        * css2.1/20110323/resources/replaced-min-max-5.png: Added.
        * css2.1/20110323/resources/replaced-min-max-6.png: Added.
        * css2.1/20110323/resources/replaced-min-max-7.png: Added.
        * css2.1/20110323/resources/replaced-min-max-8.png: Added.
        * css2.1/20110323/resources/replaced-min-max-9.png: Added.
        * css2.1/20110323/resources/replaced-min-max.png: Added.
        * css2.1/20110323/resources/swatch-green.png: Added.
        * css2.1/20110323/resources/swatch-white.png: Added.
        * css2.1/20110323/resources/test-bl.png: Added.
        * css2.1/20110323/resources/test-br.png: Added.
        * css2.1/20110323/resources/test-tl.png: Added.
        * css2.1/20110323/resources/test-tr.png: Added.
        * css2.1/20110323/width-non-replaced-inline-001.htm: Added.
        * css2.1/20110323/width-replaced-element-001.htm: Added.
        * http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm: Added.
        * http/tests/misc/resources/intrinsic-ratio-slow.pl: Added.
        * http/tests/misc/resources/intrinsic-ratio.svg: Added.
        * platform/mac/css2.1/20110323: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-height-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-013-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-014-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-015-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-016-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-017-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-018-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-019-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-020-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-021-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-022-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-023-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-non-replaced-width-024-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-008-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-009-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-010-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-011-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-012-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-014-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-014-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-016-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-016-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-017-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-017-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-018-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-018-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-019-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-019-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-021-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-021-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-022-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-022-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-023-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-023-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-024-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-024-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-025-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-025-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-026-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-026-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-028-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-028-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-029-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-029-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-030-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-030-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-031-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-031-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-032-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-032-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-033-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-033-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-035-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-035-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-036-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-height-036-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-008-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-013-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-013-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-015-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-015-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-020-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-020-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-022-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-022-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-027-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-027-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-029-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-029-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-034-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-034-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-036-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-036-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-041-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-041-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-043-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-043-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-048-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-048-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-050-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-050-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-055-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-055-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-057-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-057-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-062-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-062-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-064-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-064-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-069-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-069-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-071-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-071-expected.txt: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-076-expected.png: Added.
        * platform/mac/css2.1/20110323/absolute-replaced-width-076-expected.txt: Added.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
        * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
        * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-006-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-008-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-009-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-010-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-011-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-012-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-013-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-013-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-014-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-014-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-015-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-015-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-016-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-height-016-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-003-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-004-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-005-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-007-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-008-expected.png: Added.
        * platform/mac/css2.1/20110323/block-non-replaced-width-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/block-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/block-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-003-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-004-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-005-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-007-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-008-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-008-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-009-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-009-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-010-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-010-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-011-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-012-expected.png: Added.
        * platform/mac/css2.1/20110323/float-non-replaced-width-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-003-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-004-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-005-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-011-expected.png: Added.
        * platform/mac/css2.1/20110323/float-replaced-width-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-non-replaced-width-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-block-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-non-replaced-width-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-002-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-003-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-004-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-005-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-007-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-height-007-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-001-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-006-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-006-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-011-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-011-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-012-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-012-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-013-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-013-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-014-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-014-expected.txt: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-015-expected.png: Added.
        * platform/mac/css2.1/20110323/inline-replaced-width-015-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-elements-001-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-elements-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-001-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-002-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-002-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-003-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-003-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-004-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-004-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-005-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-005-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/replaced-min-max-001-expected.png: Added.
        * platform/mac/css2.1/20110323/replaced-min-max-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added.
        * platform/mac/css2.1/20110323/width-non-replaced-inline-001-expected.txt: Added.
        * platform/mac/css2.1/20110323/width-replaced-element-001-expected.png: Added.
        * platform/mac/css2.1/20110323/width-replaced-element-001-expected.txt: Added.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Added.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Added.
        * platform/mac/svg/hixie/text/003-expected.png: Slight width difference, but a progression, exactly like FF now.
        * platform/mac/svg/hixie/text/003-expected.txt: Ditto.
        * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
        * svg/zoom/page/resources/intrinsic-ratio.svg: Added.
        * svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm: Added.

2011-06-15  Kent Tamura  <tkent@chromium.org>

        [Win] Update expectation for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/win-xp/media/audio-repaint-expected.txt:

2011-06-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected file.

        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:

2011-06-14  Ryosuke Niwa  <rniwa@webkit.org>

        Skip editing/inserting/return-key-span-start.html added by r88890 on Mac WebKit2
        since TestRunner doesn't implement eventSender.keyDown.

        * platform/mac-wk2/Skipped:

2011-06-14  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by James Robinson.

        Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.destination-in.html
        https://bugs.webkit.org/show_bug.cgi?id=48293

        And

        Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.destination-in.html
        https://bugs.webkit.org/show_bug.cgi?id=48303

        * canvas/philip/tests/2d.composite.uncovered.pattern.destination-in-expected.txt:
        Added a trailing line.

        * fast/canvas/canvas-composite-alpha.html:
        Updated now that we clear what is outside the source.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        Update platform skipped lists.

2011-06-14  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaseline for r88883.

        * platform/gtk/fast/forms/basic-textareas-expected.txt:
        * platform/gtk/fast/forms/basic-textareas-quirks-expected.txt:

2011-06-14  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Span ID duplicated when pressing enter at beginning of span
        https://bugs.webkit.org/show_bug.cgi?id=62621

        Added test for span id not getting duplicated when span is cloned.

        * editing/inserting/return-key-span-start-expected.txt: Added.
        * editing/inserting/return-key-span-start.html: Added.

2011-06-14  Ryosuke Niwa  <rniwa@webkit.org>

        Mac, Windows, and Chromium rebaseline for r88883.

        * platform/chromium-linux/fast/forms/basic-textareas-expected.png:
        * platform/chromium-win/fast/forms/basic-textareas-expected.png:
        * platform/chromium-win/fast/forms/basic-textareas-expected.txt:
        * platform/chromium-win/fast/forms/basic-textareas-quirks-expected.txt:
        * platform/mac/fast/forms/basic-textareas-expected.png:
        * platform/win/fast/forms/basic-textareas-expected.txt:
        * platform/win/fast/forms/basic-textareas-quirks-expected.txt:

2011-06-14  Kent Tamura  <tkent@chromium.org>

        [Chromium][Qt] Assign new bug numbers for slider failures, and skip a test on Qt.

        * platform/chromium/test_expectations.txt:
        * platform/qt/Skipped:

2011-06-14  Chris Fleizach  <cfleizach@apple.com>

        Unreviewed. Fixing skip list.

        VoiceOver cannot navigate the itunes album view table
        https://bugs.webkit.org/show_bug.cgi?id=62335

        * platform/mac-leopard/Skipped:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by David Hyatt.

        Trailing tabs in a textarea become unselectable under certain conditions
        https://bugs.webkit.org/show_bug.cgi?id=54598

        Added a test to ensure Webkit renders leading whitespace when white-space is set to pre-wrap
        and word-wrap is set to break-word.

        Also rebaselined few tests because WebKit now renders leading whitespace in those tests.

        * fast/text/pre-wrap-trailing-tab-expected.txt: Added.
        * fast/text/pre-wrap-trailing-tab.html: Added.
        * http/tests/misc/acid3-expected.txt:
        * platform/mac/fast/forms/basic-textareas-expected.txt:
        * platform/mac/fast/forms/basic-textareas-quirks-expected.txt

2011-06-14  Ryosuke Niwa  <rniwa@webkit.org>

        Qt rebaseline after r88757.

        * platform/qt/fast/forms/range-thumb-height-percentage-expected.txt:
        * platform/qt/fast/forms/thumbslider-no-parent-slider-expected.txt:
        * platform/qt/fast/multicol/client-rects-expected.txt:

2011-06-14  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Turns out, inspector/cookie-parser.html can timeout out.

        * platform/chromium/test_expectations.txt: Added expectation of TIMEOUT.

2011-06-14  Jeffrey Pfau  <jpfau@apple.com>

        Reviewed by David Hyatt.

        Null dereference in WebCore::RenderBlock::splitFlow regarding use of multicol, inline-block, and spanning elements
        https://bugs.webkit.org/show_bug.cgi?id=60028

        Added test for spanning elements within an inline-block child of a multicol element.

        * fast/multicol/span/span-as-nested-inline-block-child.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/multicol/span/span-as-nested-inline-block-child-expected.png: Added.
        * platform/mac/fast/multicol/span/span-as-nested-inline-block-child-expected.txt: Added.

2011-06-14  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Record expectation of crash for inspector/cookie-parser.html.

        * platform/chromium/test_expectations.txt: Recorded.

2011-06-14  Chris Fleizach  <cfleizach@apple.com>

        Unreviewed.

        VoiceOver cannot navigate the itunes album view table
        https://bugs.webkit.org/show_bug.cgi?id=62335

        Tables are not supported on Leopard for accessibility.

        * platform/mac-leopard/Skipped:

2011-06-14  Wyatt Carss  <wcarss@google.com>

        Reviewed by Ryosuke Niwa.

        dump-as-text conversion: editing/deleting/5300379.html
        https://bugs.webkit.org/show_bug.cgi?id=62620

        Converted from pixel test to dump-as-text. This tests that delete backward 
        by word does not hang inside an empty div, and that delete backward by word
        deletes exactly one word.

        * editing/deleting/5300379-expected.txt: Added.
        * editing/deleting/5300379.html:
        * platform/chromium-win/editing/deleting/5300379-expected.txt: Removed.
        * platform/chromium-win/editing/deleting/5300379-expected.png: Removed.
        * platform/gtk/editing/deleting/5300379-expected.txt: Removed.
        * platform/gtk/editing/deleting/5300379-expected.png: Removed.
        * platform/mac/editing/deleting/5300379-expected.txt: Removed.
        * platform/mac/editing/deleting/5300379-expected.png: Removed.
        * platform/qt/editing/deleting/5300379-expected.txt: Removed.
        * platform/qt/editing/deleting/5300379-expected.png: Removed.

2011-06-14  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Laszlo Gombos.

        [Qt] fast/dom/HTMLScriptElement/nested-execution.html failed
        https://bugs.webkit.org/show_bug.cgi?id=62227

        * platform/qt/Skipped:

2011-06-14  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by David Kilzer.

        VoiceOver cannot navigate the itunes album view table
        https://bugs.webkit.org/show_bug.cgi?id=62335

        * platform/mac/accessibility/aria-grid-with-strange-hierarchy-expected.txt: Added.
        * platform/mac/accessibility/aria-grid-with-strange-hierarchy.html: Added.

2011-06-13  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Disable drawing for huge mask layers
        https://bugs.webkit.org/show_bug.cgi?id=62607

        * platform/chromium/compositing/huge-mask-layer-expected.txt: Added.
        * platform/chromium/compositing/huge-mask-layer.html: Added.

2011-06-14  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Add expectations for flaky tests.

        * platform/chromium/test_expectations.txt: Recorded flakiness.

2011-06-14  Sreeram Ramachandran  <sreeram@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Allow the console to persist on page refresh or navigation
        https://bugs.webkit.org/show_bug.cgi?id=53359

        Tests that console messages are preserved upon navigation.

        * inspector/console/console-preserve-log-expected.txt: Added.
        * inspector/console/console-preserve-log.html: Added.

2011-06-14  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: add tooltip to file select options in scripts panel.
        https://bugs.webkit.org/show_bug.cgi?id=62537

        * inspector/debugger/scripts-panel-expected.txt:
        * inspector/debugger/scripts-panel.html:

2011-06-14  Ademar de Souza Reis Jr.  <ademar.reis@openbossa.org>

        Unreviewed: unskip test rebasedlined by r88772

        [Qt] Rebaseline http/tests/misc/slow-loading-image-in-pattern.html after r69386 and r83871
        http://trac.webkit.org/changeset/88772

        The test was rebaselined but the committer forgot to remove it from
        the Skip list.

        * platform/qt/Skipped: unskip test

2011-06-14  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        <progress> should support :indeterminate pseudo-class
        https://bugs.webkit.org/show_bug.cgi?id=62430

        Skip new tests since Windows port does not support the progress element.

        * platform/win/Skipped:

2011-06-14  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Kent Tamura.

        <progress> should support :indeterminate pseudo-class
        https://bugs.webkit.org/show_bug.cgi?id=62430

        * fast/dom/HTMLProgressElement/indeterminate-progress-001.html: Added.
        * fast/dom/HTMLProgressElement/indeterminate-progress-002-expected.txt: Added.
        * fast/dom/HTMLProgressElement/indeterminate-progress-002.html: Added.
        * platform/mac/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.png: Added.
        * platform/mac/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-14  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: reload from within inspector window does not work while debugger is paused.
        https://bugs.webkit.org/show_bug.cgi?id=62631

        * inspector/debugger/debugger-reload-on-pause-expected.txt: Added.
        * inspector/debugger/debugger-reload-on-pause.html: Added.

2011-06-14  Kent Tamura  <tkent@chromium.org>

        [Chromium] Test expectation update for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/chromium-linux/fast/forms/box-shadow-override-expected.txt:
        * platform/chromium-linux/fast/forms/input-appearance-height-expected.txt:
        * platform/chromium-linux/fast/forms/input-appearance-range-expected.png: Added.
        * platform/chromium-linux/fast/forms/slider-thumb-stylability-expected.png: Removed.
        * platform/chromium-linux/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-linux/fast/multicol/client-rects-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/forms/box-shadow-override-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/input-appearance-height-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/input-appearance-range-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/slider-thumb-stylability-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-mac/fast/forms/box-shadow-override-expected.png: Added.
        * platform/chromium-mac/fast/forms/box-shadow-override-expected.txt: Added.
        * platform/chromium-mac/fast/forms/input-appearance-height-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-appearance-height-expected.txt: Added.
        * platform/chromium-mac/fast/forms/input-appearance-range-expected.png: Added.
        * platform/chromium-mac/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-win/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
        * platform/chromium-win/fast/forms/box-shadow-override-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-height-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-range-expected.png: Added.
        * platform/chromium-win/fast/forms/input-appearance-range-expected.txt: Added.
        * platform/chromium-win/fast/forms/range-thumb-height-percentage-expected.txt:
        * platform/chromium-win/fast/forms/slider-padding-expected.txt:
        * platform/chromium-win/fast/forms/slider-thumb-shared-style-expected.txt:
        * platform/chromium-win/fast/forms/slider-thumb-stylability-expected.png:
        * platform/chromium-win/fast/forms/slider-thumb-stylability-expected.txt: Removed.
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/dom/HTMLInputElement/input-slider-update-expected.txt.
        * platform/chromium-win/fast/multicol/client-rects-expected.txt:
        * platform/chromium-win/fast/repaint/slider-thumb-drag-release-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-14  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping test failing in the GTK bots.

        * platform/gtk/Skipped: Skipped test

2011-06-14  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baselines for GTK needed after r88266.

        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
        * platform/gtk/svg/custom/invalid-dasharray-expected.png: Added.
        * platform/gtk/svg/custom/invalid-dasharray-expected.txt: Added.

2011-06-14  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping tests crashing in the GTK bots.

        * platform/gtk/Skipped: Skipped tests.

2011-06-14  Kent Tamura  <tkent@chromium.org>

        [Mac-WK2] Rebaseline for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/mac-wk2/media/controls-without-preload-expected.txt:

2011-06-13  Kent Tamura  <tkent@chromium.org>

        [Win] More rebaseline for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/win/media/audio-repaint-expected.txt:

2011-06-13  Kent Tamura  <tkent@chromium.org>

        More Leopard and GTK rebaseline for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/gtk/fast/forms/input-appearance-range-expected.txt: Added.
        * platform/mac-leopard/media/audio-repaint-expected.txt: Added.
        * platform/mac-leopard/media/media-document-audio-repaint-expected.txt: Added.

2011-06-13  Kent Tamura  <tkent@chromium.org>

        [Win] Rebaseline for r88757.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        * platform/win/media/audio-controls-rendering-expected.txt:
        * platform/win/media/controls-after-reload-expected.txt:
        * platform/win/media/controls-strict-expected.txt:
        * platform/win/media/controls-styling-expected.txt:
        * platform/win/media/controls-without-preload-expected.txt:
        * platform/win/media/media-document-audio-repaint-expected.txt:
        * platform/win/media/video-controls-rendering-expected.txt:
        * platform/win/media/video-display-toggle-expected.txt:
        * platform/win/media/video-no-audio-expected.txt:

2011-06-13  Kent Tamura  <tkent@chromium.org>

        [GTK] Rebaseline for r88757.

        * platform/gtk/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/range-thumb-height-percentage-expected.txt:
        * platform/gtk/fast/forms/slider-padding-expected.txt:
        * platform/gtk/fast/forms/slider-thumb-shared-style-expected.txt:
        * platform/gtk/fast/forms/slider-thumb-stylability-expected.txt:
        * platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.txt:
        * platform/gtk/fast/layers/video-layer-expected.txt:
        * platform/gtk/fast/multicol/client-rects-expected.txt:
        * platform/gtk/fast/repaint/slider-thumb-drag-release-expected.txt:
        * platform/gtk/media/audio-controls-rendering-expected.txt:
        * platform/gtk/media/audio-repaint-expected.txt:
        * platform/gtk/media/controls-strict-expected.txt:
        * platform/gtk/media/controls-styling-expected.txt:
        * platform/gtk/media/controls-without-preload-expected.txt:
        * platform/gtk/media/media-document-audio-repaint-expected.txt:
        * platform/gtk/media/video-controls-rendering-expected.txt:
        * platform/gtk/media/video-empty-source-expected.txt:
        * platform/gtk/media/video-no-audio-expected.txt:
        * platform/gtk/media/video-zoom-controls-expected.txt:

2011-06-13  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Eric Seidel.

        [Qt] Rebaseline http/tests/misc/slow-loading-image-in-pattern.html after r69386 and r83871
        https://bugs.webkit.org/show_bug.cgi?id=62125


        Rebaseline LayoutTests/platform/qt/http/tests/misc/slow-loading-image-in-pattern-expected.txt after r69386 and r83871

        * platform/qt/http/tests/misc/slow-loading-image-in-pattern-expected.txt:

2011-06-13  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Reviewed by Eric Seidel.

        [Qt] Pass prototype-inheritance-2.html LayoutTest
        https://bugs.webkit.org/show_bug.cgi?id=62224

        Fix the expected result and remove the test from the Skipped list.

        * platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/qt/Skipped:

2011-06-13  Kent Tamura  <tkent@chromium.org>

        [Mac] Leopard expectation files for r88757.

        * platform/mac-leopard/media/controls-after-reload-expected.txt:
        * platform/mac-leopard/media/controls-strict-expected.txt:
        * platform/mac-leopard/media/controls-styling-expected.txt:
        * platform/mac-leopard/media/controls-without-preload-expected.txt:
        * platform/mac-leopard/media/video-controls-rendering-expected.txt:
        * platform/mac-leopard/media/video-display-toggle-expected.txt:
        * platform/mac-leopard/media/video-no-audio-expected.txt:

2011-06-13  Kent Tamura  <tkent@chromium.org>

        [Mac] Rebaseline for r88757.

        * media/audio-repaint-expected.txt:
        * media/media-document-audio-repaint-expected.txt:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Fix a typo in Mac WebKit2's skipped list.

        svg/custom/focus-event-handling-keyboard's extension is xhtml, not html.

        * platform/mac-wk2/Skipped:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Skip editing/pasteboard/smart-paste-004.html per bug 61633.

        * platform/win/Skipped:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test expectation update; svg/css/group-with-shadow.svg is passing on
        Windows Vista and Windows 7.

        * platform/chromium/test_expectations.txt:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Remove failing test expectation for plugins/npruntime/browser-object-identity.html
        on Chromium since it has been fixed by r88679.

        * platform/chromium/test_expectations.txt:

2011-06-10  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Use CSS machinery to position slider thumb.
        https://bugs.webkit.org/show_bug.cgi?id=52920

        Add two new tests, and update tests with sliders.

        * fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
        * fast/forms/input-appearance-range.html: Added.
        * fast/forms/slider-thumb-stylability.html: Remove text.
        * fast/forms/validation-message-on-range-expected.txt: Added.
        * fast/forms/validation-message-on-range.html: Added.
        * fast/multicol/client-rects-expected.txt:
        * fast/repaint/slider-thumb-float-expected.txt:
        * media/audio-repaint-expected.txt:
        * media/controls-without-preload-expected.txt:
        * media/media-document-audio-repaint-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped: Skip validaiton-message-on-range.html because
          this platform doesn't support the interactive validation.
        * platform/mac-wk2/Skipped: Skip validaiton-message-on-range.html.
        * platform/mac/fast/dom/HTMLInputElement/input-slider-update-expected.png:
        * platform/mac/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.png:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.png:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-range-expected.png: Added.
        * platform/mac/fast/forms/input-appearance-range-expected.txt: Added.
        * platform/mac/fast/forms/range-thumb-height-percentage-expected.txt:
        * platform/mac/fast/forms/slider-padding-expected.png:
        * platform/mac/fast/forms/slider-padding-expected.txt:
        * platform/mac/fast/forms/slider-thumb-shared-style-expected.png:
        * platform/mac/fast/forms/slider-thumb-shared-style-expected.txt:
        * platform/mac/fast/forms/slider-thumb-stylability-expected.png:
        * platform/mac/fast/forms/slider-thumb-stylability-expected.txt:
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.txt:
        * platform/mac/fast/repaint/slider-thumb-drag-release-expected.png:
        * platform/mac/fast/repaint/slider-thumb-drag-release-expected.txt:
        * platform/mac/media/audio-controls-rendering-expected.png:
        * platform/mac/media/audio-controls-rendering-expected.txt:
        * platform/mac/media/controls-after-reload-expected.png:
        * platform/mac/media/controls-after-reload-expected.txt:
        * platform/mac/media/controls-styling-expected.png:
        * platform/mac/media/controls-styling-expected.txt:
        * platform/qt/Skipped: Skip validaiton-message-on-range.html.
        * platform/win/Skipped: Skip validaiton-message-on-range.html.

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Another GTK rebaseline after r88717 because non-breaking spaces were somehow converted to
        regular spaces in r88742.

        * platform/gtk/editing/pasteboard/paste-xml-expected.txt:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines after r88617. The test is now passing on all platforms.

        * platform/chromium-mac-leopard/fast/repaint/selection-after-remove-expected.png: Added.
        * platform/chromium-mac/fast/repaint/selection-after-remove-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-13  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r88579-r88581): compositing/iframes/invisible-nested-iframe-show.html,
        compositing/tiling/huge-layer-add-remove-child.html failing on Windows 7 Release (Tests).
        https://bugs.webkit.org/show_bug.cgi?id=62566

        Add/update the (failing?) expected results for Windows in order to get the bots green.

        * platform/win/compositing/iframes/invisible-nested-iframe-show-expected.txt:
        * platform/win/compositing/tiling: Added.
        * platform/win/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.

2011-06-13  David Levin  <levin@chromium.org>

        Reviewed by Dmitry Titov.

        fast/workers/worker-close.html is flaky on slower machines.
        https://bugs.webkit.org/show_bug.cgi?id=62609

        * fast/workers/worker-close.html: Move a setTimeout to start after
        the response message is received to make the ordering of messages
        deterministic.

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac test expectation updates; Removed failing test expectations from
        various tests because they seem to be passing now.

        * platform/chromium/test_expectations.txt:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Skip test added by r88578 on GTK per bug 62585.

        * platform/gtk/Skipped:

2011-06-13  Jessie Berlin  <jberlin@apple.com>

        Add Windows-specific pixel and text results to account for the different design of the
        ying-yang character on Windows (and of course to get the bots green).

        * platform/win/svg/hixie/intrinsic: Added.
        * platform/win/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/win/svg/hixie/intrinsic/003-expected.txt: Added.

2011-06-13  Kentaro Hara  <haraken@google.com>

        Reviewed by Alexey Proskuryakov.

        Add a new test for checking rounding error in printing codes
        https://bugs.webkit.org/show_bug.cgi?id=61256

        Add a new test (printing/page-count-with-one-word.html). This test
        checks if only one page is printed for an HTML page with one word for
        various paper sizes around A4 portrait size, i.e. [530px, 560px) for
        width and [730px, 760px) for height.

        * printing/page-count-with-one-word-expected.txt: Added.
        * printing/page-count-with-one-word.html: Added.

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Mac, GTK, and Qt rebaselines after r88717.

        * platform/gtk/editing/pasteboard/paste-xml-expected.txt:
        * platform/mac/editing/pasteboard/paste-xml-expected.txt:

2011-06-13  Jeffrey Pfau  <jpfau@apple.com>

        Reviewed by Darin Adler.

        Crash in WebCore::RenderMathMLUnderOver::layout()
        https://bugs.webkit.org/show_bug.cgi?id=57900

        Added a test that tries to remove the children of munder, mover and munderover elements.

        * mathml/munderover-remove-children-expected.txt: Added.
        * mathml/munderover-remove-children.html: Added.

2011-06-13  Wyatt Carss  <wcarss@google.com>

        Reviewed by Ryosuke Niwa.

        dump-as-markup conversion: editing/pasteboard/paste-xml.xhtml
        https://bugs.webkit.org/show_bug.cgi?id=58159

        Converted to dump the key part of page as text. The platform-dependent files are
        copied from the previous setup of this test, as mac appears to do something different
        in its delegate info -- 'insertText' instead of 'insertNode', and some differences
        in how it counts indices. Note that chromium-mac works the same as chromium-win, but
        would hit mac first. GTK appears to pass for now; if tests fail we'll reorganize these
        a bit accordingly.

        * editing/pasteboard/paste-xml.xhtml:
        * platform/chromium-linux/editing/pasteboard/paste-xml-expected.png: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-xml-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-xml-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-xml-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/mac/editing/pasteboard/paste-xml-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-xml-expected.txt:
        * platform/win/editing/pasteboard/paste-xml-expected.txt:

2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Eric Seidel.

        IndexedDB test: Infinity as key
        https://bugs.webkit.org/show_bug.cgi?id=62285

        * storage/indexeddb/key-type-infinity-expected.txt: Added.
        * storage/indexeddb/key-type-infinity.html: Added.

2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Eric Seidel.

        IndexedDB test: odd database names
        https://bugs.webkit.org/show_bug.cgi?id=62322

        * storage/indexeddb/database-odd-names-expected.txt: Added.
        * storage/indexeddb/database-odd-names.html: Added.

2011-06-13  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] [Qt] Eliminate duplicate TestNetscapePlugin implementation
        https://bugs.webkit.org/show_bug.cgi?id=62385

        Remove adjustCursorEvent from platform-specific test expectation for Chromium Linux,
        since the TestPlugin no longer prints this event.

        * platform/chromium-linux/plugins/mouse-events-expected.txt: Remove adjustCursorEvent output.

2011-06-13  Nate Chapin  <japhet@chromium.org>

        Reviewed by Adam Barth.

        Rewrite a bunch of XHR-based tests to use waitUntilDone()/notifyDone().
        https://bugs.webkit.org/show_bug.cgi?id=62066

        * fast/xmlhttprequest/xmlhttprequest-gc.html:
        * fast/xmlhttprequest/xmlhttprequest-get.xhtml:
        * fast/xmlhttprequest/xmlhttprequest-html-response-encoding.html:
        * html5lib/runner.html:
        * html5lib/webkit-resumer.html:
        * http/tests/xmlhttprequest/access-control-basic-denied-preflight-cache.html:
        * http/tests/xmlhttprequest/access-control-basic-non-simple-allow-async.html:
        * http/tests/xmlhttprequest/access-control-preflight-async-header-denied.html:
        * http/tests/xmlhttprequest/access-control-preflight-async-method-denied.html:
        * http/tests/xmlhttprequest/access-control-preflight-async-not-supported.html:
        * http/tests/xmlhttprequest/cross-origin-preflight-get.html:
        * http/tests/xmlhttprequest/event-listener-gc.html:
        * http/tests/xmlhttprequest/interactive-state.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-004-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-005-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-006-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-007-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-008-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-009-iframe.html:
        * http/tests/xmlhttprequest/resources/uri-resolution-opera-open-010-iframe.html:
        * http/tests/xmlhttprequest/response-encoding.html:
        * http/tests/xmlhttprequest/simple-cross-origin-progress-events.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-004.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-005.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-006.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-007.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-008.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-009.html:
        * http/tests/xmlhttprequest/uri-resolution-opera-open-010.html:
        * http/tests/xmlhttprequest/web-apps/001.html:
        * http/tests/xmlhttprequest/xmlhttprequest-50ms-download-dispatch.html:
        * http/tests/xmlhttprequest/xmlhttprequest-crlf-getAllResponseHeader.html:
        * http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect.html:
        * http/tests/xmlhttprequest/zero-length-response.html:

2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Eric Seidel.

        IndexedDB test: readonly properties
        https://bugs.webkit.org/show_bug.cgi?id=62392

        * storage/indexeddb/readonly-expected.txt: Added.
        * storage/indexeddb/readonly.html: Added.

2011-06-13  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Dimitri Glazkov.

        Convert editing/execCommand/outdent-selection.html to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=62582

        Convert the test to dump as markup and clean up the HTML.

        * editing/execCommand/outdent-selection-expected.txt: Added.
        * editing/execCommand/outdent-selection.html:
        * platform/chromium-linux/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/chromium-mac/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/chromium-win/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/chromium-win/editing/execCommand/outdent-selection-expected.txt: Removed.
        * platform/gtk/editing/execCommand/outdent-selection-expected.txt: Removed.
        * platform/mac-leopard/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/mac/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/mac/editing/execCommand/outdent-selection-expected.txt: Removed.
        * platform/qt/editing/execCommand/outdent-selection-expected.png: Removed.
        * platform/qt/editing/execCommand/outdent-selection-expected.txt: Removed.

2011-06-13  Adrienne Walker  <enne@google.com>

        Reviewed by Simon Fraser.

        Overlap test needs to consider children of composited layers
        https://bugs.webkit.org/show_bug.cgi?id=62465

        * compositing/layer-creation/overlap-child-layer-expected.png: Added.
        * compositing/layer-creation/overlap-child-layer-expected.txt: Added.
        * compositing/layer-creation/overlap-child-layer.html: Added.

2011-06-13  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Correctly classify the test as failing.

        * platform/chromium/test_expectations.txt: It's failing.

2011-06-13  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Record more flakiness...

        * platform/chromium/test_expectations.txt: Added expectation of flakiness.

2011-06-13  Jessie Berlin  <jberlin@apple.com>

        [Windows Tests] EventSender.contextClick() needs to return a JS array of the context menu
        items.
        https://bugs.webkit.org/show_bug.cgi?id=62597

        Add editing/pasteboard/copy-standalone-image-crash.htm to the Windows skipped list, since
        it depends on getting a list of the context menu items.

        * platform/win/Skipped:

2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>

        Windows rebaseline after r62565. The failure is tracked by the bug 62565.

        * platform/win/fast/harness/results-expected.txt:

2011-06-13  David Levin  <levin@chromium.org>

        Test fix for Windows.

        [Windows] Web Worker test causes script error on Windows platform alone.
        https://bugs.webkit.org/show_bug.cgi?id=62595

        * platform/win/Skipped: Skipped the test with the problem.

2011-06-13  Jessie Berlin  <jberlin@apple.com>

        plugins/mouse-events and plugins/mouse-events-fixedpos don't fire events on the plugin.
        https://bugs.webkit.org/show_bug.cgi?id=33973

        Update the Windows-specific results to reflect that the mouseUp and mouseDown events are
        getting fired on the plugin, but not the getFocusEvent in order to get the bots green.

        * platform/win/plugins/mouse-events-expected.txt:
        * platform/win/plugins/mouse-events-fixedpos-expected.txt:

2011-06-13  Nate Chapin  <japhet@chromium.org>

        Reviewed by Darin Fisher.

        Test for https://bugs.webkit.org/show_bug.cgi?id=61482,
        mostly written by Kelly Norton (knorton@google.com).

        * plugins/npruntime/embed-property-equality-expected.txt: Added.
        * plugins/npruntime/embed-property-equality.html: Added.

2011-06-13  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Alexey Proskuryakov.

        chrome.dll!WebCore::Node::createRendererIfNeeded ReadAV@NULL (7079875ef32458c5c891a311715b683f)
        https://bugs.webkit.org/show_bug.cgi?id=49316

        The bug got fixed, thus just landing the test case. Including another test case from
        http://code.google.com/p/chromium/issues/detail?id=61562
        which should have the same root cause.

        * fast/html/crash-style-first-letter-expected.txt: Added.
        * fast/html/crash-style-first-letter.html: Added.
        * svg/custom/svg-use-style-float-crash-expected.txt: Added.
        * svg/custom/svg-use-style-float-crash.svg: Added.

2011-06-13  James Robinson  <jamesr@chromium.org>

        [chromium] Fix up a boo-boo in GPU test expectations

        * platform/chromium/test_expectations.txt:

2011-06-13  David Levin  <levin@chromium.org>

        Test run fix.

        [GTK] DumpRenderTree doesn't block external requests.
        https://bugs.webkit.org/show_bug.cgi?id=62585

        * platform/gtk/Skipped: Skipping a test which depends on this.

2011-06-13  Robert Hogan  <robert@webkit.org>

        Unreviewed, cleanup r87611. 

        [Qt]Unskip fast/events/backspace-navigates-back.html

        This should have been unskipped by http://trac.webkit.org/changeset/87611

        * platform/qt/Skipped:

2011-06-13  Jessie Berlin  <jberlin@apple.com>

        Remove an extra space in the Windows-specific failing expected results to ge the bots
        green.

        * platform/win/printing/page-count-relayout-shrink-expected.txt:

2011-06-13  James Robinson  <jamesr@chromium.org>

        [chromium] Clean up GPU test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: complex keyPaths
        https://bugs.webkit.org/show_bug.cgi?id=62468

        * storage/indexeddb/keyPath-expected.txt: Added.
        * storage/indexeddb/keyPath.html: Added.

2011-06-13  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimation should use direct unit animation for SVGLength
        https://bugs.webkit.org/show_bug.cgi?id=61368

        Added new tests to check correct behavior of SVGLength animations.

        * svg/animations/script-tests/svglength-animation-LengthModeHeight.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-LengthModeOther.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-LengthModeWidth.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-invalid-value-1.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-invalid-value-2.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-invalid-value-3.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-number-to-number.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-cm.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-ems.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-exs.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-in.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-number.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-pc.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-percentage.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-pt.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-px-to-px.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/svglength-animation-values.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (sample4):
        (sample5):
        (executeTest):
        * svg/animations/svglength-animation-LengthModeHeight-expected.txt: Added.
        * svg/animations/svglength-animation-LengthModeHeight.html: Added.
        * svg/animations/svglength-animation-LengthModeOther-expected.txt: Added.
        * svg/animations/svglength-animation-LengthModeOther.html: Added.
        * svg/animations/svglength-animation-LengthModeWidth-expected.txt: Added.
        * svg/animations/svglength-animation-LengthModeWidth.html: Added.
        * svg/animations/svglength-animation-invalid-value-1-expected.txt: Added.
        * svg/animations/svglength-animation-invalid-value-1.html: Added.
        * svg/animations/svglength-animation-invalid-value-2-expected.txt: Added.
        * svg/animations/svglength-animation-invalid-value-2.html: Added.
        * svg/animations/svglength-animation-invalid-value-3-expected.txt: Added.
        * svg/animations/svglength-animation-invalid-value-3.html: Added.
        * svg/animations/svglength-animation-number-to-number-expected.txt: Added.
        * svg/animations/svglength-animation-number-to-number.html: Added.
        * svg/animations/svglength-animation-px-to-cm-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-cm.html: Added.
        * svg/animations/svglength-animation-px-to-ems-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-ems.html: Added.
        * svg/animations/svglength-animation-px-to-exs-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-exs.html: Added.
        * svg/animations/svglength-animation-px-to-in-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-in.html: Added.
        * svg/animations/svglength-animation-px-to-number-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-number.html: Added.
        * svg/animations/svglength-animation-px-to-pc-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-pc.html: Added.
        * svg/animations/svglength-animation-px-to-percentage-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-percentage.html: Added.
        * svg/animations/svglength-animation-px-to-pt-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-pt.html: Added.
        * svg/animations/svglength-animation-px-to-px-expected.txt: Added.
        * svg/animations/svglength-animation-px-to-px.html: Added.
        * svg/animations/svglength-animation-values-expected.txt: Added.
        * svg/animations/svglength-animation-values.html: Added.

2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: setVersion() version argument is required
        https://bugs.webkit.org/show_bug.cgi?id=62401

        * storage/indexeddb/setVersion-undefined-expected.txt: Added.
        * storage/indexeddb/setVersion-undefined.html: Added.

2011-06-13  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Clean up test expectations, add a flake.

        * platform/chromium/test_expectations.txt: Cleaned up.

2011-06-13  Dirk Schulze  <krit@webkit.org>

        Rubber-stamped by Rob Buis.

        SVG patternTransform not animatable
        https://bugs.webkit.org/show_bug.cgi?id=62538

        Removing 'transform' animation test. It was added as an example for animateTransform tests but fails on some platforms.
        Also it is not part of the fix for 'patternTransform' animation. The test for 'patternTransform' works.
        Adding animateTransform-pattern-transform to the skip list of Mac WebKit2, like all other animation or dynamic-update tests.

        * platform/mac-wk2/Skipped:
        * svg/animations/animateTransform-transformable-transform-expected.txt: Removed.
        * svg/animations/animateTransform-transformable-transform.html: Removed.
        * svg/animations/script-tests/animateTransform-transformable-transform.js: Removed.

2011-06-13  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Updated Leopard pixel baselines.

        * platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-image-rotate-transform-expected.png:
        * platform/chromium-mac-leopard/fast/borders/outline-alpha-block-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/outline-alpha-inline-expected.png: Added.
        * platform/chromium-mac-leopard/fast/inline/inline-wrap-with-parent-padding-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-13  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Update test expectations.

        * platform/chromium-mac-leopard/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-13  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Update test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-13  Young Han Lee  <joybro@company100.net>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Accelerated animation is repeating as if its direction property is always 'alternate'.
        https://bugs.webkit.org/show_bug.cgi?id=62281

        syncAnimations() has miscalculated a normalized progress value as if the animation always has alternate direction property.

        * animations/animation-direction-normal-expected.png: Added.
        * animations/animation-direction-normal-expected.txt: Added.
        * animations/animation-direction-normal.html: Added.

2011-06-13  Dirk Schulze  <krit@webkit.org>

        Reviewed by Rob Buis.

        SVG patternTransform not animatable
        https://bugs.webkit.org/show_bug.cgi?id=62538

        Test SVG animateTransform for attributes 'transform' and 'patternTransform'.

        * svg/animations/animateTransform-pattern-transform-expected.txt: Added.
        * svg/animations/animateTransform-pattern-transform.html: Added.
        * svg/animations/animateTransform-transformable-transform-expected.txt: Added.
        * svg/animations/animateTransform-transformable-transform.html: Added.
        * svg/animations/script-tests/animateTransform-pattern-transform.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/script-tests/animateTransform-transformable-transform.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):

2011-06-13  Vitaly Repeshko  <vitalyr@chromium.org>

        Unreviewed.

        [chromium] Update test expectations.

        * platform/chromium/test_expectations.txt:

2011-06-12  MORITA Hajime  <morrita@google.com>

        Unreviewed, rolling out r88625.
        http://trac.webkit.org/changeset/88625
        https://bugs.webkit.org/show_bug.cgi?id=61073

        Breaks SL Webkit2 Tests

        * platform/mac-wk2/Skipped:

2011-06-12  Hironori Bono  <hbono@chromium.org>

        Reviewed by Hajime Morita.

        Add null checks to HTMLTextAreaElement::removeSpellcheckRange().
        https://bugs.webkit.org/show_bug.cgi?id=62526

        This change adds null checks to the following function to prevent crashes
        when calling removeSpellcheckRange() with null:
        HTMLTextAreaElement::removeSpellcheckRange(),
        HTMLInputElement::removeSpellcheckRange(), and
        HTMLDivElement::removeSpellcheckRange().

        * editing/spelling/spellcheck-api-crash-expected.txt: Added.
        * editing/spelling/spellcheck-api-crash.html: Added.

2011-06-12  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>

        Reviewed by Antonio Gomes.

        [Qt] LayoutTestController needs setTextDirection implementation
        https://bugs.webkit.org/show_bug.cgi?id=62442

        Unskipping fast/html/set-text-direction.html. 

        * platform/qt/Skipped:

2011-06-12  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Hajime Morita.

        Add window.internals to WebKit2's WebKitTestRunner.
        https://bugs.webkit.org/show_bug.cgi?id=61073

        * platform/mac-wk2/Skipped: unskip fast/harness/internals-object.html

2011-06-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88616.
        http://trac.webkit.org/changeset/88616
        https://bugs.webkit.org/show_bug.cgi?id=62517

        It broke editing/text-iterator/findString.html (Requested by
        tonikitoo on #webkit).

        * platform/qt/Skipped:

2011-06-12  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>

        Reviewed by Antonio Gomes.

        [Qt] LayoutTestController needs setTextDirection implementation
        https://bugs.webkit.org/show_bug.cgi?id=62442

        Unskipping fast/html/set-text-direction.html. 

        * platform/qt/Skipped:

2011-06-12  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Fix methods.html and methods-lower-case.html
        https://bugs.webkit.org/show_bug.cgi?id=62221

        Our expectations for the unskipped tests have the following differences from the mac
        platform:
          - POST requests with no data get a default Content-Type of 'application/octet-stream' in
            Qt 4.8 and 'application/x-www-form-urlencoded' in Qt 4.7.3.
            This is Qt-defined behaviour in QNetworkAccessManager (see QHttpNetworkRequestPrivate::header
            in qhttpnetworkrequest.cpp)
          - DELETE and HEAD requests get their ContentType and ContentLength headers (if present) removed
            by QNetworkReplyHandler. QtWebKit does not send data for either of these request types.

        * platform/qt-4.8/http/tests/xmlhttprequest/methods-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/methods-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Added.
        * platform/qt/Skipped: Unskip: http/tests/xmlhttprequest/methods.html
                                       http/tests/xmlhttprequest/methods-lower-case.html
                                       http/tests/xmlhttprequest/workers/methods-async.html
                                       http/tests/xmlhttprequest/workers/methods.html
                                       http/tests/xmlhttprequest/workers/shared-worker-methods-async.html
        * platform/qt/http/tests/xmlhttprequest/methods-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/methods-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Added.

2011-06-11  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline after r85560.

        Also update test expectation for svg/W3C-SVG-1.1/text-intro-05-t.svg
        because it has been passing on Mac.

        * platform/chromium-linux/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r88569.
        http://trac.webkit.org/changeset/88569
        https://bugs.webkit.org/show_bug.cgi?id=62398

        Broke Chromium browser test:
        IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest

        * storage/indexeddb/database-name-undefined-expected.txt: Removed.
        * storage/indexeddb/database-name-undefined.html: Removed.

2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Remove expectation of failure after clobber.
        https://bugs.webkit.org/show_bug.cgi?id=62364

        * platform/chromium/test_expectations.txt: Removed.

2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r88565.
        http://trac.webkit.org/changeset/88565
        https://bugs.webkit.org/show_bug.cgi?id=62401

        Broke Chromium browser test:
        IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest

        * storage/indexeddb/setVersion-undefined-expected.txt: Removed.
        * storage/indexeddb/setVersion-undefined.html: Removed.

2011-06-10  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Simon Fraser.

        Tests that accessing the parent element sheet of an inline style, link
        declaration of styled, body elements which are removed from document,
        does not result in crash.
        https://bugs.webkit.org/show_bug.cgi?id=62230

        * fast/dom/body-link-decl-parent-crash-expected.txt: Added.
        * fast/dom/body-link-decl-parent-crash.html: Added.
        * fast/dom/styled-inline-style-decl-parent-crash-expected.txt: Added.
        * fast/dom/styled-inline-style-decl-parent-crash.html: Added.

2011-06-10  Ryosuke Niwa  <rniwa@webkit.org>

        Skip inspector/profiler/cpu-profiler-profiling-without-inspector.html and
        svg/custom/focus-event-handling-keyboard.html on Mac WebKit2
        because they use DRT features not supported by WebKitTestRunner.

        * platform/mac-wk2/Skipped:

2011-06-10  Ryosuke Niwa  <rniwa@webkit.org>

        GTK and Qt rebaselines after r88555.

        * platform/gtk/svg/custom/focus-ring-expected.txt:
        * platform/qt/svg/custom/focus-ring-expected.txt:

2011-06-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium gpu baselines

        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/clip-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/repaint-foreground-layer-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/iframes/iframe-content-flipping-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/overflow/zero-size-overflow-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/reflections/backface-hidden-reflection-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/repaint/content-into-overflow-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/repaint/overflow-into-content-expected.png: Removed.
        * platform/chromium-gpu-win/compositing/geometry/clip-expected.txt: Removed.
        * platform/chromium-gpu-win/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/foreground-layer-expected.txt: Added.
        * platform/chromium-gpu-win/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
        * platform/chromium-gpu-win/compositing/overflow/clip-descendents-expected.txt:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/reflection-on-composited-expected.png:
        * platform/chromium-gpu-win/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-win/compositing/tiling/huge-layer-add-remove-child-expected.txt:
        * platform/chromium-gpu-win/compositing/tiling/huge-layer-expected.txt:
        * platform/chromium-gpu-win/compositing/tiling/huge-layer-resize-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-10  Ryosuke Niwa  <rniwa@webkit.org>

        Windows and Chromium rebaselines after r88592. Apparently, some tests are failing on Windows.

        * platform/chromium/fast/harness/results-expected.txt:
        * platform/win/fast/harness/results-expected.txt:

2011-06-10  Ryosuke Niwa  <rniwa@webkit.org>

        Add fail expectation to fast/dom/navigator-detached-no-crash.htm on Chromium Mac
        because it has been failing on the bot; the failure is tracked by the bug 62364.

        * platform/chromium/test_expectations.txt:

2011-06-10  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Ojan Vafai.

        new-run-webkit-tests: results.html don't list the same list of failed tests as bots do
        https://bugs.webkit.org/show_bug.cgi?id=62425

        Fixed the bug by hiding expected crash, timeout, pass, etc... by default.

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:
        * fast/harness/results.html:

2011-06-10  Jer Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        REGRESSION: End of apple.com video in full-screen mode leads to unusable page.
        https://bugs.webkit.org/show_bug.cgi?id=62411

        * fullscreen/full-screen-remove-ancestor-after-expected.txt: Added.
        * fullscreen/full-screen-remove-ancestor-after.html: Added.
        * platform/mac/fullscreen/full-screen-remove-ancestor-after-expected.png: Added.

2011-06-10  James Robinson  <jamesr@chromium.org>

        [chromium] Update chromium compositor baselines for r88580

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/clip-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/overflow/clip-descendents-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/reflection-on-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-expected.txt: Added.
        * platform/chromium-gpu-linux/compositing/tiling/huge-layer-resize-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/geometry/foreground-layer-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/reflections/nested-reflection-transformed-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/nested-reflection-transformed2-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/reflection-in-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/reflection-on-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/shadows/shadow-drawing-expected.png:
        * platform/chromium-gpu-mac/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/tiling/huge-layer-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/tiling/huge-layer-resize-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-10  James Simonsen  <simonjam@chromium.org>

        Unreviewed, missing expectations for non-V8 from change 88584.
        https://bugs.webkit.org/show_bug.cgi?id=62412

        * html5lib/runner-expected.txt:

2011-06-10  James Simonsen  <simonjam@chromium.org>

        Reviewed by Eric Seidel.

        <script> inside <svg> should be executed
        https://bugs.webkit.org/show_bug.cgi?id=62412

        * platform/chromium/html5lib/runner-expected.txt: Passes another test.
        * svg/dom/range-delete-expected.txt: Removed.
        * svg/dom/range-delete.html: Removed.
        * svg/dom/use-style-recalc-script-execute-crash-expected.txt: Now expected to execute script (and not crash).
        * svg/dom/use-style-recalc-script-execute-crash.html:
        * svg/in-html/resources/external.js: Added.
        * svg/in-html/script-expected.txt: Added.
        * svg/in-html/script-external-expected.txt: Added.
        * svg/in-html/script-external.html: Added.
        * svg/in-html/script-nested-expected.txt: Added.
        * svg/in-html/script-nested.html: Added.
        * svg/in-html/script-write-expected.txt: Added.
        * svg/in-html/script-write.html: Added.
        * svg/in-html/script.html: Added.

2011-06-10  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        Script-created parsers should ignore data from the network
        https://bugs.webkit.org/show_bug.cgi?id=62336

        Triggering this condition is very hard to do deterministically.  This
        test attempts to trigger the condition by sending exactly the right
        number of bytes for the Chromium network stack.  As network stacks vary
        and evolve, it's likely we'll lose test coverage for this issue, but
        this is the best test I could come up with.

        * fast/parser/document-write-ignores-later-network-bytes-expected.txt: Added.
        * fast/parser/document-write-ignores-later-network-bytes.html: Added.

2011-06-10  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Keep overlap testing logic until real 3d transforms are being used
        https://bugs.webkit.org/show_bug.cgi?id=49857

        New tests:
        * compositing/layer-creation/rotate3d-overlap-expected.txt: Added.
        * compositing/layer-creation/rotate3d-overlap.html: Added.
        * compositing/layer-creation/translatez-overlap-expected.txt: Added.
        * compositing/layer-creation/translatez-overlap.html: Added.

        Changed to use a non-zero z offset to preserve old behavior:
        * compositing/geometry/ancestor-overflow-change-expected.txt:
        * compositing/geometry/ancestor-overflow-change.html:
        * compositing/geometry/clip-expected.txt:
        * compositing/geometry/clip.html:
        * compositing/geometry/foreground-layer-expected.txt:
        * compositing/geometry/foreground-layer.html:
        * compositing/iframes/invisible-nested-iframe-show-expected.txt:
        * compositing/iframes/invisible-nested-iframe-show.html:
        * compositing/overflow/clip-descendents-expected.txt:
        * compositing/overflow/clip-descendents.html:

        New results with extra layers, but will be fixed via bug 50192.
        * compositing/tiling/huge-layer-add-remove-child-expected.txt:
        * compositing/tiling/huge-layer-expected.txt:
        * compositing/tiling/huge-layer-resize-expected.txt:

2011-06-10  David Levin  <levin@chromium.org>

        Reviewed by Dmitry Titov.

        Web Worker fails to fire error event when a resource fetch fails.
        https://bugs.webkit.org/show_bug.cgi?id=62475

        * http/tests/workers/worker-workerScriptNotThere-expected.txt: Added.
        * http/tests/workers/worker-workerScriptNotThere.html: Added.

2011-06-10  David Levin  <levin@chromium.org>

        Reviewed by Dmitry Titov.

        Fetching a Worker with url that isn't allowed from a file based test causes DRT to crash.
        https://bugs.webkit.org/show_bug.cgi?id=62469

        * fast/workers/worker-crash-with-invalid-location-expected.txt: Added.
        * fast/workers/worker-crash-with-invalid-location.html: Added.

2011-06-10  David Levin  <levin@chromium.org>

        Reviewed by Adam Barth.

        Add tests for Web Workers at invalid urls.
        https://bugs.webkit.org/show_bug.cgi?id=62486

        * http/tests/workers/shared-worker-invalid-url-expected.txt: Added.
        * http/tests/workers/shared-worker-invalid-url.html: Added.
        * http/tests/workers/worker-invalid-url-expected.txt: Added.
        * http/tests/workers/worker-invalid-url.html: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Turns out, linux baseline isn't spurious.

        * platform/chromium-linux/fast/dom/navigator-detached-no-crash-expected.txt: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Remove all spurious copies of test expectations that somehow made it into the tree.

        * platform/chromium-linux/fast/dom/navigator-detached-no-crash-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/dom/navigator-detached-no-crash-expected.txt: Removed.
        * platform/chromium-mac/fast/dom/navigator-detached-no-crash-expected.txt: Removed.
        * platform/mac/fast/dom/navigator-detached-no-crash-expected.txt: Removed.

2011-06-10  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: indexedDB.open() name argument is required
        https://bugs.webkit.org/show_bug.cgi?id=62398

        * storage/indexeddb/database-name-undefined-expected.txt: Added.
        * storage/indexeddb/database-name-undefined.html: Added.

2011-06-10  Emil A Eklund  <eae@chromium.org>

        Land Windows expectations for new test added in r88556.

        * platform/win/printing/page-count-relayout-shrink-expected.txt: Added.

2011-06-10  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB: setVersion() version argument is required
        https://bugs.webkit.org/show_bug.cgi?id=62401

        * storage/indexeddb/setVersion-undefined-expected.txt: Added.
        * storage/indexeddb/setVersion-undefined.html: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Land expectations for a test, added in r88556.

        * platform/chromium-mac/printing/page-count-relayout-shrink-expected.txt: Added.
        * platform/chromium-win/printing/page-count-relayout-shrink-expected.txt: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        [V8] Add failure expectation for a test, added in r88559.

        * platform/chromium/test_expectations.txt: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Remove expectation of crash, fixed in r88551.

        * platform/chromium/test_expectations.txt: Removed expectation.

2011-06-10  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=55347
        "name" and "message" enumerable on *Error.prototype

        This arises from chapter 15 of the spec:
            "Every other property described in this clause has the attributes
            { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true }
            unless otherwise specified."
        Standardized properties are not enumerable.

        * fast/js/exception-properties-expected.txt: Added.
        * fast/js/exception-properties.html: Added.
        * fast/js/script-tests/exception-properties.js: Added.
        (enumerableProperties):

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Update expectations after r88555.

        * platform/chromium-win/svg/custom/focus-ring-expected.txt: Updated.

2011-06-10  Emil A Eklund  <eae@chromium.org>

        Reviewed by Eric Seidel.

        Regression r85573: Blank pages appear at the end of some wikipedia documents.
        https://bugs.webkit.org/show_bug.cgi?id=62343

        Fix regression caused by r85573. Cached document size not updated after layout.

        * platform/chromium-linux/printing/page-count-relayout-shrink-expected.txt: Added.
        * platform/mac/printing/page-count-relayout-shrink-expected.txt: Added.
        * printing/page-count-relayout-shrink.html: Added.

2011-06-10  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        animation event handling broken: focusin
        https://bugs.webkit.org/show_bug.cgi?id=12894

        focusin, focusout, activate not implemented in SVG
        https://bugs.webkit.org/show_bug.cgi?id=40545

        Test whether focusin and focusout events are dispatched and seen in the focusin/focusout event handlers.

        * platform/mac/svg/custom/focus-ring-expected.txt:
        * svg/custom/focus-event-handling-expected.txt: Added.
        * svg/custom/focus-event-handling-keyboard-expected.txt: Added.
        * svg/custom/focus-event-handling-keyboard.xhtml: Added.
        * svg/custom/focus-event-handling.xhtml: Added.
        * svg/custom/resources/focus-event-handling-keyboard.js: Added.
        (focusinHandler):
        (focusoutHandler):
        * svg/custom/resources/focus-event-handling.js: Added.
        (clearFocusSeen):
        ():
        (focusoutHandler):
        (clickAt):

2011-06-10  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Tony Gentilcore.

        Tests that trying to remove all document children while building a svg <use>
        element shadow and instance tree does not result in crash.
        https://bugs.webkit.org/show_bug.cgi?id=62225

        * svg/dom/use-style-recalc-script-execute-crash-expected.txt: Added.
        * svg/dom/use-style-recalc-script-execute-crash.html: Added.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Remove tests that are now passing.

        * platform/chromium/test_expectations.txt: Removed passing tests.

2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>

        REGRESSION (r88332): prototype-inheritance-2 ASSERTS attempting to enumerate spellCheckRanges.
        https://bugs.webkit.org/show_bug.cgi?id=62460

        * platform/chromium/test_expectations.txt: Updated test expectations.

2011-06-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
        https://bugs.webkit.org/show_bug.cgi?id=62377

        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-06-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88530.
        http://trac.webkit.org/changeset/88530
        https://bugs.webkit.org/show_bug.cgi?id=62440

        qt build was broken (Requested by loislo on #webkit).

        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-06-09  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
        https://bugs.webkit.org/show_bug.cgi?id=62377

        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-06-10  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>

        Reviewed by Antonio Gomes.

        [Qt] LayoutTests/fast/history/history_reload.html failing
        https://bugs.webkit.org/show_bug.cgi?id=62369

        Unskipping. Generating click of button element in generic way.
        Remove hardcoding of click co-ordinates to avoid native font differences.

        * fast/history/history_reload.html:
        * platform/qt/Skipped:

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] The profiler test is entirely unrelated to the original change r88337
        and seems to be highly related to https://bugs.webkit.org/show_bug.cgi?id=60881

        https://bugs.webkit.org/show_bug.cgi?id=62278

        Last attempt to make buildbot happy against crazy flakiness near inspector tests. :-/

        * platform/qt/Skipped: Disable all inspector tests until fix.

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] The profiler test is entirely unrelated to the original change r88337
        and seems to be highly related to https://bugs.webkit.org/show_bug.cgi?id=60881

        https://bugs.webkit.org/show_bug.cgi?id=62278

        One more attempt to make buildbot happy
        against crazy flakiness near inspector tests. :-/

        * platform/qt/Skipped:

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed rolling out r88471, because it broke plugin tests on Qt.

        * platform/chromium-linux/plugins/mouse-events-expected.txt:

2011-06-09  Kent Tamura  <tkent@chromium.org>

        [Mac] Unskip fast/forms/input-number-large-padding.html
        https://bugs.webkit.org/show_bug.cgi?id=61845

        It should work now because we don't use outer-spin-button anymore.

        * platform/mac/Skipped:

2011-06-09  Jian Li  <jianli@chromium.org>

        Reviewed by David Levin.

        Calling WebKitBlobBuilder.append with null argument should not crash
        https://bugs.webkit.org/show_bug.cgi?id=62419

        * fast/files/blob-builder-crash-expected.txt: Added.
        * fast/files/blob-builder-crash.html: Added.

2011-06-09  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Remove expectations for passing tests.

        * platform/chromium/test_expectations.txt:

2011-06-09  James Robinson  <jamesr@chromium.org>

        [chromium] Update some chromium gpu baselines

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-win/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-09  James Robinson  <jamesr@chromium.org>

        [chromium] Mark the fullscreen directory as skipped
        https://bugs.webkit.org/show_bug.cgi?id=62397

        * platform/chromium/test_expectations.txt:

2011-06-09  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Bug 62405 - Fix integer overflow in Array.prototype.push

        There are three integer overflows here, leading to safe (not a security risk)
        but incorrect (non-spec-compliant) behaviour.

        Two overflows occur when calculating the new length after pushing (one in the
        fast version of push in JSArray, one in the generic version in ArrayPrototype).
        The other occurs calculating indices to write to when multiple items are pushed.

        These errors result in three test-262 failures.

        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.7_Array_prototype_push/S15.4.4.7_A3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.7_Array_prototype_push/S15.4.4.7_A4_T2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.7_Array_prototype_push/S15.4.4.7_A4_T3-expected.txt:

2011-06-09  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] Implement the next bit of the TextInputController (hasMarkedText and markedRange)
        https://bugs.webkit.org/show_bug.cgi?id=55603

        * platform/gtk/Skipped: Unskip a test that is now passing. Better describe remaining failures.

2011-06-09  Kenneth Russell  <kbr@google.com>

        Skipped new tests from r88489 on WebKit Win, since WebGL is not yet enabled.

        * platform/win/Skipped:

2011-06-09  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Scissor rect not set for clipping layers set offscreen
        https://bugs.webkit.org/show_bug.cgi?id=62339

        Tests that a layer that should clip its children actually does clip even when scrolled offscreen.

        * platform/chromium/compositing/scissor-out-of-viewport-expected.png: Added.
        * platform/chromium/compositing/scissor-out-of-viewport-expected.txt: Added.
        * platform/chromium/compositing/scissor-out-of-viewport.html: Added.

2011-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88468.
        http://trac.webkit.org/changeset/88468
        https://bugs.webkit.org/show_bug.cgi?id=62408

        It broke build if !ENABLE(FULLSCREEN_API) (Requested by Ossy
        on #webkit).

        * fullscreen/full-screen-video-offset-expected.txt: Removed.
        * fullscreen/full-screen-video-offset.html: Removed.

2011-06-09  Kenneth Russell  <kbr@google.com>

        Reviewed by Adam Barth.

        Disallow use of cross-domain media (images, video) in WebGL
        https://bugs.webkit.org/show_bug.cgi?id=62257

        Updated origin-clean-conformance.html to track upstream version in
        Khronos repository. Added new layout tests mirroring those added
        in bug 61015 which verify that new CORS support for images is
        working in the context of WebGL.

        Verified new tests in WebKit and Chromium. Skipped tests on
        platforms where WebGL is disabled.

        * http/tests/canvas/webgl/origin-clean-conformance-expected.txt:
        * http/tests/canvas/webgl/origin-clean-conformance.html:
        * http/tests/security/webgl-remote-read-remote-image-allowed-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed.html: Added.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-leopard/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:

2011-06-09  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Mark tests failing after http://trac.webkit.org/changeset/88478/ as failing.

        * platform/chromium/test_expectations.txt: Added failing tests.

2011-06-09  Dimitri Glazkov  <dglazkov@chromium.org>

        [Chromium] Update expectations.

        * platform/chromium-linux/plugins/mouse-events-expected.txt: Added.
        * platform/chromium-win/fullscreen/full-screen-video-offset-expected.txt: Added.

2011-06-09  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by James Robinson.

        Web Inspector: Inspector layout tests - extract method for sending XHR
        https://bugs.webkit.org/show_bug.cgi?id=62391

        * http/tests/inspector/console-xhr-logging.html:
        * http/tests/inspector/network-test.js:
        (doXHR.xhr.onreadystatechange):
        (doXHR):
        * http/tests/inspector/network/network-size-sync.html:

2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Antti Koivisto.

        REGRESSION(84329): Stylesheets on some pages do not load
        https://bugs.webkit.org/show_bug.cgi?id=61400

        Adding test to cover the regression. The test actually uncovered
        a bug in the way we handle alternate stylesheet and thus is
        failing some parts.

        * fast/css/link-disabled-attr-expected.txt: Added.
        * fast/css/link-disabled-attr.html: Added.

2011-06-09  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Test for WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
        https://bugs.webkit.org/show_bug.cgi?id=62384

        * fast/css/webkit-keyframes-crash-expected.txt: Added.
        * fast/css/webkit-keyframes-crash.html: Added.

2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by David Hyatt.

        Test for chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
        https://bugs.webkit.org/show_bug.cgi?id=57756

        * fast/css/fontMetric-border-radius-null-crash-expected.txt: Added.
        * fast/css/fontMetric-border-radius-null-crash.html: Added.
        * fast/css/fontMetric-webkit-border-end-width-null-crash-expected.txt: Added.
        * fast/css/fontMetric-webkit-border-end-width-null-crash.html: Added.

2011-06-09  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Andreas Kling.

        [GTK] [Qt] Eliminate duplicate TestNetscapePlugin implementation
        https://bugs.webkit.org/show_bug.cgi?id=62385

        Remove a cr-linux expectation that no longer differs from the default
        expectation.

        * platform/chromium-linux/plugins/mouse-events-expected.txt: Removed.

2011-06-02  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        REGRESSION: Page layout messed up after exiting full screen after video ends at jerryseinfeld.com
        https://bugs.webkit.org/show_bug.cgi?id=61911
        <rdar://problem/9523017>

        * fullscreen/full-screen-video-offset-expected.txt: Added.
        * fullscreen/full-screen-video-offset.html: Added.

2011-06-09  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        Unskip more passed tests after r88461 (bug 62381).

        * platform/qt-wk2/Skipped:

2011-06-09  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: behavior of undefined value in record
        https://bugs.webkit.org/show_bug.cgi?id=62371

        * storage/indexeddb/value-undefined-expected.txt: Added.
        * storage/indexeddb/value-undefined.html: Added.

2011-06-09  Chang Shu  <cshu@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] [WK2] Many editing tests failed on missing shouldBeginEditingInDOMRange:range printout
        https://bugs.webkit.org/show_bug.cgi?id=62381

        Unskip passed tests.

        * platform/qt-wk2/Skipped:

2011-06-08  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Ryosuke Niwa.

        Tests that setting selection on a text control does not result in crash.
        https://bugs.webkit.org/show_bug.cgi?id=62329

        * fast/forms/text-control-selection-crash-expected.txt: Added.
        * fast/forms/text-control-selection-crash.html: Added.

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed fix after r88447.

        * platform/qt/Skipped:

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] The profiler test is entirely unrelated to the original change r88337
        and seems to be highly related to https://bugs.webkit.org/show_bug.cgi?id=60881

        https://bugs.webkit.org/show_bug.cgi?id=62278

        * platform/qt/Skipped: Add inspector/profiler/detailed-heapshots-comparison-show-next.html.

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] eventSender.keyDown is unimplemented

        * platform/mac-wk2/Skipped: Add fast/dom/shadow/tab-order-iframe-and-shadow.html.

2011-06-09  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by Kent Tamura.

        Parsing issue with -webkit-calc
        https://bugs.webkit.org/show_bug.cgi?id=62276

        Set the CSSParserString for the calc functions.

        * css3/calc/regression-62276-expected.txt: Added.
        * css3/calc/regression-62276.html: Added.

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        REGRESSION(r88393): Tests fail on Qt platform
        https://bugs.webkit.org/show_bug.cgi?id=62374

        * platform/qt/Skipped: Add editing/selection/move-by-word-visually-others.html and
        editing/selection/move-by-word-visually-single-space-sigle-line.html until fix.

2011-06-09  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        Teach Qt about window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61074

        Unskip fast/harness/internals-object.html

        * platform/qt/Skipped:

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Canvas tests make css2.1 ones failing
        https://bugs.webkit.org/show_bug.cgi?id=53427

        * platform/qt-wk2/Skipped: Unskip passing tests after r88435.

2011-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88387.
        http://trac.webkit.org/changeset/88387
        https://bugs.webkit.org/show_bug.cgi?id=62368

        New tests introduced in 88387 fail on Leopard,GTK,Qt bots
        (Requested by Ossy on #webkit).

        * http/tests/canvas/webgl/origin-clean-conformance-expected.txt:
        * http/tests/canvas/webgl/origin-clean-conformance.html:
        * http/tests/security/webgl-remote-read-remote-image-allowed-expected.txt: Removed.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials-expected.txt: Removed.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html: Removed.
        * http/tests/security/webgl-remote-read-remote-image-allowed.html: Removed.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Removed.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html: Removed.
        * platform/mac-wk2/Skipped:

2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] The profiler test is entirely unrelated to the original change r88337
        and seems to be highly related to https://bugs.webkit.org/show_bug.cgi?id=60881

        https://bugs.webkit.org/show_bug.cgi?id=62278

        * platform/qt/Skipped: Skip 3 inspector tests to make buildbot happy.

2011-06-09  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: New flakiness in styles tests
        https://bugs.webkit.org/show_bug.cgi?id=62309

        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-source-lines-inline.html:

2011-06-09  Kent Tamura  <tkent@chromium.org>

        [Chromium] Leopard rebaseline for thumbslider-no-parent-slider.html.

        * platform/chromium-mac-leopard/fast/forms/thumbslider-no-parent-slider-expected.png: Added.

2011-06-09  Ryosuke Niwa  <rniwa@webkit.org>

        More Chromium Mac test expectation updates.

        * platform/chromium/test_expectations.txt:

2011-06-09  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac test expectation updates.

        * platform/chromium/test_expectations.txt:

2011-06-09  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>

        Reviewed by Csaba Osztrogonac.

        [Qt][WK2] Canvas tests make css2.1 ones failing
        https://bugs.webkit.org/show_bug.cgi?id=53427

        Unskipping canvas tests for WebKit2-Qt.

        * platform/qt-wk2/Skipped:

2011-06-09  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Running script from attach can remove elements from the stack of open elements
        https://bugs.webkit.org/show_bug.cgi?id=62160

        * fast/parser/document-write-onload-clear-expected.txt: Added.
        * fast/parser/document-write-onload-clear.html: Added.

2011-06-09  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] Provide a way in DRT to check the platform name
        https://bugs.webkit.org/show_bug.cgi?id=56855

        New layout test and expected results to check the new function.

        * accessibility/platform-name.html: Added.
        * platform/gtk/accessibility/platform-name-expected.txt: Added.
        * platform/mac/accessibility/platform-name-expected.txt: Added.
        * platform/win/accessibility/platform-name-expected.txt: Added.

2011-06-08  Kent Tamura  <tkent@chromium.org>

        [Chromium] Rebaseline for r87881 and r88415.

        * platform/chromium-linux/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-spinbutton-layer-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-spinbutton-visibility-expected.png:
        * platform/chromium-mac-leopard/platform/mac/fast/forms/input-appearance-spinbutton-expected.png: Added.
        * platform/chromium-mac-leopard/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.png: Added.
        * platform/chromium-mac/fast/forms/thumbslider-no-parent-slider-expected.png: Copied from LayoutTests/platform/chromium-mac-leopard/fast/forms/input-appearance-spinbutton-layer-expected.png.
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/chromium-win/fast/forms/thumbslider-no-parent-slider-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-08  Hayato Ito  <hayato@chromium.org>

        Reviewed by Dimitri Glazkov.

        A forward/backward tab traversal now visits focusable elements in a shadow root.
        https://bugs.webkit.org/show_bug.cgi?id=61410

        Like a iframe element, a shadow host becomes a scope of
        tabindex. That means all descendant elements in a shadow root are
        skipped if the host node of the shadow root is not focusable.

        The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
        which uses a shadow root and do extra works in their focus()
        method.

        A shadow root's <content> is not considered in this patch.
        That will be addressed in a following patch.

        * fast/dom/shadow/tab-order-iframe-and-shadow-expected.txt: Added.
        * fast/dom/shadow/tab-order-iframe-and-shadow.html: Added.

2011-06-08  Hayato Ito  <hayato@chromium.org>

        Reviewed by Hajime Morita.

        Makes sure that document.activeElement won't be an element in shadow root.

        https://bugs.webkit.org/show_bug.cgi?id=61413

        * fast/dom/shadow/activeelement-should-be-shadowhost-expected.txt: Added.
        * fast/dom/shadow/activeelement-should-be-shadowhost.html: Added.

2011-06-08  Kent Tamura  <tkent@chromium.org>

        [Mac][GTK][Qt] Rebaseline for r88415, and remove old images.

        * platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.txt:
        * platform/mac-leopard/fast/forms/thumbslider-no-parent-slider-expected.png: Removed.
        * platform/qt/fast/forms/thumbslider-no-parent-slider-expected.txt:

2011-06-08  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Add TIMEOUT to styles-disable-then-change.html.

        * platform/chromium/test_expectations.txt:

2011-06-08  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Allow drawing a slider thumb for any nodes.
        https://bugs.webkit.org/show_bug.cgi?id=62196

        The behavior was changed. We should show slider thumbs for any nodes with
        -webkit-appearance:slidertumb-horizontal/vertical.

        * fast/forms/thumbslider-no-parent-slider.html:
        * platform/chromium/test_expections.txt: Expect to fail with thumbslider-no-parent-slider.html.
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.png:
        * platform/mac/fast/forms/thumbslider-no-parent-slider-expected.txt:

2011-06-08  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Revert r88412 because it introduced syntax
        errors into test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-06-08  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Fix expectations for
        styles-disable-then-change.html.

        * platform/chromium/test_expectations.txt:

2011-06-08  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Use after free in WebCore::ContainerNode::parserAddChild
        https://bugs.webkit.org/show_bug.cgi?id=62160

        Test that we don't trigger asserts when re-entering the parser from
        tree construction.

        * fast/parser/document-write-onload-nesting-expected.txt: Added.
        * fast/parser/document-write-onload-nesting.html: Added.
        * fast/parser/document-write-onload-ordering-expected.txt: Added.
        * fast/parser/document-write-onload-ordering.html: Added.
            - The exact ordering of the script execution here differs a bit
              between browsers.  For example, Firefox executes the scripts in a
              slightly different order because Firefox runs the parser on a
              separate thread (and therefore cannot be re-entered from tree
              construction). If/when we move the parser off the main thread,
              we're likely to change the ordering here a bit, which should be
              ok.

2011-06-08  Ryosuke Niwa  <rniwa@webkit.org>

        Add PASS expectations to two tests that have been passing on
        build.webkit.org Chromium Linux bot.

        * platform/chromium/test_expectations.txt:

2011-06-08  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, more inspector flakiness.

        * platform/chromium/test_expectations.txt:

2011-06-08  James Simonsen  <simonjam@chromium.org>

        Unreviewed, move generic test expectation to right place.

        * fast/gradients/crash-on-degenerate-gradient-expected.txt: Renamed from LayoutTests/platform/chromium-linux/fast/gradients/crash-on-degenerate-gradient-expected.txt.

2011-06-08  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: key sort order across types
        https://bugs.webkit.org/show_bug.cgi?id=62299

        * storage/indexeddb/key-sort-order-across-types-expected.txt: Added.
        * storage/indexeddb/key-sort-order-across-types.html: Added.

2011-06-08  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: key sort order for Date objects
        https://bugs.webkit.org/show_bug.cgi?id=62300

        * storage/indexeddb/key-sort-order-date-expected.txt: Added.
        * storage/indexeddb/key-sort-order-date.html: Added.

2011-06-08  Xiaomei Ji  <xji@chromium.org>

        Split move-by-word-visually.html into 2 tests since the test is continuing growing and caused
        time-out in Snowleopard Intel Leaks.

        We will need to do profiling to improve hot code path performance later.

        * editing/selection/move-by-word-visually-expected.txt: Removed.
        * editing/selection/move-by-word-visually-others-expected.txt: Added.
        * editing/selection/move-by-word-visually-others.html: Added.
        * editing/selection/move-by-word-visually-single-space-sigle-line-expected.txt: Copied from LayoutTests/editing/selection/move-by-word-visually-expected.txt.
        * editing/selection/move-by-word-visually-single-space-sigle-line.html: Copied from LayoutTests/editing/selection/move-by-word-visually.html.
        * editing/selection/move-by-word-visually.html: Removed.
        * editing/selection/resources/move-by-word-visually.js: Added.
        ():
        (flushLog):
        (fold):
        (logPositions):
        (nodeOfWordBreak):
        (logWordBreak):
        (positionEqualToWordBreak):
        (validateData):
        (collectWordBreaks):
        (setPosition):
        (moveByWord):
        (moveByWordOnEveryChar):
        (moveByWordForEveryPosition):
        (runMoveLeftRight):

2011-06-08  Mike Reed  <reed@google.com>

        Reviewed by James Robinson.

        [Skia] check for null-shader from gradient factory
        https://bugs.webkit.org/show_bug.cgi?id=62319

        * platform/chromium-linux/fast/gradients/crash-on-degenerate-gradient-expected.txt: Added.

2011-06-08  Kenneth Russell  <kbr@google.com>

        Reviewed by Adam Barth.

        Disallow use of cross-domain media (images, video) in WebGL
        https://bugs.webkit.org/show_bug.cgi?id=62257

        Updated origin-clean-conformance.html to track upstream version in
        Khronos repository. Added new layout tests mirroring those added
        in bug 61015 which verify that new CORS support for images is
        working in the context of WebGL.

        Verified new tests in WebKit and Chromium.

        * http/tests/canvas/webgl/origin-clean-conformance-expected.txt:
        * http/tests/canvas/webgl/origin-clean-conformance.html:
        * http/tests/security/webgl-remote-read-remote-image-allowed-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html: Added.
        * http/tests/security/webgl-remote-read-remote-image-allowed.html: Added.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Added.
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html: Added.
        * platform/mac-wk2/Skipped:

2011-06-08  John Bauman  <jbauman@chromium.org>

        Reviewed by James Robinson.

        Only draw portions of tiles in contentRect
        https://bugs.webkit.org/show_bug.cgi?id=62243

        * platform/chromium/test_expectations.txt:
        * compositing/repaint/shrink-layer.html: Added.
        * compositing/repaint/shrink-layer-expected.png: Added.
        * compositing/repaint/shrink-layer-expected.txt: Added.

2011-06-08  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: odd value datatypes
        https://bugs.webkit.org/show_bug.cgi?id=62315

        * storage/indexeddb/values-odd-types-expected.txt: Added.
        * storage/indexeddb/values-odd-types.html: Added.

2011-06-08  Tom Sepez  <tsepez@chromium.org>

        Reviewed by Adam Barth.

        Chromium mixed content blocking, ensure that both preferences and web permissions
        control the outcome.  Ensure notify callback gets invoked even with insecure content.
        https://bugs.webkit.org/show_bug.cgi?id=61946
        
        * http/tests/security/mixedContent/resources/frame-with-insecure-image.html:
        * http/tests/security/mixedContent/resources/frame-with-insecure-script.html:
        * platform/chromium/http/tests/security/mixedContent: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed-expected.txt: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked-expected.txt: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed-expected.txt: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked-expected.txt: Added.
        * platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html: Added.

2011-06-08  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, mark two flaky tests. Bug filed.

        * platform/chromium/test_expectations.txt:

2011-06-08  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB test: key paths as arrays
        https://bugs.webkit.org/show_bug.cgi?id=62291

        * storage/indexeddb/keypath-as-array-expected.txt: Added.
        * storage/indexeddb/keypath-as-array.html: Added.

2011-05-25  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        --webkit-visual-word does not work well in words separated by multiple spaces
        https://bugs.webkit.org/show_bug.cgi?id=61324

        Add test cases for preserving white spaces and test case for words not separated by space.

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-06-08  Greg Simon  <gregsimon@chromium.org>

        Reviewed by Dimitri Glazkov.

        Test migration from sqlite to leveldb for IndexedDB
        backend.
        https://bugs.webkit.org/show_bug.cgi?id=61000

        * storage/indexeddb/migrate-basics-expected.txt: Added.
        * storage/indexeddb/migrate-basics.html: Added.

2011-06-08  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, skip two failing tests. Bugs filed.

        * platform/chromium/test_expectations.txt:

2011-06-08  Alexander Pavlov  <apavlov@chromium.org>

        [Qt] Unreviewed, skip failing tests

        * platform/qt/Skipped:

2011-06-08  Alexander Pavlov  <apavlov@chromium.org>

        [Qt, Chromium] Unreviewed attempt to fix tests on Qt and Chromium.

        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-disable-then-enable.html:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/up-down-numerics-and-colors.html:

2011-06-08  Alexander Pavlov  <apavlov@chromium.org>

        [Qt] Unreviewed, attempt to make test pass on Qt.

        * inspector/styles/styles-update-from-js.html:

2011-06-08  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: node selection is slow in the Elements panel.
        https://bugs.webkit.org/show_bug.cgi?id=60813

        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/styles-add-invalid-property.html:
        * inspector/styles/styles-cancel-editing.html:
        * inspector/styles/styles-commit-editing.html:
        * inspector/styles/styles-computed-trace.html:
        * inspector/styles/styles-disable-inherited.html:
        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-disable-then-delete.html:
        * inspector/styles/styles-disable-then-enable.html:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-url-linkify.html:

2011-06-08  Hironori Bono  <hbono@chromium.org>

        Reviewed by Brent Fulgham.

        Add SpellCheck API
        https://bugs.webkit.org/show_bug.cgi?id=59693

        This change adds two SpellCheck API functions (addSpellcheckRange and
        removeSpellcheckRange) and one attribute (spellcheckRange) discussed in
        the public-webapps ML. This change is currently available only on Chromium.

        * editing/spelling/spellcheck-api-expected.txt: Added.
        * editing/spelling/spellcheck-api-pixel.html: Added.
        * editing/spelling/spellcheck-api.html: Added.
        * platform/chromium/test_expectations.txt:        
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-07  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: remove shadow dom inspection from Elements panel by default.
        https://bugs.webkit.org/show_bug.cgi?id=62188

        This reverts r85751

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.findNode.processChildren):
        (initialize_ElementTest.InspectorTest.findNode.documentRequested):
        (initialize_ElementTest.InspectorTest.findNode):
        * inspector/console/console-shadow-dom-access.html: Removed.
        * inspector/elements/shadow-dom-expected.txt: Removed.
        * inspector/elements/shadow-dom.html: Removed.
        * platform/win/Skipped:

2011-06-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip new failing tests.

        * platform/qt/Skipped:

2011-06-07  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Update more snowleopard baselines after r88321.

        * platform/chromium-mac-leopard/fast/css/shadow-multiple-expected.png:
        * platform/chromium-mac/fast/css/shadow-multiple-expected.png:

2011-06-07  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Update snowleopard baselines after r88321.

        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-vertical-expected.png:

2011-06-07  James Kozianski  <koz@chromium.org>
        [Chromium] Update expectations for flaky tests.

        * platform/chromium/test_expectations.txt:

2011-06-07  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Update expectations for registerProtocolHandler
        test.

        * platform/chromium-linux/fast/dom/register-protocol-handler-expected.txt: Added.

2011-06-07  Yi Shen  <yi.4.shen@nokia.com>

        Reviewed by Simon Hausmann.

        [Qt] Fix the error code for media resource failures when using QtMobility
        https://bugs.webkit.org/show_bug.cgi?id=55901

        Unskip the tests which are now passing.

        * platform/qt/Skipped:

2011-06-07  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=55537
        Functions claim to have 'callee' which they actually don't (and shouldn't)

        * fast/js/Object-getOwnPropertyNames-expected.txt:
        * fast/js/script-tests/Object-getOwnPropertyNames.js:

2011-06-07  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Update expectations for tests that are timing out.

        * platform/chromium/test_expectations.txt:

2011-06-07  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler.

        Opacity transition doesn't work while content property is set.
        https://bugs.webkit.org/show_bug.cgi?id=59301
        
        Testcase for opacity transition on element with 'content' style.

        * transitions/transition-on-element-with-content-expected.txt: Added.
        * transitions/transition-on-element-with-content.html: Added.

2011-06-07  Robert Kroeger  <rjkroege@chromium.org>

        Reviewed by Adam Barth.

        [chromium] Add a basic gesture recognizer to the Chromium platform
        https://bugs.webkit.org/show_bug.cgi?id=54417

        Shows that the basic Chromium gesture manager can correctly convert a touch
        event sequence into a sequence of synthetic mouse events for clicking and
        scrolling.

        * fast/events/touch/touch-gesture-click-expected.txt: Added.
        * fast/events/touch/touch-gesture-click.html: Added.
        * fast/events/touch/touch-gesture-scroll-expected.txt: Added.
        * fast/events/touch/touch-gesture-scroll.html: Added.
        * platform/chromium/fast/events/touch/touch-gesture-click-expected.txt: Added.
        * platform/chromium/fast/events/touch/touch-gesture-scroll-expected.txt: Added.

2011-06-07  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Fix expectations for registerProtocolHandler tests.

        * platform/chromium-linux/fast/dom/navigator-detached-no-crash-expected.txt: Added.
        * platform/chromium-mac-leopard/fast/dom/navigator-detached-no-crash-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-07  Kent Tamura  <tkent@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert fast/forms/thumbslider-crash.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=62195

        * fast/forms/thumbslider-crash-expected.txt: Added.
        * fast/forms/thumbslider-crash.html:
        * platform/chromium-linux/fast/forms/thumbslider-crash-expected.png: Removed.
        * platform/chromium-win/fast/forms/thumbslider-crash-expected.png: Removed.
        * platform/chromium-win/fast/forms/thumbslider-crash-expected.txt: Removed.
        * platform/gtk/fast/forms/thumbslider-crash-expected.png: Removed.
        * platform/gtk/fast/forms/thumbslider-crash-expected.txt: Removed.
        * platform/mac-leopard/fast/forms/thumbslider-crash-expected.png: Removed.
        * platform/mac/fast/forms/thumbslider-crash-expected.png: Removed.
        * platform/mac/fast/forms/thumbslider-crash-expected.txt: Removed.
        * platform/qt/fast/forms/thumbslider-crash-expected.txt: Removed.

2011-06-07  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, rebaseline leopard and win7 tests due to:
          - r87955.
          - New fast/forms/select-baseline.html.
          - New fullscreen/full-screen-zIndex-after.html

        * platform/chromium-mac-leopard/fast/backgrounds/svg-as-background-1-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-inline-flow-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-mac-leopard/fast/borders/different-color-borders-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/basic-shadows-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/inset-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-mac-leopard/fast/clip/overflow-border-radius-clip-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-clip-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.png:
        * platform/chromium-mac-leopard/fast/forms/select-baseline-expected.png:
        * platform/chromium-mac-leopard/fast/forms/selectlist-minsize-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/forms/menulist-separator-painting-expected.png.
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac-leopard/fullscreen/full-screen-zIndex-after-expected.png: Added.
        * platform/chromium-mac-leopard/media/video-zoom-controls-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
        * platform/chromium-mac-leopard/svg/carto.net/button-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/gradient-rotated-bbox-expected.png:
        * platform/chromium-mac-leopard/svg/wicd/rightsizing-grid-expected.png:
        * platform/chromium-mac-leopard/svg/wicd/test-scalable-background-image1-expected.png:
        * platform/chromium-win/http/tests/appcache/manifest-redirect-expected.txt: Added.
        * platform/chromium-win/http/tests/appcache/resource-redirect-2-expected.txt: Added.
        * platform/chromium-win/http/tests/appcache/resource-redirect-expected.txt: Added.
        * platform/chromium-win/http/tests/appcache/wrong-content-type-expected.txt: Added.
        * platform/chromium-win/http/tests/appcache/wrong-signature-2-expected.txt: Added.
        * platform/chromium-win/http/tests/appcache/wrong-signature-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-width-expected.txt: Added.

2011-06-07  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by James Robinson.

        Add a test to verify that RTL pages that trigger the compositor
        render correctly.
        https://bugs.webkit.org/show_bug.cgi?id=62246

        * compositing/geometry/rtl-composited-expected.png: Added.
        * compositing/geometry/rtl-composited-expected.txt: Added.
        * compositing/geometry/rtl-composited.html: Added.

2011-06-07  Ryosuke Niwa  <rniwa@webkit.org>

        Gtk rebaseline after r88266.

        * platform/gtk/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt:

2011-06-07  Ryosuke Niwa  <rniwa@webkit.org>

        Qt rebaseline after r88266.

        * platform/qt/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt:

2011-06-07  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, rebaseline after r88266.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/styling-css-04-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/styling-css-04-f-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt:

2011-06-07  Rob Buis  <rbuis@rim.com>

        Reviewed by Dirk Schulze.

        stroke-dasharray does not handle "none"
        https://bugs.webkit.org/show_bug.cgi?id=62203

        Test stroke-dasharray=none as well as invalid syntaxes.

        * platform/mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/styling-css-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt:
        * platform/mac/svg/custom/invalid-dasharray-expected.png: Added.
        * platform/mac/svg/custom/invalid-dasharray-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/styling-css-04-f.svg: Added.
        * svg/custom/invalid-dasharray.svg: Added.

2011-06-07  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skip test crashing in GTK bots because of an ASSERT.

        Actually, it's the same problem observed before (see bug 61937).

        * platform/gtk/Skipped: Skipped test.

2011-06-07  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Tony Chang.

        [Chromium] REGRESSION fast/events/onload-after-document-close-with-subresource.html
        https://bugs.webkit.org/show_bug.cgi?id=61921

        Force a non-cached load of onload-image.png.

        * fast/events/onload-after-document-close-with-subresource.html:
        * platform/chromium/test_expectations.txt:

2011-06-07  Vangelis Kokkevis  <vangelis@chromium.org>

        Unreviewed.  Test expectations fix.

        [chromium] Fixing test expectations error for chromium-gpu.

        * platform/chromium/test_expectations.txt:

2011-06-07  Young Han Lee  <joybro@company100.net>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Accelerated animation is not paused properly.
        https://bugs.webkit.org/show_bug.cgi?id=61446

        The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.

        * animations/play-state-paused-expected.png: Added.
        * animations/play-state-paused-expected.txt: Added.
        * animations/play-state-paused.html: Added.

2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88238.
        http://trac.webkit.org/changeset/88238
        https://bugs.webkit.org/show_bug.cgi?id=62216

        Broke a couple of inspector tests (Requested by apavlov on
        #webkit).

        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/styles-add-invalid-property.html:
        * inspector/styles/styles-cancel-editing.html:
        * inspector/styles/styles-commit-editing.html:
        * inspector/styles/styles-computed-trace.html:
        * inspector/styles/styles-disable-inherited.html:
        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-disable-then-delete.html:
        * inspector/styles/styles-disable-then-enable.html:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-url-linkify.html:

2011-06-07  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: node selection is slow in the Elements panel.
        https://bugs.webkit.org/show_bug.cgi?id=60813

        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/styles-add-invalid-property.html:
        * inspector/styles/styles-cancel-editing.html:
        * inspector/styles/styles-commit-editing.html:
        * inspector/styles/styles-computed-trace.html:
        * inspector/styles/styles-disable-inherited.html:
        * inspector/styles/styles-disable-then-change.html:
        * inspector/styles/styles-disable-then-delete.html:
        * inspector/styles/styles-disable-then-enable.html:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-url-linkify.html:

2011-06-07  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Unreviewed. Skip failing tests because of unimplemented features.

        * platform/mac-wk2/Skipped:

2011-06-07  Felician Marton  <marton.felician.zoltan@stud.u-szeged.hu>

        Reviewed by Nikolas Zimmermann.

        SVG animation beginElement() does not restart the animation after endElement().
        https://bugs.webkit.org/show_bug.cgi?id=43452

        Added test for animation beginElement. It should restart the animation even if the animation is stopped by endElement() previously.

        * svg/animations/animate-endElement-beginElement-expected.txt: Added.
        * svg/animations/animate-endElement-beginElement.html: Added.
        * svg/animations/script-tests/animate-endElement-beginElement.js: Added.

2011-06-07  MORITA Hajime <morrita@google.com>

        Unreviewed Skipped entry addition following r88225.

        * platform/win/Skipped:

2011-06-07  MORITA Hajime  <morrita@google.com>

        Unreviewed, rolling out r88212 and r88219.
        http://trac.webkit.org/changeset/88212
        http://trac.webkit.org/changeset/88219
        https://bugs.webkit.org/show_bug.cgi?id=57439

        Tests get timeout on Snow Leopard

        * fast/replaced/no-focus-ring-embed-1-expected.txt: Removed.
        * fast/replaced/no-focus-ring-embed-1.html: Removed.
        * fast/replaced/no-focus-ring-embed-2-expected.txt: Removed.
        * fast/replaced/no-focus-ring-embed-2.html: Removed.
        * fast/replaced/no-focus-ring-iframe-expected.txt: Removed.
        * fast/replaced/no-focus-ring-iframe.html: Removed.
        * fast/replaced/no-focus-ring-object-1-expected.txt: Removed.
        * fast/replaced/no-focus-ring-object-1.html: Removed.
        * fast/replaced/no-focus-ring-object-2-expected.txt: Removed.
        * fast/replaced/no-focus-ring-object-2.html: Removed.
        * fast/replaced/outline-replaced-elements-expected.txt: Removed.
        * fast/replaced/outline-replaced-elements.html: Removed.
        * fast/replaced/resources/focus-test.js: Removed.
        * platform/mac/fast/replaced/outline-replaced-elements-expected.png: Removed.

2011-06-07  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baseline for GTK after r88175.

        * platform/gtk/fast/inline/inline-wrap-with-parent-padding-expected.png: Added.
        * platform/gtk/fast/inline/inline-wrap-with-parent-padding-expected.txt: Added.

2011-06-07  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skip tests crashing in GTK bots because of an ASSERT.

        Also relocated one skipped test into its right category, together
        with the new one being skipped now.

        * platform/gtk/Skipped: SKipped test

2011-06-06  MORITA Hajime <morrita@google.com>

        Reviewed by Kent Tamura.

        Verify cloning <details> and <summary> works.
        https://bugs.webkit.org/show_bug.cgi?id=61985

        * fast/html/details-clone-expected.txt: Added.
        * fast/html/details-clone.html: Added.

2011-06-06  MORITA Hajime  <morrita@google.com>

        Unreviewed attempt to fix flakiness on Snow Leopard.
        
        * fast/replaced/resources/focus-test.js:

2011-06-06  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed. Rebaseline outline-replaced-elements windows/linux image results.
        https://bugs.webkit.org/show_bug.cgi?id=57439

        * platform/chromium-linux-x86/fast/replaced/outline-replaced-elements-expected.png: Added.
        * platform/chromium-linux/fast/replaced/outline-replaced-elements-expected.png: Added.
        * platform/chromium-win/fast/replaced/outline-replaced-elements-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-06-06  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Incorrect rounding of color values during transitions
        https://bugs.webkit.org/show_bug.cgi?id=62141
        
        Test that interpolates colors, and checks the rounding.

        * transitions/color-transition-rounding-expected.txt: Added.
        * transitions/color-transition-rounding.html: Added.

2011-06-06  Noel Gordon  <noel.gordon@gmail.com>

        Reviewed by Hajime Morita.

        CSS property outline not displayed on an iframe.
        https://bugs.webkit.org/show_bug.cgi?id=57439

        * fast/replaced/no-focus-ring-embed-1-expected.txt: Added.
        * fast/replaced/no-focus-ring-embed-1.html: Added.
        * fast/replaced/no-focus-ring-embed-2-expected.txt: Added.
        * fast/replaced/no-focus-ring-embed-2.html: Added.
        * fast/replaced/no-focus-ring-iframe-expected.txt: Added.
        * fast/replaced/no-focus-ring-iframe.html: Added.
        * fast/replaced/no-focus-ring-object-1-expected.txt: Added.
        * fast/replaced/no-focus-ring-object-1.html: Added.
        * fast/replaced/no-focus-ring-object-2-expected.txt: Added.
        * fast/replaced/no-focus-ring-object-2.html: Added.
        * fast/replaced/outline-replaced-elements-expected.txt: Added.
        * fast/replaced/outline-replaced-elements.html: Added.
        * fast/replaced/resources/focus-test.js: Added.
        (element.onfocus): Use a small delay to avoid test false positives.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/replaced/outline-replaced-elements-expected.png: Added.

2011-06-06  MORITA Hajime  <morrita@google.com>

        Reviewed by Kent Tamura.

        Assertion fails in TextCheckingHelper by right-clicking on <input type=search>
        https://bugs.webkit.org/show_bug.cgi?id=61991

        * editing/spelling/spellcheck-input-search-crash-expected.txt: Added.
        * editing/spelling/spellcheck-input-search-crash.html: Added.

2011-06-06  James Kozianski  <koz@chromium.org>

        [Chromium] Unreviewed, update test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-06-06  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Clean scalePage related LayoutTests
        https://bugs.webkit.org/show_bug.cgi?id=62142

        * platform/qt/Skipped:

2011-06-06  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, added baseline for inline-wrap-with-parent-padding.html

        * platform/chromium-win/fast/inline/inline-wrap-with-parent-padding-expected.png: Added.
        * platform/chromium-win/fast/inline/inline-wrap-with-parent-padding-expected.txt: Added.

2011-06-06  Paul Kinlan  <paulkinlan@google.com>

        Reviewed by Jeremy Orlow.

        Adds a test for firing popstate, using window.dispatchEvent.
        https://bugs.webkit.org/show_bug.cgi?id=62099

        * fast/events/fire-popstate-event-expected.txt: Added.
        * fast/events/fire-popstate-event.html: Added.

2011-06-06  Jessie Berlin  <jberlin@apple.com>

        Update the Windows-specific results after r88020 in order to get the bots green.

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-06-06  Jessie Berlin  <jberlin@apple.com>

        Windows DRT needs an implementation of shadowRoot.
        https://bugs.webkit.org/show_bug.cgi?id=59081

        Skip more tests on Windows that use the Shadow DOM to get the bots green.

        * platform/win/Skipped:

2011-06-06  Anna Cavender  <annacc@chromium.org>

        Reviewed by David Levin.

        Marking media/video-canvas-alpha.html as SKIP for GPU MAC.
        https://bugs.webkit.org/show_bug.cgi?id=62068

        * platform/chromium/test_expectations.txt:

2011-06-06  Vangelis Kokkevis  <vangelis@chromium.org>

        Unreviewed. Layout test expectations fix.

        [chromium] Adjusting expectations for failing huge-layer-img.html

        * platform/chromium/test_expectations.txt:

2011-06-06  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Eric Seidel.

        Inline elements are wrapped prematurely with non-zero border, margin or padding.
        https://bugs.webkit.org/show_bug.cgi?id=60459

        * fast/inline/inline-wrap-with-parent-padding.html: Added.
        * platform/mac/fast/inline/inline-wrap-with-parent-padding-expected.png: Added.
        * platform/mac/fast/inline/inline-wrap-with-parent-padding-expected.txt: Added.

2011-06-06  Shishir Agrawal  <shishir@chromium.org>

        Reviewed by Tony Gentilcore.

        Add a "prerender" state for page visibility.
        https://bugs.webkit.org/show_bug.cgi?id=62062

        * fast/events/page-visibility-transition-test-expected.txt:
        * fast/events/page-visibility-transition-test.html:

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 6 tests have different results on 64 bit compared to 32 bit
        https://bugs.webkit.org/show_bug.cgi?id=52812

        * platform/qt/Skipped: Add svg/custom/embedding-external-svgs.xhtml.

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-06-06  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] Add expected results for the new passing tests, and skip the new failing tests.

        * platform/qt/Skipped: Skip new failing tests.
        * platform/qt/fast/frames/flattening/iframe-flattening-nested-expected.png: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-nested-expected.txt: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.png: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.txt: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-expected.png: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-expected.txt: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.png: Added.
        * platform/qt/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.txt: Added.
        * platform/qt/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/qt/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Added.
        * platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/qt/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.png: Added.
        * platform/qt/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * platform/qt/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/qt/svg/custom/embedding-external-svgs-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/qt/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/qt/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/qt/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/qt/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/qt/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/qt/svg/hixie/intrinsic/003-expected.txt: Added.
        * platform/qt/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/qt/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.

2011-06-06  Marcus Bulach  <bulach@chromium.org>

        Reviewed by Unreviewed rebaseline.

        [chromium] Unreviewed, new baseline for GPU test.
        https://bugs.webkit.org/show_bug.cgi?id=62123

        * platform/chromium/test_expectations.txt:

2011-06-06  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác

        Skip a flakey test on ARM.

        * platform/qt-arm/Skipped:

2011-06-04  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Unskip window.internals test on Windows.
        https://bugs.webkit.org/show_bug.cgi?id=61076

        * platform/win/Skipped:

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 6 tests have different results on 64 bit compared to 32 bit
        https://bugs.webkit.org/show_bug.cgi?id=52812

        * platform/qt/Skipped: Add svg/custom/object-sizing-explicit-width-height.xhtml.

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Remove previously deleted tests from the Skipped list.

        * platform/qt-wk2/Skipped:

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Skip failing tests.

        * platform/qt-wk2/Skipped:

2011-06-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-06-06  Marcus Bulach  <bulach@chromium.org>

        Reviewed by Unreviewed rebaseline.

        [chromium] Unreviewed, missing baselines following r88153
        https://bugs.webkit.org/show_bug.cgi?id=62121

        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-06  Marcus Bulach  <bulach@chromium.org>

        Reviewed by Unreviewed rebaseline.

        [chromium] Unreviewed, further rebaseline for Chromium GPU media pixel tests following r88077
        https://bugs.webkit.org/show_bug.cgi?id=62115

        * platform/chromium-gpu-linux/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-mac/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-mac/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-mac/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-win/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-win/media/video-controls-rendering-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-06  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] Add expected results for the new passing tests, and skip the new failing tests.

        * platform/qt/Skipped: Skip new failing tests.
        * platform/qt/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/qt/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/qt/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/qt/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/qt/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/qt/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/qt/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/qt/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/qt/editing/selection/select-across-readonly-input-5-expected.png: Added.
        * platform/qt/editing/selection/select-across-readonly-input-5-expected.txt: Added.
        * platform/qt/fast/block/float/float-overhangs-root-expected.png: Added.
        * platform/qt/fast/block/float/float-overhangs-root-expected.txt: Added.
        * platform/qt/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/qt/fast/block/positioning/hiding-inside-relpositioned-inline-expected.txt: Added.
        * platform/qt/fast/forms/date-input-visible-strings-expected.png: Added.
        * platform/qt/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/qt/fast/forms/input-placeholder-text-indent-expected.txt: Added.
        * platform/qt/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/qt/fast/html/details-add-details-child-1-expected.txt: Added.
        * platform/qt/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/qt/fast/html/details-add-details-child-2-expected.txt: Added.
        * platform/qt/fast/html/details-nested-1-expected.png: Added.
        * platform/qt/fast/html/details-nested-1-expected.txt: Added.
        * platform/qt/fast/html/details-nested-2-expected.png: Added.
        * platform/qt/fast/html/details-nested-2-expected.txt: Added.
        * platform/qt/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/qt/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/qt/fast/html/details-replace-text-expected.png: Added.
        * platform/qt/fast/html/details-replace-text-expected.txt: Added.
        * platform/qt/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/qt/fast/inline/nested-top-alignment-expected.txt: Added.
        * platform/qt/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/qt/fast/table/dynamic-caption-add-before-child-expected.txt: Added.
        * platform/qt/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/qt/fast/table/dynamic-caption-add-remove-before-child-expected.txt: Added.
        * platform/qt/fast/table/multiple-captions-display-expected.png: Added.
        * platform/qt/fast/table/multiple-captions-display-expected.txt: Added.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/qt/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/qt/scrollbars/scrollbars-on-positioned-content-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
        * platform/qt/svg/custom/fill-opacity-update-expected.png: Added.
        * platform/qt/svg/custom/fill-opacity-update-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.txt: Added.
        * platform/qt/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/qt/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/qt/svg/custom/stroke-opacity-update-expected.png: Added.
        * platform/qt/svg/custom/stroke-opacity-update-expected.txt: Added.
        * platform/qt/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/qt/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/qt/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/qt/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/qt/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/qt/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/qt/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/qt/svg/wicd/test-scalable-background-image1-expected.txt: Added.
        * platform/qt/svg/wicd/test-scalable-background-image2-expected.png: Added.
        * platform/qt/svg/wicd/test-scalable-background-image2-expected.txt: Added.

2011-06-06  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, new baselines for GTK after r88029 and r80034.

        * platform/gtk/fast/forms/selectlist-minsize-expected.png: Added.
        * platform/gtk/fast/forms/selectlist-minsize-expected.txt: Added.
        * platform/gtk/fullscreen/full-screen-placeholder-expected.txt: Added.

2011-06-02  MORITA Hajime  <morrita@google.com>

        Verify cloning <meter> and <progress> works
        https://bugs.webkit.org/show_bug.cgi?id=61986
        
        Added test cases for cloning <meter> and <progress>

        * fast/dom/HTMLMeterElement/meter-clone-expected.txt: Added.
        * fast/dom/HTMLMeterElement/meter-clone.html: Added.
        * fast/dom/HTMLProgressElement/progress-clone-expected.txt: Added.
        * fast/dom/HTMLProgressElement/progress-clone.html: Added.

2011-06-06  Mustafizur Rahaman  <mustaf.here@gmail.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=48290
        Removed LayoutTests/canvas/philip/tests/2d.composite.operation.highlight.html
        from failed/skipped test list

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:

2011-06-05  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Unreviewed. Update platform specific expected files after r88020.

        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:

2011-06-05  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed trivial fix.

        * platform/qt/Skipped: Remove svg/hixie/links/003-broken.xml, because it was deleted by r87518.

2011-06-05  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed. Skip new failing tests.

        * platform/qt-mac/Skipped:

2011-06-05  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Update platform specific expected files after r88020.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-06-05  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Rolling out r84528.
        http://trac.webkit.org/changeset/84528
        https://bugs.webkit.org/show_bug.cgi?id=62100

        * fast/dom/shadow/import-shadowroot-expected.txt: Removed.
        * fast/dom/shadow/import-shadowroot.html: Removed.

2011-06-05  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Fix and unskip acid2
        https://bugs.webkit.org/show_bug.cgi?id=62089

        We're unskipping acid2.html event though it's just a landing
        page for the acid2 test. Some elements of the test are loaded by
        the landing page so it is testing something, but acid2-pixel covers the same
        ground.

        * platform/qt/Skipped:
        * platform/qt/fast/css/acid2-expected.txt: Updated
        * platform/qt/fast/css/acid2-pixel-expected.png: Added.
        * platform/qt/fast/css/acid2-pixel-expected.txt: Added.
        * platform/qt/fast/overflow/overflow-height-float-not-removed-crash-expected.txt: Removed.
        * platform/qt/fast/overflow/overflow-height-float-not-removed-crash3-expected.txt: Removed.
        * platform/qt/http/tests/misc/acid2-expected.png: Added.
        * platform/qt/http/tests/misc/acid2-expected.txt: Added.
        * platform/qt/http/tests/misc/acid2-pixel-expected.png: Added.
        * platform/qt/http/tests/misc/acid2-pixel-expected.txt: Added

2011-06-05  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Kenneth Rohde Christiansen.

        fast/viewport/viewport-45.html fails in GTK+/Qt
        https://bugs.webkit.org/show_bug.cgi?id=47481

        Rebaseline tests.

        * fast/viewport/viewport-45-expected.txt:
        * fast/viewport/viewport-86-expected.txt:
        * platform/qt/Skipped:

== Rolled over to ChangeLog-2011-06-04 ==
