WebKit-https.git
8 years agoUnreviewed. Prospective build fix for GTK port following r159533.
roger_fong@apple.com [Wed, 20 Nov 2013 03:13:27 +0000 (03:13 +0000)]
Unreviewed. Prospective build fix for GTK port following r159533.

* GNUmakefile.am:

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

8 years agorun-jsc-stress-tests should be able to package its tests and move them places
mhahnenberg@apple.com [Wed, 20 Nov 2013 02:51:24 +0000 (02:51 +0000)]
run-jsc-stress-tests should be able to package its tests and move them places
https://bugs.webkit.org/show_bug.cgi?id=124549

Reviewed by Geoff Garen and Filip Pizlo.

* Scripts/jsc-stress-test-helpers/check-mozilla-failure: Removed. This script was just a ruby reimplementation
of grep -i -q
* Scripts/run-javascriptcore-tests: Pass through the --make-bundle flag.
* Scripts/run-jsc-stress-tests: Added the new concept of a "bundle", which is a collection of all tests and any
other files that those tests require to run in any environment along with a fixed root directory into which these
files and their expected directory structure are cloned. The default Bundle class is basically
a no-op so that it functions like run-jsc-stress-tests prior to this patch. MovableBundle is a Bundle that knows
how to translate local paths to bundle paths and does all the work of moving each test file into the right place
inside the .tests directory. After all the test files have been created in jsc-stress-results MovableBundle
creates a tarball of the entire directory for easy relocation. The --make-bundle flag causes run-jsc-stress-tests
to use MovableBundle instead of just Bundle.

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

8 years ago[EFL] Layout tests need to be rebaselined.
commit-queue@webkit.org [Wed, 20 Nov 2013 02:40:57 +0000 (02:40 +0000)]
[EFL] Layout tests need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124622

Unreviewed, EFL rebaseline.

EFL tests are rebaselined after r106181, r128728 and r133754.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-19

* platform/efl-wk2/TestExpectations:
* platform/efl/fast/replaced/applet-disabled-positioned-expected.txt:
* platform/efl/fast/replaced/applet-rendering-java-disabled-expected.txt:
* platform/efl/fast/text/shaping/shaping-script-order-expected.txt:
* platform/efl/fast/writing-mode/japanese-ruby-horizontal-bt-expected.txt:

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

8 years agoImplement spin control on WinCE port.
commit-queue@webkit.org [Wed, 20 Nov 2013 02:12:43 +0000 (02:12 +0000)]
Implement spin control on WinCE port.
https://bugs.webkit.org/show_bug.cgi?id=123254

Patch by Zhuang Zhigang <zhuangzg@cn.fujitsu.com> on 2013-11-19
Reviewed by Brent Fulgham.

* rendering/RenderThemeWinCE.cpp:
(WebCore::RenderThemeWinCE::adjustInnerSpinButtonStyle):
(WebCore::RenderThemeWinCE::paintInnerSpinButton):
* rendering/RenderThemeWinCE.h:

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

8 years agoUpdate ANGLE sources.
roger_fong@apple.com [Wed, 20 Nov 2013 01:52:11 +0000 (01:52 +0000)]
Update ANGLE sources.
https://bugs.webkit.org/show_bug.cgi?id=124615.

Reviewed by Dean Jackson.

Tests covered by Khronos WebGL conformance tests.

Update ANGLE to checkout a60e0805721f62c28a55faf2df74472cc5fc91fc.
Modify xcodeproj files as necessary, update plist.
Stop using DerivedSources.make and just use the generated sources that are checked into ANGLE.
Add a note to bison generated files indicating that Apple elects to distribute said files under the BSD license:
ExpressionParser.cpp, glslang_tab.cpp, glslang_tab.h.

* ANGLE.plist:
* ANGLE.xcodeproj/project.pbxproj:
* DerivedSources.make: Removed.
* platform/graphics/ANGLEWebKitBridge.cpp: Resolve a build error that resulted from updating ANGLE.
(WebCore::getSymbolInfo):
(WebCore::ANGLEWebKitBridge::compileShaderSource):
* include/EGL/egl.h:
* include/EGL/eglsoftlinking.h: Removed.
* include/GLES2/gl2.h:
* include/GLES2/gl2softlinking.h: Removed.
* include/GLSLANG/ShaderLang.h:
* include/KHR/khrplatform.h:
* src/ANGLE.sln: Added.
* src/build_angle.gypi:
* src/common/debug.h:
* src/common/event_tracer.cpp: Added.
(gl::TraceGetTraceCategoryEnabledFlag):
(gl::TraceAddTraceEvent):
* src/common/event_tracer.h: Added.
* src/common/version.h:
* src/compiler/CodeGen.cpp: Added.
(ConstructCompiler):
(DeleteCompiler):
* src/compiler/CodeGenGLSL.cpp: Removed.
* src/compiler/CodeGenHLSL.cpp: Removed.
* src/compiler/Common.h:
(NewPoolTString):
* src/compiler/Compiler.cpp:
(TCompiler::Init):
(TCompiler::compile):
(TCompiler::InitBuiltInSymbolTable):
(TCompiler::clearResults):
(TCompiler::collectVariables):
* src/compiler/ConstantUnion.h:
* src/compiler/DetectDiscontinuity.cpp:
* src/compiler/InfoSink.h:
* src/compiler/InitializeDll.cpp:
(InitProcess):
(DetachProcess):
* src/compiler/InitializeDll.h:
* src/compiler/InitializeGLPosition.cpp: Added.
(InitializeGLPosition::visitAggregate):
(InitializeGLPosition::insertCode):
* src/compiler/InitializeGLPosition.h: Added.
(InitializeGLPosition::InitializeGLPosition):
(InitializeGLPosition::visitBinary):
(InitializeGLPosition::visitUnary):
(InitializeGLPosition::visitSelection):
(InitializeGLPosition::visitLoop):
(InitializeGLPosition::visitBranch):
* src/compiler/InitializeGlobals.h:
* src/compiler/InitializeParseContext.cpp:
(InitializeParseContextIndex):
(FreeParseContextIndex):
(SetGlobalParseContext):
(GetGlobalParseContext):
* src/compiler/InitializeParseContext.h:
* src/compiler/IntermTraverse.cpp:
(TIntermSymbol::traverse):
(TIntermConstantUnion::traverse):
(TIntermBinary::traverse):
(TIntermUnary::traverse):
(TIntermAggregate::traverse):
(TIntermSelection::traverse):
(TIntermLoop::traverse):
(TIntermBranch::traverse):
* src/compiler/Intermediate.cpp:
(GetHigherPrecision):
(getOperatorString):
(TIntermLoop::replaceChildNode):
(TIntermBranch::replaceChildNode):
(TIntermBinary::replaceChildNode):
(TIntermUnary::replaceChildNode):
(TIntermAggregate::replaceChildNode):
(TIntermSelection::replaceChildNode):
(TIntermOperator::isAssignment):
(TIntermediate::promoteConstantUnion):
* src/compiler/MapLongVariableNames.cpp:
* src/compiler/MapLongVariableNames.h:
* src/compiler/NodeSearch.h: Added.
(sh::NodeSearchTraverser::NodeSearchTraverser):
(sh::NodeSearchTraverser::found):
(sh::NodeSearchTraverser::search):
(sh::FindDiscard::visitBranch):
(sh::FindSideEffectRewriting::visitBinary):
* src/compiler/OutputGLSLBase.cpp:
(TOutputGLSLBase::visitSelection):
(TOutputGLSLBase::visitAggregate):
(TOutputGLSLBase::visitLoop):
* src/compiler/OutputGLSLBase.h:
* src/compiler/OutputHLSL.cpp:
(sh::OutputHLSL::OutputHLSL):
(sh::OutputHLSL::header):
(sh::OutputHLSL::visitBinary):
(sh::OutputHLSL::visitSelection):
(sh::OutputHLSL::visitBranch):
(sh::OutputHLSL::handleExcessiveLoop):
(sh::OutputHLSL::addConstructor):
* src/compiler/OutputHLSL.h:
* src/compiler/ParseContext.cpp: Added.
(TParseContext::parseVectorFields):
(TParseContext::parseMatrixFields):
(TParseContext::recover):
(TParseContext::error):
(TParseContext::warning):
(TParseContext::trace):
(TParseContext::assignError):
(TParseContext::unaryOpError):
(TParseContext::binaryOpError):
(TParseContext::precisionErrorCheck):
(TParseContext::lValueErrorCheck):
(TParseContext::constErrorCheck):
(TParseContext::integerErrorCheck):
(TParseContext::globalErrorCheck):
(TParseContext::reservedErrorCheck):
(TParseContext::constructorErrorCheck):
(TParseContext::voidErrorCheck):
(TParseContext::boolErrorCheck):
(TParseContext::samplerErrorCheck):
(TParseContext::structQualifierErrorCheck):
(TParseContext::parameterSamplerErrorCheck):
(TParseContext::containsSampler):
(TParseContext::arraySizeErrorCheck):
(TParseContext::arrayQualifierErrorCheck):
(TParseContext::arrayTypeErrorCheck):
(TParseContext::arrayErrorCheck):
(TParseContext::nonInitConstErrorCheck):
(TParseContext::nonInitErrorCheck):
(TParseContext::paramErrorCheck):
(TParseContext::extensionErrorCheck):
(TParseContext::supportsExtension):
(TParseContext::isExtensionEnabled):
(TParseContext::findFunction):
(TParseContext::executeInitializer):
(TParseContext::areAllChildConst):
(TParseContext::addConstructor):
(TParseContext::foldConstConstructor):
(TParseContext::constructBuiltIn):
(TParseContext::constructStruct):
(TParseContext::addConstVectorNode):
(TParseContext::addConstMatrixNode):
(TParseContext::addConstArrayNode):
(TParseContext::addConstStruct):
(TParseContext::enterStructDeclaration):
(TParseContext::exitStructDeclaration):
(TParseContext::structNestingErrorCheck):
(TParseContext::addIndexExpression):
(PaParseStrings):
* src/compiler/ParseContext.h: Added.
(TParseContext::TParseContext):
(TParseContext::numErrors):
(TParseContext::infoSink):
(TParseContext::pragma):
(TParseContext::extensionBehavior):
* src/compiler/ParseHelper.cpp: Removed.
* src/compiler/ParseHelper.h: Removed.
* src/compiler/PoolAlloc.cpp:
(InitializePoolIndex):
(FreePoolIndex):
(GetGlobalPoolAllocator):
(SetGlobalPoolAllocator):
* src/compiler/PoolAlloc.h:
(pool_allocator::pool_allocator):
* src/compiler/SearchSymbol.h:
* src/compiler/ShHandle.h:
(TCompiler::getVaryings):
* src/compiler/ShaderLang.cpp:
(checkVariableMaxLengths):
(ShInitialize):
(ShFinalize):
(ShConstructCompiler):
(ShCompile):
(ShGetInfo):
(ShGetVariableInfo):
(ShCheckVariablesWithinPackingLimits):
* src/compiler/SymbolTable.cpp:
(TSymbolTable::~TSymbolTable):
* src/compiler/SymbolTable.h:
(TSymbol::TSymbol):
(TSymbolTableLevel::insert):
(TSymbolTable::push):
(TSymbolTable::pop):
(TSymbolTable::findBuiltIn):
(TSymbolTable::relateToExtension):
(TSymbolTable::setDefaultPrecision):
(TSymbolTable::getDefaultPrecision):
(TSymbolTable::supportsPrecision):
* src/compiler/Types.h:
(NewPoolTFieldList):
(TType::TType):
(TType::setNominalSize):
(TPublicType::setAggregate):
* src/compiler/UnfoldShortCircuit.cpp:
(sh::UnfoldShortCircuit::visitBinary):
(sh::UnfoldShortCircuit::visitSelection):
* src/compiler/UnfoldShortCircuit.h:
* src/compiler/UnfoldShortCircuitAST.cpp: Added.
(UnfoldShortCircuitAST::visitBinary):
(UnfoldShortCircuitAST::updateTree):
* src/compiler/UnfoldShortCircuitAST.h: Added.
(UnfoldShortCircuitAST::UnfoldShortCircuitAST):
(UnfoldShortCircuitAST::NodeUpdateEntry::NodeUpdateEntry):
* src/compiler/Uniform.cpp:
(sh::Uniform::Uniform):
* src/compiler/Uniform.h:
* src/compiler/ValidateLimitations.cpp:
(ValidateLimitations::validateFunctionCall):
(ValidateLimitations::validateOperation):
* src/compiler/VariableInfo.cpp:
(TVariableInfo::TVariableInfo):
(CollectVariables::CollectVariables):
(CollectVariables::visitSymbol):
(CollectVariables::visitAggregate):
* src/compiler/VariableInfo.h:
* src/compiler/debug.cpp:
* src/compiler/depgraph/DependencyGraph.cpp:
* src/compiler/depgraph/DependencyGraphBuilder.cpp:
(TDependencyGraphBuilder::visitBinary):
* src/compiler/generate_parser.sh:
* src/compiler/glslang.l:
* src/compiler/glslang.y:
* src/compiler/glslang_lex.cpp:
(input):
(yyerror):
(int_constant):
(float_constant):
(glslang_scan):
* src/compiler/glslang_tab.cpp:
(yysyntax_error):
(glslang_parse):
* src/compiler/glslang_tab.h:
* src/compiler/intermediate.h:
(TIntermSymbol::hasSideEffects):
(TIntermSymbol::replaceChildNode):
(TIntermConstantUnion::hasSideEffects):
(TIntermConstantUnion::getIConst):
(TIntermConstantUnion::getFConst):
(TIntermConstantUnion::getBConst):
(TIntermConstantUnion::replaceChildNode):
(TIntermOperator::hasSideEffects):
(TIntermBinary::hasSideEffects):
(TIntermUnary::hasSideEffects):
(TIntermAggregate::hasSideEffects):
(TIntermSelection::hasSideEffects):
(TIntermTraverser::~TIntermTraverser):
(TIntermTraverser::incrementDepth):
(TIntermTraverser::decrementDepth):
(TIntermTraverser::getParentNode):
* src/compiler/localintermediate.h:
* src/compiler/parseConst.cpp:
* src/compiler/preprocessor/ExpressionParser.cpp:
(yy_symbol_print):
(yy_stack_print):
(yy_reduce_print):
(yystrlen):
(yystpcpy):
(yytnamerr):
(yysyntax_error):
(yydestruct):
(yyparse):
* src/compiler/preprocessor/ExpressionParser.y:
* src/compiler/preprocessor/Preprocessor.cpp:
(pp::Preprocessor::setMaxTokenLength):
(pp::Preprocessor::lex):
* src/compiler/preprocessor/Preprocessor.h:
* src/compiler/preprocessor/Tokenizer.cpp:
(pp::Tokenizer::Tokenizer):
(pp::Tokenizer::lex):
* src/compiler/preprocessor/Tokenizer.h:
(pp::Tokenizer::setMaxTokenLength):
* src/compiler/preprocessor/Tokenizer.l:
* src/compiler/preprocessor/generate_parser.sh:
* src/compiler/preprocessor/preprocessor.vcxproj: Added.
* src/compiler/preprocessor/preprocessor.vcxproj.filters: Added.
* src/compiler/timing/RestrictFragmentShaderTiming.cpp:
* src/compiler/translator.vcxproj: Added.
* src/compiler/translator.vcxproj.filters: Added.
* src/compiler/util.cpp:
(atof_clamp):
(atoi_clamp):
* src/compiler/util.h:
* src/libEGL/Surface.cpp:
(egl::Surface::checkForOutOfDateSwapChain):
* src/libEGL/libEGL.cpp:
* src/libEGL/libEGL.rc:
* src/libEGL/libEGL.vcxproj: Added.
* src/libEGL/libEGL.vcxproj.filters: Added.
* src/libGLESv2/Buffer.cpp:
(gl::Buffer::bufferData):
(gl::Buffer::bufferSubData):
(gl::Buffer::size):
(gl::Buffer::getIndexRangeCache):
* src/libGLESv2/Buffer.h:
* src/libGLESv2/Context.cpp:
(gl::Context::applyTextures):
(gl::Context::getBoundFramebufferTextureSerials):
* src/libGLESv2/Context.h:
(gl::Context::getRenderer):
* src/libGLESv2/Framebuffer.h:
* src/libGLESv2/ProgramBinary.cpp:
(gl::DiscardWorkaround):
(gl::ProgramBinary::load):
(gl::ProgramBinary::link):
(gl::ProgramBinary::linkAttributes):
(gl::AttributeSorter::AttributeSorter):
(gl::ProgramBinary::initAttributesByLayout):
(gl::ProgramBinary::sortAttributesByLayout):
* src/libGLESv2/ProgramBinary.h:
* src/libGLESv2/Renderbuffer.cpp:
(gl::RenderbufferTexture2D::getTextureSerial):
(gl::RenderbufferTextureCubeMap::getTextureSerial):
(gl::Renderbuffer::getTextureSerial):
* src/libGLESv2/Renderbuffer.h:
(gl::RenderbufferStorage::getTextureSerial):
* src/libGLESv2/Shader.cpp:
(gl::Shader::parseVaryings):
(gl::Shader::uncompile):
* src/libGLESv2/Shader.h:
* src/libGLESv2/Texture.cpp:
(gl::TextureCubeMap::storage):
* src/libGLESv2/Uniform.cpp:
(gl::Uniform::Uniform):
(gl::Uniform::~Uniform):
(gl::Uniform::isArray):
(gl::Uniform::elementCount):
* src/libGLESv2/Uniform.h:
* src/libGLESv2/constants.h: Removed.
* src/libGLESv2/libGLESv2.def:
* src/libGLESv2/libGLESv2.rc:
* src/libGLESv2/libGLESv2.vcxproj: Added.
* src/libGLESv2/libGLESv2.vcxproj.filters: Added.
* src/libGLESv2/precompiled.h:
* src/libGLESv2/renderer/Image11.cpp:
(rx::Image11::generateMipmap):
(rx::Image11::loadData):
(rx::Image11::loadCompressedData):
(rx::Image11::copy):
(rx::Image11::createStagingTexture):
(rx::Image11::map):
* src/libGLESv2/renderer/Image11.h:
* src/libGLESv2/renderer/IndexBuffer.cpp:
(rx::IndexBufferInterface::mapBuffer):
(rx::StaticIndexBufferInterface::getIndexRangeCache):
* src/libGLESv2/renderer/IndexBuffer.h:
* src/libGLESv2/renderer/IndexBuffer11.cpp:
(rx::IndexBuffer11::mapBuffer):
* src/libGLESv2/renderer/IndexDataManager.cpp:
(rx::IndexDataManager::prepareIndexData):
(rx::IndexDataManager::getCountingIndices):
* src/libGLESv2/renderer/IndexRangeCache.cpp: Added.
(rx::IndexRangeCache::addRange):
(rx::IndexRangeCache::invalidateRange):
(rx::IndexRangeCache::findRange):
(rx::IndexRangeCache::clear):
(rx::IndexRangeCache::IndexRange::IndexRange):
(rx::IndexRangeCache::IndexRange::operator<):
(rx::IndexRangeCache::IndexBounds::IndexBounds):
* src/libGLESv2/renderer/IndexRangeCache.h: Added.
* src/libGLESv2/renderer/InputLayoutCache.cpp:
(rx::InputLayoutCache::InputLayoutCache):
(rx::InputLayoutCache::clear):
(rx::InputLayoutCache::markDirty):
(rx::InputLayoutCache::applyVertexBuffers):
(rx::InputLayoutCache::hashInputLayout):
(rx::InputLayoutCache::compareInputLayouts):
* src/libGLESv2/renderer/InputLayoutCache.h:
(rx::InputLayoutCache::InputLayoutKey::begin):
(rx::InputLayoutCache::InputLayoutKey::end):
* src/libGLESv2/renderer/RenderTarget11.cpp:
(rx::RenderTarget11::getTexture):
(rx::RenderTarget11::getRenderTargetView):
(rx::RenderTarget11::getDepthStencilView):
(rx::RenderTarget11::getShaderResourceView):
* src/libGLESv2/renderer/RenderTarget11.h:
* src/libGLESv2/renderer/Renderer.cpp:
(rx::Renderer::initializeCompiler):
* src/libGLESv2/renderer/Renderer.h:
* src/libGLESv2/renderer/Renderer11.cpp:
(rx::Renderer11::initialize):
(rx::Renderer11::applyPrimitiveType):
(rx::Renderer11::applyRenderTarget):
(rx::Renderer11::drawLineLoop):
(rx::Renderer11::drawTriangleFan):
(rx::Renderer11::applyUniforms):
(rx::Renderer11::clear):
(rx::Renderer11::markAllStateDirty):
(rx::Renderer11::copyImage):
(rx::Renderer11::compileToExecutable):
(rx::Renderer11::getRenderTargetResource):
(rx::Renderer11::blitRenderbufferRect):
* src/libGLESv2/renderer/Renderer11.h:
* src/libGLESv2/renderer/Renderer9.cpp:
(rx::Renderer9::initialize):
(rx::Renderer9::setViewport):
(rx::Renderer9::drawLineLoop):
(rx::Renderer9::compileToExecutable):
* src/libGLESv2/renderer/Renderer9.h:
* src/libGLESv2/renderer/SwapChain.h:
* src/libGLESv2/renderer/SwapChain11.cpp:
(rx::SwapChain11::resetOffscreenTexture):
(rx::SwapChain11::reset):
(rx::SwapChain11::swapRect):
* src/libGLESv2/renderer/SwapChain9.cpp:
(rx::convertInterval):
* src/libGLESv2/renderer/TextureStorage11.cpp:
(rx::TextureStorage11::IsTextureFormatRenderable):
(rx::TextureStorage11::generateMipmapLayer):
(rx::TextureStorage11_Cube::getRenderTarget):
* src/libGLESv2/renderer/VertexBuffer.cpp:
(rx::VertexBufferInterface::storeVertexAttributes):
(rx::VertexBufferInterface::storeRawData):
(rx::VertexBufferInterface::reserveVertexSpace):
(rx::StaticVertexBufferInterface::lookupAttribute):
(rx::StaticVertexBufferInterface::storeVertexAttributes):
* src/libGLESv2/renderer/VertexBuffer.h:
* src/libGLESv2/renderer/VertexBuffer11.cpp:
(rx::VertexBuffer11::getSpaceRequired):
* src/libGLESv2/renderer/VertexBuffer11.h:
* src/libGLESv2/renderer/VertexBuffer9.cpp:
(rx::VertexBuffer9::storeVertexAttributes):
(rx::VertexBuffer9::getSpaceRequired):
(rx::VertexBuffer9::requiresConversion):
(rx::VertexBuffer9::getVertexSize):
(rx::VertexBuffer9::spaceRequired):
* src/libGLESv2/renderer/VertexBuffer9.h:
* src/libGLESv2/renderer/VertexDataManager.cpp:
(rx::elementsInBuffer):
(rx::StreamingBufferElementCount):
(rx::VertexDataManager::prepareVertexData):
* src/libGLESv2/renderer/VertexDataManager.h:
* src/libGLESv2/renderer/renderer11_utils.cpp:
(gl_d3d11::ConvertTextureFormat):
* src/libGLESv2/renderer/shaders/compiled/clear11vs.h:
* src/libGLESv2/renderer/shaders/compiled/clearmultiple11ps.h:
* src/libGLESv2/renderer/shaders/compiled/clearsingle11ps.h:
* src/libGLESv2/renderer/shaders/compiled/componentmaskps.h:
* src/libGLESv2/renderer/shaders/compiled/flipyvs.h:
* src/libGLESv2/renderer/shaders/compiled/luminanceps.h:
* src/libGLESv2/renderer/shaders/compiled/passthrough11vs.h:
* src/libGLESv2/renderer/shaders/compiled/passthroughlum11ps.h:
* src/libGLESv2/renderer/shaders/compiled/passthroughlumalpha11ps.h:
* src/libGLESv2/renderer/shaders/compiled/passthroughps.h:
* src/libGLESv2/renderer/shaders/compiled/passthroughrgb11ps.h:
* src/libGLESv2/renderer/shaders/compiled/passthroughrgba11ps.h:
* src/libGLESv2/renderer/shaders/compiled/standardvs.h:
* src/libGLESv2/renderer/shaders/generate_shaders.bat:
* src/libGLESv2/utilities.cpp:
(gl::ComputeTypeSize):
* src/libGLESv2/utilities.h:
* src/third_party/murmurhash/MurmurHash3.cpp:
(rotl32):
(rotl64):
(getblock):
(fmix):
(MurmurHash3_x86_32):
(MurmurHash3_x86_128):
(MurmurHash3_x64_128):
* src/third_party/murmurhash/MurmurHash3.h:
* src/third_party/trace_event: Added.
* src/third_party/trace_event/trace_event.h: Added.
(gl::TraceEvent::TraceID::TraceID):
(gl::TraceEvent::TraceID::data):
(gl::TraceEvent::TraceStringWithCopy::TraceStringWithCopy):
(gl::TraceEvent::TraceStringWithCopy::operator const char* ):
(gl::TraceEvent::setTraceValue):
(gl::TraceEvent::addTraceEvent):
(gl::TraceEvent::TraceEndOnScopeClose::TraceEndOnScopeClose):
(gl::TraceEvent::TraceEndOnScopeClose::~TraceEndOnScopeClose):
(gl::TraceEvent::TraceEndOnScopeClose::initialize):
(gl::TraceEvent::TraceEndOnScopeClose::addEventIfEnabled):
(gl::TraceEvent::SamplingStateScope::SamplingStateScope):
(gl::TraceEvent::SamplingStateScope::~SamplingStateScope):
(gl::TraceEvent::SamplingStateScope::current):
(gl::TraceEvent::SamplingStateScope::set):

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

8 years agoREGRESSION(158384) ARMv7 point checks too restrictive for native calls to traditional...
msaboff@apple.com [Wed, 20 Nov 2013 00:35:00 +0000 (00:35 +0000)]
REGRESSION(158384) ARMv7 point checks too restrictive for native calls to traditional ARM code
https://bugs.webkit.org/show_bug.cgi?id=124612

Reviewed by Geoffrey Garen.

Removed ASSERT checks (i.e. lower bit set) for ARM Thumb2 destination addresses related to
calls since we are calling native ARM traditional functions like sin() and cos().

* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::linkCall):
(JSC::ARMv7Assembler::relinkCall):
* assembler/MacroAssemblerCodeRef.h:

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

8 years agoUnreviewed, rolling out r159459.
commit-queue@webkit.org [Wed, 20 Nov 2013 00:29:43 +0000 (00:29 +0000)]
Unreviewed, rolling out r159459.
http://trac.webkit.org/changeset/159459
https://bugs.webkit.org/show_bug.cgi?id=124616

tons of assertions on launch (Requested by thorton on
#webkit).

* API/JSContext.mm:
(-[JSContext setException:]):
(-[JSContext wrapperForObjCObject:]):
(-[JSContext wrapperForJSObject:]):
* API/JSContextRef.cpp:
(JSContextGroupRelease):
(JSGlobalContextRelease):
* API/JSManagedValue.mm:
(-[JSManagedValue initWithValue:]):
(-[JSManagedValue value]):
* API/JSObjectRef.cpp:
(JSObjectIsFunction):
(JSObjectCopyPropertyNames):
* API/JSValue.mm:
(containerValueToObject):
* API/JSWrapperMap.mm:
(tryUnwrapObjcObject):

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

8 years agoRename WatchpointSet::notifyWrite() should be renamed to WatchpointSet::fireAll()
fpizlo@apple.com [Tue, 19 Nov 2013 23:48:23 +0000 (23:48 +0000)]
Rename WatchpointSet::notifyWrite() should be renamed to WatchpointSet::fireAll()
https://bugs.webkit.org/show_bug.cgi?id=124609

Source/JavaScriptCore:

Rubber stamped by Mark Lam.

notifyWrite() is a thing that SymbolTable does. WatchpointSet uses that terminology
because it was original designed to match exactly SymbolTable's semantics. But now
it's a confusing term.

* bytecode/Watchpoint.cpp:
(JSC::WatchpointSet::fireAllSlow):
* bytecode/Watchpoint.h:
(JSC::WatchpointSet::fireAll):
(JSC::InlineWatchpointSet::fireAll):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* runtime/JSFunction.cpp:
(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::haveABadTime):
* runtime/Structure.h:
(JSC::Structure::notifyTransitionFromThisStructure):
* runtime/SymbolTable.cpp:
(JSC::SymbolTableEntry::notifyWriteSlow):

Source/WebCore:

Rubber stamped by Mark Lam.

No new tests because no new behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
* bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTarget::create):

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

8 years ago[CSS Shapes] Parse [<box> || <shape>] values
betravis@adobe.com [Tue, 19 Nov 2013 23:38:56 +0000 (23:38 +0000)]
[CSS Shapes] Parse [<box> || <shape>] values
https://bugs.webkit.org/show_bug.cgi?id=124426

Reviewed by Dirk Schulze.

Source/WebCore:

Shape values can now have an optional box specifying the coordinate sytem to use
for sizing and positioning the shape. This patch adds the functionality to support
parsing these new values.

* css/BasicShapeFunctions.cpp:
(WebCore::valueForBox): Added function to convert between BasicShape::ReferenceBox
and CSSPrimitiveValue (which wraps a CSSValueID).
(WebCore::boxForValue): Ditto.
(WebCore::valueForBasicShape): Translations between CSSBasicShape and BasicShape
must now include the reference box.
(WebCore::basicShapeForValue): Ditto.
* css/BasicShapeFunctions.h:
* css/CSSBasicShapes.cpp:
(WebCore::buildRectangleString): Include the box in the built CSS string.
(WebCore::CSSBasicShapeRectangle::cssText): Ditto.
(WebCore::CSSBasicShapeRectangle::equals): Include the box in comparisions.
(WebCore::buildCircleString):
(WebCore::CSSBasicShapeCircle::cssText):
(WebCore::CSSBasicShapeCircle::equals):
(WebCore::buildEllipseString):
(WebCore::CSSBasicShapeEllipse::cssText):
(WebCore::CSSBasicShapeEllipse::equals):
(WebCore::buildPolygonString):
(WebCore::CSSBasicShapePolygon::cssText):
(WebCore::CSSBasicShapePolygon::equals):
(WebCore::buildInsetRectangleString):
(WebCore::CSSBasicShapeInsetRectangle::cssText):
(WebCore::CSSBasicShapeInsetRectangle::equals):
* css/CSSBasicShapes.h:
(WebCore::CSSBasicShape::box): BasicShapes now have an reference box.
(WebCore::CSSBasicShape::setBox): Ditto.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue): Shape-inside can also
parse the box values.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): The shape properties use parseShapeProperty,
while minor adjustments were made to parseBasicShape's return type.
(WebCore::isBoxValue): Is the CSSValueID one of  the box values.
(WebCore::CSSParser::parseShapeProperty): Parse one of the shape properties
and return an appropriate CSSValue.
(WebCore::CSSParser::parseBasicShape): Return a CSSBasicShape rather than
adding a ShapeValue to the style.
* css/CSSParser.h:
* rendering/style/BasicShapes.h:
(WebCore::BasicShape::box): Add a box to BasicShape and getters/setters.
(WebCore::BasicShape::setBox): Ditto.
(WebCore::BasicShape::BasicShape): Ditto.

LayoutTests:

Test that <box> <shape> and <shape> <box> values are both supported and successfully parsed.
Currently, we order the parsed result as <shape> <box> when the value is output through
the CSSOM. Also test that other combinations with shapes and boxes are not parsed.

* fast/shapes/parsing/parsing-shape-inside-expected.txt:
* fast/shapes/parsing/parsing-shape-inside.html:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-shape-outside.html:
* fast/shapes/parsing/parsing-test-utils.js:

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

8 years ago[Mac] 9 WebGL conformance failures after r159518.
jer.noble@apple.com [Tue, 19 Nov 2013 23:06:22 +0000 (23:06 +0000)]
[Mac] 9 WebGL conformance failures after r159518.
https://bugs.webkit.org/show_bug.cgi?id=124608

Reviewed by Dean Jackson.

Once we removed the CIImage drawing path, there was no longer any reason to flip the
CGImageRef before drawing to the provided GraphicsContext.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):

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

8 years agoWeb Speech API crashes onboundary event handling with reload
cfleizach@apple.com [Tue, 19 Nov 2013 22:50:11 +0000 (22:50 +0000)]
Web Speech API crashes onboundary event handling with reload
https://bugs.webkit.org/show_bug.cgi?id=124607

Reviewed by Tim Horton.

If the page goes away, we need to cleanup the Mac platform synthesizer object, because
NSSpeechSynthesizer is retained elsewhere to handle the callbacks (so it doesn't automatically
get torn down).

The layout tests for speech rely on a Mock synthesizer, so there is no good way to test this
Mac platform specific behavior.

* platform/mac/PlatformSpeechSynthesizerMac.mm:
(-[WebSpeechSynthesisWrapper invalidate]):
(WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):

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

8 years ago<rdar://problem/15139479> Reenable the JSC Objective-C API tests on Mountain Lion...
mitz@apple.com [Tue, 19 Nov 2013 22:27:36 +0000 (22:27 +0000)]
<rdar://problem/15139479> Reenable the JSC Objective-C API tests on Mountain Lion once the bots are running Xcode 5

Rubber-stamped by Mark Rowe.

Reverted r156840.

* TestWebKitAPI/Tests/mac/WebViewDidCreateJavaScriptContext.mm:

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

8 years agoREGRESSION (r159395): Error compiling for ARMv7
msaboff@apple.com [Tue, 19 Nov 2013 21:59:40 +0000 (21:59 +0000)]
REGRESSION (r159395): Error compiling for ARMv7
https://bugs.webkit.org/show_bug.cgi?id=124552

Reviewed by Geoffrey Garen.

Fixed the implementation of branch8(RelationalCondition cond, AbsoluteAddress address, TrustedImm32 right)
to materialize and use address similar to other ARMv7 branchXX() functions.

* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::branch8):

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

8 years agoAdd tracking of endColumn for Executables.
mark.lam@apple.com [Tue, 19 Nov 2013 21:55:16 +0000 (21:55 +0000)]
Add tracking of endColumn for Executables.
https://bugs.webkit.org/show_bug.cgi?id=124245.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

1. Fixed computation of columns to take into account the startColumn from
   <script> tags. Previously, we were only computing the column relative
   to the char after the <script> tag. Now, the column number that JSC
   computes is always the column number you'll see when viewing the source
   in a text editor (assuming the first column position is 1, not 0).

2. Previously, unlinkedExecutables kept the a base-1 startColumn for
   ProgramExecutables and EvalExecutables, but uses base-0 columns for
   FunctionExecutables. This has been fixed so that they all use base-0
   columns. When the executable gets linked, the column is adjusted into
   a base-1 value.

3. In the UnlinkedFunctionExecutable, renamed m_functionStartOffset to
   m_unlinkedFunctionNameStart because it actually points to the start
   column in the name part of the function declaration.

   Similarly, renamed m_functionStartColumn to m_unlinkedBodyStartColumn
   because it points to the first character in the function body. This is
   usually '{' except for functions created from "global code" which
   excludes its braces. See FunctionExecutable::fromGlobalCode().

       The exclusion of braces for the global code case is needed so that
   computed start and end columns will more readily map to what a JS
   developer would expect them to be. Otherwise, the first column of the
   function source will not be 1 (includes prepended characters added in
   constructFunctionSkippingEvalEnabledCheck()).

   Also, similarly, a m_unlinkedBodyEndColumn has been added to track the
   end column of the UnlinkedFunctionExecutable.

4. For unlinked executables, end column values are either:
   a. Relative to the start of the last line if (last line != first line).
   b. Relative to the start column position if (last line == first line).

   The second case is needed so that we can add an appropriate adjustment
   to the end column value (just like we do for the start column) when we
   link the executable.

5. This is not new to this patch, but it worth noting that the lineCount
   values used through this patch has the following meaning:
   - a lineCount of 0 means the source for this code block is on 1 line.
   - a lineCount of N means there are N + l lines of source.

   This interpretation is janky, but was present before this patch. We can
   clean that up later in another patch.

* JavaScriptCore.xcodeproj/project.pbxproj:
- In order to implement WebCore::Internals::parserMetaData(), we need to
  move some seemingly unrelated header files from the Project section to
  the Private section so that they can be #include'd by the forwarding
  CodeBlock.h from WebCore.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::sourceCodeForTools):
(JSC::CodeBlock::CodeBlock):
* bytecode/UnlinkedCodeBlock.cpp:
(JSC::generateFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
- m_isFromGlobalCode is needed to support the exclusion of the open brace /
  prepended code for functions created from "global code".
(JSC::UnlinkedFunctionExecutable::link):
(JSC::UnlinkedFunctionExecutable::fromGlobalCode):
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
* bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedFunctionExecutable::create):
(JSC::UnlinkedFunctionExecutable::unlinkedFunctionNameStart):
(JSC::UnlinkedFunctionExecutable::unlinkedBodyStartColumn):
(JSC::UnlinkedFunctionExecutable::unlinkedBodyEndColumn):
(JSC::UnlinkedFunctionExecutable::recordParse):
(JSC::UnlinkedCodeBlock::recordParse):
(JSC::UnlinkedCodeBlock::endColumn):
* bytecompiler/NodesCodegen.cpp:
(JSC::FunctionBodyNode::emitBytecode):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::setFunctionNameStart):
* parser/Lexer.cpp:
(JSC::::shiftLineTerminator):
- Removed an unused SourceCode Lexer<T>::sourceCode() function.
* parser/Lexer.h:
(JSC::Lexer::positionBeforeLastNewline):
(JSC::Lexer::prevTerminator):
- Added tracking of m_positionBeforeLastNewline in the Lexer to enable us
  to exclude the close brace / appended code for functions created from "global
  code".
* parser/Nodes.cpp:
(JSC::ProgramNode::ProgramNode):
(JSC::ProgramNode::create):
(JSC::EvalNode::EvalNode):
(JSC::EvalNode::create):
(JSC::FunctionBodyNode::FunctionBodyNode):
(JSC::FunctionBodyNode::create):
(JSC::FunctionBodyNode::setEndPosition):
- setEndPosition() is needed to fixed up the end position so that we can
  exclude the close brace / appended code for functions created from "global
  code".
* parser/Nodes.h:
(JSC::ProgramNode::startColumn):
(JSC::ProgramNode::endColumn):
(JSC::EvalNode::startColumn):
(JSC::EvalNode::endColumn):
(JSC::FunctionBodyNode::setFunctionNameStart):
(JSC::FunctionBodyNode::functionNameStart):
(JSC::FunctionBodyNode::endColumn):
* parser/Parser.cpp:
(JSC::::parseFunctionBody):
(JSC::::parseFunctionInfo):
* parser/Parser.h:
(JSC::Parser::positionBeforeLastNewline):
(JSC::::parse):
- Subtracted 1 from startColumn here to keep the node column values consistently
  base-0. See note 2 above.
(JSC::parse):
* parser/SourceProviderCacheItem.h:
(JSC::SourceProviderCacheItem::SourceProviderCacheItem):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createFunctionBody):
(JSC::SyntaxChecker::setFunctionNameStart):
* runtime/CodeCache.cpp:
(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getProgramCodeBlock):
(JSC::CodeCache::getEvalCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):
* runtime/CodeCache.h:
* runtime/Executable.cpp:
(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::FunctionExecutable::FunctionExecutable):
(JSC::ProgramExecutable::initializeGlobalProperties):
(JSC::FunctionExecutable::fromGlobalCode):
* runtime/Executable.h:
(JSC::ExecutableBase::isEvalExecutable):
(JSC::ExecutableBase::isProgramExecutable):
(JSC::ScriptExecutable::ScriptExecutable):
(JSC::ScriptExecutable::endColumn):
(JSC::ScriptExecutable::recordParse):
(JSC::FunctionExecutable::create):
(JSC::FunctionExecutable::bodyIncludesBraces):
* runtime/FunctionConstructor.cpp:
(JSC::constructFunctionSkippingEvalEnabledCheck):
* runtime/FunctionPrototype.cpp:
(JSC::insertSemicolonIfNeeded):
(JSC::functionProtoFuncToString):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::createProgramCodeBlock):
(JSC::JSGlobalObject::createEvalCodeBlock):

Source/WebCore:

Test: js/dom/script-start-end-locations.html

* ForwardingHeaders/bytecode: Added.
* ForwardingHeaders/bytecode/CodeBlock.h: Added.
* WebCore.exp.in:
* testing/Internals.cpp:
(WebCore::GetCallerCodeBlockFunctor::GetCallerCodeBlockFunctor):
(WebCore::GetCallerCodeBlockFunctor::operator()):
(WebCore::GetCallerCodeBlockFunctor::codeBlock):
(WebCore::Internals::parserMetaData):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit:

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
- Added an exported symbol to make the Win32 build happy. The Win64 symbol
  is currently a copy of the Win32 one. It'll need to be updated if the
  mangled symbol is different for Win64.

LayoutTests:

* fast/events/window-onerror2-expected.txt:
* inspector-protocol/debugger/setBreakpoint-actions-expected.txt:
* js/dom/script-start-end-locations-expected.txt: Added.
* js/dom/script-start-end-locations.html: Added.
* js/dom/script-tests/script-start-end-locations.js: Added.
* js/dom/stack-trace-expected.txt:
* js/dom/stack-trace.html:
- Changed tabs to spaces. The tabs were making it hard to visually confirm
  the exected column values for 2 functions.

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

8 years ago[MSE] Support fastSeek() in MediaSource.
jer.noble@apple.com [Tue, 19 Nov 2013 21:39:43 +0000 (21:39 +0000)]
[MSE] Support fastSeek() in MediaSource.
https://bugs.webkit.org/show_bug.cgi?id=124422

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-fastseek.html

* Modules/mediasource/MediaSource.cpp:
* Modules/mediasource/MediaSource.h:

Add support for "seek to the next fastest time" in MediaSource by
returning the time of the nearest Sync sample.

Move the data structure logic out of SourceBuffer and into it's own
class:
* Modules/mediasource/SampleMap.cpp: Added.
(WebCore::SampleIsLessThanMediaTimeComparator::operator()):
(WebCore::SampleIsGreaterThanMediaTimeComparator::operator()):
(WebCore::SampleIsRandomAccess::operator()):
(WebCore::SamplePresentationTimeIsWithinRangeComparator::operator()):
(WebCore::SampleMap::addSample):
(WebCore::SampleMap::removeSample):
(WebCore::SampleMap::findSampleContainingPresentationTime):
(WebCore::SampleMap::findSampleAfterPresentationTime):
(WebCore::SampleMap::findSampleWithDecodeTime):
(WebCore::SampleMap::reverseFindSampleContainingPresentationTime):
(WebCore::SampleMap::reverseFindSampleBeforePresentationTime):
(WebCore::SampleMap::reverseFindSampleWithDecodeTime):
(WebCore::SampleMap::findSyncSamplePriorToPresentationTime):
(WebCore::SampleMap::findSyncSamplePriorToDecodeIterator):
(WebCore::SampleMap::findSyncSampleAfterPresentationTime):
(WebCore::SampleMap::findSyncSampleAfterDecodeIterator):
(WebCore::SampleMap::findSamplesBetweenPresentationTimes):
(WebCore::SampleMap::findDependentSamples):
* Modules/mediasource/SampleMap.h: Added.
(WebCore::SampleMap::presentationBegin):
(WebCore::SampleMap::presentationEnd):
(WebCore::SampleMap::decodeBegin):
(WebCore::SampleMap::decodeEnd):
(WebCore::SampleMap::reversePresentationBegin):
(WebCore::SampleMap::reversePresentationEnd):
(WebCore::SampleMap::reverseDecodeBegin):
(WebCore::SampleMap::reverseDecodeEnd):

Add logic to find and return the time of the next & previous sync
sample, within the threshold provided:
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::TrackBuffer::TrackBuffer):
(WebCore::SourceBuffer::sourceBufferPrivateSeekToTime):
(WebCore::SourceBuffer::sourceBufferPrivateFastSeekTimeForMediaTime):
(WebCore::SourceBuffer::appendBufferTimerFired):
(WebCore::SourceBuffer::setActive):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
(WebCore::SourceBuffer::sourceBufferPrivateDidBecomeReadyForMoreSamples):
(WebCore::SourceBuffer::provideMediaData):
* Modules/mediasource/SourceBuffer.h:
* platform/graphics/SourceBufferPrivate.h:
(WebCore::SourceBufferPrivate::setActive):
* platform/graphics/SourceBufferPrivateClient.h:
(WebCore::SourceBufferPrivateClient::sourceBufferPrivateFastSeekTimeForMediaTime):
(WebCore::SourceBufferPrivateClient::sourceBufferPrivateSeekToTime):

Add new files to the project:
* WebCore.xcodeproj/project.pbxproj:

Drive-by fixes in HTMLMediaElement:
* html/HTMLMediaSource.h:
* html/HTMLMediaElement.cpp:
(HTMLMediaElement::finishSeek): Cause the MediaSource to check the ready state of all its buffers.
(HTMLMediaElement::selectNextSourceChild): Pass in whether the source element has a MediaSource URL.

Implement the seekWithTolerance behavior in MockMediaPlayerMediaSource:
* platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::maxTimeSeekableDouble):
(WebCore::MockMediaPlayerMediaSource::currentTimeDouble):
(WebCore::MockMediaPlayerMediaSource::seekWithTolerance):
(WebCore::MockMediaPlayerMediaSource::advanceCurrentTime):
* platform/mock/mediasource/MockMediaPlayerMediaSource.h:
* platform/mock/mediasource/MockMediaSourcePrivate.cpp:
(WebCore::MockMediaSourcePrivate::seekToTime):
* platform/mock/mediasource/MockMediaSourcePrivate.h:
* platform/mock/mediasource/MockSourceBufferPrivate.cpp:
(WebCore::MockMediaSample::flags):
(WebCore::MockSourceBufferPrivate::setActive):
(WebCore::MockSourceBufferPrivate::fastSeekTimeForMediaTime):
(WebCore::MockSourceBufferPrivate::seekToTime):
* platform/mock/mediasource/MockSourceBufferPrivate.h:

LayoutTests:

* media/media-source/media-source-fastseek-expected.txt: Added.
* media/media-source/media-source-fastseek.html: Added.
* media/media-source/mock-media-source.js:
(var):

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

8 years ago[Mac] 10X slower than Chrome when drawing a video into a canvas
jer.noble@apple.com [Tue, 19 Nov 2013 21:37:02 +0000 (21:37 +0000)]
[Mac] 10X slower than Chrome when drawing a video into a canvas
https://bugs.webkit.org/show_bug.cgi?id=124599

Reviewed by Dean Jackson.

Improve performance by creating a CGImageRef which directly references the CVPixelBuffer provided
by AVPlayerItemVideoOutput:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::CVPixelBufferGetBytePointerCallback):
(WebCore::CVPixelBufferReleaseBytePointerCallback):
(WebCore::CVPixelBufferReleaseInfoCallback):
(WebCore::createImageFromPixelBuffer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastImage):

Additionally, when asked to paint with an AVPlayerItemVideoOutput, block until the output notifies
its delegate that a pixel buffer is available:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::globalPullDelegateQueue):
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoOutput):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):
(WebCore::MediaPlayerPrivateAVFoundationObjC::nativeImageForCurrentTime):
(WebCore::MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange):
(WebCore::MediaPlayerPrivateAVFoundationObjC::outputMediaDataWillChange):
(-[WebCoreAVFPullDelegate initWithCallback:]):
(-[WebCoreAVFPullDelegate outputMediaDataWillChange:]):
(-[WebCoreAVFPullDelegate outputSequenceWasFlushed:]):

To further optimize video -> canvas drawing, add a method which can return a PassNativeImage to be
drawn directly onto the canvas, rather than rendering into an intermediary context:
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::nativeImageForCurrentTime):
* html/HTMLVideoElement.h:
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::nativeImageForCurrentTime):
* platform/graphics/MediaPlayer.h:
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::nativeImageForCurrentTime):

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

8 years agoConsolidate IDBBackingStore*Interface and IDBBackingStore*LevelDB
beidson@apple.com [Tue, 19 Nov 2013 21:23:37 +0000 (21:23 +0000)]
Consolidate IDBBackingStore*Interface and IDBBackingStore*LevelDB
https://bugs.webkit.org/show_bug.cgi?id=124597

Reviewed by Alexey Proskuryakov.

The Interface abstraction doesn’t make sense anymore, as LevelDB will be the only implementor.

* Modules/indexeddb/IDBBackingStoreCursorInterface.h: Removed.
* Modules/indexeddb/IDBBackingStoreInterface.h: Removed.
* Modules/indexeddb/IDBBackingStoreTransactionInterface.h: Removed.

* Modules/indexeddb/IDBServerConnection.h:

* Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.h:
(WebCore::IDBBackingStoreCursorLevelDB::key):
(WebCore::IDBBackingStoreCursorLevelDB::primaryKey):
(WebCore::IDBBackingStoreCursorLevelDB::recordIdentifier):

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::getOrEstablishIDBDatabaseMetadata):
(WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):
(WebCore::IDBBackingStoreLevelDB::deleteDatabase):
(WebCore::IDBBackingStoreLevelDB::createObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
(WebCore::IDBBackingStoreLevelDB::getRecord):
(WebCore::IDBBackingStoreLevelDB::putRecord):
(WebCore::IDBBackingStoreLevelDB::clearObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteRecord):
(WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
(WebCore::IDBBackingStoreLevelDB::createIndex):
(WebCore::IDBBackingStoreLevelDB::deleteIndex):
(WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
(WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
(WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
(WebCore::IDBBackingStoreLevelDB::makeIndexWriters):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexCursor):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:

* Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.h:
(WebCore::IDBBackingStoreTransactionLevelDB::levelDBTransactionFrom):

* Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp:
(WebCore::IDBIndexWriterLevelDB::writeIndexKeys):
(WebCore::IDBIndexWriterLevelDB::verifyIndexKeys):
(WebCore::IDBIndexWriterLevelDB::addingKeyAllowed):
* Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h:

* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
(WebCore::IDBServerConnectionLevelDB::get):
(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::count):
(WebCore::IDBServerConnectionLevelDB::deleteRange):

* WebCore.xcodeproj/project.pbxproj:

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

8 years agoGet rid of bare new in SVGAnimatedColorAnimator::constructFromString()
commit-queue@webkit.org [Tue, 19 Nov 2013 21:14:25 +0000 (21:14 +0000)]
Get rid of bare new in SVGAnimatedColorAnimator::constructFromString()
https://bugs.webkit.org/show_bug.cgi?id=124595

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-11-19
Reviewed by Darin Adler.

Use std::unique_ptr instead, to manage the arguments passed to the create
methods of SVGAnimatedType.

No new tests, covered by existing tests.

* svg/SVGAnimatedAngle.cpp:
(WebCore::SVGAnimatedAngleAnimator::constructFromString): Replace bare
pointer with std::unique_ptr.
* svg/SVGAnimatedBoolean.cpp:
(WebCore::SVGAnimatedBooleanAnimator::constructFromString): Ditto.
* svg/SVGAnimatedColor.cpp:
(WebCore::SVGAnimatedColorAnimator::constructFromString): Ditto.
* svg/SVGAnimatedEnumeration.cpp:
(WebCore::SVGAnimatedEnumerationAnimator::constructFromString): Ditto.
* svg/SVGAnimatedInteger.cpp:
(WebCore::SVGAnimatedIntegerAnimator::constructFromString): Ditto.
* svg/SVGAnimatedIntegerOptionalInteger.cpp:
(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::constructFromString):
Ditto.
* svg/SVGAnimatedLength.cpp:
(WebCore::SVGAnimatedLengthAnimator::constructFromString): Ditto.
* svg/SVGAnimatedLengthList.cpp:
(WebCore::SVGAnimatedLengthListAnimator::constructFromString): Ditto.
* svg/SVGAnimatedNumber.cpp:
(WebCore::SVGAnimatedNumberAnimator::constructFromString): Ditto.
* svg/SVGAnimatedNumberList.cpp:
(WebCore::SVGAnimatedNumberListAnimator::constructFromString): Ditto.
* svg/SVGAnimatedNumberOptionalNumber.cpp:
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
Ditto.
* svg/SVGAnimatedPointList.cpp:
(WebCore::SVGAnimatedPointListAnimator::constructFromString): Ditto.
* svg/SVGAnimatedPreserveAspectRatio.cpp:
(WebCore::SVGAnimatedPreserveAspectRatioAnimator::constructFromString):
Ditto.
* svg/SVGAnimatedRect.cpp:
(WebCore::SVGAnimatedRectAnimator::constructFromString): Ditto.
* svg/SVGAnimatedString.cpp:
(WebCore::SVGAnimatedStringAnimator::constructFromString): Ditto.
* svg/SVGAnimatedTransformList.cpp:
(WebCore::SVGAnimatedTransformListAnimator::constructFromString):
Ditto.
* svg/SVGAnimatedType.cpp:
(WebCore::SVGAnimatedType::createAngleAndEnumeration): Use
std::unique_ptr instead of bare pointer as parameter.
(WebCore::SVGAnimatedType::createBoolean): Ditto.
(WebCore::SVGAnimatedType::createColor): Ditto.
(WebCore::SVGAnimatedType::createEnumeration): Ditto.
(WebCore::SVGAnimatedType::createInteger): Ditto.
(WebCore::SVGAnimatedType::createIntegerOptionalInteger): Ditto.
(WebCore::SVGAnimatedType::createLength): Ditto.
(WebCore::SVGAnimatedType::createLengthList): Ditto.
(WebCore::SVGAnimatedType::createNumber): Ditto.
(WebCore::SVGAnimatedType::createNumberList): Ditto.
(WebCore::SVGAnimatedType::createNumberOptionalNumber): Ditto.
(WebCore::SVGAnimatedType::createPointList): Ditto.
(WebCore::SVGAnimatedType::createPreserveAspectRatio): Ditto.
(WebCore::SVGAnimatedType::createRect): Ditto.
(WebCore::SVGAnimatedType::createString): Ditto.
(WebCore::SVGAnimatedType::createTransformList): Ditto.
* svg/SVGAnimatedType.h: Use std::unique_ptr as parameter in the
create methods.
* svg/SVGAnimatedTypeAnimator.h:
(WebCore::SVGAnimatedTypeAnimator::constructFromBaseValue): Make
helper return std::unique_ptr instead of bare pointer.
(WebCore::SVGAnimatedTypeAnimator::constructFromBaseValues): Ditto.

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

8 years agoMarkedSpace::resumeAllocating needs to delay release
dino@apple.com [Tue, 19 Nov 2013 20:59:27 +0000 (20:59 +0000)]
MarkedSpace::resumeAllocating needs to delay release
https://bugs.webkit.org/show_bug.cgi?id=124596

Reviewed by Geoffrey Garen.

* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::resumeAllocating): Add DelayedReleaseScope protection.

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

8 years agoWeb Inspector: layer info sidebar should convert to MB for very large layers
graouts@apple.com [Tue, 19 Nov 2013 20:34:47 +0000 (20:34 +0000)]
Web Inspector: layer info sidebar should convert to MB for very large layers
https://bugs.webkit.org/show_bug.cgi?id=124570

Reviewed by Timothy Hatcher.

Setting higherResolution to true (its default value if omitted) when calling
Number.bytesToString() would always result in a KB-formatted string instead
since it didn't check for a < 1024 value as well.

* UserInterface/Utilities.js:
(Number.bytesToString):

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

8 years ago[CSS Shapes] Refactor RectangleShape
hmuller@adobe.com [Tue, 19 Nov 2013 20:15:40 +0000 (20:15 +0000)]
[CSS Shapes] Refactor RectangleShape
https://bugs.webkit.org/show_bug.cgi?id=124416

Privatize and rename the FloatRoundedRect class defined in RectangleShape.h.
The new class is called RectangleShape::ShapeBounds. This change enables
creating a proper FloatRoundedRect analog of the existing RoundedRect class;
part of adding support for box shapes, per the latest CSS spec.

Reviewed by Dean Jackson.

No new tests, just refactoring.

* rendering/shapes/RectangleShape.cpp:
(WebCore::RectangleShape::ShapeBounds::paddingBounds):
(WebCore::RectangleShape::ShapeBounds::marginBounds):
(WebCore::RectangleShape::ShapeBounds::cornerInterceptForWidth):
(WebCore::RectangleShape::shapePaddingBounds):
(WebCore::RectangleShape::shapeMarginBounds):
(WebCore::RectangleShape::getExcludedIntervals):
(WebCore::RectangleShape::getIncludedIntervals):
(WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
* rendering/shapes/RectangleShape.h:
(WebCore::RectangleShape::ShapeBounds::ShapeBounds):
(WebCore::RectangleShape::ShapeBounds::rx):
(WebCore::RectangleShape::ShapeBounds::ry):

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

8 years agoMark classes deriving from SVGAnimatedTypeAnimator as FINAL
commit-queue@webkit.org [Tue, 19 Nov 2013 20:14:47 +0000 (20:14 +0000)]
Mark classes deriving from SVGAnimatedTypeAnimator as FINAL
https://bugs.webkit.org/show_bug.cgi?id=124456

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-11-19
Reviewed by Darin Adler.

Also add OVERRIDE to their virtual methods appropriately and remove
existing empty virtual destructors.

No new tests, covered by existing ones.

* svg/SVGAnimatedAngle.h:
* svg/SVGAnimatedBoolean.h:
* svg/SVGAnimatedColor.h:
* svg/SVGAnimatedEnumeration.h:
* svg/SVGAnimatedInteger.h:
* svg/SVGAnimatedIntegerOptionalInteger.h:
* svg/SVGAnimatedLength.h:
* svg/SVGAnimatedLengthList.h:
* svg/SVGAnimatedNumber.h:
* svg/SVGAnimatedNumberList.h:
* svg/SVGAnimatedNumberOptionalNumber.h:
* svg/SVGAnimatedPath.h:
* svg/SVGAnimatedPointList.h:
* svg/SVGAnimatedPreserveAspectRatio.h:
* svg/SVGAnimatedRect.h:
* svg/SVGAnimatedString.h:
* svg/SVGAnimatedTransformList.h:

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

8 years agoAdd WebIDBServerConnection and DatabaseProcessIDBConnection stubs
beidson@apple.com [Tue, 19 Nov 2013 20:08:03 +0000 (20:08 +0000)]
Add WebIDBServerConnection and DatabaseProcessIDBConnection stubs
https://bugs.webkit.org/show_bug.cgi?id=124562

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Export some more symbols and headers for WK2 to use.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Also remove Web/DatabaseProcessDatabaseBackend stubs, as that is no longer the abstraction layer.

* DatabaseProcess/DatabaseToWebProcessConnection.cpp:
(WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
(WebKit::DatabaseToWebProcessConnection::establishIDBConnection):
* DatabaseProcess/DatabaseToWebProcessConnection.h:
* DatabaseProcess/DatabaseToWebProcessConnection.messages.in:

* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.cpp.
(WebKit::DatabaseProcessIDBConnection::DatabaseProcessIDBConnection):
(WebKit::DatabaseProcessIDBConnection::~DatabaseProcessIDBConnection):
(WebKit::DatabaseProcessIDBConnection::establishConnection):
(WebKit::DatabaseProcessIDBConnection::messageSenderConnection):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.h.
(WebKit::DatabaseProcessIDBConnection::create):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.messages.in.

* Shared/Databases/IndexedDB/IDBUtilities.cpp:
(WebKit::uniqueDatabaseIdentifier): Modified to take two security origin arguments.
* Shared/Databases/IndexedDB/IDBUtilities.h:

* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
(WebKit::WebIDBFactoryBackend::open):

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp: Added. Stubbed out all the pure virtual methods.
(WebKit::generateBackendIdentifier):
(WebKit::WebIDBServerConnection::WebIDBServerConnection):
(WebKit::WebIDBServerConnection::~WebIDBServerConnection):
(WebKit::WebIDBServerConnection::isClosed):
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::deleteDatabase):
(WebKit::WebIDBServerConnection::close):
(WebKit::WebIDBServerConnection::openTransaction):
(WebKit::WebIDBServerConnection::beginTransaction):
(WebKit::WebIDBServerConnection::commitTransaction):
(WebKit::WebIDBServerConnection::resetTransaction):
(WebKit::WebIDBServerConnection::rollbackTransaction):
(WebKit::WebIDBServerConnection::setIndexKeys):
(WebKit::WebIDBServerConnection::createObjectStore):
(WebKit::WebIDBServerConnection::createIndex):
(WebKit::WebIDBServerConnection::deleteIndex):
(WebKit::WebIDBServerConnection::get):
(WebKit::WebIDBServerConnection::put):
(WebKit::WebIDBServerConnection::openCursor):
(WebKit::WebIDBServerConnection::count):
(WebKit::WebIDBServerConnection::deleteRange):
(WebKit::WebIDBServerConnection::clearObjectStore):
(WebKit::WebIDBServerConnection::deleteObjectStore):
(WebKit::WebIDBServerConnection::changeDatabaseVersion):
(WebKit::WebIDBServerConnection::cursorAdvance):
(WebKit::WebIDBServerConnection::cursorIterate):
(WebKit::WebIDBServerConnection::cursorPrefetchIteration):
(WebKit::WebIDBServerConnection::cursorPrefetchReset):
(WebKit::WebIDBServerConnection::messageSenderConnection):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h: Added.

* WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp: Removed.
* WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h: Removed.

* WebProcess/Databases/WebToDatabaseProcessConnection.cpp:

* DerivedSources.make:
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agofast/forms/form-associated-element-crash.html often times out on Mavericks WK1
dino@apple.com [Tue, 19 Nov 2013 19:55:55 +0000 (19:55 +0000)]
fast/forms/form-associated-element-crash.html often times out on Mavericks WK1
https://bugs.webkit.org/show_bug.cgi?id=124593

Marked as occasionally timing out.

* platform/mac/TestExpectations:

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

8 years agoUnreviewed EFL and GTK build fix attempt after r159507
m.pakula@samsung.com [Tue, 19 Nov 2013 19:25:19 +0000 (19:25 +0000)]
Unreviewed EFL and GTK build fix attempt after r159507

* CMakeLists.txt: Changed Platform/CoreIPC/DataReference.cpp to Platform/IPC/DataReference.cpp
* GNUmakefile.list.am: Ditto

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

8 years agoIncrementalSweeper needs to use DelayedReleaseScope too
mhahnenberg@apple.com [Tue, 19 Nov 2013 19:10:56 +0000 (19:10 +0000)]
IncrementalSweeper needs to use DelayedReleaseScope too
https://bugs.webkit.org/show_bug.cgi?id=124558

Reviewed by Filip Pizlo.

It does sweeping too, so it needs to use it. Also refactored an
ASSERT that should have caught this sooner.

* heap/DelayedReleaseScope.h:
(JSC::DelayedReleaseScope::isInEffectFor):
* heap/IncrementalSweeper.cpp:
(JSC::IncrementalSweeper::doSweep):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweep):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::sweep):

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

8 years agoMove DataReference to Platform/IPC.
andersca@apple.com [Tue, 19 Nov 2013 18:32:12 +0000 (18:32 +0000)]
Move DataReference to Platform/IPC.

* Platform/IPC/DataReference.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/DataReference.cpp.
* Platform/IPC/DataReference.h: Renamed from Source/WebKit2/Platform/CoreIPC/DataReference.h.
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoAdd and call PageLoadState::reset
andersca@apple.com [Tue, 19 Nov 2013 18:20:08 +0000 (18:20 +0000)]
Add and call PageLoadState::reset
https://bugs.webkit.org/show_bug.cgi?id=124591

Reviewed by Dan Bernstein.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::reset):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::processDidCrash):

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

8 years agoRemove some unused utilities from Utilities.js
graouts@apple.com [Tue, 19 Nov 2013 18:14:57 +0000 (18:14 +0000)]
Remove some unused utilities from Utilities.js
https://bugs.webkit.org/show_bug.cgi?id=124590

Reviewed by Darin Adler.

Remove some methods and properties that were no longer used through the codebase.

* UserInterface/Utilities.js:

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

8 years agoMap the dir attribute to the CSS direction property.
commit-queue@webkit.org [Tue, 19 Nov 2013 17:36:01 +0000 (17:36 +0000)]
Map the dir attribute to the CSS direction property.
https://bugs.webkit.org/show_bug.cgi?id=124572.

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-11-19
Reviewed by Darin Adler.

Source/WebCore:

Tests: mathml/presentation/direction-overall.html
       mathml/presentation/direction-token.html
       mathml/presentation/direction.html

* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::isPresentationAttribute): add dir
(WebCore::MathMLElement::collectStyleForPresentationAttribute): map dir
* mathml/mathattrs.in: add the dir attribute
* mathml/mathtags.in: add the mstyle tag (needed to use mstyleTag)

LayoutTests:

* mathml/presentation/direction-expected.html: add more tests.
* mathml/presentation/direction-overall-expected.html: Added.
* mathml/presentation/direction-overall.html: Added.
* mathml/presentation/direction-token-expected.html: Added.
* mathml/presentation/direction-token.html: Added.
* mathml/presentation/direction.html: add more tests.

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

8 years ago[SVG] Convert OwnPtr/PassOwnPtr to std::unique_ptr
commit-queue@webkit.org [Tue, 19 Nov 2013 17:22:59 +0000 (17:22 +0000)]
[SVG] Convert OwnPtr/PassOwnPtr to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=124382

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-11-19
Reviewed by Darin Adler.

The files modified are mostly under WebCore/svg/; in a few cases, some
"external" files needed changes as well.

No new tests, covered by existing ones.

* css/CSSFontFaceSource.cpp:
* loader/cache/CachedImage.cpp:
* loader/cache/CachedImage.h:
* platform/graphics/SimpleFontData.cpp:
* platform/graphics/SimpleFontData.h:
* rendering/svg/RenderSVGResourceContainer.cpp:
* svg/SVGAnimateElement.cpp:
* svg/SVGAnimateElement.h:
* svg/SVGAnimatedAngle.cpp:
* svg/SVGAnimatedAngle.h:
* svg/SVGAnimatedBoolean.cpp:
* svg/SVGAnimatedBoolean.h:
* svg/SVGAnimatedColor.cpp:
* svg/SVGAnimatedColor.h:
* svg/SVGAnimatedEnumeration.cpp:
* svg/SVGAnimatedEnumeration.h:
* svg/SVGAnimatedInteger.cpp:
* svg/SVGAnimatedInteger.h:
* svg/SVGAnimatedIntegerOptionalInteger.cpp:
* svg/SVGAnimatedIntegerOptionalInteger.h:
* svg/SVGAnimatedLength.cpp:
* svg/SVGAnimatedLength.h:
* svg/SVGAnimatedLengthList.cpp:
* svg/SVGAnimatedLengthList.h:
* svg/SVGAnimatedNumber.cpp:
* svg/SVGAnimatedNumber.h:
* svg/SVGAnimatedNumberList.cpp:
* svg/SVGAnimatedNumberList.h:
* svg/SVGAnimatedNumberOptionalNumber.cpp:
* svg/SVGAnimatedNumberOptionalNumber.h:
* svg/SVGAnimatedPath.cpp:
* svg/SVGAnimatedPath.h:
* svg/SVGAnimatedPointList.cpp:
* svg/SVGAnimatedPointList.h:
* svg/SVGAnimatedPreserveAspectRatio.cpp:
* svg/SVGAnimatedPreserveAspectRatio.h:
* svg/SVGAnimatedRect.cpp:
* svg/SVGAnimatedRect.h:
* svg/SVGAnimatedString.cpp:
* svg/SVGAnimatedString.h:
* svg/SVGAnimatedTransformList.cpp:
* svg/SVGAnimatedTransformList.h:
* svg/SVGAnimatedType.cpp:
* svg/SVGAnimatedType.h:
* svg/SVGAnimatedTypeAnimator.cpp:
* svg/SVGAnimatedTypeAnimator.h:
* svg/SVGAnimatorFactory.h:
* svg/SVGDocumentExtensions.cpp:
* svg/SVGDocumentExtensions.h:
* svg/SVGFontData.h:
* svg/SVGFontElement.cpp:
* svg/SVGFontElement.h:
* svg/SVGGraphicsElement.cpp:
* svg/SVGGraphicsElement.h:
* svg/SVGPathByteStreamSource.h:
* svg/SVGPathParser.h:
* svg/SVGPathSegListSource.h:
* svg/SVGPathStringSource.h:
* svg/SVGPathUtilities.cpp:
* svg/SVGPathUtilities.h:
* svg/animation/SMILTimeContainer.cpp:
* svg/animation/SMILTimeContainer.h:
* svg/graphics/SVGImage.cpp:
* svg/graphics/SVGImage.h:
* svg/graphics/SVGImageCache.h:
* svg/properties/SVGAttributeToPropertyMap.cpp:
* svg/properties/SVGAttributeToPropertyMap.h:

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

8 years agoAdd LineInlineHeaders.h to WebCore.xcodeproj
zoltan@webkit.org [Tue, 19 Nov 2013 17:15:33 +0000 (17:15 +0000)]
Add LineInlineHeaders.h to WebCore.xcodeproj
<https://webkit.org/b/124460>

Reviewed by Csaba Osztrogonác.

LineInlineHeaders.h (r159354) hasn't been added to WebCore.xcodeproj. This patch adds to it.

No new tests, no behavior change.

* WebCore.xcodeproj/project.pbxproj:

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

8 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Tue, 19 Nov 2013 17:11:40 +0000 (17:11 +0000)]
Unreviewed EFL gardening

* platform/efl/TestExpectations: Add new failure test expectations.

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

8 years ago[AX] Use std::unique_ptr to manage AXComputedObjectAttributeCache
commit-queue@webkit.org [Tue, 19 Nov 2013 14:55:33 +0000 (14:55 +0000)]
[AX] Use std::unique_ptr to manage AXComputedObjectAttributeCache
https://bugs.webkit.org/show_bug.cgi?id=124404

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-11-19
Reviewed by Mario Sanchez Prada.

Convert OwnPtr/PassOwnPtr to std::unique_ptr.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
(WebCore::AXObjectCache::stopCachingComputedObjectAttributes):
* accessibility/AXObjectCache.h:
(WebCore::AXComputedObjectAttributeCache::AXComputedObjectAttributeCache):

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

8 years agoUnreviewed typo fix after r159494.
ossy@webkit.org [Tue, 19 Nov 2013 14:01:35 +0000 (14:01 +0000)]
Unreviewed typo fix after r159494.

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

8 years agoYet another build fix. Just allow any character.
rniwa@webkit.org [Tue, 19 Nov 2013 13:15:40 +0000 (13:15 +0000)]
Yet another build fix. Just allow any character.
There are just too many special characters to be listed here.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._lines_to_ignore_in_parser_result):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTest.test_parse_output_with_subtests)

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

8 years agoAnother build fix. Allow ':' in subtest names.
rniwa@webkit.org [Tue, 19 Nov 2013 13:05:32 +0000 (13:05 +0000)]
Another build fix. Allow ':' in subtest names.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._lines_to_ignore_in_parser_result):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTest.test_parse_output_with_subtests)

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

8 years ago[EFL] Use Config mode of find_package for EFL 1.8
ryuan.choi@samsung.com [Tue, 19 Nov 2013 12:38:36 +0000 (12:38 +0000)]
[EFL] Use Config mode of find_package for EFL 1.8
https://bugs.webkit.org/show_bug.cgi?id=124555

Reviewed by Gyuyoung Kim.

.:

EFL 1.8 changed VERSION macro so it's difficult to use tricky approach
which parses header file to know the version. Instead, EFL 1.8 supports
Config mode of find_package using XXXConfig.cmake such as EinaConfig.cmake.

This patch tries to use Config mode if it is available after checking Eo.

* Source/cmake/OptionsEfl.cmake:

Tools:

* MiniBrowser/efl/CMakeLists.txt: Introduced a config mode to find elementary.

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

8 years agoBuild fix. Subtest names need to be more permissive.
rniwa@webkit.org [Tue, 19 Nov 2013 12:22:24 +0000 (12:22 +0000)]
Build fix. Subtest names need to be more permissive.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._lines_to_ignore_in_parser_result):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTest.test_parse_output_with_subtests)

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

8 years agoUnreviewed. Set svn:eol-style=native for Windows project files.
ossy@webkit.org [Tue, 19 Nov 2013 12:14:24 +0000 (12:14 +0000)]
Unreviewed. Set svn:eol-style=native for Windows project files.

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

8 years agoUnreviewed, EFL gardening. Adding a crash expectation.
gyuyoung.kim@samsung.com [Tue, 19 Nov 2013 11:45:08 +0000 (11:45 +0000)]
Unreviewed, EFL gardening. Adding a crash expectation.

* platform/efl/TestExpectations:

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

8 years agoUnreviewed, EFL gardening. Adding a crash expectation for a test regarding
gyuyoung.kim@samsung.com [Tue, 19 Nov 2013 11:30:41 +0000 (11:30 +0000)]
Unreviewed, EFL gardening. Adding a crash expectation for a test regarding
object-fit.

* platform/efl/TestExpectations:

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

8 years agoUnreviewed, EFL gardening. descent-clip-in-scaled-page.html is being passed
gyuyoung.kim@samsung.com [Tue, 19 Nov 2013 11:08:14 +0000 (11:08 +0000)]
Unreviewed, EFL gardening. descent-clip-in-scaled-page.html is being passed
after enabling subpixel layout on EFL port.

* platform/efl/TestExpectations:

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

8 years agoUnreviewed GTK gardening. Adding failure expectations for the remaining layout test...
zandobersek@gmail.com [Tue, 19 Nov 2013 10:37:59 +0000 (10:37 +0000)]
Unreviewed GTK gardening. Adding failure expectations for the remaining layout test failures.

* platform/gtk/TestExpectations:

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

8 years agoAdd more assertions with security implications in DocumentOrderedMap
rniwa@webkit.org [Tue, 19 Nov 2013 09:43:22 +0000 (09:43 +0000)]
Add more assertions with security implications in DocumentOrderedMap
https://bugs.webkit.org/show_bug.cgi?id=124559

Reviewed by Antti Koivisto.

Assert that newly added elements and existing elements in the document ordered map are in the same tree scope
as the document ordered map. Also exit early if we're about to add an element in a wrong document to the map.
We don't exit early in get() because the damage has already been done at that point (the element may have been
deleted already).

* dom/Document.cpp:
(WebCore::Document::addImageElementByLowercasedUsemap):
* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::add): Assert that the newly added element is in the current tree scope.
Also exit early if either the element is not in the tree scope or not in the right document.
While this doesn't make the function completely fault safe, it'll catch when we try to add a detached node.
(WebCore::DocumentOrderedMap::remove): Convert existing assertions to ones with security implication.
(WebCore::DocumentOrderedMap::get): Assert with security implication that the element we're about to return
is in the current tree scope. The element may have already been deleted if we ever hit these assertions.
(WebCore::DocumentOrderedMap::getAllElementsById):  Convert an existing assertion to an assertion with security
implication.
* dom/DocumentOrderedMap.h:
* dom/TreeScope.cpp:
(WebCore::TreeScope::addElementById):
(WebCore::TreeScope::addElementByName):
(WebCore::TreeScope::addImageMap):
(WebCore::TreeScope::addLabel):
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::addDocumentNamedItem):
(WebCore::HTMLDocument::addWindowNamedItem):
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::insertedInto): Set InTreeScope flag before calling addImageElementByLowercasedUsemap.
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::insertedInto): Ditto for addImageMap.

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

8 years ago[CSS Regions] Add performance test for selection
rego@igalia.com [Tue, 19 Nov 2013 09:28:38 +0000 (09:28 +0000)]
[CSS Regions] Add performance test for selection
https://bugs.webkit.org/show_bug.cgi?id=119230

Reviewed by Ryosuke Niwa.

Add new performance test for selection in CSS Regions. It checks a
selection from the first region to the last one, passing through all the
regions.

Test is skipped for now while implementation of selection in CSS Regions
is still evolving.

* Layout/RegionsSelection.html: Added.
* Layout/resources/regions.js:
(.):
* Skipped:

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

8 years agoUnreviewed, rolling out r159455.
commit-queue@webkit.org [Tue, 19 Nov 2013 07:53:37 +0000 (07:53 +0000)]
Unreviewed, rolling out r159455.
http://trac.webkit.org/changeset/159455
https://bugs.webkit.org/show_bug.cgi?id=124568

broke two api tests (see bug 124564) (Requested by thorton on
#webkit).

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/objc/DOM.mm:
(-[DOMNode renderedImage]):
(-[DOMRange renderedImageForcingBlackText:]):
* dom/Clipboard.cpp:
(WebCore::Clipboard::createDragImage):
* dom/ClipboardMac.mm:
(WebCore::Clipboard::createDragImage):
* page/DragController.cpp:
(WebCore::DragController::startDrag):
* page/Frame.cpp:
(WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
(WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
(WebCore::Frame::nodeImage):
(WebCore::Frame::dragImageForSelection):
* page/Frame.h:
* page/FrameSnapshotting.cpp: Removed.
* page/FrameSnapshotting.h: Removed.
* page/mac/FrameMac.mm: Copied from Source/WebCore/page/win/FrameWin.h.
(WebCore::Frame::nodeImage):
(WebCore::Frame::dragImageForSelection):
* page/mac/FrameSnapshottingMac.h: Copied from Source/WebCore/page/win/FrameWin.h.
* page/mac/FrameSnapshottingMac.mm: Added.
(WebCore::imageFromRect):
(WebCore::selectionImage):
(WebCore::rangeImage):
(WebCore::snapshotDragImage):
* page/win/FrameWin.cpp:
(WebCore::Frame::dragImageForSelection):
(WebCore::Frame::nodeImage):
* page/win/FrameWin.h:
* platform/DragImage.cpp:
(WebCore::fitDragImageToMaxSize):
(WebCore::createDragImageForLink):
* platform/DragImage.h:

Source/WebKit/ios:

* WebCoreSupport/WebFrameIOS.mm:

Source/WebKit/mac:

* WebView/WebHTMLView.mm:
(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView selectionImageForcingBlackText:]):

Source/WebKit/win:

* DOMCoreClasses.cpp:
(DOMElement::renderedImage):

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

8 years ago[EFL] Initialize efreet before getting directories
ryuan.choi@samsung.com [Tue, 19 Nov 2013 07:52:24 +0000 (07:52 +0000)]
[EFL] Initialize efreet before getting directories
https://bugs.webkit.org/show_bug.cgi?id=124560

Reviewed by Gyuyoung Kim.

efreet is used to get several directories including home dierectory since
r123731, but it does not call efreet_init/efreet_shutdown explicitly.

Source/WebKit/efl:

* ewk/ewk_main.cpp: Call efreet_init()/efreet_shutdown() explicitly.
(ewk_init):
(ewk_shutdown):

Source/WebKit2:

* UIProcess/API/efl/ewk_main.cpp: Call efreet_init()/efreet_shutdown() explicitly.
(ewk_init):
(ewk_shutdown):

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

8 years agoUse hw.activecpu for determining how many processes to spawn.
mrowe@apple.com [Tue, 19 Nov 2013 07:20:20 +0000 (07:20 +0000)]
Use hw.activecpu for determining how many processes to spawn.

It's documented as the preferred way to determine the number of threads
or processes to create in a SMP aware application.

Rubber-stamped by Tim Horton.

Source/ThirdParty/ANGLE:

* ANGLE.xcodeproj/project.pbxproj:

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj:

Source/WebKit2:

* WebKit2.xcodeproj/project.pbxproj:

Tools:

* Scripts/copy-webkitlibraries-to-product-directory:
* Scripts/run-jsc-stress-tests:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

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

8 years agobuild.webkit.org/dashboard builder headers should link to the builder page
timothy_horton@apple.com [Tue, 19 Nov 2013 06:47:53 +0000 (06:47 +0000)]
build.webkit.org/dashboard builder headers should link to the builder page
https://bugs.webkit.org/show_bug.cgi?id=124553

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue.prototype.get overviewURL):
Add overviewURL(), which returns the URL to the builder overview page, with the last 50 builds shown.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuildArchitecture):
(BuildbotBuilderQueueView.prototype.update):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus):
(BuildbotTesterQueueView.prototype.update.appendBuild):
(BuildbotTesterQueueView.prototype.update):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css:
(.queue-view .queueLabel):
(.queue-view .queueLabel:not(:first-child)):
Make the header a link instead of a label, and wire it up to overviewURL.

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

8 years agoAX: aria-labelledby should be used in preference to aria-labeledby
samuel_white@apple.com [Tue, 19 Nov 2013 06:10:16 +0000 (06:10 +0000)]
AX: aria-labelledby should be used in preference to aria-labeledby
https://bugs.webkit.org/show_bug.cgi?id=62351

Reviewed by Chris Fleizach.

Source/WebCore:

Making sure aria-labelled by overrides the incorrectly spelled aria-labeledby attribute.

Test: accessibility/aria-labelledby-overrides-aria-labeledby.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::ariaLabeledByElements):

LayoutTests:

Added test to make sure aria-labelledby overrides aria-labeledby correctly.

* accessibility/aria-labelledby-overrides-aria-labeledby-expected.txt: Added.
* accessibility/aria-labelledby-overrides-aria-labeledby.html: Added.

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

8 years agouse after free in WebCore::DocumentOrderedMap::remove / WebCore::TreeScope::removeEle...
zalan@apple.com [Tue, 19 Nov 2013 06:01:45 +0000 (06:01 +0000)]
use after free in WebCore::DocumentOrderedMap::remove / WebCore::TreeScope::removeElementById
https://bugs.webkit.org/show_bug.cgi?id=121324

Reviewed by Ryosuke Niwa.

Update the document ordered map for an image element before dispatching load or error events
when it's inserted into a document.

Source/WebCore:

Test: fast/dom/modify-node-and-while-in-the-callback-too-crash.html

* dom/DocumentOrderedMap.cpp: defensive fix to avoid use after free issues.
(WebCore::DocumentOrderedMap::remove):
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::insertedInto):
* loader/ImageLoader.cpp:
(WebCore::ImageLoader::updateFromElement): setting m_failedLoadURL makes
repeated updateFromElement calls return early.

LayoutTests:

* fast/dom/modify-node-and-while-in-the-callback-too-crash-expected.txt: Added.
* fast/dom/modify-node-and-while-in-the-callback-too-crash.html: Added.

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

8 years agoDisable deprecation warnings related to NSCalendarDate in WebHistory.
mrowe@apple.com [Tue, 19 Nov 2013 05:14:36 +0000 (05:14 +0000)]
Disable deprecation warnings related to NSCalendarDate in WebHistory.

Reviewed by Anders Carlsson.

* History/WebHistory.h: Use a #pragma to have the compiler treat this header as
a system header, even when not included from a system location. This has the effect
of suppressing warnings when including this header. It's a more general effect than
we're after but is also less invasive than disabling deprecation warnings around
the APIs that are defined in terms of NSCalendarDate. We'll hopefully revisit this
in the future.
* History/WebHistory.mm: Disable deprecation warnings around uses of NSCalendarDate.

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

8 years agoUpstream iOS's ResourceHandle implementation
benjamin@webkit.org [Tue, 19 Nov 2013 04:55:03 +0000 (04:55 +0000)]
Upstream iOS's ResourceHandle implementation
https://bugs.webkit.org/show_bug.cgi?id=124554

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-11-18
Reviewed by Sam Weinig.

* platform/network/ResourceHandle.h:
(WebCore::ResourceHandle::quickLookHandle):
(WebCore::ResourceHandle::setQuickLookHandle):
* platform/network/ResourceHandleClient.h:
(WebCore::ResourceHandleClient::connectionProperties):
(WebCore::ResourceHandleClient::shouldCacheResponse):
* platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal):
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::synthesizeRedirectResponseIfNecessary):
(WebCore::willSendRequest):
(WebCore::didReceiveResponse):
(WebCore::didReceiveDataArray):
(WebCore::didReceiveData):
(WebCore::didFinishLoading):
(WebCore::didFail):
(WebCore::willCacheResponse):
(WebCore::canRespondToProtectionSpace):
(WebCore::ResourceHandle::createCFURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::willSendRequest):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
(WebCore::ResourceHandle::currentRequest):
(WebCore::ResourceHandle::connectionClientCallbacks):

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

8 years agoVersioning.
lforschler@apple.com [Tue, 19 Nov 2013 03:50:23 +0000 (03:50 +0000)]
Versioning.

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

8 years ago[EFL] Layout tests need to be rebaselined.
commit-queue@webkit.org [Tue, 19 Nov 2013 02:41:31 +0000 (02:41 +0000)]
[EFL] Layout tests need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124477

Unreviewed, EFL rebaseline.

EFL tests are rebaselined after r126683 and r140149.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-18

* platform/efl/fast/block/float/016-expected.txt:
* platform/efl/fast/forms/textAreaLineHeight-expected.txt:

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

8 years agoWeb Inspector: Update WebInspectorUI to use the new "nodeIds" parameter for DOM.perfo...
achicu@adobe.com [Tue, 19 Nov 2013 01:13:38 +0000 (01:13 +0000)]
Web Inspector: Update WebInspectorUI to use the new "nodeIds" parameter for DOM.performSearch
https://bugs.webkit.org/show_bug.cgi?id=124544

Reviewed by Joseph Pecoraro.

Added the new DOM.performSearch "nodeIds" parameter and made the two implementations
of DOMTreeContentView provide the right context node ids.

DOMTreeContentView is just using the id of the document node while ContentFlowDOMTreeContentView
is passing the list of content nodes.

Note that adding an extra optional parameter to DOM.performSearch does not break iOS 6 and 7 compatibility.

* UserInterface/ContentFlowDOMTreeContentView.js:
(WebInspector.ContentFlowDOMTreeContentView.prototype.getSearchContextNodes):
* UserInterface/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView.prototype.performSearch.contextNodesReady):
(WebInspector.DOMTreeContentView.prototype.performSearch):
(WebInspector.DOMTreeContentView.prototype.getSearchContextNodes):
* UserInterface/FrameDOMTreeContentView.js:
(WebInspector.FrameDOMTreeContentView.prototype.getSearchContextNodes):
* UserInterface/InspectorBackendCommands.js:

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

8 years agoLet's try this again.
andersca@apple.com [Tue, 19 Nov 2013 01:00:36 +0000 (01:00 +0000)]
Let's try this again.

* UIProcess/PageLoadState.cpp:

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

8 years agoUnreviewed, rolling out r159430.
commit-queue@webkit.org [Tue, 19 Nov 2013 00:56:12 +0000 (00:56 +0000)]
Unreviewed, rolling out r159430.
http://trac.webkit.org/changeset/159430
https://bugs.webkit.org/show_bug.cgi?id=124548

WebCore can know nothing about nor use files from WebKit/
(Requested by thorton on #webkit).

Source/WebCore:

* DerivedSources.make:

Source/WebKit/win:

* WebView.cpp:
(webKitVersionString):

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

8 years agoDisable assertions in PageLoadState.cpp for now.
andersca@apple.com [Tue, 19 Nov 2013 00:50:21 +0000 (00:50 +0000)]
Disable assertions in PageLoadState.cpp for now.

* UIProcess/PageLoadState.cpp:

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

8 years agoTestWebKitAPI crashes when running under GuardMalloc
andersca@apple.com [Tue, 19 Nov 2013 00:46:39 +0000 (00:46 +0000)]
TestWebKitAPI crashes when running under GuardMalloc
https://bugs.webkit.org/show_bug.cgi?id=124546

Reviewed by Tim Horton.

* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::downloadFinished):
Grab the download ID before removing the DownloadProxy from the map.

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

8 years agoRemove IDBServerConnection's deprecatedBackingStore()
beidson@apple.com [Tue, 19 Nov 2013 00:45:03 +0000 (00:45 +0000)]
Remove IDBServerConnection's deprecatedBackingStore()
https://bugs.webkit.org/show_bug.cgi?id=124547

Reviewed by Tim Horton.

It is no longer needed, as the front end no longer knows about the backing store.

* Modules/indexeddb/IDBServerConnection.h:

* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:

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

8 years agoARM64 CRASH: Debug builds crash in emitPointerValidation()
msaboff@apple.com [Tue, 19 Nov 2013 00:35:15 +0000 (00:35 +0000)]
ARM64 CRASH: Debug builds crash in emitPointerValidation()
https://bugs.webkit.org/show_bug.cgi?id=124545

Reviewed by Filip Pizlo.

Changed emitPointerValidation() to use pushToSave() and popToRestore() as
all macro assemblers have an implementation of these functions.

* jit/ThunkGenerators.cpp:
(JSC::emitPointerValidation):

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

8 years agoAX: Add ability to fetch only visible table rows.
samuel_white@apple.com [Tue, 19 Nov 2013 00:32:44 +0000 (00:32 +0000)]
AX: Add ability to fetch only visible table rows.
https://bugs.webkit.org/show_bug.cgi?id=124430

Reviewed by Chris Fleizach.

Source/WebCore:

Adding AccessibilityTable::visibleRows method to support AXVisibleRows attribute mac platform.

Test: platform/mac/accessibility/table-visible-rows.html

* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::columnHeaders):
(WebCore::AccessibilityTable::rowHeaders):
(WebCore::AccessibilityTable::visibleRows):
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableRow.h:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Tools:

Adding method to fetch array of AccessibilityUIElements to help with test brevity and test breakage. Specifically, we
have a good deal of churn any time we add or update an element attribute. This happens because the number of tests
that rely on a simple element description text dump to verify a single attribute is non trivial. So any time you
change add an attribute, you have to update all the tests that are now implicitly verifying this new attribute. But
as the test guidelines state, our tests should be more focused and specific about what they test.

* DumpRenderTree/AccessibilityUIElement.cpp:
(uiElementArrayAttributeValueCallback):
(AccessibilityUIElement::uiElementArrayAttributeValue):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::uiElementArrayAttributeValue):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::getUIElementsWithAttribute):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):

LayoutTests:

Adding test to make sure AXVisibleRows behaves correctly.

* platform/mac/accessibility/table-visible-rows-expected.txt: Added.
* platform/mac/accessibility/table-visible-rows.html: Added.

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

8 years agoWeb Inspector: Update localizedStrings, remove stale string
commit-queue@webkit.org [Tue, 19 Nov 2013 00:17:56 +0000 (00:17 +0000)]
Web Inspector: Update localizedStrings, remove stale string
https://bugs.webkit.org/show_bug.cgi?id=124543

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-11-18
Reviewed by Jessie Berlin.

Remove stale localized strings after r124543 remove the old color picker.

* Localizations/en.lproj/localizedStrings.js:

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

8 years agoARM64: Update getHostCallReturnValue() to use architected frame pointer register
msaboff@apple.com [Tue, 19 Nov 2013 00:07:53 +0000 (00:07 +0000)]
ARM64: Update getHostCallReturnValue() to use architected frame pointer register
https://bugs.webkit.org/show_bug.cgi?id=124520

Reviewed by Filip Pizlo.

Changed from using the prior JSC specific x25 callframe register to the ARM64
architected x29 (fp) register.  This change should have been done as part of
https://bugs.webkit.org/show_bug.cgi?id=123956.

* jit/JITOperations.cpp:

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

8 years agoSimplify and reformat the output of performance tests inside test runners
rniwa@webkit.org [Mon, 18 Nov 2013 23:40:36 +0000 (23:40 +0000)]
Simplify and reformat the output of performance tests inside test runners
https://bugs.webkit.org/show_bug.cgi?id=124496

Reviewed by Antti Koivisto.

PerformanceTests:

As a preparation to support subtests for Dromaeo and DoYouEvenBench, simplify the output performance tests generate.
Also modernize the output to better support "metric" concept we introduced a while ago.

New output on Dromaeo/dom-attr looks like this:
-----------------------------------------------
Running 5 times
getAttribute -> [1105, 1108, 1134, 1137, 1154]
element.property -> [1634, 1655, 1685, 1696, 1723]
setAttribute -> [646.3536463536464, 651, 651, 656.3436563436563, 658]
element.property = value -> [934, 949, 963, 964, 974]
element.expando = value -> [419, 419.5804195804196, 421.57842157842157, 425.57442557442556, 429]
element.expando -> [501, 517, 519.4805194805194, 521.4785214785214, 525]

    1: 117.40644785571585 runs/s
    2: 118.84720469666297 runs/s
    3: 119.80547640905021 runs/s
    4: 120.51886194758805 runs/s
    5: 121.51924380569295 runs/s

:Time -> [117.40644785571585, 118.84720469666297, 119.80547640905021, 120.51886194758805, 121.51924380569295] runs/s
    mean: 119.619446942942 runs/s
    median: 119.80547640905021 runs/s
    stdev: 1.5769040458730506 runs/s
    min: 117.40644785571585 runs/s
    max: 121.51924380569295 runs/s
-----------------------------------------------

* Dromaeo/resources/dromaeorunner.js:
(DRT.progress): Use the new format for subtest reports.
* resources/runner.js:
(.): Declare verboseLogging, which is set to true outside of test runners.
(PerfTestRunner.logInfo): Use verboseLogging instead of directly checking window.testRunner.
(PerfTestRunner.logDetail): Added. Logs informative text with a label such as "mean: 123 s" with 4-space indentation.
(PerfTestRunner.logStatistics): Use logDetail.
(.start): Initialize verboseLogging. Also log "Running 20 times" as an informative log using logDetail.
(.ignoreWarmUpAndLog): Use logDetail for showing the progress. These logs were useless inside test runners anyway
because perftest didn't get to see any output until the test finished running.
(.finish): Call logStatistics with metric name as opposed to a label. Each metric name is now prefixed with ':' to be
distinguishable from subtests, making the new format forward compatible.

Tools:

As a preparation to support subtests for Dromaeo and DoYouEvenBench, simplify the output
performance tests generate. Instead of spitting out noise in PerfTestRunner (runner.js)
and ignoring it in PerfTest._filter_output (perftest.py), simply avoid generating it in
the first place.

Also modernize the output to adopt "metric" concept better and make it forward compatible
with subtests.

With this patch, performance tests written using runner.js only produces empty lines or
lines of the following format inside test runners (DumpRenderTree and WebKitTestRunner):
<subtest name> -> [<value 1>, <value 2>, ...]
:<metric name> -> [<value 1>, <value 2>, ...]

This greatly simplifies the parsing logic inside PerfTest._run_with_driver.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest): Removed a bunch of regular expressions that are no longer used.
(PerfTest._run_with_driver): Just parse the values and description and treat everything
else as errors.

* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTest.test_parse_output): Removed the junk.
(TestPerfTest._assert_failed_on_line): Extracted from test_parse_output_with_failing_line,
which was removed in favor of the tests below.
(TestPerfTest.test_parse_output_with_running_five_times): Added.
(TestPerfTest.test_parse_output_with_detailed_info): Added.
(TestPerfTest.test_parse_output_with_statistics): Added.
(TestPerfTest.test_parse_output_with_description): Removed the junk.
(TestPerfTest.test_parse_output_with_subtests): Ditto.
(TestSingleProcessPerfTest.test_use_only_one_process): Ditto.

* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
(EventTargetWrapperTestData): Ditto.
(SomeParserTestData): Ditto.
(MemoryTestData): Ditto.

LayoutTests:

Rebaseline the expected result now that the output has been simplified.

* fast/harness/perftests/runs-per-second-log-expected.txt:

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

8 years agoUnreviewed build fix attempt on GTK and EFL port after r159461
ryuan.choi@samsung.com [Mon, 18 Nov 2013 23:40:04 +0000 (23:40 +0000)]
Unreviewed build fix attempt on GTK and EFL port after r159461

* CMakeLists.txt: Added APINavigationData.cpp and removed WebNavigationData.cpp
* GNUmakefile.list.am: Ditto.

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

8 years agoAt some scales, opaque compositing layers have garbage pixels around the edges
simon.fraser@apple.com [Mon, 18 Nov 2013 23:33:04 +0000 (23:33 +0000)]
At some scales, opaque compositing layers have garbage pixels around the edges
https://bugs.webkit.org/show_bug.cgi?id=124541

Reviewed by Dean Jackson.

Layers get marked as having opaque contents when their background is
known to paint the entire layer. However, this failed to take into
account two reasons why every pixel may not get painted.

First, subpixel layout can result in non-integral RenderLayer
bounds, which will get rounded up to an integral GraphicsLayer
size. When this happens we may not paint edge pixels.

Second, at non-integral scale factors, graphics context scaling
may cause us to not paint edge pixels.

Fix by only marking PlatformCALayers as having opaque contents
when the contentsScale of the layer is integral.

Not testable, because we can't guarantee to get garbage pixels
in a ref test, and layer dumps show GraphicsLayer's notion of
content opaqueness, not the one we set on the PlatformCALayer.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::isIntegral):
(WebCore::clampedContentsScaleForScale):
(WebCore::GraphicsLayerCA::updateRootRelativeScale):
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateContentsOpaque):
(WebCore::GraphicsLayerCA::getTransformFromAnimationsWithMaxScaleImpact):
Drive-by typo fix.
(WebCore::GraphicsLayerCA::noteChangesForScaleSensitiveProperties):
* platform/graphics/ca/GraphicsLayerCA.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

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

8 years agoput_to_scope[5] should not point to the structure if it's a variable access, but...
fpizlo@apple.com [Mon, 18 Nov 2013 23:19:53 +0000 (23:19 +0000)]
put_to_scope[5] should not point to the structure if it's a variable access, but it should point to the WatchpointSet
https://bugs.webkit.org/show_bug.cgi?id=124539

Reviewed by Mark Hahnenberg.

This is in preparation for getting put_to_scope to directly invalidate the watchpoint set
on stores, which will allow us to run constant inference on all globals.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
* bytecode/Instruction.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* runtime/JSScope.cpp:
(JSC::abstractAccess):
(JSC::JSScope::abstractResolve):
* runtime/JSScope.h:
(JSC::ResolveOp::ResolveOp):
* runtime/SymbolTable.h:
(JSC::SymbolTableEntry::watchpointSet):

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

8 years agoRename WebNavigationData to API::NavigationData
andersca@apple.com [Mon, 18 Nov 2013 23:16:16 +0000 (23:16 +0000)]
Rename WebNavigationData to API::NavigationData
https://bugs.webkit.org/show_bug.cgi?id=124542

Reviewed by Dan Bernstein.

* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKNavigationDataRef.cpp:
(WKNavigationDataGetTypeID):
* UIProcess/API/Cocoa/WKNavigationData.mm:
(-[WKNavigationData dealloc]):
(-[WKNavigationData title]):
(-[WKNavigationData originalRequest]):
(-[WKNavigationData destinationURL]):
(-[WKNavigationData response]):
* UIProcess/API/Cocoa/WKNavigationDataInternal.h:
(WebKit::wrapper):
* UIProcess/API/mac/WKProcessGroup.mm:
* UIProcess/APINavigationData.cpp: Renamed from Source/WebKit2/UIProcess/WebNavigationData.cpp.
(API::NavigationData::NavigationData):
(API::NavigationData::~NavigationData):
* UIProcess/APINavigationData.h: Renamed from Source/WebKit2/UIProcess/WebNavigationData.h.
(API::NavigationData::create):
(API::NavigationData::title):
(API::NavigationData::url):
(API::NavigationData::originalRequest):
(API::NavigationData::response):
* UIProcess/WebHistoryClient.cpp:
(WebKit::WebHistoryClient::didNavigateWithNavigationData):
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoAdd a quirk to not respect center text-align when positioning
hyatt@apple.com [Mon, 18 Nov 2013 23:08:30 +0000 (23:08 +0000)]
Add a quirk to not respect center text-align when positioning

<rdar://problem/15427571>
https://bugs.webkit.org/show_bug.cgi?id=124522

Reviewed by Simon Fraser.

Added fast/block/legacy-text-align-position-quirk.html

Source/WebCore:

* page/Settings.in:
Add the quirk setting.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::startAlignedOffsetForLine):
Don't pay attention to center text-align when the quirk is set.

Source/WebKit/mac:

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences useLegacyTextAlignPositionedElementBehavior]):
(-[WebPreferences setUseLegacyTextAlignPositionedElementBehavior:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesUseLegacyTextAlignPositionedElementBehavior):
(WKPreferencesSetUseLegacyTextAlignPositionedElementBehavior):
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

LayoutTests:

* fast/block/legacy-text-align-position-quirk-expected.html: Added.
* fast/block/legacy-text-align-position-quirk.html: Added.

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

8 years agoAPIEntryShims need some love
mhahnenberg@apple.com [Mon, 18 Nov 2013 23:07:03 +0000 (23:07 +0000)]
APIEntryShims need some love
https://bugs.webkit.org/show_bug.cgi?id=124540

Reviewed by Filip Pizlo.

We were missing them in key places which some other hacking revealed. These could have manifested as
race conditions for VMs being used in multithreaded environments.

* API/JSContext.mm:
(-[JSContext setException:]):
(-[JSContext wrapperForObjCObject:]):
(-[JSContext wrapperForJSObject:]):
* API/JSContextRef.cpp:
(JSContextGroupRelease):
(JSGlobalContextRelease):
* API/JSManagedValue.mm:
(-[JSManagedValue initWithValue:]):
(-[JSManagedValue value]):
* API/JSObjectRef.cpp:
(JSObjectIsFunction):
(JSObjectCopyPropertyNames):
* API/JSValue.mm:
(containerValueToObject):
* API/JSWrapperMap.mm:
(tryUnwrapObjcObject):

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

8 years agoAdd State to PageLoadState
andersca@apple.com [Mon, 18 Nov 2013 22:43:06 +0000 (22:43 +0000)]
Add State to PageLoadState
https://bugs.webkit.org/show_bug.cgi?id=124538

Reviewed by Tim Horton.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::PageLoadState):
(WebKit::PageLoadState::didStartProvisionalLoad):
(WebKit::PageLoadState::didReceiveServerRedirectForProvisionalLoad):
(WebKit::PageLoadState::didFailProvisionalLoad):
(WebKit::PageLoadState::didCommitLoad):
(WebKit::PageLoadState::didFinishLoad):
(WebKit::PageLoadState::didSameDocumentNavigation):
* UIProcess/PageLoadState.h:

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

8 years agoThe PageLoadState object should keep track of the current URL
andersca@apple.com [Mon, 18 Nov 2013 22:14:41 +0000 (22:14 +0000)]
The PageLoadState object should keep track of the current URL
https://bugs.webkit.org/show_bug.cgi?id=124536

Reviewed by Dan Bernstein.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::didCommitLoad):
(WebKit::PageLoadState::didFinishLoad):
(WebKit::PageLoadState::didFailLoad):
(WebKit::PageLoadState::didSameDocumentNavigation):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFinishLoadForFrame):
(WebKit::WebPageProxy::didFailLoadForFrame):
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):

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

8 years agoConsolidate various frame snapshot capabilities.
commit-queue@webkit.org [Mon, 18 Nov 2013 22:10:33 +0000 (22:10 +0000)]
Consolidate various frame snapshot capabilities.
https://bugs.webkit.org/show_bug.cgi?id=124325

Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-11-18
Reviewed by Timothy Hatcher.

Source/WebCore:

Various snapshot creation methods had duplicated code and were split
between Frame, DragImage, and platform-specific implementationss.
This patch puts WebCore snapshot methods into FrameSnapshotting
and removes platform implementations where possible.

DragImage methods reuse snapshot methods where possible. Inspector
will be able to take snapshots without using drag images.

No new tests, this is a refactoring.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/objc/DOM.mm:
(-[DOMNode renderedImage]):
(-[DOMRange renderedImageForcingBlackText:]):
* dom/Clipboard.cpp:
(WebCore::Clipboard::createDragImage):
* dom/ClipboardMac.mm:
(WebCore::Clipboard::createDragImage):
* page/DragController.cpp:
(WebCore::DragController::startDrag):
* page/Frame.cpp:
* page/Frame.h:
* page/FrameSnapshotting.cpp: Added.
(WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
(WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
(WebCore::snapshotFrameRect): Move most buffer logic to here.
(WebCore::snapshotSelection): Moved from Frame.
(WebCore::snapshotNode): Moved from Frame.
* page/FrameSnapshotting.h: Added.
* page/mac/FrameMac.mm: Removed.
* page/mac/FrameSnapshottingMac.h: Removed.
* page/mac/FrameSnapshottingMac.mm: Removed.
* page/win/FrameWin.cpp: remove duplicate implementation.
* page/win/FrameWin.h: Fix an incorrect parameter name.
* platform/DragImage.cpp:
(WebCore::ScopedNodeDragState::ScopedNodeDragState):
(WebCore::ScopedNodeDragState::~ScopedNodeDragState):
(WebCore::createDragImageFromSnapshot): Boilerplate buffer conversion.
(WebCore::createDragImageForNode):
(WebCore::createDragImageForSelection):
(WebCore::ScopedFrameSelectionState::ScopedFrameSelectionState):
(WebCore::ScopedFrameSelectionState::~ScopedFrameSelectionState):
(WebCore::createDragImageForRange): Moved from Frame.
(WebCore::createDragImageForImage): Moved from FrameSnapshottingMac.
(WebCore::createDragImageForLink): use nullptr.

Source/WebKit/ios:

* WebCoreSupport/WebFrameIOS.mm: use new header file.

Source/WebKit/mac:

Use new platform-independent methods instead of Mac methods.

* WebView/WebHTMLView.mm:
(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView selectionImageForcingBlackText:]):

Source/WebKit/win:

* DOMCoreClasses.cpp:
(DOMElement::renderedImage): use createDragImageForNode.

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

8 years ago[GStreamer] Crash when using media source
commit-queue@webkit.org [Mon, 18 Nov 2013 21:49:03 +0000 (21:49 +0000)]
[GStreamer] Crash when using media source
https://bugs.webkit.org/show_bug.cgi?id=124525

Patch by Brendan Long <b.long@cablelabs.com> on 2013-11-18
Reviewed by Philippe Normand.

No new tests because this is already covered by tests in media/media-source (which aren't enabled because the feature isn't done).

* platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
(WebCore::MediaSourceGStreamer::MediaSourceGStreamer): Add missing adoptRef()

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

8 years agoOccasionally, hundreds of tests fail with small text diffs on Mavericks
timothy_horton@apple.com [Mon, 18 Nov 2013 21:48:18 +0000 (21:48 +0000)]
Occasionally, hundreds of tests fail with small text diffs on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=124312

Reviewed by Simon Fraser.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run):
* Scripts/webkitpy/port/base.py:
(Port.to.reset_preferences):
* Scripts/webkitpy/port/mac.py:
(MacPort.reset_preferences):
Delete DumpRenderTree and WebKitTestRunner defaults domains before running tests,
returning some of the functionality of 158652 after 159364 removed it.

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

8 years agoURTBF after r159444.
ossy@webkit.org [Mon, 18 Nov 2013 21:44:00 +0000 (21:44 +0000)]
URTBF after r159444.

* GNUmakefile.list.am:

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

8 years agoPageLoadState should keep track of the provisional URL
andersca@apple.com [Mon, 18 Nov 2013 21:28:26 +0000 (21:28 +0000)]
PageLoadState should keep track of the provisional URL
https://bugs.webkit.org/show_bug.cgi?id=124535

Reviewed by Dan Bernstein.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::didStartProvisionalLoad):
(WebKit::PageLoadState::didReceiveServerRedirectForProvisionalLoad):
(WebKit::PageLoadState::didCommitLoad):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
(WebKit::WebPageProxy::didCommitLoadForFrame):

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

8 years agoRemove unneeded BackingStore-related #include from IDBFactoryBackendInterface
beidson@apple.com [Mon, 18 Nov 2013 21:21:48 +0000 (21:21 +0000)]
Remove unneeded BackingStore-related #include from IDBFactoryBackendInterface

Rubberstamped by Beth Dakin.

* Modules/indexeddb/IDBFactoryBackendInterface.h:

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

8 years agoMove m_pendingAPIRequestURL to PageLoadState
andersca@apple.com [Mon, 18 Nov 2013 21:03:17 +0000 (21:03 +0000)]
Move m_pendingAPIRequestURL to PageLoadState
https://bugs.webkit.org/show_bug.cgi?id=124531

Reviewed by Tim Horton.

* UIProcess/API/C/WKPage.cpp:
(WKPageCopyPendingAPIRequestURL):
* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::pendingAPIRequestURL):
(WebKit::PageLoadState::setPendingAPIRequestURL):
(WebKit::PageLoadState::clearPendingAPIRequestURL):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadURL):
(WebKit::WebPageProxy::loadURLRequest):
(WebKit::WebPageProxy::reload):
(WebKit::WebPageProxy::goForward):
(WebKit::WebPageProxy::goBack):
(WebKit::WebPageProxy::goToBackForwardItem):
(WebKit::WebPageProxy::activeURL):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::estimatedProgress):
(WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::pageLoadState):
* UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):

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

8 years agoAllow the FTL debug dumps to include the new size field
fpizlo@apple.com [Mon, 18 Nov 2013 20:52:25 +0000 (20:52 +0000)]
Allow the FTL debug dumps to include the new size field
https://bugs.webkit.org/show_bug.cgi?id=124479

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

* ftl/FTLStackMaps.cpp:
(JSC::FTL::StackMaps::Location::parse):
(JSC::FTL::StackMaps::Location::dump):
* ftl/FTLStackMaps.h:

Source/WTF:

* wtf/PrintStream.cpp:
(WTF::printInternal):
* wtf/PrintStream.h:

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

8 years agoChange mediasource and mediastream modules to use nullptr
commit-queue@webkit.org [Mon, 18 Nov 2013 20:42:37 +0000 (20:42 +0000)]
Change mediasource and mediastream modules to use nullptr
https://bugs.webkit.org/show_bug.cgi?id=124530

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-18
Reviewed by Tim Horton.

No new tests needed, no behavior change.

* Modules/mediasource/MediaSource.cpp:
* Modules/mediasource/SourceBuffer.cpp:
* Modules/mediastream/MediaStream.cpp:
* Modules/mediastream/RTCDTMFSender.cpp:
* Modules/mediastream/RTCDataChannel.cpp:
* Modules/mediastream/RTCIceCandidate.cpp:
* Modules/mediastream/RTCPeerConnection.cpp:
* Modules/mediastream/RTCSessionDescription.cpp:
* Modules/mediastream/RTCStatsResponse.cpp:
* Modules/mediastream/UserMediaRequest.cpp:

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

8 years agoUnreviewed EFL build fix after r159444
m.pakula@samsung.com [Mon, 18 Nov 2013 20:32:22 +0000 (20:32 +0000)]
Unreviewed EFL build fix after r159444

* CMakeLists.txt: Added PageLoadState.cpp.

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

8 years agoMove execution of IDBCursorBackendOperations to the IDBServerConnection
beidson@apple.com [Mon, 18 Nov 2013 20:01:03 +0000 (20:01 +0000)]
Move execution of IDBCursorBackendOperations to the IDBServerConnection
https://bugs.webkit.org/show_bug.cgi?id=124463

Reviewed by Tim Horton.

This almost entirely removes knowledge of the backing store from the front end.

The primary change here is to give cursors a unique ID.

This way the IDBCursorBackend can reference itself by ID, while the
IDBServerConnection can handle mapping that ID to a backing store.

* Modules/indexeddb/IDBBackingStoreCursorInterface.h:

* Modules/indexeddb/IDBBackingStoreInterface.h:

* Modules/indexeddb/IDBCursorBackend.cpp:
(WebCore::IDBCursorBackend::IDBCursorBackend):
(WebCore::IDBCursorBackend::deleteFunction):
(WebCore::IDBCursorBackend::prefetchReset):
(WebCore::IDBCursorBackend::close):
(WebCore::IDBCursorBackend::updateCursorData):
(WebCore::IDBCursorBackend::clearCursorData):
* Modules/indexeddb/IDBCursorBackend.h:
(WebCore::IDBCursorBackend::create):
(WebCore::IDBCursorBackend::key):
(WebCore::IDBCursorBackend::primaryKey):
(WebCore::IDBCursorBackend::value):
(WebCore::IDBCursorBackend::id):
(WebCore::IDBCursorBackend::transaction):
(WebCore::IDBCursorBackend::setSavedCursorID):

* Modules/indexeddb/IDBCursorBackendOperations.cpp:
(WebCore::CursorAdvanceOperation::perform):
(WebCore::CursorIterationOperation::perform):
(WebCore::CursorPrefetchIterationOperation::perform):
* Modules/indexeddb/IDBCursorBackendOperations.h:
(WebCore::CursorIterationOperation::key):
(WebCore::CursorIterationOperation::callbacks):
(WebCore::CursorAdvanceOperation::count):
(WebCore::CursorAdvanceOperation::callbacks):
(WebCore::CursorPrefetchIterationOperation::numberToFetch):
(WebCore::CursorPrefetchIterationOperation::callbacks):

* Modules/indexeddb/IDBServerConnection.h:

* Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.h:
(WebCore::IDBBackingStoreCursorLevelDB::IDBBackingStoreCursorLevelDB):

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::ObjectStoreKeyCursorImpl::create):
(WebCore::ObjectStoreKeyCursorImpl::clone):
(WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
(WebCore::ObjectStoreCursorImpl::create):
(WebCore::ObjectStoreCursorImpl::clone):
(WebCore::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexCursor):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:

* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
(WebCore::IDBServerConnectionLevelDB::IDBServerConnectionLevelDB):
(WebCore::IDBServerConnectionLevelDB::setIndexKeys):
(WebCore::IDBServerConnectionLevelDB::createObjectStore):
(WebCore::IDBServerConnectionLevelDB::createIndex):
(WebCore::IDBServerConnectionLevelDB::deleteIndex):
(WebCore::IDBServerConnectionLevelDB::get):
(WebCore::IDBServerConnectionLevelDB::put):
(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::count):
(WebCore::IDBServerConnectionLevelDB::deleteRange):
(WebCore::IDBServerConnectionLevelDB::clearObjectStore):
(WebCore::IDBServerConnectionLevelDB::deleteObjectStore):
(WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion):
(WebCore::IDBServerConnectionLevelDB::cursorAdvance):
(WebCore::IDBServerConnectionLevelDB::cursorIterate):
(WebCore::IDBServerConnectionLevelDB::cursorPrefetchIteration):
(WebCore::IDBServerConnectionLevelDB::cursorPrefetchReset):
* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:

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

8 years agoAdd PageLoadState class
andersca@apple.com [Mon, 18 Nov 2013 20:00:11 +0000 (20:00 +0000)]
Add PageLoadState class
https://bugs.webkit.org/show_bug.cgi?id=124528

Reviewed by Dan Bernstein.

Trying to use the main frame load state as the page load state was a bad idea,
add a new PageLoadState and use it instead. Ultimately the long term plan is to
transition away from FrameLoadState entirely.

* UIProcess/PageLoadState.cpp: Added.
(WebKit::PageLoadState::PageLoadState):
(WebKit::PageLoadState::~PageLoadState):
(WebKit::PageLoadState::didStartProvisionalLoad):
* UIProcess/PageLoadState.h: Added.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
* UIProcess/WebPageProxy.h:
* WebKit2.xcodeproj/project.pbxproj:

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

8 years ago[WTF] Media time should not have a constructor which accepts a single int or float.
jer.noble@apple.com [Mon, 18 Nov 2013 19:59:42 +0000 (19:59 +0000)]
[WTF] Media time should not have a constructor which accepts a single int or float.
https://bugs.webkit.org/show_bug.cgi?id=124470

Source/WebCore:

Reviewed by Eric Carlson.

Fix the compile error exposed by removing the default parameter in the MediaTime constructor.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::setTimestampOffset):

Source/WTF:

Having a constructor taking a single number value, as it's very easy to accidentially mis-
initialize a MediaTime with a double (automatically casted to a int64_t).

Reviewed by Eric Carlson.

* wtf/MediaTime.h:

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

8 years agoChange webaudio to use nullptr for null pointers
commit-queue@webkit.org [Mon, 18 Nov 2013 19:53:06 +0000 (19:53 +0000)]
Change webaudio to use nullptr for null pointers
https://bugs.webkit.org/show_bug.cgi?id=124526

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-18
Reviewed by Anders Carlsson.

No new tests needed, no behavior change.

* Modules/webaudio/AudioBuffer.cpp:
* Modules/webaudio/AudioContext.cpp:
* Modules/webaudio/AudioNode.cpp:
* Modules/webaudio/ChannelMergerNode.cpp:
* Modules/webaudio/ChannelSplitterNode.cpp:
* Modules/webaudio/MediaStreamAudioSource.cpp:
* Modules/webaudio/OfflineAudioContext.cpp:
* Modules/webaudio/PeriodicWave.cpp:
* Modules/webaudio/ScriptProcessorNode.cpp:

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

8 years ago[ASAN] WebKit2: Remove calls to dead DownloadAuthenticationClient code
dfarler@apple.com [Mon, 18 Nov 2013 19:44:31 +0000 (19:44 +0000)]
[ASAN] WebKit2: Remove calls to dead DownloadAuthenticationClient code
https://bugs.webkit.org/show_bug.cgi?id=124367

Reviewed by Alexey Proskuryakov.

* Shared/Downloads/DownloadAuthenticationClient.cpp:
(WebKit::DownloadAuthenticationClient::receivedCredential):
(WebKit::DownloadAuthenticationClient::receivedRequestToContinueWithoutCredential):
(WebKit::DownloadAuthenticationClient::receivedCancellation):
Remove calls to nowhere:
WebKit::Download::cancelAuthenticationChallenge(WebCore::AuthenticationChallenge const&)
WebKit::Download::continueWithoutCredential(WebCore::AuthenticationChallenge const&)
WebKit::Download::useCredential(WebCore::AuthenticationChallenge const&, WebCore::Credential const&)

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

8 years agoCheckmarks are shifted down on iPhone at build.webkit.org/dashboard
timothy_horton@apple.com [Mon, 18 Nov 2013 19:34:21 +0000 (19:34 +0000)]
Checkmarks are shifted down on iPhone at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122909

Reviewed by Alexey Proskuryakov.

Put the checkmark SVG in the CSS file as a data URI so it loads immediately.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
(.status-line .bubble):
(.status-line.good .bubble.pictogram):

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

8 years agoUse a strong enum for frame load states
andersca@apple.com [Mon, 18 Nov 2013 19:10:14 +0000 (19:10 +0000)]
Use a strong enum for frame load states
https://bugs.webkit.org/show_bug.cgi?id=124524

Reviewed by Dan Bernstein.

* UIProcess/API/C/WKFrame.cpp:
(WKFrameGetFrameLoadState):
* UIProcess/FrameLoadState.cpp:
(WebKit::FrameLoadState::FrameLoadState):
(WebKit::FrameLoadState::didStartProvisionalLoad):
(WebKit::FrameLoadState::didReceiveServerRedirectForProvisionalLoad):
(WebKit::FrameLoadState::didFailProvisionalLoad):
(WebKit::FrameLoadState::didCommitLoad):
(WebKit::FrameLoadState::didFinishLoad):
(WebKit::FrameLoadState::didFailLoad):
* UIProcess/FrameLoadState.h:
* UIProcess/WebFrameProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::activeURL):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::loadStateAtProcessExit):

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

8 years agoURTBF after r159432 to make WinCairo build happy.
ossy@webkit.org [Mon, 18 Nov 2013 19:00:59 +0000 (19:00 +0000)]
URTBF after r159432 to make WinCairo build happy.

* wtf/text/WTFString.h:

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

8 years agoRemove unnecessary COMPILER(CLANG) #ifdefs in Mac-only code
andersca@apple.com [Mon, 18 Nov 2013 18:54:21 +0000 (18:54 +0000)]
Remove unnecessary COMPILER(CLANG) #ifdefs in Mac-only code
https://bugs.webkit.org/show_bug.cgi?id=124523

Reviewed by Dan Bernstein.

Source/WebKit/mac:

* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::makeCurrentProcessFrontProcess):
(WebKit::NetscapePluginHostProxy::makePluginHostProcessFrontProcess):
(WebKit::NetscapePluginHostProxy::isPluginHostProcessFrontProcess):

Source/WebKit2:

* PluginProcess/mac/PluginProcessMac.mm:
(WebKit::beginModal):
* PluginProcess/mac/PluginProcessShim.mm:
* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::NetscapePluginModule::tryLoad):
* Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::getPluginProcessSerialNumber):
(WebKit::PluginProcessProxy::makePluginProcessTheFrontProcess):
(WebKit::PluginProcessProxy::makeUIProcessTheFrontProcess):
(WebKit::PluginProcessProxy::exitFullscreen):

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

8 years ago[Win] Optimization, no need to erase background before paint.
commit-queue@webkit.org [Mon, 18 Nov 2013 18:46:11 +0000 (18:46 +0000)]
[Win] Optimization, no need to erase background before paint.
https://bugs.webkit.org/show_bug.cgi?id=124453

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-18
Reviewed by Brent Fulgham.

As the paint will blit a bitmap onto the invalid area (no alpha),
there is no need to erase the background first, as this will be overwritten by the blit.

* WebView.cpp:
(WebView::WebViewWndProc): Avoid erasing background before paint.

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

8 years ago[Curl] Basic authentication is not reused.
commit-queue@webkit.org [Mon, 18 Nov 2013 18:45:15 +0000 (18:45 +0000)]
[Curl] Basic authentication is not reused.
https://bugs.webkit.org/show_bug.cgi?id=124452

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-18
Reviewed by Brent Fulgham.

After a successful basic authentication, the credentials are not reused for later requests.
In the CFNetwork port, this is solved by trying basic authentication first, if credentials exists.
Also, when a 401 response is received, the first thing the CFNetwork port does, is to use
m_user/m_pass as credentials in the following request if they are set.
This can be done the same way for the Curl version.

* platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Try using m_user/m_pass as credentials first, if they are set.
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::ResourceHandleManager::applyAuthenticationToRequest): Try basic authentication first, if credentials exists.

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

8 years agoIgnore deprecation warnings for now.
andersca@apple.com [Mon, 18 Nov 2013 18:42:34 +0000 (18:42 +0000)]
Ignore deprecation warnings for now.

* History/WebHistory.h:

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

8 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Mon, 18 Nov 2013 18:35:41 +0000 (18:35 +0000)]
Unreviewed EFL gardening

* platform/efl/TestExpectations: Add failure expectations for CSS filters layout tests.

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

8 years ago[curl] Add file cache
commit-queue@webkit.org [Mon, 18 Nov 2013 18:35:10 +0000 (18:35 +0000)]
[curl] Add file cache
https://bugs.webkit.org/show_bug.cgi?id=123333

Patch by Mátyás Mustoha <mmatyas@inf.u-szeged.hu> on 2013-11-18
Reviewed by Brent Fulgham.

Implementation of on disc file cache
for the curl network backend.

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* platform/network/curl/CurlCacheEntry.cpp: Added.
(WebCore::CurlCacheEntry::CurlCacheEntry):
(WebCore::CurlCacheEntry::~CurlCacheEntry):
(WebCore::CurlCacheEntry::isCached):
(WebCore::CurlCacheEntry::requestHeaders):
(WebCore::CurlCacheEntry::saveCachedData):
(WebCore::CurlCacheEntry::loadCachedData):
(WebCore::CurlCacheEntry::saveResponseHeaders):
(WebCore::CurlCacheEntry::loadResponseHeaders):
(WebCore::CurlCacheEntry::setResponseFromCachedHeaders):
(WebCore::CurlCacheEntry::didFail):
(WebCore::CurlCacheEntry::didFinishLoading):
(WebCore::CurlCacheEntry::generateBaseFilename):
(WebCore::CurlCacheEntry::loadFileToBuffer):
(WebCore::CurlCacheEntry::invalidate):
(WebCore::CurlCacheEntry::parseResponseHeaders):
* platform/network/curl/CurlCacheEntry.h: Added.
(WebCore::CurlCacheEntry::isInMemory):
* platform/network/curl/CurlCacheManager.cpp: Added.
(WebCore::CurlCacheManager::getInstance):
(WebCore::CurlCacheManager::CurlCacheManager):
(WebCore::CurlCacheManager::~CurlCacheManager):
(WebCore::CurlCacheManager::setCacheDirectory):
(WebCore::CurlCacheManager::loadIndex):
(WebCore::CurlCacheManager::saveIndex):
(WebCore::CurlCacheManager::didReceiveResponse):
(WebCore::CurlCacheManager::didFinishLoading):
(WebCore::CurlCacheManager::isCached):
(WebCore::CurlCacheManager::requestHeaders):
(WebCore::CurlCacheManager::didReceiveData):
(WebCore::CurlCacheManager::saveResponseHeaders):
(WebCore::CurlCacheManager::invalidateCacheEntry):
(WebCore::CurlCacheManager::didFail):
(WebCore::CurlCacheManager::loadCachedData):
* platform/network/curl/CurlCacheManager.h: Added.
(WebCore::CurlCacheManager::getCacheDirectory):
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::writeCallback):
(WebCore::headerCallback):
(WebCore::ResourceHandleManager::downloadTimerCallback):
(WebCore::ResourceHandleManager::initializeHandle):

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

8 years ago[Win] Link fails when DFG JIT is enabled.
commit-queue@webkit.org [Mon, 18 Nov 2013 18:30:16 +0000 (18:30 +0000)]
[Win] Link fails when DFG JIT is enabled.
https://bugs.webkit.org/show_bug.cgi?id=123614

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-18
Reviewed by Brent Fulgham.

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Added new files.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.

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