Improve webkit-patch rebaseline to work for more cases
https://bugs.webkit.org/show_bug.cgi?id=90504

Reviewed by Adam Barth.

-Makes it work for the build.chromium.org bots.
-Lets you rebaseline all builders instead of just one.
-Lets you pass in the builders or tests to rebaseline.

* Scripts/webkitpy/common/host.py:
(Host.buildbot_for_builder_name):
* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(Builder.__init__):
(Builder.latest_layout_test_results):
Provide a way to get to the LayoutTestResults of the latest build.
Most of the time we only need to get the latest one and the Chromium bots
only expose the full_results.json file for the latest build.

(Builder):
(Builder._fetch_file_from_results):
(Builder.fetch_layout_test_results):
Move these functions into Builder so that Builder and Build can both
fetch layout test results.

(Build.results_zip_url):
(Build.layout_test_results):
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(BuilderTest.test_latest_layout_test_results):
(BuildTest.test_layout_test_results):
* Scripts/webkitpy/common/system/user.py:
(User.prompt_with_multiple_lists):
Prompt with multiple sublists, but still have a global numbering.
This lets the build.chromium.org bots be clearly separated from the
build.webkit.org bots, which helps understand the builder names.

(User):
(User._wait_on_list_response):
(User.prompt_with_list):
* Scripts/webkitpy/common/system/user_unittest.py:
(UserTest.test_prompt_with_multiple_lists):
(UserTest.test_prompt_with_multiple_lists.run_prompt_test):
(UserTest.test_prompt_with_multiple_lists.run_prompt_test.mock_raw_input):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.is_chromium):
Provide a way to tell if a port is a Chromium port that doesn't involve string
manipulation on the port name or builder name.

* Scripts/webkitpy/layout_tests/port/builders.py:
(builder_path_from_name):
(all_builder_names):
Memoizing here is incorrect because the test override _exact_matches,
so these can return different values. In either case, I'm pretty sure these
are not remotely hot codepaths. I manually inspected all call sites and they're
all in high-level calls (e.g. execute calls for webkit-patch commands) and not
called in a loop.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.is_chromium):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest._results_url):
(AbstractParallelRebaselineCommand.__init__):
(Rebaseline.__init__):
(Rebaseline):
(Rebaseline._builders_to_pull_from):
(Rebaseline._tests_to_update):
(Rebaseline.execute):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(test_rebaseline.mock_builders_to_pull_from):
(test_rebaseline):
(test_rebaseline_command_line_flags):
(test_rebaseline_multiple_builders):
(test_rebaseline_multiple_builders.mock_builders_to_pull_from):
(test_rebaseline_multiple_builders.mock_tests_to_update):
(test_rebaseline_multiple_builders_and_tests_command_line):
* Scripts/webkitpy/tool/mocktool.py:
(MockTool.irc):
(MockTool):
(MockTool.buildbot_for_builder_name):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Adding another flaky test to bug 90469 (storage tests).

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. fast/js/dfg-cross-global-object-inline-array-literal.html is racey (and thus flaky).

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. platform/chromium/inspector/styles/device-metrics-fit-window.html is timing out in debug and now marked as slow.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122237 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. tables/mozilla_expected_failures/other/empty_cells.html marked as flaky.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Count inspector memory used to traverse DOM in native memory snapshots.
https://bugs.webkit.org/show_bug.cgi?id=90456

Inspector may take significant amount of memory when traversing DOM structure.
Take it into account and report under inspector memory.

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-07-10
Reviewed by Pavel Feldman.

* dom/MemoryInstrumentation.h:
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::calculateContainerSize):
(WebCore::MemoryInstrumentation::reportHashMap):
(WebCore::MemoryInstrumentation::reportHashSet):
(WebCore::MemoryInstrumentation::reportVector):
* inspector/InspectorMemoryAgent.cpp:
(MemoryBlockName):
(WebCore):
(WebCore::domTreeInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=90646
<rdar://problem/11648478> 3-pass pagination slows down pagination

Improve the logical top estimate function for margin collapsing to be more accurate. In particular
make the basic case of <body><p> or <body><h1> no longer be wrong. This estimate being incorrect
is not a big deal most of the time, but when paginating it is a very big deal, since you have to
relayout everything whenever your vertical placement is wrong.

Improving the estimation exposed a bug in an existing layout test. I had to clean up the buggy
code written for negative margin-related float detection and fix an invalid layout test to
actually be correct.

Reviewed by Simon Fraser.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::marginBeforeEstimateForChild):
(WebCore):
(WebCore::RenderBlock::estimateLogicalTopPosition):
(WebCore::RenderBlock::marginValuesForChild):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):

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

Fix invalid layout test exposed by my changes to logical top estimation.

Reviewed by Simon Fraser.

* fast/block/float/previous-sibling-float-002-expected.html:
* fast/block/float/previous-sibling-float-002.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Added resource-request-content-while-loading.html to flaky wkbug 83890.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make GC3D and E3D more maintainable for GLES platforms
https://bugs.webkit.org/show_bug.cgi?id=90567

Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-07-10
Reviewed by Rob Buis.

This patch cleans up code for WebGL on OpenGLES platforms which use
GraphicsContext3DOpenGL* and Extensions3DOpenGL*. Although
GraphicsContext3DOpenGL was already split into GraphicsContext3DOpenGL,
GraphicsContext3DOpenGLCommon, and  GraphicsContext3DOpenGLES, this patch
is an attempt to refactor this code in a way that will help BlackBerry and
other teams support WebGL on mobile platforms with as little use of
"#IF USE(OPENGL_ES_2)" in common code as possible. Also included is the
separation of Extensions3DOpenGL into Extensions3DOpenGLCommon,
Extensions3DOpenGL, and Extensions3DOpenGLES as well as the introduction
of OpenGLESShims.

This patch is created in large part by Jonathan Feldstein.

No new tests: no new behaviour.

* PlatformBlackBerry.cmake: Recognize BlackBerry as OPENGL ES, add new files to build
* Target.pri: Add new Extensions3DOpenGL* to WebGL builds
* platform/graphics/GraphicsContext3D.h: Add validateDepthStencil, make systemAllowsMultisamplingOnATICards a a member function.
(WebCore):
* platform/graphics/OpenGLESShims.h: Added.
* platform/graphics/opengl/Extensions3DOpenGL.cpp: Move code to Extensions3DOpenGLCommon where possible
(WebCore::Extensions3DOpenGL::Extensions3DOpenGL): Reflect that it is now inherits Extensions3DCommon
(WebCore::Extensions3DOpenGL::supportsExtension): Contains OpenGL specific code from supports
(WebCore):
(WebCore::Extensions3DOpenGL::getExtensions): Returns a list of extensions
* platform/graphics/opengl/Extensions3DOpenGL.h: Remove functions now in Extensions3DOpenGLCommon
(WebCore):
(Extensions3DOpenGL):
* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Added.
(WebCore):
(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
(WebCore::Extensions3DOpenGLCommon::~Extensions3DOpenGLCommon):
(WebCore::Extensions3DOpenGLCommon::supports):
(WebCore::Extensions3DOpenGLCommon::ensureEnabled):
(WebCore::Extensions3DOpenGLCommon::isEnabled):
(WebCore::Extensions3DOpenGLCommon::getGraphicsResetStatusARB):
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): Existed before, but did nothing. Now does what is says it does.
(WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): Moved from Extensions3DOpenGL::supports
* platform/graphics/opengl/Extensions3DOpenGLCommon.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
(WebCore):
(Extensions3DOpenGLCommon):
* platform/graphics/opengl/Extensions3DOpenGLES.cpp: Added.
(WebCore):
(WebCore::Extensions3DOpenGLES::Extensions3DOpenGLES):
(WebCore::Extensions3DOpenGLES::~Extensions3DOpenGLES):
(WebCore::Extensions3DOpenGLES::framebufferTexture2DMultisampleIMG):
(WebCore::Extensions3DOpenGLES::renderbufferStorageMultisampleIMG):
(WebCore::Extensions3DOpenGLES::createVertexArrayOES):
(WebCore::Extensions3DOpenGLES::deleteVertexArrayOES):
(WebCore::Extensions3DOpenGLES::isVertexArrayOES):
(WebCore::Extensions3DOpenGLES::bindVertexArrayOES):
(WebCore::Extensions3DOpenGLES::supportsExtension): Contains OpenGLES specific code from supports
(WebCore::Extensions3DOpenGLES::getExtensions):
* platform/graphics/opengl/Extensions3DOpenGLES.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
(WebCore):
(Extensions3DOpenGLES):
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::validateAttributes):
(WebCore):
(WebCore::GraphicsContext3D::renderbufferStorage):
(WebCore::GraphicsContext3D::texImage2D):
(WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
(WebCore::GraphicsContext3D::getExtensions):
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::validateDepthStencil):
(WebCore::GraphicsContext3D::clear):
(WebCore::GraphicsContext3D::isTexture):
(WebCore):
(WebCore::GraphicsContext3D::lineWidth):
(WebCore::GraphicsContext3D::linkProgram):
(WebCore::GraphicsContext3D::pixelStorei):
(WebCore::GraphicsContext3D::polygonOffset):
(WebCore::GraphicsContext3D::readPixels):
(WebCore::GraphicsContext3D::deleteBuffer):
* platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::releaseShaderCompiler):
(WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
(WebCore::GraphicsContext3D::validateAttributes):
(WebCore):
(WebCore::GraphicsContext3D::getExtensions):
(WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore):
(WebCore::GraphicsContext3D::releaseShaderCompiler):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Use setup_test_runner() instead of start_helper() to setup test environment
https://bugs.webkit.org/show_bug.cgi?id=90894

Reviewed by Adam Barth.

start_helper() is actually start_pixel_test_helper() since r115601 (bug 81729).
Should use setup_test_runner() to setup test environment for chromium-android.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.setup_test_run): Renamed from start_helper(). Added cache cleanup code.
(ChromiumAndroidPort.clean_up_test_run): Renamed from stop_helper().
(ChromiumAndroidPort._path_to_helper): Returns None as we don't have a helper now.
(ChromiumAndroidPort):
(ChromiumAndroidPort._path_to_forwarder): Original _path_to_helper().
(ChromiumAndroidPort._push_executable):
(ChromiumAndroidDriver.__init__):
(ChromiumAndroidDriver.cmd_line):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Avoid allocating render pass textures that have no content
https://bugs.webkit.org/show_bug.cgi?id=90702

Reviewed by Adrienne Walker.

Source/WebCore:

When OOM conditions are hit, textures are not allocated for some layers
which can prevent any quads from being present for a render surface.
This is used as a signal to prevent the RenderPass from allocating a
texture.

Replace the CCLayerTreeHostImpl::removePassesWithCachedTextures() method
with a general removeRenderPasses() which takes a culling control object
and will remove passes based on the inputs from the control object.

This new method is used for the old purpose of removing passes with cached
textures, as well as to remove passes that do not have any quad inputs.

Test: CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawRenderPassQuad):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::shouldRemoveRenderPass):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::shouldRemoveRenderPass):
(WebCore::CCLayerTreeHostImpl::removeRenderPasses):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(WebCore):
(CullRenderPassesWithCachedTextures):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListBegin):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListEnd):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListNext):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::CullRenderPassesWithCachedTextures):
(CCLayerTreeHostImpl):
(CullRenderPassesWithNoQuads):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListBegin):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListEnd):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListNext):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):
(CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::beginTest):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::didCommit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::afterTest):
(WTF):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AudioFIFO not correctly wrapping the write index on push
https://bugs.webkit.org/show_bug.cgi?id=90901

Patch by Raymond Toy <rtoy@google.com> on 2012-07-10
Reviewed by Chris Rogers.

No new tests

* platform/audio/AudioFIFO.cpp:
(WebCore::AudioFIFO::push): Wrap the write index, not read index!

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122253 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Adding the majority of the remaining indexeddb/mozilla tests which are all flaky and crashing.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122254 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Use default font rendering styles in FontPlatformData::querySystemForRenderStyle()
https://bugs.webkit.org/show_bug.cgi?id=90826

Reviewed by Adam Barth.

Source/WebCore:

No new tests. The change to this file is refactoring only.

* platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
(WebCore::FontPlatformData::querySystemForRenderStyle): Moved the "NoPreference" initialization into PlatformSupport::PlatformSupport::getRenderStyleForStrike().

Source/WebKit/chromium:

* WebKit.gyp:
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::getRenderStyleForStrike): Call style.setDefault() on Android or when the font is not specified.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove LayoutTestController and WebKitTestRunner support for Hixie76 WebSockets
https://bugs.webkit.org/show_bug.cgi?id=90853

Reviewed by Eric Seidel.

Tools:

WebKit no longer implements the Hixie76 version of the WebSocket
protocol. We don't need to support it in our test framework.

* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::overridePreference):
* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::reset):
(WebPreferences::applyTo):
* DumpRenderTree/chromium/WebPreferences.h:
(WebPreferences):
* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):
* DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
(LayoutTestController::overridePreference):
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::WebPage::resetSettings):
* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::overridePreference):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):

LayoutTests:

There's no need to explicitly disable the Hixie76 protocol because it
no longer exists in WebKit.

* http/tests/websocket/tests/hybi/alert-in-event-handler.html:
* http/tests/websocket/tests/hybi/bad-handshake-crash.html:
* http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars.html:
* http/tests/websocket/tests/hybi/bad-sub-protocol-empty.html:
* http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii.html:
* http/tests/websocket/tests/hybi/binary-type.html:
* http/tests/websocket/tests/hybi/broken-utf8.html:
* http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
* http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
* http/tests/websocket/tests/hybi/client-close.html:
* http/tests/websocket/tests/hybi/close-before-open.html:
* http/tests/websocket/tests/hybi/close-code-and-reason.html:
* http/tests/websocket/tests/hybi/close-event.html:
* http/tests/websocket/tests/hybi/close-on-navigate-new-location.html:
* http/tests/websocket/tests/hybi/close-on-unload-and-force-gc.html:
* http/tests/websocket/tests/hybi/close-on-unload-reference-in-parent.html:
* http/tests/websocket/tests/hybi/close-on-unload.html:
* http/tests/websocket/tests/hybi/close-unref-websocket.html:
* http/tests/websocket/tests/hybi/close.html:
* http/tests/websocket/tests/hybi/compressed-control-frame.html:
* http/tests/websocket/tests/hybi/cross-origin.html:
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html:
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html:
* http/tests/websocket/tests/hybi/deflate-frame-parameter.html:
* http/tests/websocket/tests/hybi/echo-with-no-extension.html:
* http/tests/websocket/tests/hybi/extensions.html:
* http/tests/websocket/tests/hybi/fragmented-binary-frames.html:
* http/tests/websocket/tests/hybi/fragmented-control-frame.html:
* http/tests/websocket/tests/hybi/fragmented-frames.html:
* http/tests/websocket/tests/hybi/frame-lengths.html:
* http/tests/websocket/tests/hybi/handshake-challenge-randomness.html:
* http/tests/websocket/tests/hybi/handshake-error.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-maxlength.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-no-cr.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null.html:
* http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header.html:
* http/tests/websocket/tests/hybi/httponly-cookie.pl:
* http/tests/websocket/tests/hybi/interleaved-fragments.html:
* http/tests/websocket/tests/hybi/invalid-continuation.html:
* http/tests/websocket/tests/hybi/invalid-encode-length.html:
* http/tests/websocket/tests/hybi/invalid-masked-frames-from-server.html:
* http/tests/websocket/tests/hybi/invalid-subprotocol-characters.html:
* http/tests/websocket/tests/hybi/invalid-subprotocols.html:
* http/tests/websocket/tests/hybi/long-control-frame.html:
* http/tests/websocket/tests/hybi/long-invalid-header.html:
* http/tests/websocket/tests/hybi/multiple-connections.html:
* http/tests/websocket/tests/hybi/multiple-subprotocols.html:
* http/tests/websocket/tests/hybi/no-subprotocol.html:
* http/tests/websocket/tests/hybi/null-character.html:
* http/tests/websocket/tests/hybi/pong.html:
* http/tests/websocket/tests/hybi/receive-arraybuffer.html:
* http/tests/websocket/tests/hybi/receive-blob.html:
* http/tests/websocket/tests/hybi/reload-crash.html:
* http/tests/websocket/tests/hybi/reserved-bits.html:
* http/tests/websocket/tests/hybi/reserved-opcodes.html:
* http/tests/websocket/tests/hybi/send-after-close-on-unload.html:
* http/tests/websocket/tests/hybi/send-arraybuffer.html:
* http/tests/websocket/tests/hybi/send-blob.html:
* http/tests/websocket/tests/hybi/send-empty.html:
* http/tests/websocket/tests/hybi/send-file-blob-fail.html:
* http/tests/websocket/tests/hybi/send-file-blob.html:
* http/tests/websocket/tests/hybi/send-object-tostring-check.html:
* http/tests/websocket/tests/hybi/send-throw.html:
* http/tests/websocket/tests/hybi/send.html:
* http/tests/websocket/tests/hybi/server-close.html:
* http/tests/websocket/tests/hybi/set-protocol.html:
* http/tests/websocket/tests/hybi/simple-stress.html:
* http/tests/websocket/tests/hybi/simple.html:
* http/tests/websocket/tests/hybi/sub-protocol.html:
* http/tests/websocket/tests/hybi/too-long-payload.html:
* http/tests/websocket/tests/hybi/unicode.html:
* http/tests/websocket/tests/hybi/unmasked-frames.html:
* http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html:
* http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html:
* http/tests/websocket/tests/hybi/url-attribute.html:
* http/tests/websocket/tests/hybi/url-no-trailing-slash.html:
* http/tests/websocket/tests/hybi/url-parsing.html:
* http/tests/websocket/tests/hybi/url-with-credential.html:
* http/tests/websocket/tests/hybi/url-with-empty-query.html:
* http/tests/websocket/tests/hybi/url-with-query.html:
* http/tests/websocket/tests/hybi/websocket-event-target.html:
* http/tests/websocket/tests/hybi/websocket-pending-activity.html:
* http/tests/websocket/tests/hybi/workers/close-code-and-reason.html:
* http/tests/websocket/tests/hybi/workers/close-in-onmessage-crash.html:
* http/tests/websocket/tests/hybi/workers/close-in-shared-worker.html:
* http/tests/websocket/tests/hybi/workers/close-in-worker.html:
* http/tests/websocket/tests/hybi/workers/close.html:
* http/tests/websocket/tests/hybi/workers/multiple-subprotocols.html:
* http/tests/websocket/tests/hybi/workers/no-onmessage-in-sync-op.html:
* http/tests/websocket/tests/hybi/workers/no-subprotocol.html:
* http/tests/websocket/tests/hybi/workers/receive-arraybuffer.html:
* http/tests/websocket/tests/hybi/workers/receive-blob.html:
* http/tests/websocket/tests/hybi/workers/send-arraybuffer.html:
* http/tests/websocket/tests/hybi/workers/send-blob.html:
* http/tests/websocket/tests/hybi/workers/shared-worker-simple.html:
* http/tests/websocket/tests/hybi/workers/worker-handshake-challenge-randomness.html:
* http/tests/websocket/tests/hybi/workers/worker-reload.html:
* http/tests/websocket/tests/hybi/workers/worker-simple.html:
* http/tests/websocket/tests/hybi/zero-length-text.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122256 268f45cc-cd09-0410-ab3c-d52691b4dbfc
webkit-patch rebaseline doesn't work for audio/pixel tests
https://bugs.webkit.org/show_bug.cgi?id=90905

Reviewed by Adam Barth.

We just need to pass the correct suffix list to rebaseline-test-internal
and optimize-baselines. By default, pass all suffixes.

* Scripts/webkitpy/tool/commands/rebaseline.py:
(Rebaseline):
(Rebaseline.__init__):
(Rebaseline._suffixes_to_update):
(Rebaseline.execute):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(test_rebaseline_multiple_builders_and_tests_command_line):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Fix typos in chromium_android.py in r151492
https://bugs.webkit.org/show_bug.cgi?id=90904

Reviewed by Ojan Vafai.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.setup_test_run):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122261 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] IndexedDB: Need test of Typed Arrays
https://bugs.webkit.org/show_bug.cgi?id=81979

Reviewed by Tony Chang.

Verify storage of Typed Arrays (Uint8Array and friends). Checks that
these types are stored and read back with types and data intact. Also
add an index to the object store, so that key paths are evaluated
against each type on every write operation.

* storage/indexeddb/structured-clone-expected.txt:
* storage/indexeddb/structured-clone.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support for min-height:auto and min-width:auto
https://bugs.webkit.org/show_bug.cgi?id=88437

Reviewed by Tony Chang.

Source/WebCore:

Right now auto does the same thing as min-height/min-width:0.
For flex-items it should be the same as min-content (followup patch).
http://dev.w3.org/csswg/css3-flexbox/#min-size-auto

Tests: fast/css/auto-min-size.html
       fast/css/deprecated-flexbox-auto-min-size.html

* WebCore.order:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Return 0px for the computed value of auto.

* css/CSSParser.cpp:
(WebCore::CSSParser::validWidth):
(WebCore):
(WebCore::CSSParser::validHeight):
(WebCore::CSSParser::parseValue):
* css/CSSParser.h:
(CSSParser):
Restructure width/height parsing to reduce code duplication and make it easier
to add auto as a valid min value.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::adjustSizeConstraints):
This code was unnecessarily checking intrinsicOrAuto since auto was previously
not an allowed value for minWidth/minHeight.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::sizesLogicalWidthToFitContent):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computeContentLogicalHeightUsing):
(WebCore::RenderBox::computeReplacedLogicalWidth):
(WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalHeight):
(WebCore::RenderBox::computePositionedLogicalHeightUsing):
Need to pass a SizeType to all these methods so that we know if the Length
we're working with is a min length since auto has a different meaning now
for min lengths.

* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace):
(WebCore::RenderFlexibleBox::lineBreakLength):
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):
* rendering/RenderScrollbarPart.cpp:
(WebCore::calcScrollbarThicknessUsing):
(WebCore::RenderScrollbarPart::computeScrollbarWidth):
(WebCore::RenderScrollbarPart::computeScrollbarHeight):
* rendering/style/RenderStyle.h:
Default minHeight/minWidth to auto instead of 0px.

LayoutTests:

* fast/css/auto-min-size-expected.txt: Added.
* fast/css/auto-min-size.html: Added.
* fast/css/deprecated-flexbox-auto-min-size.html: Added.
* platform/chromium-linux/fast/css/deprecated-flexbox-auto-min-size-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122264 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Removing duplicated line from TestExpectations.

* platform/chromium/TestExpectations:

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