Unreviewed test correction.

* webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html: Remove commented-out
line from debugging code.
* webgl/1.0.2/resources/webgl_test_files/conformance/resources/webgl-test-utils.js:
(WebGLTestUtils): Return to normal behavior of exiting immediately on test failure.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161383 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions][CSS Shapes] ASSERTION FAILED: m_segmentRanges.size() < m_segments.size()
https://bugs.webkit.org/show_bug.cgi?id=125770

Reviewed by Bem Jones-Bey.

Source/WebCore:

When we have an e.g. up-side-down triangle, when the content doesn't fit in the bottom part of the shape,
and the adjusted content flows into the next region with a shape, we need to update the actual shape
and region. Since it wasn't updated, it led to a shape mismatch, which led to assert/layout error.

Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html

* rendering/RenderBlockLineLayout.cpp:
(WebiCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Update current shape
and region, when adjustment occured.

LayoutTests:

* fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment-expected.html: Added.
* fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Remove support for FileSystem in Frontend.
https://bugs.webkit.org/show_bug.cgi?id=126369

Reviewed by Joseph Pecoraro.

Source/WebCore:

No new tests, No change in behavior.

Remove leftover codes from protocol after r156692.

* CMakeLists.txt:
* DerivedSources.make:
* GNUmakefile.am:
* inspector/InspectorFrontendClient.h:
* inspector/InspectorFrontendClientLocal.h:
* inspector/InspectorFrontendHost.cpp:
* inspector/InspectorFrontendHost.h:
* inspector/InspectorFrontendHost.idl:
* inspector/protocol/FileSystem.json: Removed.

Source/WebInspectorUI:

Update InspectorWebBackendCommands after removing 'FileSystem' domain.

* UserInterface/InspectorWebBackendCommands.js:
* UserInterface/Legacy/6.0/InspectorWebBackendCommands.js:
* UserInterface/Legacy/7.0/InspectorWebBackendCommands.js:
* Versions/Inspector-iOS-6.0.json:
* Versions/Inspector-iOS-7.0.json:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161385 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use hasEnabledVerticalScrollbar instead of hasEnabledHorizontalScrollbar.
https://bugs.webkit.org/show_bug.cgi?id=126546

Reviewed by Simon Fraser.

hasEnabledHorizontalScrollbar is used twice.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<WebCore::ScrollableAreaParameters>::encode):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161386 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Hook up the RemoteScrollingCoordinator
https://bugs.webkit.org/show_bug.cgi?id=126547

Source/WebCore:

Reviewed by Tim Horton.

Export lots of scrolling-related symbols for use by WebKit2.

* WebCore.exp.in:

Source/WebKit2:

Reviewed by Tim Horton.

Hook up the RemoteScrollingCoordinator in WebKit2.

When the RemoteLayerTreeDrawingArea is in use, WebPageProxy creates
a RemoteScrollingCoordinator, and hands it mouseWheel events. It then
scrolls via a RemoteScrollingTree constructed from state tree commits from the
WebProcess.

Scrolling tree commits happen via a transaction received by RemoteLayerTreeDrawingAreaProxy,
atomically with layer tree transactions.

* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(WebKit::RemoteScrollingCoordinatorTransaction::encode): Fix encoding for some
cases seen in WebKitTestRunner where a page has no ScrollingCoordinator.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeWebPage): Create the RemoteScrollingCoordinatorProxy
when using a remote layer tree drawing area.
(WebKit::WebPageProxy::handleWheelEvent): Pass to the scrolling coordinator.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::scrollingCoordinatorProxy):
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h: Include the RemoteScrollingCoordinatorTransaction.
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::getLayer): It's valid to get a 0 layerID (e.g. when
a layer disappears) so handle this case.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createScrollingCoordinator): Override to create the
RemoteScrollingCoordinator in the WebProcess.
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scrollingCoordinator): Not inline to avoid polluting the
header with #includes.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Say that we want a ScrollingCoordinator.
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers): Add the scrollingTransaction to the
message.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161387 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WebGL] Unreviewed build fix for Mountain Lion drivers.

Add new TestExpectations file for Mountain Lion.

* platform/mac-mountainlion/TestExpectations: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WebGL] Be safer about toggling OpenGL state by using a scoped object to control setting lifetime.
https://bugs.webkit.org/show_bug.cgi?id=126548

Reviewed by Anders Carlsson.

No new tests since there is no change in behavior.

* GNUmakefile.list.am: Updated to build new TemporaryOpenGLSetting files.
* PlatformBlackBerry.cmake: Ditto
* PlatformEfl.cmake: Ditto
* PlatformGTK.cmake: Ditto
* PlatformNix.cmake: Ditto
* WebCore.vcxproj/WebCore.vcxproj: Ditto
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
* WebCore.xcodeproj/project.pbxproj: Ditto
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Use new object.
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::prepareTexture): Ditto
(WebCore::GraphicsContext3D::reshape): Ditto
* platform/graphics/opengl/TemporaryOpenGLSetting.cpp: Added.
(WebCore::TemporaryOpenGLSetting::TemporaryOpenGLSetting):
(WebCore::TemporaryOpenGLSetting::~TemporaryOpenGLSetting):
* platform/graphics/opengl/TemporaryOpenGLSetting.h: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161389 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WebGL] Unreviewed build fix for Mountain Lion drivers.

* platform/mac-mountainlion/TestExpectations: Removed. Moved test to the mac/TestExpectations file.
* platform/mac/TestExpectations: Add failure entry for MountainLion test.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161391 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/126560> Fix incorrectness in use of some AppKit enums

Reviewed by Ryosuke Niwa.

* DumpRenderTree/mac/DumpRenderTree.mm:
(-[DRTMockScroller rectForPart:]): Move to using an if with early return instead of a switch
with a single case. This avoids the potential for warnings about unhandled cases.
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::PlatformWebView): Cast the argument to NSBackingStoreType.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161396 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/126559> Be more correct in dealing with NSControlSize

Reviewed by Ryosuke Niwa.

* platform/mac/ScrollbarThemeMac.mm:
(WebCore::scrollbarControlSizeToNSControlSize): Helper function to map from ScrollbarControlSize
to NSControlSize.
(WebCore::ScrollbarThemeMac::registerScrollbar): Use the helper rather than casting.
(WebCore::ScrollbarThemeMac::scrollbarThickness): Use the helper.
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::progressBarRectForBounds): Update the type of the local to NSControlSize.
(WebCore::RenderThemeMac::paintProgressBar): Ditto.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161397 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make the different flavors of integer arithmetic more explicit, and don't rely on (possibly stale) results of the backwards propagator to decide integer arithmetic semantics
https://bugs.webkit.org/show_bug.cgi?id=125519

Reviewed by Geoffrey Garen.
        
Adds the Arith::Mode enum to arithmetic nodes, which makes it explicit what sorts of
checks and overflows the node should do. Previously this would be deduced from
backwards analysis results.
        
This also makes "unchecked" variants really mean that you want the int32 wrapped
result, so ArithIMul is now done in terms of ArithMul(Unchecked). That means that the
constant folder needs to compute exactly the result implied by ArithMode, instead of
just folding the double result.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGArithMode.cpp: Added.
(WTF::printInternal):
* dfg/DFGArithMode.h: Added.
(JSC::DFG::doesOverflow):
(JSC::DFG::shouldCheckOverflow):
(JSC::DFG::shouldCheckNegativeZero):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::pureCSE):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::attemptToMakeIntegerAdd):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGNode.h:
(JSC::DFG::Node::Node):
(JSC::DFG::Node::hasArithMode):
(JSC::DFG::Node::arithMode):
(JSC::DFG::Node::setArithMode):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compileDoubleAsInt32):
(JSC::DFG::SpeculativeJIT::compileAdd):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileArithNegate):
(JSC::DFG::SpeculativeJIT::compileArithMul):
(JSC::DFG::SpeculativeJIT::compileArithDiv):
(JSC::DFG::SpeculativeJIT::compileArithMod):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileAddSub):
(JSC::FTL::LowerDFGToLLVM::compileArithMul):
(JSC::FTL::LowerDFGToLLVM::compileArithDivMod):
(JSC::FTL::LowerDFGToLLVM::compileArithNegate):
(JSC::FTL::LowerDFGToLLVM::compileUInt32ToNumber):



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