Timeline



Aug 5, 2012:

11:39 PM Changeset in webkit [124735] by tkent@chromium.org
  • 8 edits
    1 add in trunk/Source

[Chromium-win] Use system locale for number representation
https://bugs.webkit.org/show_bug.cgi?id=93085

Reviewed by Hajime Morita.

Source/WebCore:

We have used LocaleICU for number localization (presentation of <input
type=number>) even on Windows. This patch introduces number localization
feature with Windows API to LocaleWin, and we stop using LocaleICU on
Windows.

Tests: Add new test cases to WebKit/chromium/tests/LocaleWinTest.cpp.

  • WebCore.gyp/WebCore.gyp:
  • Stop using LocaleICU.{cpp,h} and LocalizedNumberICU.cpp.
  • Add LocalizedNumberWin.cpp.
  • platform/text/LocaleWin.cpp:

(WebCore::LocaleWin::LocaleWin):

  • Initialize m_didInitializeNumberData.
  • Use getLocaleInfo() to obtain LOCALE_IFIRSTDAYOFWEEK.

(WebCore::LocaleWin::getLocaleInfo):
Added. A helper to obtain integer locale value.
(WebCore::LocaleWin::initializeNumberLocalizerData):
Added. Prepare data for number localization, and pass it to NumberLocalizer.

  • platform/text/LocaleWin.h:

(LocaleWin): Inherit NumberLocalizer, and declare some new members.

  • platform/text/win/LocalizedNumberWin.cpp: Added.

(WebCore::convertToLocalizedNumber):
Forward to the corresponding function of LocaleWin.
(WebCore::convertFromLocalizedNumber): ditto.
(WebCore::localizedDecimalSeparator): ditto.

Source/WebKit/chromium:

  • WebKit.gypi:

Don't include Localized*ICUTest.cpp in Windows and OSX. They are unnecessary.

  • tests/LocaleWinTest.cpp:

(LocaleWinTest): Add some LCID symbols.
(LocaleWinTest::decimalSeparator):
A helper for LocaleWinTest.decimalSeparator.
(TEST_F(LocaleWinTest, decimalSeparator)):
A test for LocaleWin::localizedDecimalSeparator(). This is a copy of the
corresponding test in LocalizedNumberICUTest.cpp.
(testNumberIsReversible):
A test helper LocaleWinTest.localizedNumberRoundTrip. This is a copy of
the corresponding test in LocalizedNumberICUTest.cpp.
(testNumbers): ditto.
(TEST_F(LocaleWinTest, localizedNumberRoundTrip)):
Tests for LocaleWin changes. This is a copy of the corresponding tests
in LocalizedNumberICUTest.cpp.

11:35 PM Changeset in webkit [124734] by yosin@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] form tests are flaky, mostly on Linux
https://bugs.webkit.org/show_bug.cgi?id=78620

Unreviewed. Update test expecations for

fast/forms/formaction-attribute.html
fast/forms/formmethod-attribute-button-html.html
fast/forms/formmethod-attribute-input-html.html

based on the latest dashboard.

  • platform/chromium/TestExpectations:
11:31 PM Changeset in webkit [124733] by pdr@google.com
  • 4 edits
    2 adds in trunk

Fix assertion during detach of SVG wrappers without baseVal
https://bugs.webkit.org/show_bug.cgi?id=93063

Reviewed by Nikolas Zimmermann.

Source/WebCore:

r131583 introduced a change where SVGAnimatedListPropertyTearOff required
a baseVal to be set before detaching wrappers. This caused an assertion
to be hit if no baseVal was set.
This patch changes this behavior so that wrappers are detached even if
no baseVal is set.

Test: svg/animations/dynamic-modify-transform-without-baseval.html

  • svg/properties/SVGAnimatedListPropertyTearOff.h:

(WebCore::SVGAnimatedListPropertyTearOff::detachListWrappers):

  • svg/properties/SVGListProperty.h:

(WebCore::SVGListProperty::detachListWrappersAndResize): Extracted this static method for detaching wrappers without needing an SVGListProperty.
(SVGListProperty):
(WebCore::SVGListProperty::detachListWrappers):

LayoutTests:

  • svg/animations/dynamic-modify-transform-without-baseval-expected.txt: Added.
  • svg/animations/dynamic-modify-transform-without-baseval.html: Added.
11:09 PM Changeset in webkit [124732] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove DeviceMotionEvent.h and DeviceOrientationEvent.h from Document.cpp
https://bugs.webkit.org/show_bug.cgi?id=93224

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-05
Reviewed by Kentaro Hara.

Need to remove DeviceMotionEvent.h and DeviceOrientationEvent.h from Document.cpp.
They are not used anymore in that file.

No new tests. No change in behavior.

  • dom/Document.cpp:
10:10 PM Changeset in webkit [124731] by yosin@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

[chromium] fast/forms/focus2.html fails
https://bugs.webkit.org/show_bug.cgi?id=45061

Unreviewed. Chromium DRT sets tabsToLink to false. So, Chrimium DRT doesn't set focus to anchor.

  • platform/chromium/TestExpectations: Removed fast/forms/focus2.html
  • platform/chromium/fast/forms/focus2-expected.txt: Added.
8:27 PM Changeset in webkit [124730] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

[CMAKE] Move media source files from #ifdef ENABLE(MEDIA_SOURCE) to existing file list
https://bugs.webkit.org/show_bug.cgi?id=93219

Reviewed by Hajime Morita.

r122688 removed duplicating #ifdef guards from CMakeLists.txt. But, ENABLE_MEDIA_SOURCE is added to
CMakeList using duplicating #ifdef again.

No new tests. No change in behavior.

  • CMakeLists.txt:
8:16 PM Changeset in webkit [124729] by commit-queue@webkit.org
  • 31 edits in trunk/Source

Web Inspector: [JSC] implement setting breakpoints by line:column
https://bugs.webkit.org/show_bug.cgi?id=53003

Source/JavaScriptCore:

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-08-05
Reviewed by Geoffrey Garen.

Add a counter to Lexer to record the column info of each Token. Add a column parameter to
op_debug, cti_op_debug, and _llint_op_debug byte-code command.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::resolve):
(JSC::BytecodeGenerator::emitDebugHook):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ArrayNode::toArgumentList):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::ConstStatementNode::emitBytecode):
(JSC::EmptyStatementNode::emitBytecode):
(JSC::DebuggerStatementNode::emitBytecode):
(JSC::ExprStatementNode::emitBytecode):
(JSC::VarStatementNode::emitBytecode):
(JSC::IfNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):
(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):
(JSC::ThrowNode::emitBytecode):
(JSC::TryNode::emitBytecode):
(JSC::ProgramNode::emitBytecode):
(JSC::EvalNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):

  • debugger/Debugger.h:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::throwException):
(JSC::Interpreter::debug):
(JSC::Interpreter::privateExecute):

  • interpreter/Interpreter.h:

(Interpreter):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • parser/ASTBuilder.h:

(ASTBuilder):
(JSC::ASTBuilder::createCommaExpr):
(JSC::ASTBuilder::createLogicalNot):
(JSC::ASTBuilder::createUnaryPlus):
(JSC::ASTBuilder::createVoid):
(JSC::ASTBuilder::thisExpr):
(JSC::ASTBuilder::createResolve):
(JSC::ASTBuilder::createObjectLiteral):
(JSC::ASTBuilder::createArray):
(JSC::ASTBuilder::createNumberExpr):
(JSC::ASTBuilder::createString):
(JSC::ASTBuilder::createBoolean):
(JSC::ASTBuilder::createNull):
(JSC::ASTBuilder::createBracketAccess):
(JSC::ASTBuilder::createDotAccess):
(JSC::ASTBuilder::createRegExp):
(JSC::ASTBuilder::createNewExpr):
(JSC::ASTBuilder::createConditionalExpr):
(JSC::ASTBuilder::createAssignResolve):
(JSC::ASTBuilder::createFunctionExpr):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createArgumentsList):
(JSC::ASTBuilder::createPropertyList):
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::createBlockStatement):
(JSC::ASTBuilder::createExprStatement):
(JSC::ASTBuilder::createIfStatement):
(JSC::ASTBuilder::createForLoop):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::createEmptyStatement):
(JSC::ASTBuilder::createVarStatement):
(JSC::ASTBuilder::createReturnStatement):
(JSC::ASTBuilder::createBreakStatement):
(JSC::ASTBuilder::createContinueStatement):
(JSC::ASTBuilder::createTryStatement):
(JSC::ASTBuilder::createSwitchStatement):
(JSC::ASTBuilder::createWhileStatement):
(JSC::ASTBuilder::createDoWhileStatement):
(JSC::ASTBuilder::createLabelStatement):
(JSC::ASTBuilder::createWithStatement):
(JSC::ASTBuilder::createThrowStatement):
(JSC::ASTBuilder::createDebugger):
(JSC::ASTBuilder::createConstStatement):
(JSC::ASTBuilder::appendConstDecl):
(JSC::ASTBuilder::combineCommaNodes):
(JSC::ASTBuilder::appendBinaryOperation):
(JSC::ASTBuilder::createAssignment):
(JSC::ASTBuilder::createNumber):
(JSC::ASTBuilder::makeTypeOfNode):
(JSC::ASTBuilder::makeDeleteNode):
(JSC::ASTBuilder::makeNegateNode):
(JSC::ASTBuilder::makeBitwiseNotNode):
(JSC::ASTBuilder::makeMultNode):
(JSC::ASTBuilder::makeDivNode):
(JSC::ASTBuilder::makeModNode):
(JSC::ASTBuilder::makeAddNode):
(JSC::ASTBuilder::makeSubNode):
(JSC::ASTBuilder::makeLeftShiftNode):
(JSC::ASTBuilder::makeRightShiftNode):
(JSC::ASTBuilder::makeURightShiftNode):
(JSC::ASTBuilder::makeBitOrNode):
(JSC::ASTBuilder::makeBitAndNode):
(JSC::ASTBuilder::makeBitXOrNode):
(JSC::ASTBuilder::makeFunctionCallNode):
(JSC::ASTBuilder::makeBinaryNode):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):

  • parser/Lexer.cpp:

(JSC::::setCode):
(JSC::::internalShift):
(JSC::::shift):
(JSC::::lex):

  • parser/Lexer.h:

(Lexer):
(JSC::Lexer::currentColumnNumber):
(JSC::::lexExpectIdentifier):

  • parser/NodeConstructors.h:

(JSC::Node::Node):
(JSC::ExpressionNode::ExpressionNode):
(JSC::StatementNode::StatementNode):
(JSC::NullNode::NullNode):
(JSC::BooleanNode::BooleanNode):
(JSC::NumberNode::NumberNode):
(JSC::StringNode::StringNode):
(JSC::RegExpNode::RegExpNode):
(JSC::ThisNode::ThisNode):
(JSC::ResolveNode::ResolveNode):
(JSC::ArrayNode::ArrayNode):
(JSC::PropertyListNode::PropertyListNode):
(JSC::ObjectLiteralNode::ObjectLiteralNode):
(JSC::BracketAccessorNode::BracketAccessorNode):
(JSC::DotAccessorNode::DotAccessorNode):
(JSC::ArgumentListNode::ArgumentListNode):
(JSC::NewExprNode::NewExprNode):
(JSC::EvalFunctionCallNode::EvalFunctionCallNode):
(JSC::FunctionCallValueNode::FunctionCallValueNode):
(JSC::FunctionCallResolveNode::FunctionCallResolveNode):
(JSC::FunctionCallBracketNode::FunctionCallBracketNode):
(JSC::FunctionCallDotNode::FunctionCallDotNode):
(JSC::CallFunctionCallDotNode::CallFunctionCallDotNode):
(JSC::ApplyFunctionCallDotNode::ApplyFunctionCallDotNode):
(JSC::PrePostResolveNode::PrePostResolveNode):
(JSC::PostfixResolveNode::PostfixResolveNode):
(JSC::PostfixBracketNode::PostfixBracketNode):
(JSC::PostfixDotNode::PostfixDotNode):
(JSC::PostfixErrorNode::PostfixErrorNode):
(JSC::DeleteResolveNode::DeleteResolveNode):
(JSC::DeleteBracketNode::DeleteBracketNode):
(JSC::DeleteDotNode::DeleteDotNode):
(JSC::DeleteValueNode::DeleteValueNode):
(JSC::VoidNode::VoidNode):
(JSC::TypeOfResolveNode::TypeOfResolveNode):
(JSC::TypeOfValueNode::TypeOfValueNode):
(JSC::PrefixResolveNode::PrefixResolveNode):
(JSC::PrefixBracketNode::PrefixBracketNode):
(JSC::PrefixDotNode::PrefixDotNode):
(JSC::PrefixErrorNode::PrefixErrorNode):
(JSC::UnaryOpNode::UnaryOpNode):
(JSC::UnaryPlusNode::UnaryPlusNode):
(JSC::NegateNode::NegateNode):
(JSC::BitwiseNotNode::BitwiseNotNode):
(JSC::LogicalNotNode::LogicalNotNode):
(JSC::BinaryOpNode::BinaryOpNode):
(JSC::MultNode::MultNode):
(JSC::DivNode::DivNode):
(JSC::ModNode::ModNode):
(JSC::AddNode::AddNode):
(JSC::SubNode::SubNode):
(JSC::LeftShiftNode::LeftShiftNode):
(JSC::RightShiftNode::RightShiftNode):
(JSC::UnsignedRightShiftNode::UnsignedRightShiftNode):
(JSC::LessNode::LessNode):
(JSC::GreaterNode::GreaterNode):
(JSC::LessEqNode::LessEqNode):
(JSC::GreaterEqNode::GreaterEqNode):
(JSC::ThrowableBinaryOpNode::ThrowableBinaryOpNode):
(JSC::InstanceOfNode::InstanceOfNode):
(JSC::InNode::InNode):
(JSC::EqualNode::EqualNode):
(JSC::NotEqualNode::NotEqualNode):
(JSC::StrictEqualNode::StrictEqualNode):
(JSC::NotStrictEqualNode::NotStrictEqualNode):
(JSC::BitAndNode::BitAndNode):
(JSC::BitOrNode::BitOrNode):
(JSC::BitXOrNode::BitXOrNode):
(JSC::LogicalOpNode::LogicalOpNode):
(JSC::ConditionalNode::ConditionalNode):
(JSC::ReadModifyResolveNode::ReadModifyResolveNode):
(JSC::AssignResolveNode::AssignResolveNode):
(JSC::ReadModifyBracketNode::ReadModifyBracketNode):
(JSC::AssignBracketNode::AssignBracketNode):
(JSC::AssignDotNode::AssignDotNode):
(JSC::ReadModifyDotNode::ReadModifyDotNode):
(JSC::AssignErrorNode::AssignErrorNode):
(JSC::CommaNode::CommaNode):
(JSC::ConstStatementNode::ConstStatementNode):
(JSC::EmptyStatementNode::EmptyStatementNode):
(JSC::DebuggerStatementNode::DebuggerStatementNode):
(JSC::ExprStatementNode::ExprStatementNode):
(JSC::VarStatementNode::VarStatementNode):
(JSC::IfNode::IfNode):
(JSC::IfElseNode::IfElseNode):
(JSC::DoWhileNode::DoWhileNode):
(JSC::WhileNode::WhileNode):
(JSC::ForNode::ForNode):
(JSC::ContinueNode::ContinueNode):
(JSC::BreakNode::BreakNode):
(JSC::ReturnNode::ReturnNode):
(JSC::WithNode::WithNode):
(JSC::LabelNode::LabelNode):
(JSC::ThrowNode::ThrowNode):
(JSC::TryNode::TryNode):
(JSC::FuncExprNode::FuncExprNode):
(JSC::FuncDeclNode::FuncDeclNode):
(JSC::SwitchNode::SwitchNode):
(JSC::ConstDeclNode::ConstDeclNode):
(JSC::BlockNode::BlockNode):
(JSC::ForInNode::ForInNode):

  • parser/Nodes.cpp:

(JSC::StatementNode::setLoc):
(JSC):
(JSC::ScopeNode::ScopeNode):
(JSC::ProgramNode::ProgramNode):
(JSC::ProgramNode::create):
(JSC::EvalNode::EvalNode):
(JSC::EvalNode::create):
(JSC::FunctionBodyNode::FunctionBodyNode):
(JSC::FunctionBodyNode::create):

  • parser/Nodes.h:

(Node):
(JSC::Node::columnNo):
(ExpressionNode):
(StatementNode):
(JSC::StatementNode::column):
(NullNode):
(BooleanNode):
(NumberNode):
(StringNode):
(RegExpNode):
(ThisNode):
(ResolveNode):
(ArrayNode):
(PropertyListNode):
(ObjectLiteralNode):
(BracketAccessorNode):
(DotAccessorNode):
(ArgumentListNode):
(NewExprNode):
(EvalFunctionCallNode):
(FunctionCallValueNode):
(FunctionCallResolveNode):
(FunctionCallBracketNode):
(FunctionCallDotNode):
(CallFunctionCallDotNode):
(ApplyFunctionCallDotNode):
(PrePostResolveNode):
(PostfixResolveNode):
(PostfixBracketNode):
(PostfixDotNode):
(PostfixErrorNode):
(DeleteResolveNode):
(DeleteBracketNode):
(DeleteDotNode):
(DeleteValueNode):
(VoidNode):
(TypeOfResolveNode):
(TypeOfValueNode):
(PrefixResolveNode):
(PrefixBracketNode):
(PrefixDotNode):
(PrefixErrorNode):
(UnaryOpNode):
(UnaryPlusNode):
(NegateNode):
(BitwiseNotNode):
(LogicalNotNode):
(BinaryOpNode):
(MultNode):
(DivNode):
(ModNode):
(AddNode):
(SubNode):
(LeftShiftNode):
(RightShiftNode):
(UnsignedRightShiftNode):
(LessNode):
(GreaterNode):
(LessEqNode):
(GreaterEqNode):
(ThrowableBinaryOpNode):
(InstanceOfNode):
(InNode):
(EqualNode):
(NotEqualNode):
(StrictEqualNode):
(NotStrictEqualNode):
(BitAndNode):
(BitOrNode):
(BitXOrNode):
(LogicalOpNode):
(ConditionalNode):
(ReadModifyResolveNode):
(AssignResolveNode):
(ReadModifyBracketNode):
(AssignBracketNode):
(AssignDotNode):
(ReadModifyDotNode):
(AssignErrorNode):
(CommaNode):
(ConstDeclNode):
(ConstStatementNode):
(BlockNode):
(EmptyStatementNode):
(DebuggerStatementNode):
(ExprStatementNode):
(VarStatementNode):
(IfNode):
(IfElseNode):
(DoWhileNode):
(WhileNode):
(ForNode):
(ForInNode):
(ContinueNode):
(BreakNode):
(ReturnNode):
(WithNode):
(LabelNode):
(ThrowNode):
(TryNode):
(ScopeNode):
(ProgramNode):
(EvalNode):
(FunctionBodyNode):
(FuncExprNode):
(FuncDeclNode):
(SwitchNode):

  • parser/Parser.cpp:

(JSC::::parseSourceElements):
(JSC::::parseVarDeclaration):
(JSC::::parseConstDeclaration):
(JSC::::parseDoWhileStatement):
(JSC::::parseWhileStatement):
(JSC::::parseVarDeclarationList):
(JSC::::parseConstDeclarationList):
(JSC::::parseForStatement):
(JSC::::parseBreakStatement):
(JSC::::parseContinueStatement):
(JSC::::parseReturnStatement):
(JSC::::parseThrowStatement):
(JSC::::parseWithStatement):
(JSC::::parseSwitchStatement):
(JSC::::parseTryStatement):
(JSC::::parseDebuggerStatement):
(JSC::::parseBlockStatement):
(JSC::::parseStatement):
(JSC::::parseFunctionBody):
(JSC::::parseFunctionInfo):
(JSC::::parseFunctionDeclaration):
(JSC::::parseExpressionOrLabelStatement):
(JSC::::parseExpressionStatement):
(JSC::::parseIfStatement):
(JSC::::parseExpression):
(JSC::::parseAssignmentExpression):
(JSC::::parseConditionalExpression):
(JSC::::parseBinaryExpression):
(JSC::::parseProperty):
(JSC::::parseObjectLiteral):
(JSC::::parseStrictObjectLiteral):
(JSC::::parseArrayLiteral):
(JSC::::parsePrimaryExpression):
(JSC::::parseArguments):
(JSC::::parseMemberExpression):
(JSC::::parseUnaryExpression):

  • parser/Parser.h:

(JSC::Parser::next):
(JSC::Parser::nextExpectIdentifier):
(JSC::Parser::tokenStart):
(JSC::Parser::tokenLine):
(JSC::Parser::tokenEnd):
(JSC::Parser::tokenLocation):
(Parser):
(JSC::Parser::getTokenName):
(JSC::::parse):

  • parser/ParserTokens.h:

(JSC::JSTokenLocation::JSTokenLocation):
(JSTokenLocation):
(JSToken):

  • parser/SourceProviderCacheItem.h:

(JSC::SourceProviderCacheItem::closeBraceToken):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::makeFunctionCallNode):
(JSC::SyntaxChecker::createCommaExpr):
(JSC::SyntaxChecker::makeAssignNode):
(JSC::SyntaxChecker::makePrefixNode):
(JSC::SyntaxChecker::makePostfixNode):
(JSC::SyntaxChecker::makeTypeOfNode):
(JSC::SyntaxChecker::makeDeleteNode):
(JSC::SyntaxChecker::makeNegateNode):
(JSC::SyntaxChecker::makeBitwiseNotNode):
(JSC::SyntaxChecker::createLogicalNot):
(JSC::SyntaxChecker::createUnaryPlus):
(JSC::SyntaxChecker::createVoid):
(JSC::SyntaxChecker::thisExpr):
(JSC::SyntaxChecker::createResolve):
(JSC::SyntaxChecker::createObjectLiteral):
(JSC::SyntaxChecker::createArray):
(JSC::SyntaxChecker::createNumberExpr):
(JSC::SyntaxChecker::createString):
(JSC::SyntaxChecker::createBoolean):
(JSC::SyntaxChecker::createNull):
(JSC::SyntaxChecker::createBracketAccess):
(JSC::SyntaxChecker::createDotAccess):
(JSC::SyntaxChecker::createRegExp):
(JSC::SyntaxChecker::createNewExpr):
(JSC::SyntaxChecker::createConditionalExpr):
(JSC::SyntaxChecker::createAssignResolve):
(JSC::SyntaxChecker::createFunctionExpr):
(JSC::SyntaxChecker::createFunctionBody):
(JSC::SyntaxChecker::createArgumentsList):
(JSC::SyntaxChecker::createPropertyList):
(JSC::SyntaxChecker::createFuncDeclStatement):
(JSC::SyntaxChecker::createBlockStatement):
(JSC::SyntaxChecker::createExprStatement):
(JSC::SyntaxChecker::createIfStatement):
(JSC::SyntaxChecker::createForLoop):
(JSC::SyntaxChecker::createForInLoop):
(JSC::SyntaxChecker::createEmptyStatement):
(JSC::SyntaxChecker::createVarStatement):
(JSC::SyntaxChecker::createReturnStatement):
(JSC::SyntaxChecker::createBreakStatement):
(JSC::SyntaxChecker::createContinueStatement):
(JSC::SyntaxChecker::createTryStatement):
(JSC::SyntaxChecker::createSwitchStatement):
(JSC::SyntaxChecker::createWhileStatement):
(JSC::SyntaxChecker::createWithStatement):
(JSC::SyntaxChecker::createDoWhileStatement):
(JSC::SyntaxChecker::createLabelStatement):
(JSC::SyntaxChecker::createThrowStatement):
(JSC::SyntaxChecker::createDebugger):
(JSC::SyntaxChecker::createConstStatement):
(JSC::SyntaxChecker::appendConstDecl):
(JSC::SyntaxChecker::createGetterOrSetterProperty):
(JSC::SyntaxChecker::combineCommaNodes):
(JSC::SyntaxChecker::operatorStackPop):

Source/WebCore:

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-08-05
Reviewed by Geoffrey Garen.

Since JSC can provide column info now, ScriptDebugServer can use it to support "Pretty Print"
debug mode. The related interfaces derived from JSC::Debugger was added a parameter.

No new tests for this patch.

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore):
(WebCore::ScriptDebugServer::updateCurrentStatementPosition):
(WebCore::ScriptDebugServer::hasBreakpoint):
(WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::callEvent):
(WebCore::ScriptDebugServer::atStatement):
(WebCore::ScriptDebugServer::returnEvent):
(WebCore::ScriptDebugServer::exception):
(WebCore::ScriptDebugServer::willExecuteProgram):
(WebCore::ScriptDebugServer::didExecuteProgram):
(WebCore::ScriptDebugServer::didReachBreakpoint):

  • bindings/js/ScriptDebugServer.h:

(ScriptDebugServer):

Source/WebKit/mac:

Unreviewed, just changed the interface according the changes of base class JSC::Debugger.

No JSC can provide the column info of current JS statement, mac porting can use it to support
"Pretty Print" debug mode.

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-08-05

  • WebView/WebScriptDebugger.h:

(WebScriptDebugger):

  • WebView/WebScriptDebugger.mm:

(WebScriptDebugger::callEvent):
(WebScriptDebugger::atStatement):
(WebScriptDebugger::returnEvent):
(WebScriptDebugger::exception):
(WebScriptDebugger::willExecuteProgram):
(WebScriptDebugger::didExecuteProgram):
(WebScriptDebugger::didReachBreakpoint):

7:45 PM Changeset in webkit [124728] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Change my email address for watch list.

  • Scripts/webkitpy/common/config/watchlist:
7:40 PM Changeset in webkit [124727] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectation updates.

  • platform/chromium/TestExpectations: assign bug for fast/text/international/bold-bengali.html
7:35 PM Changeset in webkit [124726] by macpherson@chromium.org
  • 2 edits in trunk/LayoutTests

Enable fast/css/variables tests by default for chromium.
https://bugs.webkit.org/show_bug.cgi?id=92610

Reviewed by Tony Chang.

Since variables are now compiled in by default on chromium there is no reason not to run these tests.

  • platform/chromium/TestExpectations:
6:50 PM Changeset in webkit [124725] by joone@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Marked the following test cases as known failures
tracked by the bug 93213, 93214, 92956, 93212.

fast/text/international/text-spliced-font.html
http/tests/loading/307-after-303-after-post.html
http/tests/security/contentSecurityPolicy/object-src-url-blocked.html
http/tests/incremental/slow-utf8-text.pl

  • platform/efl/TestExpectations:
6:36 PM Changeset in webkit [124724] by benjamin@webkit.org
  • 4 edits
    4 adds in trunk

Assert in checkValidity() in hashtable.h from WebGeolocationManager::didFailToDeterminePosition() when fetching http://html5demos.com/geo
https://bugs.webkit.org/show_bug.cgi?id=80386

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-08-05
Reviewed by Alexey Proskuryakov.

Source/WebKit2:

WebKit2's WebGeolocationManager was delivering events without accounting that each event
can modify the list of page that need delivery.
Any page can remove itself by invoking clearWatch() from the callback function. A page can also cause another
page to be removed.

This patch solves the issue by taking a copy of the list of page before delivery. Each page is
referenced as it can be deleted during the delivery.

Unfortunately, this cannot be tested due to missing features of WebKitTestRunner.

  • WebProcess/Geolocation/WebGeolocationManager.cpp:

(WebKit::WebGeolocationManager::didChangePosition):
(WebKit::WebGeolocationManager::didFailToDeterminePosition):

LayoutTests:

Add tests for clearing the Geolocation as a listener from a callback originated from the GeolocationController.

  • fast/dom/Geolocation/error-clear-watch-expected.txt: Added.
  • fast/dom/Geolocation/error-clear-watch.html: Added.
  • fast/dom/Geolocation/success-clear-watch-expected.txt: Added.
  • fast/dom/Geolocation/success-clear-watch.html: Added.
  • platform/wk2/Skipped:
6:22 PM Changeset in webkit [124723] by macpherson@chromium.org
  • 3 edits
    2 adds in trunk

Fix null pointer dereference when CSSParser::sinkFloatingValueList() returns null and is passed to storeVariableDeclaration().
https://bugs.webkit.org/show_bug.cgi?id=92461

Reviewed by Eric Seidel.

Source/WebCore:

Invalid variable lists could cause CSSGrammar.y to pass null as value to storeVariableDeclaration, so we now check for null.

Test: fast/css/variables/invalid-value-list-crash.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::storeVariableDeclaration):

LayoutTests:

Test case that causes CSSParser::storeVariableDeclaration to be passed a null value.

  • fast/css/variables/invalid-value-list-crash-expected.txt: Added.
  • fast/css/variables/invalid-value-list-crash.html: Added.
6:19 PM Changeset in webkit [124722] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Updte text expectation.

Remove an entry for media/media-fragments/TC0010-TC0019.html.
It doesn't exist any more.

  • platform/chromium/TestExpectations:
6:12 PM Changeset in webkit [124721] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium-win] Use the default locale only if the browser locale matches to it
https://bugs.webkit.org/show_bug.cgi?id=93083

Reviewed by Hajime Morita.

For a calendar picker, we have used month names and day-of-week names
obtained from the OS default locale. However, the year-month format and
[Today] [Clear] labels are decided with the browser locale. It made
calendar pickers with mixed languages.

To make calendar pickers with a single language, we use the OS default
locale only if the browser locale matches to it.
This patch changes the behavior for Windows Vista or later. No change
for Windows XP because of API support limitation.

No new tests. Behavior for locale setting is not testable in WebKit.

  • platform/text/LocaleWin.cpp:

(determineCurrentLCID):
Added. If the system has no LocaleNameToLCID API, just returns
LOCALE_USER_DEFAULT. Otherwise, if the system locale matches to the
browser locale, it returns LOCALE_USER_DEFAULT, otherwise it returns the
LCID for the browser locale.
(WebCore::LocaleWin::currentLocale): Uses determineCurrentLCID().

6:09 PM FeatureFlags edited by tkent@chromium.org
ANIMATION_API (diff)
2:03 PM Changeset in webkit [124720] by Antti Koivisto
  • 19 edits in trunk/Source/WebCore

Don't reuse cached stylesheet with failed or canceled resource loads
https://bugs.webkit.org/show_bug.cgi?id=93203

Reviewed by Simon Fraser.

1) Go to apple.com
2) Reload repeatedly

Eventually you can get into state where some images don't load.

The problem is that a cached stylesheet may end up pointing to image resources that have been canceled (by the reload).
If this happens they stay in the canceled state even when the stylesheet is applied to a new document.

Fix by checking if all loads are complete (or pending) when restoring a cached stylesheet. The sheet is only used
if there are no failed or canceled loads. There are potential more sophisticated fixes but this is simple and safe.
Walking the sheet is fast and since it is only done on cache restore the cost is minimal.

No regression test yet though the new code does get exercised by the existing tests.

  • css/CSSCrossfadeValue.cpp:

(WebCore::CSSCrossfadeValue::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSCrossfadeValue.h:

(CSSCrossfadeValue):

  • css/CSSFontFaceSrcValue.cpp:

(WebCore::CSSFontFaceSrcValue::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSFontFaceSrcValue.h:

(CSSFontFaceSrcValue):

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSImageSetValue.h:

(CSSImageSetValue):

  • css/CSSImageValue.cpp:

(WebCore::CSSImageValue::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSImageValue.h:

(CSSImageValue):

  • css/CSSValue.cpp:

(WebCore::CSSValue::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSValue.h:

(CSSValue):

  • css/CSSValueList.cpp:

(WebCore::CSSValueList::hasFailedOrCanceledSubresources):
(WebCore):

  • css/CSSValueList.h:

(CSSValueList):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::hasFailedOrCanceledSubresources):
(WebCore):

  • css/StylePropertySet.h:

(StylePropertySet):

  • css/StyleSheetContents.cpp:

(WebCore::childRulesHaveFailedOrCanceledSubresources):
(WebCore):
(WebCore::StyleSheetContents::hasFailedOrCanceledSubresources):

  • css/StyleSheetContents.h:

(StyleSheetContents):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::restoreParsedStyleSheet):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::loadFailedOrCanceled):

1:55 PM Changeset in webkit [124719] by Patrick Gansterer
  • 3 edits in trunk/Source/WebKit/win

[WIN] Use sizeof() for cbWndExtra values
https://bugs.webkit.org/show_bug.cgi?id=93179

Reviewed by Eric Carlson.

Using sizof() instead of hardcoding the pointer size of
the 32bit platform allows us to use the code on 64bit too.

  • FullscreenVideoController.cpp:

(FullscreenVideoController::registerHUDWindowClass):

  • WebView.cpp:

(WebView::registerWebViewWindowClass):

1:27 PM CoordinatedGraphicsSystem.svg attached to CoordinatedGraphicsSystem by kenneth@webkit.org
11:40 AM Changeset in webkit [124718] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

[V8] Move V8Proxy methods that set DOM attributes/callbacks to V8Binding
https://bugs.webkit.org/show_bug.cgi?id=93103

Reviewed by Adam Barth.

To remove V8Proxy, we can move V8Proxy methods that set DOM
attributes/callbacks to V8Binding.

No tests. No change in behavior.

  • bindings/v8/V8Binding.cpp:

(WebCore::batchConfigureAttributes):
(WebCore):
(WebCore::batchConfigureCallbacks):
(WebCore::batchConfigureConstants):

  • bindings/v8/V8Binding.h:

(BatchedAttribute):
(WebCore):
(WebCore::configureAttribute):
(BatchedConstant):
(BatchedCallback):

  • bindings/v8/V8Proxy.cpp:
  • bindings/v8/V8Proxy.h:

(WebCore):

9:28 AM Changeset in webkit [124717] by fischman@chromium.org
  • 5 edits in trunk/LayoutTests

media/video-poster-blocked-by-willsendrequest.html isn't blocking poster on willsendrequest
https://bugs.webkit.org/show_bug.cgi?id=92824

Reviewed by Ryosuke Niwa.

Chromium/Mac/GTK DRTs appear not to clear the cache between tests so append a unique query-string param to avoid a cache hit in this test.
Filed 93195 for the chromium port, Mac has 82976, and GTK has 79760.

  • media/video-poster-blocked-by-willsendrequest.html:
  • platform/chromium/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/Skipped:
8:39 AM Changeset in webkit [124716] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Remove V8Proxy::registerExtensionWithV8()
https://bugs.webkit.org/show_bug.cgi?id=93115

Reviewed by Adam Barth.

V8Proxy::registerExtensionWithV8() is used by V8Proxy::registerExtension()
only. We can remove the redundant method.

In a follow-up patch, I will implement V8Proxy::registerExtentionIfNeeded()
and remove registerExtensionWithV8() and registerExtension().

No tests. No change in behavior.

  • bindings/v8/V8Proxy.cpp:

(WebCore::staticExtensionsList): Just moved to near related methods.
(WebCore):
(WebCore::V8Proxy::extensions):
(WebCore::V8Proxy::registerExtension):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

8:37 AM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
(diff)
8:37 AM Changeset in webkit [124715] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Remove unused enum and typedefs in V8Proxy
https://bugs.webkit.org/show_bug.cgi?id=93105

Reviewed by Adam Barth.

In preparation for removing V8Proxy, we can remove unused enum
and typedefs in V8Proxy.

No tests. No change in behavior.

  • bindings/v8/V8Proxy.cpp:
  • bindings/v8/V8Proxy.h:

(WebCore::throwError):

Aug 4, 2012:

10:55 PM Changeset in webkit [124714] by mitz@apple.com
  • 4 edits in trunk/Source/WebCore

<rdar://problem/11875795> REGRESSION (tiled drawing): Page’s scroll bars flash with each character you type in a textarea (affects Wikipedia and YouTube)
https://bugs.webkit.org/show_bug.cgi?id=91348

Reviewed by Andy Estes.

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollPositionChanged): Changed to call notifyContentAreaScrolled()
only if the scroll position after the change differs from what it was before the change.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrollPosition): Added an override of this ScrollableArea function.

  • rendering/RenderListBox.h:
9:31 PM WikiStart edited by glenn@skynav.com
note outdated topics (diff)
8:23 PM Changeset in webkit [124713] by fischman@chromium.org
  • 6 edits in trunk

HTMLMediaElement may fire the seeked event before currentTime reaches the seek time
https://bugs.webkit.org/show_bug.cgi?id=92881

Reviewed by Eric Carlson.

Source/WebCore:

Testing provided by media/video-seek-past-end-paused.html, hopefully demonstrating lack of redness on all ports/bots this time.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerTimeChanged): don't finishSeek() until the media player is no longer seeking.

LayoutTests:

This is mostly a re-land of r114005, alongside a fix for HTMLMediaElement.

  • media/video-seek-past-end-paused-expected.txt:
  • media/video-seek-past-end-paused.html:
  • platform/chromium/TestExpectations:
7:30 PM Changeset in webkit [124712] by thakis@chromium.org
  • 2 edits in trunk/Tools

[Chromium Mac] Tests are exiting early due to failures to load missingImage.png
https://bugs.webkit.org/show_bug.cgi?id=93186

Reviewed by Ryosuke Niwa.

Add missingImage.png to DumpRenderTree.app's Resource folder.
Depends on http://crrev.com/150037 rolling into webkit first.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
7:13 PM Changeset in webkit [124711] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-04

  • DEPS:
6:24 PM Changeset in webkit [124710] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Another test fix after r124708.

  • platform/mac/editing/selection/word-thai.html:
6:21 PM Changeset in webkit [124709] by rniwa@webkit.org
  • 2 edits
    1 delete in trunk/LayoutTests

Rebaseline fast/css-grid-layout/place-cell-by-index.html on Qt after r124671
since the test now passes (yay!).

Skip a test added by r124673 on Qt since it uses gestureTap (tracked by the bug 66272).

  • platform/qt/Skipped:
  • platform/qt/fast/css-grid-layout: Removed.
  • platform/qt/fast/css-grid-layout/place-cell-by-index-expected.txt: Removed.
5:44 PM Changeset in webkit [124708] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Another test fixes after r124705. Revert erroneous changes in r124707 using binary editor.

  • fast/parser/test-unicode-characters-in-attribute-name.html:
  • http/tests/misc/submit-post-in-utf16be.html:
5:30 PM Changeset in webkit [124707] by rniwa@webkit.org
  • 24 edits in trunk/LayoutTests

Test fixes after r124705. There were still few tests that used layoutTestController because
they were encoded in UTF-16 and UTF-32 and neither spot light nor grep could search through.

  • editing/pasteboard/copy-paste-float.html:
  • editing/selection/thai-word-at-document-end.html:
  • fast/css/hexColor-isDigit-assert.html:
  • fast/encoding/bom-in-content-utf16.html:
  • fast/encoding/utf-32-big-endian-bom.html:
  • fast/encoding/utf-32-big-endian-nobom.xml:
  • fast/encoding/utf-32-little-endian-bom.html:
  • fast/encoding/utf-32-little-endian-nobom.xml:
  • fast/parser/test-unicode-characters-in-attribute-name.html:
  • fast/ruby/text-emphasis.html:
  • fast/text/offsetForPosition-cluster-at-zero.html:
  • http/tests/misc/submit-get-in-utf16be.html:
  • http/tests/misc/submit-get-in-utf16le.html:
  • http/tests/misc/submit-get-in-utf32be.html:
  • http/tests/misc/submit-get-in-utf32le.html:
  • http/tests/misc/submit-post-in-utf16be.html:
  • http/tests/misc/submit-post-in-utf16le.html:
  • http/tests/misc/submit-post-in-utf32be.html:
  • http/tests/misc/submit-post-in-utf32le.html:
  • http/tests/misc/url-in-utf16be.html:
  • http/tests/misc/url-in-utf16le.html:
  • http/tests/misc/url-in-utf32be.html:
  • http/tests/misc/url-in-utf32le.html:
4:49 PM Changeset in webkit [124706] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Tried to fix the Qt Windows build after r124654.

  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::glyphForCharacter): Enclosed this function in
#if !(PLATFORM(QT) && !HAVE(QRAWFONT)).

3:58 PM Changeset in webkit [124705] by rniwa@webkit.org
  • 10 edits in trunk/Tools

Stop exposing window.layoutTestController in layout tests in favor of window.testRunner
https://bugs.webkit.org/show_bug.cgi?id=93173

Reviewed by Adam Barth.

Don't expose window.layoutTestController since all layout tests use window.testRunner
instead of window.layoutTestController as of r124685.

We can safely rename classes and files to use TestRunner once this patch is landed.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::makeWindowObject):

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:

(notifyTestCompletion):

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

(PluginTest::waitUntilDone):
(PluginTest::notifyDone):

  • DumpRenderTree/TestNetscapePlugIn/Tests/mac/ConvertPoint.cpp:

(ConvertPoint::NPP_SetWindow):

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(handleEventCarbon):
(handleEventCocoa):
(handleEventWin):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::bindJSObjectsToWindow):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::initJSObjects):

  • Scripts/bencher:
  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::makeWindowObject):

3:49 PM Changeset in webkit [124704] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Refactor SubframeLoader::requestPlugin/loadPlugin for clarity.
https://bugs.webkit.org/show_bug.cgi?id=93138

Patch by Mike West <mkwst@chromium.org> on 2012-08-04
Reviewed by Adam Barth.

SubframeLoader::requestPlugin and SubframeLoader::loadPlugin both do a
variety of checks to determine whether or not a specific resource ought
to instantiate a plugin in a specific context. r124636[1] moved one of
those checks, but there doesn't seem to be a clear way to determine
which checks should be performed where.

This patch refactors the checks out of those two methods for clarity,
moving them all into a new method: SubframeLoader::pluginIsLoadable.
That method requires the resource URL and MIME type, as well as the
object or embed element that owns this bit of rendering. The URL
and type are used directly to determine availability, while the element
is currently used only to create a renderer on which
setPluginUnavailabilityReason can be called if the plugin is blocked by
Content Security Policy.

This patch introduces no new tests, as it shouldn't change the code's
behavior: it should be a straightforward refactoring without web-visible
side-effects.

[1]: http://trac.webkit.org/changeset/124636

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::pluginIsLoadable):

A new method that extracts the various 'Should we allow this plugin
in this context?' checks from requestPlugin and loadPlugin into ine
location, rather than spreading them across both.

(WebCore):
(WebCore::SubframeLoader::requestPlugin):
(WebCore::SubframeLoader::loadPlugin):

  • loader/SubframeLoader.h:

(SubframeLoader):

3:08 PM Changeset in webkit [124703] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: filteredItemSelectionDialog.css has wrong selector for highlights
https://bugs.webkit.org/show_bug.cgi?id=93168

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-08-04
Reviewed by Pavel Feldman.

Selector required span to be a child, but highlights are themselves span. Used descendent selector.
No new tests: I'll make one next week, to go with bug 93166

  • inspector/front-end/filteredItemSelectionDialog.css:

(.js-outline-dialog > .container > div.item span.highlight):

2:12 PM Changeset in webkit [124702] by rniwa@webkit.org
  • 8 edits in trunk/PerformanceTests

Use testRunner instead of layoutTestController in performance tests
https://bugs.webkit.org/show_bug.cgi?id=93184

Reviewed by Adam Barth.

  • Animation/balls.html:
  • Dromaeo/resources/dromaeorunner.js:
  • inspector/console-300-lines.html:
  • inspector/inspector-startup-time.html:
  • inspector/network-append-30-requests.html.broken:
  • inspector/show-panel.html.broken:
  • resources/runner.js:

(PerfTestRunner.logInfo):
(PerfTestRunner.initAndStartLoop):

12:07 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
12:04 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
11:24 AM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
Applies name changes in trunk. (diff)
10:52 AM Changeset in webkit [124701] by noam.rosenthal@nokia.com
  • 29 edits
    14 moves
    2 adds in trunk/Source

[Qt] UI_SIDE_COMPOSITING code has confusing names
https://bugs.webkit.org/show_bug.cgi?id=93164

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Renamed and consolidated code guarded under UI_SIDE_COMPOSITING, now under
USE(COORDINATED_GRAPHICS) guard and CoordinatedGraphics folders.

  • CMakeLists.txt:
  • DerivedSources.pri:
  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC):

  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebLayerTreeInfo.cpp:
  • Shared/WebLayerTreeInfo.h:
  • Target.pri:
  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::updatePaintNode):

  • UIProcess/API/qt/raw/qrawwebview.cpp:

(QRawWebView::paint):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/texmap/LayerBackingStore.cpp.
  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/texmap/LayerBackingStore.h.
  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.cpp.
  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.h.
  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.messages.in.
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp: Renamed from Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp.
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h: Renamed from Source/WebKit2/UIProcess/WebLayerTreeRenderer.h.
  • UIProcess/DrawingAreaProxy.cpp:

(WebKit):

  • UIProcess/DrawingAreaProxy.h:

(DrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit):

  • UIProcess/DrawingAreaProxyImpl.h:

(DrawingAreaProxyImpl):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):

  • UIProcess/qt/QtWebPageSGNode.cpp:

(WebKit::ContentsSGNode::ContentsSGNode):
(WebKit::ContentsSGNode::layerTreeRenderer):
(ContentsSGNode):
(WebKit::QtWebPageSGNode::setRenderer):

  • UIProcess/qt/QtWebPageSGNode.h:

(WebKit):
(QtWebPageSGNode):

  • WebKit2.pri:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::scheduleAnimation):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp.
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h.
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/TiledBackingStoreRemoteTile.cpp.
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h: Renamed from Source/WebKit2/WebProcess/WebPage/TiledBackingStoreRemoteTile.h.
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp.
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h.
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.messages.in.
  • WebProcess/WebPage/DrawingArea.h:

(DrawingArea):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit):

  • WebProcess/WebPage/DrawingAreaImpl.h:

(DrawingAreaImpl):

  • WebProcess/WebPage/LayerTreeHost.h:

(LayerTreeHost):

  • WebProcess/WebPage/UpdateAtlas.cpp:
  • WebProcess/WebPage/UpdateAtlas.h:
  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::WebProcessMainQt):

Source/WTF:

Renamed UI_SIDE_COMPOSITING to COORDINATED_GRAPHICS.

  • wtf/Platform.h:
7:23 AM Changeset in webkit [124700] by loislo@chromium.org
  • 2 edits in trunk/Tools

Unreviewed: Web Inspector: extend instrumenting methods set in ReportMemoryUsage clang plugin
Three methods addString, addVectorPtr and addInstrumentedVectorPtr were added to the list of instrumentation methods.

  • clang/ReportMemoryUsagePlugin/ReportMemoryUsage.cpp:

(clang::ReportMemoryUsageConsumer::ReportMemoryUsageConsumer):

5:33 AM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
5:31 AM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
5:13 AM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
4:21 AM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
4:13 AM Changeset in webkit [124699] by robert@webkit.org
  • 12 edits
    2 adds in trunk/LayoutTests

Rebaseline Chromium results after r124697

Unreviewed, gardening.

  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • platform/chromium-mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt: Added.
  • platform/chromium-win/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • platform/chromium/TestExpectations:
3:29 AM Changeset in webkit [124698] by commit-queue@webkit.org
  • 4 edits
    2 moves in trunk/Source/WebKit2

[WK2] Move WebIntentData from Shared to UIProcess
https://bugs.webkit.org/show_bug.cgi?id=93175

Patch by Christophe Dumez <Christophe Dumez> on 2012-08-04
Reviewed by Kenneth Rohde Christiansen.

Move WebIntentData from Shared to UIProcess to
prepare for MessagePorts support in WK2.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • UIProcess/WebIntentData.cpp: Renamed from Source/WebKit2/Shared/WebIntentData.cpp.

(WebKit):
(WebKit::WebIntentData::WebIntentData):
(WebKit::WebIntentData::data):
(WebKit::WebIntentData::suggestions):
(WebKit::WebIntentData::extra):
(WebKit::WebIntentData::extras):

  • UIProcess/WebIntentData.h: Renamed from Source/WebKit2/Shared/WebIntentData.h.

(WebKit):
(WebIntentData):
(WebKit::WebIntentData::create):
(WebKit::WebIntentData::~WebIntentData):
(WebKit::WebIntentData::action):
(WebKit::WebIntentData::payloadType):
(WebKit::WebIntentData::service):
(WebKit::WebIntentData::store):
(WebKit::WebIntentData::type):

2:59 AM Changeset in webkit [124697] by robert@webkit.org
  • 16 edits
    28 adds in trunk

CSS 2.1 failure: overflow-applies-to-001 fails
https://bugs.webkit.org/show_bug.cgi?id=93148

Reviewed by Eric Seidel.

Source/WebCore:

Overflow no longer applies to table-rows or table-row-groups, it only applies
to block containers: http://www.w3.org/TR/CSS21/visufx.html#overflow

Tests: css2.1/20110323/overflow-applies-to-001.htm

css2.1/20110323/overflow-applies-to-002.htm
css2.1/20110323/overflow-applies-to-003.htm
css2.1/20110323/overflow-applies-to-004.htm
css2.1/20110323/overflow-applies-to-005.htm
css2.1/20110323/overflow-applies-to-006.htm
css2.1/20110323/overflow-applies-to-007.htm
css2.1/20110323/overflow-applies-to-008.htm
css2.1/20110323/overflow-applies-to-009.htm
css2.1/20110323/overflow-applies-to-010.htm
css2.1/20110323/overflow-applies-to-012.htm
css2.1/20110323/overflow-applies-to-013.htm
css2.1/20110323/overflow-applies-to-014.htm
css2.1/20110323/overflow-applies-to-015.htm

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateBoxModelInfoFromStyle):

LayoutTests:

  • css2.1/20110323/overflow-applies-to-001-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-001.htm: Added.
  • css2.1/20110323/overflow-applies-to-002-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-002.htm: Added.
  • css2.1/20110323/overflow-applies-to-003-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-003.htm: Added.
  • css2.1/20110323/overflow-applies-to-004-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-004.htm: Added.
  • css2.1/20110323/overflow-applies-to-005-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-005.htm: Added.
  • css2.1/20110323/overflow-applies-to-006-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-006.htm: Added.
  • css2.1/20110323/overflow-applies-to-007-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-007.htm: Added.
  • css2.1/20110323/overflow-applies-to-008-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-008.htm: Added.
  • css2.1/20110323/overflow-applies-to-009-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-009.htm: Added.
  • css2.1/20110323/overflow-applies-to-010-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-010.htm: Added.
  • css2.1/20110323/overflow-applies-to-012-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-012.htm: Added.
  • css2.1/20110323/overflow-applies-to-013-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-013.htm: Added.
  • css2.1/20110323/overflow-applies-to-014-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-014.htm: Added.
  • css2.1/20110323/overflow-applies-to-015-expected.html: Added.
  • css2.1/20110323/overflow-applies-to-015.htm: Added.

Tests from the CSS test suite.

  • fast/css/nested-layers-with-hover.html: Made this dumpAsText/waitUntilDone - the test relies on a simulated hover so

wasn't meaningful as a rendertree.

  • platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • platform/chromium-linux/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • platform/chromium-win/fast/css/nested-layers-with-hover-expected.txt:
  • platform/chromium-win/tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
  • platform/chromium-win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:

These are all progressions and now render the same as FF and Opera.

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
2:01 AM Changeset in webkit [124696] by commit-queue@webkit.org
  • 6 edits in trunk/LayoutTests

Unskip http/tests/security/contentSecurityPolicy tests on various ports.
https://bugs.webkit.org/show_bug.cgi?id=93178

Patch by Mike West <mkwst@chromium.org> on 2012-08-04
Reviewed by Adam Barth.

After landing r124636, the Content Security Policy object-src tests
have greened up on the Chromium port. I expect the other ports to be
equally happy. Let's reenable the tests to find out.

  • platform/efl/TestExpectations:
  • platform/qt-5.0-wk2/Skipped:
  • platform/qt-arm/Skipped:
  • platform/qt-mac/Skipped:
  • platform/qt/Skipped:
1:13 AM Changeset in webkit [124695] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

BindingSecurity::shouldAllowAccessToNode shouldn't detour through Frame to find the node's document
https://bugs.webkit.org/show_bug.cgi?id=93140

Reviewed by Eric Seidel.

Previously, shouldAllowAccessToNode took a detour through the Frame to
find the Document associated with a given Node. That's crazy! Nodes
already know their documents. This patch removes the detour.

It's theoretically possible that this patch changes behavior in the
case where the Frame is 0, but I couldn't find any situations in which
we call this function on nodes in inactive documents because the
typical way you find a node worth checking security on is via
a JavaScript window object.

  • bindings/generic/BindingSecurity.cpp:

(WebCore::canAccessDocument):
(WebCore::BindingSecurity::shouldAllowAccessToNode):
(WebCore::BindingSecurity::allowSettingFrameSrcToJavascriptUrl):

12:49 AM Changeset in webkit [124694] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Rebaseline after r124691.

  • editing/deleting/smart-editing-disabled-expected.txt:
12:31 AM Changeset in webkit [124693] by abarth@webkit.org
  • 7 edits in trunk/Source/WebCore

[V8] Re-wire "target" half of the same-origin security check through Document rather than DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=93079

Reviewed by Eric Seidel.

Before this patch, we were traversing from Nodes to Frames to
DOMWindows to SecurityOrigins when determing the "target" of an
operation for the same-origin policy security check. Rather than
detouring through DOMWindow, these security checks should operate in
terms of ScriptExecutionContexts (aka Documents) because that's the
canonical place we store SecurityOrigin objects.

A future patch will re-wire the "active" part of the security check to
use ScriptExecutionContexts as well and we'll be able to remove the
extra copy of SecurityOrigin that we keep in DOMWindow.

  • bindings/generic/BindingSecurity.cpp:

(WebCore::canAccessDocument):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):

  • bindings/v8/BindingState.cpp:

(WebCore::immediatelyReportUnsafeAccessTo):

  • bindings/v8/BindingState.h:

(WebCore):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::reportUnsafeJavaScriptAccess):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

12:22 AM Changeset in webkit [124692] by rniwa@webkit.org
  • 271 edits in trunk/LayoutTests

Use testRunner instead of layoutTestController in tests still found to be using layoutTestController by grep
https://bugs.webkit.org/show_bug.cgi?id=93177

Reviewed by Adam Barth.

After this patch, neither grep nor spot light finds any tests that use layoutTestController
and we can safely land the patch on the bug 93173.

  • editing/pasteboard/input-with-visibility-hidden.html:
  • fast/encoding/resources/%25%u0435 0 %xx%%%ulike.html:
  • fast/encoding/script-in-head.html:
  • fast/encoding/tag-in-title.html:
  • fast/encoding/tag-name-digit.html:
  • fast/encoding/url-host-name-non-ascii.html:
  • fast/encoding/xml-charset-utf16.html:
  • fast/encoding/xml-utf-8-default.xml:
  • fast/encoding/yahoo-mail.html:
  • fast/encoding/yentest.html:
  • fast/encoding/yentest2.html:
  • fast/forms/datalist/input-appearance-range-with-datalist-zoomed.html:
  • fast/forms/datalist/input-appearance-range-with-datalist.html:
  • fast/forms/datalist/update-range-with-datalist.html:
  • fast/forms/input-set-composition-scroll.html:
  • fast/harness/internals-object.html:
  • fast/harness/page-cache-crash-on-data-urls.html:
  • fast/harness/perftests/perf-runner-compute-statistics.html:
  • fast/harness/resources/modal-dialog.html:
  • fast/harness/show-modal-dialog.html:
  • fast/harness/user-preferred-language.html:
  • fast/multicol/hit-test-end-of-column.html:
  • fast/multicol/hit-test-gap-between-pages-flipped.html:
  • fast/multicol/hit-test-gap-between-pages.html:
  • fast/multicol/hit-test-gap-block-axis.html:
  • fast/notifications/notifications-event-listener-crash.html:
  • fast/parser/foster-parent.html:
  • fast/ruby/after-doesnt-crash.html:
  • fast/ruby/before-block-doesnt-crash.html:
  • fast/ruby/before-doesnt-crash.html:
  • fast/ruby/before-table-doesnt-crash.html:
  • fast/ruby/generated-before-counter-doesnt-crash.html:
  • fast/ruby/modify-positioned-ruby-text-crash.html:
  • fast/ruby/parse-rp.html:
  • fast/ruby/ruby-illegal-1.html:
  • fast/ruby/ruby-illegal-2.html:
  • fast/ruby/ruby-illegal-3.html:
  • fast/ruby/ruby-illegal-4.html:
  • fast/ruby/ruby-illegal-5.html:
  • fast/ruby/ruby-illegal-6.html:
  • fast/ruby/ruby-illegal-7.html:
  • fast/ruby/ruby-illegal-combined.html:
  • fast/ruby/ruby-overhang-crash.html:
  • fast/ruby/ruby-remove-no-base.html:
  • fast/ruby/ruby-remove.html:
  • fast/ruby/ruby-text-indent.html:
  • fast/ruby/rubyDOM-insert-rt-block-1.html:
  • fast/ruby/rubyDOM-insert-rt-block-2.html:
  • fast/ruby/rubyDOM-insert-rt-block-3.html:
  • fast/ruby/rubyDOM-remove-rt-block-1.html:
  • fast/ruby/rubyDOM-remove-rt-block-2.html:
  • fast/ruby/rubyDOM-remove-rt-block-3.html:
  • fast/runin/crash-when-reparent-sibling.html:
  • fast/runin/nonblock-runin.html:
  • fast/runin/progress-run-in-crash.html:
  • fast/runin/run-in-layer-not-removed-crash.html:
  • fast/runin/runin-continuations-crash.html:
  • fast/runin/runin-reparent-crash.html:
  • fast/runin/select-runin.html:
  • fullscreen/empty-anonymous-block-continuation-crash.html:
  • http/tests/misc/SVGFont-delayed-load.html:
  • http/tests/misc/resources/a success.html:
  • http/tests/misc/resources/content-iframe.html:
  • http/tests/misc/resources/iframe-policy-1.html:
  • http/tests/misc/resources/iframe-policy-2.html:
  • http/tests/misc/resources/isindex-with-no-form-base-href-submit.html:
  • http/tests/misc/resources/isindex-with-no-form-base-href.html:
  • http/tests/misc/resources/redirect-to-external-url-iframe.html:
  • http/tests/misc/resources/slow-preload-cancel-1.html:
  • http/tests/misc/resources/success-notify-done.html:
  • http/tests/misc/resources/webtiming-cross-origin-and-back1.html:
  • http/tests/misc/script-500.html:
  • http/tests/misc/script-no-store.html:
  • http/tests/misc/set-window-opener-to-null.html:
  • http/tests/misc/single-character-pi-stylesheet.xhtml:
  • http/tests/misc/slow-loading-image-in-pattern.html:
  • http/tests/misc/slow-preload-cancel.html:
  • http/tests/misc/submit-post-keygen.html:
  • http/tests/misc/svg-image-load-outlives-gc-without-crashing.html:
  • http/tests/misc/text-refresh.html:
  • http/tests/misc/timer-vs-loading.html:
  • http/tests/misc/uncacheable-script-repeated.html:
  • http/tests/misc/unloadable-script.html:
  • http/tests/misc/video-poster-image-load-outlives-gc-without-crashing.html:
  • http/tests/misc/webtiming-origins.html:
  • http/tests/misc/will-send-request-returns-null-on-redirect.html:
  • http/tests/misc/willCacheResponse-delegate-callback.html:
  • http/tests/misc/window-dot-stop.html:
  • http/tests/misc/window-open-then-write.html:
  • http/tests/misc/write-from-dom-script.html:
  • http/tests/misc/write-while-waiting.html:
  • http/tests/misc/xslt-bad-import.html:
  • http/tests/multipart/invalid-image-data-standalone.html:
  • http/tests/multipart/invalid-image-data.html:
  • http/tests/multipart/multipart-wait-before-boundary.html:
  • http/tests/multipart/stop-crash.html:
  • http/tests/navigation/:
  • http/tests/plugins/create-v8-script-objects.html:
  • http/tests/plugins/cross-frame-object-access.html:
  • http/tests/plugins/get-url.html:
  • http/tests/plugins/geturlnotify-from-npp-destroystream.html:
  • http/tests/plugins/interrupted-get-url.html:
  • http/tests/plugins/local-geturl-from-remote.html:
  • http/tests/plugins/npapi-response-headers.html:
  • http/tests/plugins/plugin-document-has-focus.html:
  • http/tests/plugins/post-url-file.html:
  • http/tests/plugins/resources/interrupted-get-url-success.html:
  • http/tests/plugins/resources/third-party-cookie-accept-policy-iframe.html:
  • http/tests/plugins/third-party-cookie-accept-policy.html:
  • http/tests/resources/notify-done.html:
  • http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed.html:
  • http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html:
  • http/tests/ssl/referer-301.html:
  • http/tests/ssl/referer-303.html:
  • http/tests/storage/callbacks-are-called-in-correct-context.html:
  • http/tests/storage/resources/callbacks-are-called-in-correct-context-second-frame.html:
  • http/tests/svg/change-id-with-pending-resources.html:
  • http/tests/svg/tref-adoptNode-crash.html:
  • http/tests/uri/assign-path-with-leading-slash.html:
  • http/tests/uri/assign-path-without-leading-slash.html:
  • http/tests/uri/escaped-entity.html:
  • http/tests/uri/resolve-encoding-relative.html:
  • http/tests/uri/resources/assign-path-landing.html:
  • http/tests/uri/utf8-path.html:
  • http/tests/webarchive/cross-origin-stylesheet-crash-expected.webarchive:
  • http/tests/webarchive/cross-origin-stylesheet-crash.html:
  • http/tests/webarchive/test-css-url-encoding-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-shift-jis-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-shift-jis.html:
  • http/tests/webarchive/test-css-url-encoding-utf-8-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-utf-8.html:
  • http/tests/webarchive/test-css-url-encoding.html:
  • http/tests/webarchive/test-preload-resources-expected.webarchive:
  • http/tests/webarchive/test-preload-resources.html:
  • http/tests/webfont/fallback-font-while-loading.html:
  • http/tests/websocket/resources/server-failed-to-start.html:
  • http/tests/xmlhttprequest/reentrant-cancel.html:
  • inspector/device-orientation-success.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/permissionclient/image-permissions.html:
  • platform/chromium/permissionclient/plugin-permission.html:
  • platform/chromium/permissionclient/script-permissions.html:
  • platform/chromium/permissionclient/storage-permission.html:
  • platform/gtk/TestExpectations:
  • platform/mac/editing/input/edit-dictated-text-with-alternative.html:
  • platform/mac/editing/input/insert-dictated-text.html:
  • platform/mac/fast/AppleScript/001.html:
  • platform/mac/fast/AppleScript/array.html:
  • platform/mac/fast/AppleScript/date.html:
  • platform/mac/fast/objc/dom-html-select-activate.html:
  • platform/mac/fast/objc/longlongTest.html:
  • platform/qt/view/fixed-layout-size.html:
  • platform/win/inverted-colors/non-composited.html:
  • platform/win/svg/W3C-SVG-1.1/resources/run-webkit-tests-epilogue.html:
  • platform/win/svg/W3C-SVG-1.1/resources/run-webkit-tests-prologue.html:
  • webarchive/loading/resources/javascript-url-iframe-crash.webarchive:

Aug 3, 2012:

11:26 PM Changeset in webkit [124691] by rniwa@webkit.org
  • 96 edits in trunk/LayoutTests

Some tests still refer to layoutTestController instead of testRunner
https://bugs.webkit.org/show_bug.cgi?id=93176

Reviewed by Adam Barth.

Apparently there are still some tests referring to layoutTestController.
Removed all of them as found by spotlight.

  • batterystatus/script-tests/event-after-navigation.js:
  • editing/deleting/smart-editing-disabled.html:
  • fast/dom/Geolocation/script-tests/callback-exception.js:
  • fast/dom/Geolocation/script-tests/clear-watch-invalid-id-crash.js:
  • fast/dom/Geolocation/script-tests/disconnected-frame-permission-denied.js:
  • fast/dom/Geolocation/script-tests/error.js:
  • fast/dom/Geolocation/script-tests/maximum-age.js:
  • fast/dom/Geolocation/script-tests/multiple-requests.js:
  • fast/dom/Geolocation/script-tests/no-page-cache.js:
  • fast/dom/Geolocation/script-tests/permission-denied-already-clear-watch.js:
  • fast/dom/Geolocation/script-tests/permission-denied-already-error.js:
  • fast/dom/Geolocation/script-tests/permission-denied-already-success.js:
  • fast/dom/Geolocation/script-tests/permission-denied-stops-watches.js:
  • fast/dom/Geolocation/script-tests/permission-denied.js:
  • fast/dom/Geolocation/script-tests/position-string.js:
  • fast/dom/Geolocation/script-tests/reentrant-error.js:
  • fast/dom/Geolocation/script-tests/reentrant-permission-denied.js:
  • fast/dom/Geolocation/script-tests/reentrant-success.js:
  • fast/dom/Geolocation/script-tests/success.js:
  • fast/dom/Geolocation/script-tests/timeout.js:
  • fast/dom/Geolocation/script-tests/watch.js:
  • fast/dom/Geolocation/script-tests/window-close-crash.js:
  • fast/encoding/resources/char-encoding-utils.js:

(testsDone):

  • fast/encoding/resources/dynamic-load-target.js:
  • fast/encoding/resources/invalid-xml.js:

(runNextTest):

  • fast/encoding/resources/parser-tests.js:

(dotest.window.receivedResults):
(dotest):

  • fast/events/touch/script-tests/touch-slider-no-js-touch-listener.js:
  • fast/events/touch/script-tests/touch-slider.js:

(onKeyDown):

  • fast/harness/override-preferences-2-expected.txt:
  • fast/harness/override-preferences-2.html:
  • fast/harness/override-preferences-expected.txt:
  • fast/harness/override-preferences.html:
  • fast/harness/override-zzz-reset-expected.txt:
  • fast/harness/override-zzz-reset.html:
  • fast/harness/resources/results-test.js:
  • fast/harness/use-page-cache-expected.txt:
  • fast/harness/use-page-cache.html:
  • fast/ruby/after-block-doesnt-crash.html-disabled:
  • fast/ruby/after-table-doesnt-crash.html-disabled:
  • fast/ruby/generated-after-counter-doesnt-crash.html-disabled:
  • fast/ruby/generated-before-and-after-counter-doesnt-crash.html-disabled:
  • http/tests/eventsource/eventsource-events-after-close.html:
  • http/tests/misc/gmail-assert-on-load.html:
  • http/tests/misc/resources/char-encoding-in-hidden-charset-field.php:
  • http/tests/misc/resources/check-keygen-post.php:
  • http/tests/misc/resources/check-query-param.php:
  • http/tests/misc/resources/check-unnamed-file-included-in-formdata.php:
  • http/tests/misc/resources/chromium-selectionAsMarkup.html:
  • http/tests/misc/resources/delayed-log.php:
  • http/tests/misc/resources/form-post-textplain.php:
  • http/tests/misc/resources/location-test-xsl-style-sheet.xsl:
  • http/tests/misc/resources/percent-sign-in-form-data-field-name.cgi:
  • http/tests/misc/resources/post-echo-and-notify-done.cgi:
  • http/tests/misc/resources/prefetch-purpose.php:
  • http/tests/misc/resources/redirect-result.php:
  • http/tests/misc/resources/referrer-main-resource.php:
  • http/tests/misc/resources/referrer-result.php:
  • http/tests/misc/xhtml.php:
  • http/tests/misc/xmltokenizer-do-not-crash.pl:
  • http/tests/multipart/multipart-replace-non-html-content.php:
  • http/tests/multipart/policy-ignore-crash.php:
  • http/tests/multipart/win-boundary-crash.html-disabled:
  • http/tests/navigation/post-goback-repost-policy.html-disabled:
  • http/tests/navigation/resources/back-send-referrer-helper.php:
  • http/tests/navigation/resources/check-ping.php:
  • http/tests/navigation/resources/document-location.js:

(start):

  • http/tests/navigation/resources/form-target.pl:
  • http/tests/navigation/resources/goback-with-policydelegate.php:
  • http/tests/navigation/resources/no-referrer-helper.php:
  • http/tests/navigation/resources/no-referrer-same-window-helper.php:
  • http/tests/navigation/resources/notify-done.html:
  • http/tests/navigation/resources/post-target-policy-test.php:
  • http/tests/navigation/resources/redirect-cycle-1.pl:
  • http/tests/navigation/resources/redirect302-metaredirect.pl:
  • http/tests/navigation/resources/redirected-post-request-contents.php:
  • http/tests/navigation/resources/submit-to-fragment.pl:
  • http/tests/navigation/resources/testcode.js:

(runBasicTest):
(runBackTest):
(runLoadChildFrameTest):
(runLoadChildFrameBackTest):
(runReloadTest):
(runLoadSameTest):
(runRedirectReloadTest):

  • http/tests/navigation/useragent.php:
  • http/tests/resources/js-test-post.js:
  • http/tests/resources/js-test-pre.js:

(finishJSTest):

  • http/tests/security/contentSecurityPolicy/resources/securitypolicy-tests-base.js:
  • http/tests/ssl/resources/no-http-referer.cgi:
  • http/tests/ssl/verify-ssl-enabled.php:
  • networkinformation/script-tests/event-after-navigation.js:
  • platform/mac/fast/objc/script-tests/webScriptObject-hasWebScriptKey.js:
  • platform/qt/svg/repaint/filter-repaint-expected.txt:
  • transforms/3d/hit-testing/resources/hit-test-utils.js:
  • transforms/3d/point-mapping/point-mapping-helpers.js:

(runTest):

  • transitions/resources/transition-test-helpers.js:

(expected):

  • transitions/transition-end-event-helpers.js:

(runTransitionTest.processEndEvents):

  • webaudio/resources/audio-codec-test.js:

(runDecodingTest):
(finishedLoading):

  • webaudio/resources/audio-testing.js:

(finishAudioTest):

  • webaudio/resources/audioparam-testing.js:

(createAudioGraphAndTest):

  • webaudio/resources/oscillator-testing.js:

(generateExponentialOscillatorSweep):

  • webintents/resources/web-intents-testing.js:

(onSuccess):
(onFailure):
(startIntentWithCallbacks):

11:22 PM Changeset in webkit [124690] by fischman@chromium.org
  • 4 edits
    58 copies
    11 moves
    67 adds
    9 deletes in trunk/LayoutTests

[Chromium] Layout Test media/media-fragments/TC0080-TC0089.html is slow
https://bugs.webkit.org/show_bug.cgi?id=77523

Reviewed by Eric Carlson.

Before each of these layouttests contained 10 test cases, and would consistently skate
near the normal layouttest timeout (6s) on chromium, and some were Skipped on wk2 for slowness.
This patch splits out the cases so they each get their own timeout.

  • media/media-fragments/TC0001-TC0009-expected.txt: Removed.
  • media/media-fragments/TC0001-expected.txt: Added.
  • media/media-fragments/TC0001.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0002-expected.txt: Added.
  • media/media-fragments/TC0002.html: Renamed from LayoutTests/media/media-fragments/TC0010-TC0019.html.
  • media/media-fragments/TC0003-expected.txt: Added.
  • media/media-fragments/TC0003.html: Renamed from LayoutTests/media/media-fragments/TC0020-TC0029.html.
  • media/media-fragments/TC0004-expected.txt: Added.
  • media/media-fragments/TC0004.html: Renamed from LayoutTests/media/media-fragments/TC0030-TC0039.html.
  • media/media-fragments/TC0005-expected.txt: Added.
  • media/media-fragments/TC0005.html: Renamed from LayoutTests/media/media-fragments/TC0040-TC0049.html.
  • media/media-fragments/TC0006-expected.txt: Added.
  • media/media-fragments/TC0006.html: Renamed from LayoutTests/media/media-fragments/TC0050-TC0059.html.
  • media/media-fragments/TC0009-expected.txt: Added.
  • media/media-fragments/TC0009.html: Renamed from LayoutTests/media/media-fragments/TC0060-TC0069.html.
  • media/media-fragments/TC0010-TC0019-expected.txt: Removed.
  • media/media-fragments/TC0011-expected.txt: Added.
  • media/media-fragments/TC0011.html: Renamed from LayoutTests/media/media-fragments/TC0070-TC0079.html.
  • media/media-fragments/TC0012-expected.txt: Added.
  • media/media-fragments/TC0012.html: Renamed from LayoutTests/media/media-fragments/TC0080-TC0089.html.
  • media/media-fragments/TC0014-expected.txt: Added.
  • media/media-fragments/TC0014.html: Renamed from LayoutTests/media/media-fragments/TC0090-TC0099.html.
  • media/media-fragments/TC0015-expected.txt: Added.
  • media/media-fragments/TC0015.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0017-expected.txt: Added.
  • media/media-fragments/TC0017.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0020-TC0029-expected.txt: Removed.
  • media/media-fragments/TC0024-expected.txt: Added.
  • media/media-fragments/TC0024.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0027-expected.txt: Added.
  • media/media-fragments/TC0027.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0028-expected.txt: Added.
  • media/media-fragments/TC0028.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0029-expected.txt: Added.
  • media/media-fragments/TC0029.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0030-TC0039-expected.txt: Removed.
  • media/media-fragments/TC0030-expected.txt: Added.
  • media/media-fragments/TC0030.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0031-expected.txt: Added.
  • media/media-fragments/TC0031.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0032-expected.txt: Added.
  • media/media-fragments/TC0032.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0033-expected.txt: Added.
  • media/media-fragments/TC0033.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0034-expected.txt: Added.
  • media/media-fragments/TC0034.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0035-expected.txt: Added.
  • media/media-fragments/TC0035.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0036-expected.txt: Added.
  • media/media-fragments/TC0036.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0037-expected.txt: Added.
  • media/media-fragments/TC0037.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0038-expected.txt: Added.
  • media/media-fragments/TC0038.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0039-expected.txt: Added.
  • media/media-fragments/TC0039.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0044-expected.txt: Renamed from LayoutTests/media/media-fragments/TC0040-TC0049-expected.txt.
  • media/media-fragments/TC0044.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0050-TC0059-expected.txt: Removed.
  • media/media-fragments/TC0051-expected.txt: Added.
  • media/media-fragments/TC0051.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0052-expected.txt: Added.
  • media/media-fragments/TC0052.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0053-expected.txt: Added.
  • media/media-fragments/TC0053.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0054-expected.txt: Added.
  • media/media-fragments/TC0054.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0055-expected.txt: Added.
  • media/media-fragments/TC0055.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0058-expected.txt: Added.
  • media/media-fragments/TC0058.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0059-expected.txt: Added.
  • media/media-fragments/TC0059.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0060-TC0069-expected.txt: Removed.
  • media/media-fragments/TC0061-expected.txt: Added.
  • media/media-fragments/TC0061.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0062-expected.txt: Added.
  • media/media-fragments/TC0062.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0063-expected.txt: Added.
  • media/media-fragments/TC0063.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0064-expected.txt: Added.
  • media/media-fragments/TC0064.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0065-expected.txt: Added.
  • media/media-fragments/TC0065.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0066-expected.txt: Added.
  • media/media-fragments/TC0066.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0067-expected.txt: Added.
  • media/media-fragments/TC0067.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0068-expected.txt: Added.
  • media/media-fragments/TC0068.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0069-expected.txt: Added.
  • media/media-fragments/TC0069.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0070-TC0079-expected.txt: Removed.
  • media/media-fragments/TC0070-expected.txt: Added.
  • media/media-fragments/TC0070.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0071-expected.txt: Added.
  • media/media-fragments/TC0071.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0072-expected.txt: Added.
  • media/media-fragments/TC0072.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0073-expected.txt: Added.
  • media/media-fragments/TC0073.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0074-expected.txt: Added.
  • media/media-fragments/TC0074.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0075-expected.txt: Added.
  • media/media-fragments/TC0075.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0076-expected.txt: Added.
  • media/media-fragments/TC0076.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0077-expected.txt: Added.
  • media/media-fragments/TC0077.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0078-expected.txt: Added.
  • media/media-fragments/TC0078.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0079-expected.txt: Added.
  • media/media-fragments/TC0079.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0080-TC0089-expected.txt: Removed.
  • media/media-fragments/TC0080-expected.txt: Added.
  • media/media-fragments/TC0080.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0081-expected.txt: Added.
  • media/media-fragments/TC0081.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0082-expected.txt: Added.
  • media/media-fragments/TC0082.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0083-expected.txt: Added.
  • media/media-fragments/TC0083.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0084-expected.txt: Added.
  • media/media-fragments/TC0084.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0085-expected.txt: Added.
  • media/media-fragments/TC0085.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0086-expected.txt: Added.
  • media/media-fragments/TC0086.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0087-expected.txt: Added.
  • media/media-fragments/TC0087.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0088-expected.txt: Added.
  • media/media-fragments/TC0088.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0089-expected.txt: Added.
  • media/media-fragments/TC0089.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0090-TC0099-expected.txt: Removed.
  • media/media-fragments/TC0090-expected.txt: Added.
  • media/media-fragments/TC0090.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0091-expected.txt: Added.
  • media/media-fragments/TC0091.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0092-expected.txt: Added.
  • media/media-fragments/TC0092.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0093-expected.txt: Added.
  • media/media-fragments/TC0093.html: Copied from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/TC0094-expected.txt: Added.
  • media/media-fragments/TC0094.html: Renamed from LayoutTests/media/media-fragments/TC0001-TC0009.html.
  • media/media-fragments/media-fragments.js:

(pause):
(canplaythrough):
(start):

  • platform/chromium/TestExpectations:
  • platform/wk2/Skipped:
9:08 PM Changeset in webkit [124689] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

Disabling eval changes the timing of DidCreateScriptContext
https://bugs.webkit.org/show_bug.cgi?id=92189

Reviewed by Eric Seidel.

When we implemented Content-Security-Policy, we added the ability to
disable eval in the JavaScript engine. However, when we process the
Content-Security-Policy header, we might not have initialized the
script context for the given frame.

Previously, we would initialize the context, but that generates a
DidCreateScriptContext callback to the embedder earlier in the Document's
lifetime that before. A natural thing to do in this callback is to run
script to customize the script context, but Document isn't fully
initialized yet, which leads to odd bugs and general confusion.

In this patch, we delay actually disabling eval until we would have
created the scripting context previously. From the perspective of the
web platform, this has the same behavior. The only difference is that
now the DidCreateScriptContext notification occurs at the same time
regardless of whether Content-Security-Policy disables eval.

I tried to write a test for this change, but it was unclear to me how
to write a good test. I tried writing a Chromium WebKit unit test to no
avail. The good news is that this patch will be covered by the
PlatformAppBrowserTest.Iframes test in Chromium once
https://bugs.webkit.org/show_bug.cgi?id=93079 lands. That's not the
best way to test this change, but it might be sufficient.

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::initScript):
(WebCore::ScriptController::disableEval):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::enableEval):
(WebCore::ScriptController::disableEval):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::initContextIfNeeded):

8:25 PM Changeset in webkit [124688] by thakis@chromium.org
  • 4 edits in trunk/Source

[chromium] Add API to make it possible to request all variants of a WebImage
https://bugs.webkit.org/show_bug.cgi?id=92933

Reviewed by Adam Barth.

Part of http://crbug.com/138550

Source/Platform:

  • chromium/public/WebImage.h:

(WebImage):

Source/WebKit/chromium:

  • src/WebImageSkia.cpp:

(WebKit::WebImage::framesFromData):
(WebKit):

8:13 PM Changeset in webkit [124687] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Layout Test http/tests/media/media-source/webm/video-media-source-*.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=85952

Unreviewed test expectation update.

Test fixed by http://crrev.com/149702.

  • platform/chromium/TestExpectations:
7:45 PM Changeset in webkit [124686] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

media/media-fragments/TC0030-TC0039.html sometimes times out on Chromium Windows
https://bugs.webkit.org/show_bug.cgi?id=76967

Unreviewed, test expectation change only.

These media/media-fragments/TC00X0-TC00X9.html tests each test 10 test cases, and consistently skate in the 6-8s range. Marking them as SLOW.

  • platform/chromium/TestExpectations:
7:40 PM Changeset in webkit [124685] by rniwa@webkit.org
  • 41 edits in trunk/LayoutTests

Use testRunner instead of layoutTestController in the remaining layout tests
https://bugs.webkit.org/show_bug.cgi?id=93172

Reviewed by Adam Barth.

One last sweeping patch.

  • accessibility/canvas-accessibilitynodeobject.html:
  • compositing/backface-visibility/backface-visibility-webgl.html:
  • compositing/fixed-position-scroll-offset-history-restore.html:
  • compositing/overflow/image-load-overflow-scrollbars.html:
  • css3/flexbox/flexitem.html:
  • dom/html/level1/core/selfhtml.js:

(startTest):

  • dom/html/level2/core/selfhtml.js:

(startTest):

  • dom/html/level2/events/selfhtml.js:

(startTest):

  • dom/html/level2/html/AppletsCollection.html:
  • dom/html/level2/html/HTMLBaseElement01.html:
  • dom/html/level2/html/HTMLBaseElement02.html:
  • dom/html/level2/html/selfhtml.js:

(startTest):

  • dom/svg/level3/xpath/svgunit.js:
  • dom/xhtml/level1/core/selfxhtml.js:

(startTest):

  • dom/xhtml/level2/core/selfxhtml.js:

(startTest):

  • dom/xhtml/level2/events/selfxhtml.js:

(startTest):

  • dom/xhtml/level2/html/HTMLBaseElement01.xhtml:
  • dom/xhtml/level2/html/HTMLBaseElement02.xhtml:
  • dom/xhtml/level2/html/selfxhtml.js:

(startTest):

  • dom/xhtml/level3/core/selfxhtml.js:

(startTest):

  • editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html:
  • editing/shadow/bold-twice-in-shadow.html:
  • editing/shadow/breaking-editing-boundaries-2.html:
  • editing/shadow/contenteditable-propagation-at-shadow-boundary.html:
  • editing/shadow/delete-characters-in-distributed-node-crash.html:
  • editing/shadow/delete-list-in-shadow.html:
  • editing/shadow/insertorderedlist-crash.html:
  • editing/shadow/pressing-enter-on-list.html:
  • editing/spelling/grammar-edit-word-expected.txt:
  • editing/spelling/grammar-edit-word.html:
  • fast/block/percent-height-descendant-not-removed-crash2.html:
  • fast/block/positioning/abspositioned-object-under-split-relpositioned-inline-crash.html:
  • fast/block/positioning/insert-positioned-in-anonymous-crash.html:
  • fast/canvas/fallback-content.html:
  • fast/css/counters/counter-reset-subtree-insert-crash.html:
  • fast/css/crash-on-gradient-with-derived-color.html:
  • fast/dom/NodeList/childNodes-reverse-iteration.html:
  • fast/dom/Window/window-property-shadowing-onclick.html:
  • fast/dom/XMLSerializer-xml-namespace.html:
  • fast/dom/shadow/content-after-style.html:
7:37 PM Changeset in webkit [124684] by Dave Barton
  • 11 edits
    10 copies
    2 adds in trunk/LayoutTests

Rebaseline MathML pixel tests with STIX fonts for Lion
https://bugs.webkit.org/show_bug.cgi?id=93163

Reviewed by Eric Seidel.

This is gardening in response to https://bugs.webkit.org/show_bug.cgi?id=93073, which
followed https://bugs.webkit.org/show_bug.cgi?id=43819. The latter turned on the STIX
fonts in the testing tools, and apparently the STIX fonts or their handling have been
changed (apparently improved) between Snow Leopard and Lion. I am therefore moving my
10 *-expected.txt files below to platform/mac-snowleopard, and putting the slightly
improved metrics in the 10 files in platform/mac.

  • platform/mac-snowleopard/mathml: Added.
  • platform/mac-snowleopard/mathml/presentation: Added.
  • platform/mac-snowleopard/mathml/presentation/attributes-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/fenced-mi-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/fractions-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/mo-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/over-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/roots-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/row-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/sub-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/tokenElements-expected.txt: Added.
  • platform/mac-snowleopard/mathml/presentation/underover-expected.txt: Added.
  • platform/mac/mathml/presentation/attributes-expected.txt:
  • platform/mac/mathml/presentation/fenced-mi-expected.txt:
  • platform/mac/mathml/presentation/fractions-expected.txt:
  • platform/mac/mathml/presentation/mo-expected.txt:
  • platform/mac/mathml/presentation/over-expected.txt:
  • platform/mac/mathml/presentation/roots-expected.txt:
  • platform/mac/mathml/presentation/row-expected.txt:
  • platform/mac/mathml/presentation/sub-expected.txt:
  • platform/mac/mathml/presentation/tokenElements-expected.txt:
  • platform/mac/mathml/presentation/underover-expected.txt:
6:39 PM Changeset in webkit [124683] by jamesr@google.com
  • 8 edits in trunk/Source/WebCore

[chromium] Stop relying on implicit WebFoo <-> WebCore conversion operators in compositor
https://bugs.webkit.org/show_bug.cgi?id=93169

Reviewed by Adrienne Walker.

This removes the compositor's reliance on implicit conversion operators from Web* types to WebKit-internal
types, specifically WebRect <-> WebCore::IntRect and WebString <-> WTF::String.

  • platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:

(WebCore::CanvasLayerTextureUpdater::paintContents):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::getFramebufferPixels):

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarLayerChromium::setTexturePriorities):
(WebCore::ScrollbarLayerChromium::update):

  • platform/graphics/chromium/cc/CCFontAtlas.cpp:

(WebCore::CCFontAtlas::drawOneLineOfTextInternal):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:

(WebCore::CCHeadsUpDisplayLayerImpl::drawFPSCounter):
(WebCore::CCHeadsUpDisplayLayerImpl::drawDebugRects):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:

(WebCore::toUVRect):
(WebCore::CCScrollbarLayerImpl::appendQuads):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::size):

6:34 PM WikiStart edited by pkasting@chromium.org
(diff)
6:33 PM Rebaseline edited by pkasting@chromium.org
(diff)
6:28 PM Changeset in webkit [124682] by Michael Nordman
  • 3 edits in trunk/Source/WebCore

[Chromium] Cross-thread-copy a couple more recently added ResourceResponse data members, apparently
these got missed when they were added. And fix a bug with how the m_remoteIPAddress
data member is handled, an isolatedCopy() is needed for thread safety.
https://bugs.webkit.org/show_bug.cgi?id=93158

Reviewed by David Levin.

No new tests, minor cleanup.

  • platform/network/chromium/ResourceResponse.cpp:

(WebCore::ResourceResponse::doPlatformCopyData): make deep copies
(WebCore::ResourceResponse::doPlatformAdopt): take ownership of them

  • platform/network/chromium/ResourceResponse.h:

(ResourceResponse):
(CrossThreadResourceResponseData):

6:23 PM Changeset in webkit [124681] by fmalita@chromium.org
  • 5 edits
    2 adds in trunk

[SVG] Tref target event listener cleanup
https://bugs.webkit.org/show_bug.cgi?id=93004

Reviewed by Abhishek Arya.

Source/WebCore:

Currently SVGTRefElement allocates event listeners dynamically as it attaches to its
targets. Synchronizing the lifetime of the target listener vs. the tref element is
error prone, as various events can stack and trigger nested handlers.

In order to reduce complexity and address a couple of outstanding issues, this patch
changes the way event listeners are allocated: only one target listener is created
for the lifetime of the SVGTRefElement, and gets reused if the target element changes.

Test: svg/custom/tref-nested-events-crash.svg

  • dom/EventListener.h:

Added new <tref> target event listener type.

  • svg/SVGTRefElement.cpp:

(WebCore):
(WebCore::SVGTRefTargetEventListener::create):
(WebCore::SVGTRefTargetEventListener::cast):
(SVGTRefTargetEventListener):
(WebCore::SVGTRefTargetEventListener::isAttached):
(WebCore::SVGTRefTargetEventListener::SVGTRefTargetEventListener):
(WebCore::SVGTRefTargetEventListener::attach):
(WebCore::SVGTRefTargetEventListener::detach):
(WebCore::SVGTRefTargetEventListener::operator==):
(WebCore::SVGTRefTargetEventListener::handleEvent):
No need to check m_trefElement anymore - the listener is allocated for the whole element
lifetime, detached when the element is removed and deallocated when the element is
destroyed.
(WebCore::SVGTRefElement::SVGTRefElement):
Allocate one target listener per element, at construction time.
(WebCore::SVGTRefElement::~SVGTRefElement):
Detach the listener if necessary.
(WebCore::SVGTRefElement::detachTarget):
Check whether the element is still in document after updating the text (may have been
removed by event handlers).
(WebCore::SVGTRefElement::buildPendingResource):
Attach the event listener before updating the text content to avoid racing with event
handlers (which can remove the element).
(WebCore::SVGTRefElement::removedFrom):

  • svg/SVGTRefElement.h:

(WebCore):
(SVGTRefElement):

LayoutTests:

  • svg/custom/tref-nested-events-crash-expected.txt: Added.
  • svg/custom/tref-nested-events-crash.svg: Added.
6:13 PM Changeset in webkit [124680] by rniwa@webkit.org
  • 541 edits in trunk/LayoutTests

Use testRunner instead of layoutTestController in fast/scrolling through fast/xsl tests
https://bugs.webkit.org/show_bug.cgi?id=92947

Reviewed by Kent Tamura.

  • fast/scrolling/resources/scrollable-area.js:
  • fast/selectors/empty-element-made-non-empty.html:
  • fast/selectors/querySelector-in-range-crash.html:
  • fast/selectors/selection-window-inactive.html:
  • fast/selectors/style-sharing-adjacent-selector.html:
  • fast/selectors/style-sharing-last-child.html:
  • fast/spatial-navigation/:
  • fast/storage/storage-detached-iframe.html:
  • fast/sub-pixel/client-width-height-snapping.html:
  • fast/sub-pixel/float-containing-block-with-margin.html:
  • fast/sub-pixel/table-rows-have-stable-height.html:
  • fast/table/:
  • fast/text/:
  • fast/tokenizer/:
  • fast/transforms/container-transform-crash.html:
  • fast/transforms/matrix-with-zoom.html:
  • fast/transforms/scrollIntoView-transformed.html:
  • fast/transforms/selection-bounds-in-transformed-view.html:
  • fast/transforms/topmost-becomes-bottomost-for-scrolling.html:
  • fast/transforms/transform-hit-test-flipped.html:
  • fast/transforms/transform-inside-overflow-scroll.html:
  • fast/url/degenerate-file-base.html:
  • fast/viewport/:
  • fast/workers/:
  • fast/writing-mode/auto-margins-across-boundaries.html:
  • fast/writing-mode/block-formatting-context.html:
  • fast/writing-mode/broken-ideographic-font.html:
  • fast/writing-mode/display-mutation.html:
  • fast/writing-mode/flipped-blocks-hit-test-overflow.html:
  • fast/writing-mode/flipped-blocks-text-map-local-to-container.html:
  • fast/writing-mode/japanese-rl-text-with-broken-font.html:
  • fast/writing-mode/overhanging-float-legend-crash.html:
  • fast/writing-mode/percentage-padding.html:
  • fast/writing-mode/positionForPoint.html:
  • fast/writing-mode/relative-positioning-percentages.html:
  • fast/writing-mode/table-hit-test.html:
  • fast/xmlhttprequest/null-document-xmlhttprequest-open.html:
  • fast/xmlhttprequest/resources/xmlhttprequest-no-file-access-real.html:
  • fast/xmlhttprequest/resources/xmlhttprequest-nonexistent-file-real.html:
  • fast/xmlhttprequest/xmlhttprequest-bad-mimetype.html:
  • fast/xmlhttprequest/xmlhttprequest-gc.html:
  • fast/xmlhttprequest/xmlhttprequest-get.xhtml:
  • fast/xmlhttprequest/xmlhttprequest-html-response-encoding.html:
  • fast/xmlhttprequest/xmlhttprequest-invalid-values.html:
  • fast/xmlhttprequest/xmlhttprequest-missing-file-exception.html:
  • fast/xmlhttprequest/xmlhttprequest-no-file-access.html:
  • fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html:
  • fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html:
  • fast/xmlhttprequest/xmlhttprequest-recursive-sync-event.html:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-abort.html:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer.html:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-document.html:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-text.html:
  • fast/xpath/4XPath/Borrowed/namespace-nodes.html:
  • fast/xpath/ancestor-axis.html:
  • fast/xpath/complex-id.html:
  • fast/xpath/empty-string-substring.html:
  • fast/xpath/ensure-null-namespace.xhtml:
  • fast/xpath/id-path.html:
  • fast/xpath/id-simple.html:
  • fast/xpath/implicit-node-args.html:
  • fast/xpath/name-null-namespace.html:
  • fast/xpath/namespace-vs-predicate.xhtml:
  • fast/xpath/nan-to-boolean.html:
  • fast/xpath/nodeset-duplicates.html:
  • fast/xpath/nsresolver-bad-object.xhtml:
  • fast/xpath/nsresolver-exception.xhtml:
  • fast/xpath/nsresolver-function.xhtml:
  • fast/xpath/nsresolver-object.xhtml:
  • fast/xpath/preceding-axis.xhtml:
  • fast/xpath/text-nodes.html:
  • fast/xpath/union-context-node.xhtml:
  • fast/xpath/xpath-detached-iframe-resolver-crash.html:
  • fast/xpath/xpath-empty-string.html:
  • fast/xpath/xpath-functional-test.html:
  • fast/xpath/xpath-iterator-result-should-mark-its-nodeset.html:
  • fast/xpath/xpath-other-nodeset-result-should-mark-its-nodeset.html:
  • fast/xpath/xpath-result-eventlistener-crash.html:
  • fast/xpath/xpath-snapshot-result-should-mark-its-nodeset.html:
  • fast/xsl/default-html.html:
  • fast/xsl/exslt-node-set.xsl:
  • fast/xsl/extra-lf-at-end.html:
  • fast/xsl/import-non-document-node.xhtml:
  • fast/xsl/mozilla-tests.xsl:
  • fast/xsl/nbsp-in-stylesheet.html:
  • fast/xsl/resources/dtd-in-source-document.xsl:
  • fast/xsl/resources/import-after-comment-transform.xsl:
  • fast/xsl/resources/to-html.xsl:
  • fast/xsl/resources/xslt-entity-enc.xsl:
  • fast/xsl/resources/xslt-nested-stylesheets1.xsl:
  • fast/xsl/resources/xslt-recursion-chain1.xsl:
  • fast/xsl/resources/xslt-second-level-import.xsl:
  • fast/xsl/sort-locale.xsl:
  • fast/xsl/sort-unicode.xsl:
  • fast/xsl/subframe-location.html:
  • fast/xsl/transform-xhr-doc.xhtml:
  • fast/xsl/transformToFragment-XML-declaration.html:
  • fast/xsl/utf8-chunks.xsl:
  • fast/xsl/xslt-bad-import-uri.html:
  • fast/xsl/xslt-doc-enc.xsl:
  • fast/xsl/xslt-doc-noenc.xsl:
  • fast/xsl/xslt-fragment-in-empty-doc.html:
  • fast/xsl/xslt-processor.html:
  • fast/xsl/xslt-string-parameters.html:
  • fast/xsl/xslt-text.html:
  • fast/xsl/xslt-transform-to-fragment-crash.html:
  • fast/xsl/xslt-url.xsl:
  • platform/chromium-linux/fast/text/chromium-linux-text-subpixel-positioning.html:
  • platform/chromium-linux/fast/text/international/arabic-vertical-offset.html:
  • platform/chromium-linux/fast/text/international/draw-complex-text-from-to.html:
  • platform/chromium/fast/text/chromium-mac-duplicate-ime-composition.html:
  • platform/chromium/fast/text/font-linux-normalize.html:
  • platform/chromium/fast/text/international/complex-text-rectangle.html:
  • platform/mac/fast/text/attributed-substring-from-range-001.html:
  • platform/mac/fast/text/attributed-substring-from-range-002.html:
  • platform/mac/fast/text/attributed-substring-from-range-in-textfield.html:
  • platform/mac/fast/text/attributed-substring-from-range.html:
  • platform/mac/fast/text/core-text-fallback-to-unknown-font.html:
  • platform/mac/fast/text/justified-text-rect.html:
  • platform/mac/fast/text/myanmar-shaping.html:
  • platform/mac/fast/text/thai-combining-mark-positioning.html:
  • platform/mac/fast/text/webfont-after-tiny-monospace-text.html:
  • platform/qt/fast/spatial-navigation/resources/ensure-scrolls-with-scrollbars-disabled-by-webkit.html:
  • platform/qt/fast/spatial-navigation/snav-ensure-scrolls-with-scrollbars-disabled-by-webkit.html:
  • platform/win/fast/text/uniscribe-item-boundary-crash.html:
6:07 PM Changeset in webkit [124679] by msaboff@apple.com
  • 13 edits in trunk/Source

Convert HTML parser to handle 8-bit resources without converting to UChar*
https://bugs.webkit.org/show_bug.cgi?id=90321

Reviewed by Adam Barth.

Source/WebCore:

No new tests, no new functionality therefore covered by existing tests.

Changed the parsing of HTML to handle 8-bit strings without converting the
whole string to 16-bits. Primary change was to use the appropriate
character pointer type (LChar* or UChar*) depending on the source string.
This access is abstracted in SegmentedSubstring by getCurrentChar{8,16} and
incrementAndGetCurrentChar{8,16} methods. In SegmentedString, the advance()
and advanceAndUpdateLineNumber() methods have been refactored into a
state machine managed pair of function pointers. The possible functions
have not only the 8 and 16 bitness factored out, they also have the
"exclude line numbers" logic factored out for advanceAndUpdateLineNumber().
This change also has improvements over http://trac.webkit.org/changeset/123679.
The most prominent change was to inline the 8 bit paths for both advance()
and advanceAndUpdateLineNumber().
This provides a net speed-up even with the 8/16 bit testing.
Other changes involve using String methods to access and compare with the
source data.

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::append): Changed to use currentChar()
instead of SegmentedString '*' operator.

  • html/parser/HTMLEntityParser.cpp: Changed to use currentChar() instead of

SegmentedString '*' operator.

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::stripLeadingAndTrailingHTMLSpaces): Added 8-bit fast path.

  • html/parser/HTMLSourceTracker.cpp:

(WebCore::HTMLSourceTracker::sourceForToken): Changed to use currentChar() instead of
SegmentedString '*' operator.

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::script): Updated to use new String::dataSize() method.

  • platform/text/SegmentedString.cpp:

(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::operator=):
(WebCore::SegmentedString::clear):
(WebCore::SegmentedString::append):
(WebCore::SegmentedString::prepend):
(WebCore::SegmentedString::advanceSubstring):
(WebCore::SegmentedString::advance):
(WebCore::SegmentedString::advance8): Fast path advance function for 8 bit data.
(WebCore::SegmentedString::advance16): Fast path advance function for 16 bit data.
(WebCore::SegmentedString::advanceAndUpdateLineNumber8): Fast path
advanceAndUpdateLineNumber for 8 bit data when we need to update the line number.
(WebCore::SegmentedString::advanceAndUpdateLineNumber16): Fast path
advanceAndUpdateLineNumber for 16 bit data when we need to update the line number.
(WebCore::SegmentedString::advanceSlowCase): Slow case advance function for both
8 and 16 bit advance.
(WebCore::SegmentedString::advanceAndUpdateLineNumberSlowCase): Slow case
advanceAndUpdateLineNumber function for both 8 and 16 bit data.
(WebCore::SegmentedString::advanceEmpty): Advance function when input has been exhausted.
(WebCore::SegmentedString::updateSlowCaseFunctionPointers): Set advance function
pointers to slow case functions.

  • platform/text/SegmentedString.h:

(WebCore::SegmentedSubstring::SegmentedSubstring):
(WebCore::SegmentedSubstring::clear):
(SegmentedSubstring):
(WebCore::SegmentedSubstring::is8Bit): New getter.
(WebCore::SegmentedSubstring::appendTo):
(WebCore::SegmentedSubstring::getCurrentChar8): New getter for the 8 bit case.
(WebCore::SegmentedSubstring::getCurrentChar16): New getter for the 16 bit case.
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar8): New wrapper functions
that pre-increments the 8 bit pointer and returns the next character.
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar16): New wrapper functions
that pre-increments the 16 bit pointer and returns the next character.
(WebCore::SegmentedSubstring::currentSubString):
(WebCore::SegmentedSubstring::getCurrentChar):
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar):
(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::push):
(WebCore::SegmentedString::isEmpty):
(WebCore::SegmentedString::lookAhead):
(WebCore::SegmentedString::lookAheadIgnoringCase):
(WebCore::SegmentedString::advance): Wrapper that contains 8 bit fast path
or calls via member function point to approriate advance() flavor.
(WebCore::SegmentedString::advanceAndUpdateLineNumber): Wrapper that
contains 8 bit fast path or calls via member function point to approriate
advance() flavor.
(WebCore::SegmentedString::advanceAndASSERT):
(WebCore::SegmentedString::advanceAndASSERTIgnoringCase):
(WebCore::SegmentedString::advancePastNonNewline):
(WebCore::SegmentedString::advancePastNewlineAndUpdateLineNumber):
(WebCore::SegmentedString::currentChar):
(WebCore::SegmentedString::decrementAndCheckLength): Decrement substring length and
change to slow case functions when only one character left.
(WebCore::SegmentedString::updateAdvanceFunctionPointers): Select appropriate
advance functions based on current substring.
(WebCore::SegmentedString::lookAheadInline): Changed to use String::startsWith().
(WebCore::SegmentedString::lookAheadSlowCase):

  • xml/parser/CharacterReferenceParserInlineMethods.h:

(WebCore::consumeCharacterReference): Changed to use currentChar() instead of
SegmentedString '*' operator.

  • xml/parser/MarkupTokenizerBase.h:

(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::nextInputCharacter):
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::peek): Changed to use
currentChar() instead of SegmentedString '*' operator.
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::advance):

Source/WTF:

  • wtf/text/WTFString.h:

(WTF::String::dataSize): New method to return the number of bytes
the string requires. This replaces a harcoded calculation based on
length and sizeof(UChar).

6:01 PM Changeset in webkit [124678] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Crashes in dfgBuildPutByIdList when clicking on just about anything on Google Maps
https://bugs.webkit.org/show_bug.cgi?id=92691

Reviewed by Mark Hahnenberg.

The state of the stubs was changing after we determined the type (by virtue of the slow path
function that was called), since the get or put (in this case put) could cause arbitrary
side effects. Perhaps a full-blown fix would be to eliminate our reliance of the slow path
function to determine what to do, but an easier fix for now is to have the slow path give up
if its assumptions were invalidated by a side effect.

  • dfg/DFGOperations.cpp:
  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

5:40 PM Changeset in webkit [124677] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Fix Renderer4.CompositorThreadImplDrawDelay histogram.
https://bugs.webkit.org/show_bug.cgi?id=93159

Patch by Dave Tu <dtu@chromium.org> on 2012-08-03
Reviewed by Adrienne Walker.

The histogram is using the frame number instead of the frame time by mistake.

  • platform/graphics/chromium/cc/CCFrameRateCounter.cpp:

(WebCore::CCFrameRateCounter::markBeginningOfFrame):

5:31 PM Changeset in webkit [124676] by commit-queue@webkit.org
  • 5 edits in trunk

[Chrome-Android] - Prepare apk tests for switch to checked in SDK.
https://bugs.webkit.org/show_bug.cgi?id=92931

Patch by Yaron Friedman <yfriedman@chromium.org> on 2012-08-03
Reviewed by Adam Barth.

Source/WebKit/chromium:

Pass Android-specific gyp variables to the native test generator
avoiding any dependencies on environment variables during build time.

  • WebKitUnitTests.gyp:

Tools:

Pass Android-specific gyp variables to the native test generator,
avoiding any dependencies on environment variables during build time.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
5:28 PM Changeset in webkit [124675] by dgrogan@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Core upgradeneeded logic
https://bugs.webkit.org/show_bug.cgi?id=92558

Reviewed by Ojan Vafai.

Source/WebCore:

This is the backend webkit logic needed for integer versions. The rest
is in https://bugs.webkit.org/show_bug.cgi?id=89505.

I tried to make use of the existing processPendingCalls and added two
more queues, pendingOpenWithVersionCalls and
pendingSecondHalfOpenWithVersionCalls. The "second half" refers to
how there are two events that need to be fired in response to an
open-with-version call. The "second half" queue holds the open
requests that should immediately follow the caller's upgradeneeded
handler.

No new tests, there are so many they are in their own patch:
https://bugs.webkit.org/show_bug.cgi?id=92560

Though this patch doesn't change any expected behavior anyway, lack of
regressions is what we're hoping for here.

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onBlocked):
(WebCore::IDBCallbacks::onUpgradeNeeded):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(IDBDatabaseBackendImpl::PendingOpenCall):
(IDBDatabaseBackendImpl::PendingOpenWithVersionCall):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::create):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::callbacks):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::version):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::PendingOpenWithVersionCall):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::metadata):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::setIntVersionInternal):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndEventsFired):
When an upgradeneeded event is fired in response to an
open-with-version call, the version change transaction must receive its
complete event before processPendingCalls fires a success event at
IDBOpenDBRequest. In the future this should probably be changed
instead to transactionFinishedAndAbortFired and
transactionFinishedAndCompleteFired so that we'll know to fire a
success or error event at IDBOpenDBRequest. Currently, instead of
firing error when there's an abort, we don't fire anything.

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
Now that this is called after a connection is opened, we unfortunately
lose the invariant that there is only one existing connection when this
is called, but nothing inside this function actually relied on that.
Additionally, the secondHalfOpen calls only ever need to be serviced
in one place: right after a version change transaction completes, so
it could be moved out of here.

(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
Now that setVersion and deleteDatabase calls are queued up behind
secondHalfOpen calls, we have to service those queues when
secondHalfOpen calls complete, which is here. So call
processPendingCalls().

(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::openConnectionWithVersion):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseCallbacks.h:

(WebCore::IDBDatabaseCallbacks::onVersionChange):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::open):
This is refactored some so that the call to openConection{WithVersion}
happens once, at the end.

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::updateIDBDatabaseIntVersion):
(WebCore):
(WebCore::IDBLevelDBBackingStore::deleteDatabase):

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::commit):
See above comments about transactionFinishedAndEventsFired. I tried
moving the call to transactionFinished after the events were fired but
that failed some asserts. But changing those asserts is still an
alternative to splitting up transactionFinished as is done here.

Source/WebKit/chromium:

Update overridden methods to match new signatures.

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::FailingBackingStore::createIDBDatabaseMetaData):

  • tests/IDBFakeBackingStore.h:
5:10 PM Changeset in webkit [124674] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test media/video-currentTime-set2.html is flakily crashing
https://bugs.webkit.org/show_bug.cgi?id=92852

Unreviewed, test expectation change only.

The DCHECK in question was removed in http://crrev.com/149452

  • platform/chromium/TestExpectations:
4:45 PM Changeset in webkit [124673] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk

Double tap gesture should send dblclick event
https://bugs.webkit.org/show_bug.cgi?id=92412

Patch by Rick Byers <rbyers@chromium.org> on 2012-08-03
Reviewed by Adam Barth.

Source/WebCore:

Propagate the tap count from PlatformGestureEvent in the derived mouse
events.

Also fixes a crash with unexpected GestureDoubleTap events by just
supressing them early. They will probably be removed soon anyway.

Test: fast/events/touch/gesture/gesture-dblclick.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureTap):

Source/WebKit/chromium:

Tweak comment to more completely describe the (lame) overloaded use
of deltaX in WebGestureEvent, and add a FIXME with the bug to track
cleaning it up.

  • public/WebInputEvent.h:

(WebGestureEvent):

Tools:

Enable EventSender to set the tap count on tap gesture events. The
delta X/Y parameters were not actually being used anymore (used to be
used for radius information).

  • DumpRenderTree/chromium/TestRunner/EventSender.cpp:

(EventSender::gestureEvent):

LayoutTests:

Adds test for derived mouse events generated by a sequence of two tap
events. Modeled after gesture-click.html.

  • fast/events/touch/gesture/gesture-dblclick-expected.txt: Added.
  • fast/events/touch/gesture/gesture-dblclick.html: Added.
  • platform/chromium/fast/events/touch/gesture/gesture-dblclick-expected.txt: Added.
4:39 PM Changeset in webkit [124672] by commit-queue@webkit.org
  • 7 edits
    2 deletes in trunk

Unreviewed, rolling out r124668.
http://trac.webkit.org/changeset/124668
https://bugs.webkit.org/show_bug.cgi?id=93167

Broke Mac build (Requested by kbr_google on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

Source/WebCore:

  • bindings/js/JSArrayBufferViewHelper.h:

(WebCore::setWebGLArrayWithTypedArrayArgument):
(WebCore::setWebGLArrayHelper):
(WebCore::constructArrayBufferViewWithTypedArrayArgument):
(WebCore::constructArrayBufferViewWithArrayBufferArgument):
(WebCore::constructArrayBufferView):

  • bindings/v8/custom/V8ArrayBufferViewCustom.h:

(WebCore::constructWebGLArrayWithArrayBufferArgument):
(WebCore):
(WebCore::constructWebGLArray):
(WebCore::setWebGLArrayHelper):

LayoutTests:

  • fast/canvas/webgl/array-set-invalid-arguments-expected.txt: Removed.
  • fast/canvas/webgl/array-set-invalid-arguments.html: Removed.
  • fast/canvas/webgl/array-set-out-of-bounds-expected.txt:
  • fast/canvas/webgl/data-view-crash-expected.txt:
  • fast/canvas/webgl/data-view-test-expected.txt:
4:36 PM Changeset in webkit [124671] by jchaffraix@webkit.org
  • 6 edits in trunk

Implement computePreferredLogicalWidths on RenderGrid
https://bugs.webkit.org/show_bug.cgi?id=92908

Reviewed by Ojan Vafai.

Source/WebCore:

This functions implements a primitive computePreferredLogicalWidths
so that we properly handle vertical writing modes.

Covered by fast/css-grid-layout/place-cell-by-index.html.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computePreferredLogicalWidths):

  • rendering/RenderGrid.h:

Added computePreferredLogicalWidths.

LayoutTests:

  • fast/css-grid-layout/place-cell-by-index-expected.txt:

Updated the expected file (everything passes now).

  • fast/css-grid-layout/place-cell-by-index.html:

Removed some FIXMEs and added one about the expected offsets making
a wrong assumption. It's fine to keep this testing until we support
this part of the spec.

4:20 PM Changeset in webkit [124670] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Remove assert when getting hardware renderingStats in software mode.
https://bugs.webkit.org/show_bug.cgi?id=92325

Patch by Dave Tu <dtu@chromium.org> on 2012-08-03
Reviewed by Adrienne Walker.

If a page caused hardware mode to be turned on, then off, the hardware stats are still valid, so we don't need to assert that we're in hardware mode. Checking if the LayerTreeView is null should be sufficient.

  • public/WebWidget.h:

(WebWidget):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::renderingStats):
(WebKit::WebViewImpl::paint):

  • src/WebViewImpl.h:
4:12 PM Changeset in webkit [124669] by Lucas Forschler
  • 5 edits in branches/safari-536.26-branch

Merged r121307. <rdar://problem/11932487>

4:03 PM Changeset in webkit [124668] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Update TypedArrays to throw RangeError or similar instead of INDEX_SIZE_ERR
https://bugs.webkit.org/show_bug.cgi?id=45118

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-03
Reviewed by Kenneth Russell.

Source/WebCore:

Update TypedArrays to raise JavaScript RangeError instead of dom
INDEX_SIZE_ERR exceptions. Also, update TypedArrays to raise TypeError
instead of JavaScript SyntaxError or dom exceptions SYNTAX_ERR when
calling set method with invalid arguments.

Specification does not define the type of exceptions to raise, but
other browsers raise JavaScript errors, so those changes will improve
compatibility.

New Test: fast/canvas/webgl/array-set-invalid-arguments.html

Updated Tests expectations:

fast/canvas/webgl/array-set-out-of-bounds.html
fast/canvas/webgl/data-view-crash.html
fast/canvas/webgl/data-view-test.html

  • bindings/js/JSArrayBufferViewHelper.h:

(WebCore):
(WebCore::setWebGLArrayWithTypedArrayArgument):
(WebCore::setWebGLArrayHelper):
(WebCore::constructArrayBufferViewWithTypedArrayArgument):
(WebCore::constructArrayBufferViewWithArrayBufferArgument):
(WebCore::constructArrayBufferView):

  • bindings/v8/custom/V8ArrayBufferViewCustom.h:

(WebCore):
(WebCore::constructWebGLArrayWithArrayBufferArgument):
(WebCore::setWebGLArrayHelper):

LayoutTests:

New test to test invalid arguments to TypedArray set method

Update array-set-out-of-bounds.html, data-view-crash.html and
data-view-test.html test expectations no match new exceptions thrown.

  • fast/canvas/webgl/array-set-invalid-arguments-expected.txt: Added.
  • fast/canvas/webgl/array-set-invalid-arguments.html: Added.
  • fast/canvas/webgl/array-set-out-of-bounds-expected.txt:
  • fast/canvas/webgl/data-view-crash-expected.txt:
  • fast/canvas/webgl/data-view-test-expected.txt:
3:42 PM Changeset in webkit [124667] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG handling of get_by_id should always inject a ForceOSRExit node if there is no prediction
https://bugs.webkit.org/show_bug.cgi?id=93162

Reviewed by Mark Hahnenberg.

This simplifies the DFG IR by ensuring that all nodes that use value profiles will be preceded
by a ForceOSRExit if the value profile had no data.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

3:39 PM Changeset in webkit [124666] by Lucas Forschler
  • 4 edits in branches/safari-536.26-branch/Source

Versioning.

3:36 PM Changeset in webkit [124665] by Lucas Forschler
  • 1 copy in tags/Safari-536.26.2

New Tag.

3:35 PM Changeset in webkit [124664] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

  • DEPS:
3:25 PM Changeset in webkit [124663] by Lucas Forschler
  • 2 edits in branches/safari-536.26-branch/Source/WebKit2

Merged r123915. <rdar://problem/11992686>

3:23 PM Changeset in webkit [124662] by leviw@chromium.org
  • 22 edits in trunk/Source/WebCore

Switch mapLocalToContainer to use a flag instead of boolean parameters
https://bugs.webkit.org/show_bug.cgi?id=92927

Reviewed by Dirk Schulze.

Changing mapLocalToContainer to use a uint flag to set the mode of operation. This removes
simplifies the contract, removes boolean arguments and paves the way for an additional mode
for sub-pixel layout support. See https://bugs.webkit.org/show_bug.cgi?id=89238 for the
sub-pixel use case. Other than the new MapLocalToContainerMode enum and MapLocalToContainerFlags
typedef, this change is purely mechanical.

No new tests as this doesn't change current behavior.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::selectionGapRectsForRepaint):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer):

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::mapToAbsolute):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::mapLocalToContainer):

  • rendering/RenderInline.h:

(RenderInline):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::localToAbsolute):
(WebCore::RenderObject::mapLocalToContainer):
(WebCore::RenderObject::localToContainerQuad):
(WebCore::RenderObject::localToContainerPoint):

  • rendering/RenderObject.h:

(RenderObject): Adding the MapLocalToContainerMode enum and MapLocalToContainerFlags unsigned
int, and removing the old ApplyContainerFlipOrNot enum.

  • rendering/RenderView.cpp:

(WebCore::RenderView::mapLocalToContainer):

  • rendering/RenderView.h:

(RenderView):

  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::mapLocalToContainer):

  • rendering/svg/RenderSVGForeignObject.h:

(RenderSVGForeignObject):

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::mapLocalToContainer):

  • rendering/svg/RenderSVGInline.h:

(RenderSVGInline):

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::mapLocalToContainer):

  • rendering/svg/RenderSVGModelObject.h:

(RenderSVGModelObject):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::mapLocalToContainer):

  • rendering/svg/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::mapLocalToContainer):

  • rendering/svg/RenderSVGText.h:

(RenderSVGText):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::mapLocalToContainer):

3:06 PM Changeset in webkit [124661] by rniwa@webkit.org
  • 4 edits in trunk/Tools

run-perf-tests should generate JSON output and results page by default
https://bugs.webkit.org/show_bug.cgi?id=93042

Reviewed by Eric Seidel.

Generate results JSON and page named PerfTestResults.json and PerfTestResults.html by default.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.perf_results_directory): Added.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner): Added _DEFAULT_JSON_FILENAME.
(PerfTestsRunner._parse_args): Added --no-results option in the case a user doens't want to generate
results JSON or results page.
(PerfTestsRunner.run):
(PerfTestsRunner._generate_and_show_results): Extracted from run. Set the default json file path using
port's perf_results_directory and call show_results_html_file at the end if the results page is generated.
(PerfTestsRunner._generate_results_dict): Renamed from _generate_output to disambiguate it from
_generate_and_show_results.
(PerfTestsRunner._generate_output_files): Takes results page's path instead of a boolean indicating
whether results page should be generated or not.

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner_and_setup_results_template):
(test_run_respects_results_output): Added.
(test_run_generates_json_by_default): Added.
(test_run_generates_and_show_results_page): Added a check to ensure show_results_html_file is called.

3:04 PM Changeset in webkit [124660] by Lucas Forschler
  • 13 edits
    3 copies in branches/safari-536.26-branch

Merged r123912. <rdar://problem/11979229>

3:03 PM Changeset in webkit [124659] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Nothing happens when clicking on the unavailable plug-in button for a blocked plug-in
https://bugs.webkit.org/show_bug.cgi?id=93161

Reviewed by John Sullivan.

Be more robust against values being added to the RenderEmbeddedObject::PluginUnavailabilityReason
enumeration, and use a switch statement instead of blindly casting the type value to a WKPluginUnavailabilityReason.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::unavailablePluginButtonClicked):

3:00 PM Changeset in webkit [124658] by eae@chromium.org
  • 7 edits in trunk/Source/WebCore

Remove dependency on LayoutTypes.h from transformation code
https://bugs.webkit.org/show_bug.cgi?id=93037

Reviewed by Levi Weintraub.

TransformationMatrix and HitTestingTransformState includes LayoutTypes.h
which is in rendering. This is a layering violation.
Remove this dependency as it is no longer needed.

No new tests, no change in functionality.

  • rendering/LayoutTypes.h:

Remove clampToLayoutUnit

  • platform/FractionalLayoutUnit.h:

(WebCore::FractionalLayoutUnit::clamp):
Add FractionalLayoutUnit::clamp method that clamps a double to a FractionalLayoutUnit.

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::clampEdgeValue):
(WebCore::TransformationMatrix::clampedBoundsOfProjectedQuad):
Use clamp/max/min from FractionalLayoutUnit instead of going through LayoutUnit abstraction.

  • platform/graphics/transforms/TransformationMatrix.h:
  • rendering/HitTestingTransformState.cpp:
  • rendering/HitTestingTransformState.h:

Replace use of LayoutRect with FractionalLayoutRect as LayoutRect maps to FractionalLayoutRect on all platforms.

2:57 PM Changeset in webkit [124657] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r122293. <rdar://problem/11968351>

2:50 PM Changeset in webkit [124656] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-536.26-branch

Merged r122188. <rdar://problem/11968363>

2:41 PM Changeset in webkit [124655] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG::StructureCheckHoistingPhase keeps a Node& around for too long
https://bugs.webkit.org/show_bug.cgi?id=93157

Reviewed by Mark Hahnenberg.

  • dfg/DFGStructureCheckHoistingPhase.cpp:

(JSC::DFG::StructureCheckHoistingPhase::run):

2:37 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
2:30 PM Changeset in webkit [124654] by mitz@apple.com
  • 5 edits
    2 adds in trunk

Source/WebCore: <rdar://problem/12005188> REGRESSION (Safari 5.1 - 6): Cannot correctly display Traditional Mongolian Script
https://bugs.webkit.org/show_bug.cgi?id=92864

Reviewed by Sam Weinig.

Test: platform/mac/fast/text/combining-character-sequence-vertical.html

  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::glyphForCharacter): Added this helper function.

  • platform/graphics/SimpleFontData.h:

(SimpleFontData): Declared glyphDataForCharacter.

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore::Font::fontDataForCombiningCharacterSequence): Added logic to use the appropriate
variant of each font in the fallback list, which mimcs the equivalent logic in
glyphDataAndPageForCharacter().

LayoutTests: REGRESSION (Safari 5.1 - 6): Cannot correctly display Traditional Mongolian Script
https://bugs.webkit.org/show_bug.cgi?id=92864

Reviewed by Sam Weinig.

  • platform/mac/fast/text/combining-character-sequence-vertical-expected.html: Added.
  • platform/mac/fast/text/combining-character-sequence-vertical.html: Added.
2:19 PM Changeset in webkit [124653] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

[Chromium] Web Inspector: Win Dbg tests timing out (r123556 or r123560?)
https://bugs.webkit.org/show_bug.cgi?id=92570

Reviewed by Pavel Feldman.

Try restricting the use of the GC hint for canvas contexts to only
WebGL contexts, where it is most needed, to see whether this
clears up the timeouts.

  • bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:

(WebCore::V8HTMLCanvasElement::getContextCallback):

2:13 PM Changeset in webkit [124652] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Small part of "Out-of-process plug-ins should support asynchronous initialization."
<rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

Unreviewed (build fix).

  • Shared/WebPreferencesStore.h:

(WebKit): Include this file which has the declaration of the new pref.

2:10 PM Changeset in webkit [124651] by Patrick Gansterer
  • 2 edits in trunk

[CMake][WIN] Disable C++ exceptions and RTTI
https://bugs.webkit.org/show_bug.cgi?id=93104

Reviewed by Ryosuke Niwa.

Both features are not used in WebKit, so remove them to safe some code.
Also enable compilation of plain c files with multiple processes.

  • Source/cmake/OptionsWindows.cmake:
2:00 PM Changeset in webkit [124650] by dimich@chromium.org
  • 6 edits
    2 deletes in trunk/Tools

Unreviewed, rolling out r124628.
http://trac.webkit.org/changeset/124628
https://bugs.webkit.org/show_bug.cgi?id=93155

Causes random crashes of DRT on Chromium bots (Requested by
dimich on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp:

(MockWebKitPlatformSupport::createMediaStreamCenter):

  • DumpRenderTree/chromium/MockWebKitPlatformSupport.h:

(MockWebKitPlatformSupport):

  • DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:
  • DumpRenderTree/chromium/MockWebMediaStreamCenter.h:
  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: Removed.
  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: Removed.
1:54 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
1:49 PM Changeset in webkit [124649] by beidson@apple.com
  • 8 edits in trunk

Small part of "Out-of-process plug-ins should support asynchronous initialization."
<rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

Reviewed by Anders Carlsson.

Source/WebKit2:

-Add API-level preferences for forcing asynchronous initialization of all plug-ins (for testing).
-Make sure "overridePreference" is hooked up properly for all needed preferences.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetAsynchronousPluginInitializationEnabledForAllPlugins):
(WKPreferencesGetAsynchronousPluginInitializationEnabledForAllPlugins):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::setAsynchronousPluginInitializationEnabled):
(WebKit::WebPage::asynchronousPluginInitializationEnabledForAllPlugins):
(WebKit::WebPage::setAsynchronousPluginInitializationEnabledForAllPlugins):
(WebKit::WebPage::setArtificialPluginInitializationDelayEnabled):
(WebPage):

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues): Reset all preferences related to asynchronous plugin initialization.

1:42 PM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
(diff)
1:42 PM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
(diff)
1:41 PM Changeset in webkit [124648] by dimich@chromium.org
  • 2 edits in trunk/LayoutTests

Added 'crash' expectation to a flaky test fast/multicol/column-span-parent-continuation-crash.html
https://bugs.webkit.org/show_bug.cgi?id=90746

Not reviewed, expectations update.

  • platform/chromium/TestExpectations:
1:31 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
1:24 PM Changeset in webkit [124647] by jpfau@apple.com
  • 10 edits in trunk

Add API for enabling blanket third-party data blocking
https://bugs.webkit.org/show_bug.cgi?id=93022

Reviewed by Anders Carlsson.

Source/WebCore:

Added API for enabling third-party storage blocking.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setThirdPartyStorageBlockingEnabled):
(WebCore::Settings::thirdPartyStorageBlockingEnabled):
(Settings):

Source/WebKit2:

Added API for enabling third-party storage blocking.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetThirdPartyStorageBlockingEnabled):
(WKPreferencesGetThirdPartyStorageBlockingEnabled):

  • UIProcess/API/C/WKPreferences.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Tools:

Added test for default setting of new third-party storage blocking API.

  • TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:

(TestWebKitAPI::TEST):

1:23 PM Changeset in webkit [124646] by dimich@chromium.org
  • 2 edits
    3 deletes in trunk/Source/WebKit/chromium

Unreviewed, rolling out r124632.
http://trac.webkit.org/changeset/124632
https://bugs.webkit.org/show_bug.cgi?id=93154

Added new WebFrameTest.SelectRange which fails on bots
(Requested by dimich on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

  • tests/WebFrameTest.cpp:
  • tests/data/select_range_basic.html: Removed.
  • tests/data/select_range_iframe.html: Removed.
  • tests/data/select_range_scroll.html: Removed.
1:08 PM Changeset in webkit [124645] by annacc@chromium.org
  • 5 edits
    2 adds in trunk

Negative timestamps for TextTrackCues should not be allowed.
https://bugs.webkit.org/show_bug.cgi?id=92939

Reviewed by Eric Carlson.

Make sure cues added in JavaScript are not allowed negative timestamps.
Attempting to add a cue with a negative timestamp is not successful
and setting a timestamp to a negative value has no effect.

Source/WebCore:

Test: media/track/track-cue-negative-timestamp.html

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::addCue): If the cue's startTime or endTime is

negative, do not add the cue.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::setStartTime): Ignore negative values.
(WebCore::TextTrackCue::setEndTime): Ignore negative values.

  • html/track/TextTrackCueList.cpp:

(WebCore::TextTrackCueList::add): Add ASSERTs to check startTime and

endTime are positive.

LayoutTests:

  • media/track/track-cue-negative-timestamp-expected.txt: Added.
  • media/track/track-cue-negative-timestamp.html: Added.
1:03 PM Changeset in webkit [124644] by dimich@chromium.org
  • 7 edits in trunk/Source/WebCore

Unreviewed, rolling out r124594.
http://trac.webkit.org/changeset/124594
https://bugs.webkit.org/show_bug.cgi?id=93152

Broke PlatformAppBrowserTest.Iframes browser_test on Chromium
bots (Requested by dimich on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

  • bindings/generic/BindingSecurity.cpp:

(WebCore::canAccess):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):

  • bindings/v8/BindingState.cpp:

(WebCore::immediatelyReportUnsafeAccessTo):

  • bindings/v8/BindingState.h:

(WebCore):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::reportUnsafeJavaScriptAccess):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

1:02 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
Comments (diff)
12:58 PM Changeset in webkit [124643] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] FrameLoaderClient::restoreViewState() shouldn't trigger painting
https://bugs.webkit.org/show_bug.cgi?id=93141

Patch by Yong Li <yoli@rim.com> on 2012-08-03
Reviewed by Rob Buis.

PR# 172041.
It is not always safe to render the page at this point. So we post a message
instead.

  • Api/WebPage.cpp:

(WebKit):
(BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::restoreViewState):

12:53 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
(diff)
12:49 PM Changeset in webkit [124642] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Apply target fuzzing when sending a context menu event
https://bugs.webkit.org/show_bug.cgi?id=92914

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-08-03
Reviewed by Antonio Gomes.

Source/WebCore:

If TOUCH_ADJUSTMENT is enabled, use bestClickableNodeForTouchPoint to possibly
adjust the location of a context menu event. This change uses the same set of
candidates for touch adjustment as is used for a GestureTap event (which
admittedly is a simplifying assumption).

Test: touchadjustment/touch-links-longpress.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureTap):
Some code moved to the new function adjustGesturePosition.
(WebCore):
(WebCore::EventHandler::adjustGesturePosition):
Added this function to avoid repeated code in handleGestureTap and
sendContextMenuEventForGesture.
(WebCore::EventHandler::sendContextMenuEventForGesture):
Try to adjust the location of |mouseEvent| to correspond to the most
probable gesture target. If no such target exists, the location of
|mouseEvent| is unchanged.

  • page/EventHandler.h:

(EventHandler):

Source/WebKit/chromium:

When constructing a PlatformEvent::GestureLongPress in WebInputEventConversion.cpp,
use |boundingBox| to specify |m_area|.

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):

LayoutTests:

New layout test to verify that context menus appear on links for a long press
gesture when TOUCH_ADJUSTMENT is enabled.

  • platform/qt/Skipped:

Skipped on qt because gestureLongPress is not used for context menus.

  • touchadjustment/touch-links-longpress-expected.txt: Added.
  • touchadjustment/touch-links-longpress.html: Added.
12:47 PM Changeset in webkit [124641] by inferno@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r124475 and r124496.
http://trac.webkit.org/changeset/124475
http://trac.webkit.org/changeset/124496
https://bugs.webkit.org/show_bug.cgi?id=93151

Causing assertion failures in table-section-node-at-point-
crash.html (Requested by inferno-sec on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-03

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paint):

12:46 PM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
Fixed broken link (diff)
12:45 PM Changeset in webkit [124640] by leandrogracia@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[Chromium] Add stubs for the find-in-page match rects API
https://bugs.webkit.org/show_bug.cgi?id=93110

Reviewed by Adam Barth.

The Android port allows tapping on the find-in-page result tickmarks taking
the user to the corresponding matches. This patch introduces stubs for the
new required methods in order to achieve WebKit API compatibility for this
port as soon as possible. The implementation of these methods will be added
later in https://bugs.webkit.org/show_bug.cgi?id=93111.

  • public/WebFrame.h:

(WebKit):
(WebFrame):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::findMatchMarkersVersion):
(WebKit):
(WebKit::WebFrameImpl::activeFindMatchRect):
(WebKit::WebFrameImpl::findMatchRects):
(WebKit::WebFrameImpl::selectNearestFindMatch):

  • src/WebFrameImpl.h:

(WebFrameImpl):

12:45 PM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
(diff)
12:38 PM CoordinatedGraphicsSystem edited by kenneth@webkit.org
A few minor changes (diff)
12:36 PM Changeset in webkit [124639] by kpiascik@rim.com
  • 6 edits in trunk/Source/WebKit/blackberry

[BlackBerry] InspectorOverlay class duplicated in WebCore
https://bugs.webkit.org/show_bug.cgi?id=93124

Reviewed by Rob Buis.

Changed namespace of InspectorOverlay from WebCore to
BlackBerry::WebKit

  • Api/WebPage.cpp:

(WebKit):
(BlackBerry::WebKit::WebPagePrivate::setInspectorOverlayClient):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/InspectorClientBlackBerry.h:
  • WebCoreSupport/InspectorOverlay.cpp:

(BlackBerry::WebKit::InspectorOverlay::create):
(BlackBerry::WebKit::InspectorOverlay::InspectorOverlay):
(BlackBerry::WebKit::InspectorOverlay::notifySyncRequired):
(BlackBerry::WebKit::InspectorOverlay::paintContents):
(BlackBerry::WebKit::InspectorOverlay::showDebugBorders):
(BlackBerry::WebKit::InspectorOverlay::showRepaintCounter):
(BlackBerry::WebKit::InspectorOverlay::contentsVisible):
(BlackBerry::WebKit::InspectorOverlay::update):

  • WebCoreSupport/InspectorOverlay.h:

(WebKit):
(InspectorOverlayClient):
(InspectorOverlay):
(BlackBerry::WebKit::InspectorOverlay::notifyAnimationStarted):

12:33 PM Changeset in webkit [124638] by commit-queue@webkit.org
  • 8 edits
    1 copy in trunk/Source/WebCore

Web Inspector: Create and interface for TextEditor
https://bugs.webkit.org/show_bug.cgi?id=93126

Patch by Jan Keromnes <janx@linux.com> on 2012-08-03
Reviewed by Pavel Feldman.

For more extensibility, TextEditor needs to be an interface that other
classes can implement, e.g. the new class DefaultTextEditor.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):

  • inspector/front-end/TextEditor.js:

(WebInspector.TextEditor):
(WebInspector.TextEditor.prototype.set mimeType):
(WebInspector.TextEditor.prototype.setReadOnly):
(WebInspector.TextEditor.prototype.readOnly):
(WebInspector.TextEditor.prototype.defaultFocusedElement):
(WebInspector.TextEditor.prototype.revealLine):
(WebInspector.TextEditor.prototype.addDecoration):
(WebInspector.TextEditor.prototype.removeDecoration):
(WebInspector.TextEditor.prototype.markAndRevealRange):
(WebInspector.TextEditor.prototype.highlightLine):
(WebInspector.TextEditor.prototype.clearLineHighlight):
(WebInspector.TextEditor.prototype.freeCachedElements):
(WebInspector.TextEditor.prototype.elementsToRestoreScrollPositionsFor):
(WebInspector.TextEditor.prototype.inheritScrollPositions):
(WebInspector.TextEditor.prototype.beginUpdates):
(WebInspector.TextEditor.prototype.endUpdates):
(WebInspector.TextEditor.prototype.onResize):
(WebInspector.TextEditor.prototype._textChanged):
(WebInspector.TextEditor.prototype.editRange):
(WebInspector.TextEditor.prototype.scrollToLine):
(WebInspector.TextEditor.prototype.selection):
(WebInspector.TextEditor.prototype.lastSelection):
(WebInspector.TextEditor.prototype.setSelection):
(WebInspector.TextEditor.prototype.setText):
(WebInspector.TextEditor.prototype.text):
(WebInspector.TextEditor.prototype.range):
(WebInspector.TextEditor.prototype.line):
(WebInspector.TextEditor.prototype.get linesCount):
(WebInspector.TextEditor.prototype.setAttribute):
(WebInspector.TextEditor.prototype.getAttribute):
(WebInspector.TextEditor.prototype.removeAttribute):
(WebInspector.TextEditor.prototype.wasShown):
(WebInspector.TextEditor.prototype._handleFocused):
(WebInspector.TextEditor.prototype.willHide):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
12:18 PM Changeset in webkit [124637] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, adding self to committers.py after becoming committer.

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-03

  • Scripts/webkitpy/common/config/committers.py:
12:14 PM Changeset in webkit [124636] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Blocking a plugin via CSP should result in one (and only one) console message.
https://bugs.webkit.org/show_bug.cgi?id=92649

Patch by Mike West <mkwst@chromium.org> on 2012-08-03
Reviewed by Adam Barth.

Source/WebCore:

Currently, blocking a plugin via Content Security Policy results in some
leakage of console log messages between tests. I'm unclear as to the
root cause, but the symptoms exhibited include
SubframeLoader::requestPlugin being called multiple times for a single
element, which in turn causes multiple console logs to be sent. These
messages tend to appear in the subsequent test, making the
http/test/security/contentSecurityPolicy/object-src-* set of tests
flakey indeed.

This patch addresses the issue by marking elements' plugins as
unavailable when they're blocked by CSP. No new tests have been added:
this patch should simply make the current tests actually pass.

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::requestPlugin):

We check the CSP status in SubframeLoader::loadPlugin, which is
called at the end of this function. Checking CSP status in both
locations is redundant.

(WebCore::SubframeLoader::loadPlugin):

If the plugin is blocked by CSP, tell the element's embedded object
renderer that the plugin is unavailable.

  • platform/LocalizedStrings.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

  • platform/LocalizedStrings.h:

(WebCore):

  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

  • platform/qt/LocalizedStringsQt.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::unavailablePluginReplacementText):

  • rendering/RenderEmbeddedObject.h:

Return appropriate text when the plugin is blocked by CSP.

Source/WebKit/chromium:

  • src/LocalizedStrings.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore):

Adding a stub for the newly added string.

12:00 PM Changeset in webkit [124635] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Limited the number of queried cached build infos in URLs used by Garden-o-matic.
https://bugs.webkit.org/show_bug.cgi?id=92992.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-08-03
Reviewed by Adam Barth.

I added a limit to the cached builds that are included in the URL to avoid too long URLs in Garden-o-matic.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
11:54 AM Changeset in webkit [124634] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Add an IsExecutionTerminating() check to setDOMException()
https://bugs.webkit.org/show_bug.cgi?id=93101

Reviewed by Adam Barth.

In preparation for moving exception related code from V8Proxy to V8Binding,
I am going to remove throwError(ExceptionCode, v8::Isolate*) from V8Proxy.
throwError(ExceptionCode, v8::Isolate*) will be replaced with
setDOMException(ExceptionCode, v8::Isolate*). By this refactoring,
the way to throw JavaScript errors and DOM exceptions becomes simple:
"Throw JavaScript errors by throwError(). Throw DOM exceptions by setDOMException()".
(Currently some DOM exceptions are being thrown by throwError().)

To keep the current behavior of throwError(ExceptionCode, v8::Isolate*),
before the replacement, we need to insert the IsExecutionTerminating()
check to setDOMException(). This will add an extra check to the current
setDOMException(), but I don't think it's a problem.

No tests. No change in behavior.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::setDOMException):

11:39 AM Changeset in webkit [124633] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Avoid dispatching gesture events of unknown types
https://bugs.webkit.org/show_bug.cgi?id=93060

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-08-03
Reviewed by Adam Barth.

WebCore gesture events do not always correspond 1-to-1 to the Platform gesture events. So
avoid dispatching the unknown gesture events to nodes.

  • dom/GestureEvent.cpp:

(WebCore::GestureEvent::create):

  • dom/Node.cpp:

(WebCore::Node::dispatchGestureEvent):

11:36 AM Changeset in webkit [124632] by commit-queue@webkit.org
  • 2 edits
    3 adds in trunk/Source/WebKit/chromium

[chromium] Add a test to WebFrameTest for selectRange and visiblePositionForWindowPoint.
https://bugs.webkit.org/show_bug.cgi?id=93108

Patch by Oli Lan <olilan@chromium.org> on 2012-08-03
Reviewed by Adam Barth.

Adds a new test WebFrameTest.SelectRange. This tests WebFrameImpl::selectRange, and also
serves to test WebFrameImpl::visiblePositionForWindowPoint as it is used by selectRange.

The test uses sample files that contain selected text on load. The test uses
WebViewImpl::selectionBounds to retrieve the ends of the selection, then unselects
and calls WebFrameImpl::selectRange to attempt to reselect the same text.

Three cases are tested: the normal case, the case where the selected text is offscreen
due to a scroll, and the case where the selected text is in an iframe. This allows the
problem cases and fix in https://bugs.webkit.org/show_bug.cgi?id=79117 to be tested.

  • tests/WebFrameTest.cpp:
  • tests/data/select_range_basic.html: Added.
  • tests/data/select_range_iframe.html: Added.
  • tests/data/select_range_scroll.html: Added.
11:34 AM Changeset in webkit [124631] by schenney@chromium.org
  • 3 edits
    2 adds in trunk

Crash when a clip path referencing a clip path changes documents
https://bugs.webkit.org/show_bug.cgi?id=93023

Reviewed by Dirk Schulze.

Source/WebCore:

The SVGClipPathElement is set to not need pending resource handling,
when in fact it can have pending resources. The result is a crash when
the element is moved to a new document (which deletes all resources
and leaves them pending) and then immediately deleted (which asserts
that there are no pending resources). There is code to remove pending
resources upon deletion and removal from the DOM, but it was not
executing for clips because of the aforementioned code claiming that
clips don't require such handling.

The assertion that there be no pending resources is necessary to
prevent caches of pending resources from trying to access the deleted
element.

This change removes the check for needsPendingResourceHandling in
SVGStyledElement upon deletion and removal from the DOM. Pending resources
will always be checked in such cases to ensure we do not introduce
security issues.

Test: svg/custom/clip-path-document-change-assert.html

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::~SVGStyledElement): Removed needsPendingResourceHandling in the conditional to clean up resources.
(WebCore::SVGStyledElement::removedFrom): Removed needsPendingResourceHandling in the conditional to clean up resources.

LayoutTests:

Test that asserts in debug DRT without this change. Any attempt to
delete a clip that references another clip after changing the document
results in a crash.

  • svg/custom/clip-path-document-change-assert-expected.txt: Added.
  • svg/custom/clip-path-document-change-assert.html: Added.
11:23 AM CoordinatedGraphicsSystem edited by noam.rosenthal@nokia.com
(diff)
11:23 AM Changeset in webkit [124630] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Remove unused methods in V8Proxy
https://bugs.webkit.org/show_bug.cgi?id=93106

Reviewed by Adam Barth.

In preparation for removing V8Proxy, we can remove unused methods in V8Proxy.

No tests. No change in behavior.

  • bindings/v8/V8Proxy.h:

(V8Proxy):

11:20 AM Changeset in webkit [124629] by haraken@chromium.org
  • 12 edits in trunk/Source/WebCore

[V8] Implement v8Undefined()
https://bugs.webkit.org/show_bug.cgi?id=93093

Reviewed by Adam Barth.

There are a couple of equivalent ways to create an undefined value,
e.g. v8::Undefined(), v8::Undefined(isolate), v8::Handle<v8::Value>(), etc.
We should implement v8Undefined() and use it everywhere.

In this bug, we implement v8Undefined() and use it in CodeGeneratorV8.pm.
We can implement v8Undefined() like this:

v8::Handle<v8::Value> v8Undefined() { v8::Handle<v8::Value>(); }

This is based on the following performance results:

14.5 ns
v8::Handle<v8::Value> xxxAttrGetter(..., info) {

return v8::Undefined();

}

8.24 ns (This cannot be used where isolate can be 0.)
v8::Handle<v8::Value> xxxAttrGetter(..., info) {

return v8::Undefined(info.GetIsolate());

}

8.54 ns
v8::Handle<v8::Value> xxxAttrGetter(..., info) {

v8::Isolate* isolate = info.GetIsolate();
return isolate ? v8::Handle<v8::Value>(v8::Undefined(isolate)) : v8::Handle<v8::Value>();

}

8.52 ns
v8::Handle<v8::Value> xxxAttrGetter(..., info) {

return v8::Handle<v8::Value>();

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateConstructorGetter):
(GenerateNormalAttrGetter):
(GenerateNewFunctionTemplate):
(GenerateEventListenerCallback):
(GenerateFunctionCallback):
(GenerateCallWith):
(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(GenerateNonStandardFunction):
(GenerateImplementation):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::ConfigureV8Float64ArrayTemplate):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::wrapSlow):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::constructorCallback):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore::TestEventTargetV8Internal::addEventListenerCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerCallback):
(WebCore::ConfigureV8TestEventTargetTemplate):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::supplementalMethod1Callback):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::TestInterfaceV8Internal::supplementalMethod4Callback):
(WebCore::ConfigureV8TestInterfaceTemplate):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore::TestMediaQueryListListenerV8Internal::methodCallback):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
(WebCore::TestObjV8Internal::cachedAttribute1AttrGetter):
(WebCore::TestObjV8Internal::cachedAttribute2AttrGetter):
(WebCore::TestObjV8Internal::TestObjConstructorGetter):
(WebCore::TestObjV8Internal::voidMethodCallback):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgCallback):
(WebCore::TestObjV8Internal::serializedValueCallback):
(WebCore::TestObjV8Internal::idbKeyCallback):
(WebCore::TestObjV8Internal::optionsObjectCallback):
(WebCore::TestObjV8Internal::methodWithExceptionCallback):
(WebCore::TestObjV8Internal::addEventListenerCallback):
(WebCore::TestObjV8Internal::removeEventListenerCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::methodWithCallbackArgCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgCallback):
(WebCore::TestObjV8Internal::conditionalMethod2Callback):
(WebCore::TestObjV8Internal::conditionalMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod2Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod4Callback):
(WebCore::TestObjV8Internal::overloadedMethod5Callback):
(WebCore::TestObjV8Internal::overloadedMethod6Callback):
(WebCore::TestObjV8Internal::overloadedMethod7Callback):
(WebCore::TestObjV8Internal::overloadedMethod8Callback):
(WebCore::TestObjV8Internal::overloadedMethod9Callback):
(WebCore::TestObjV8Internal::overloadedMethod10Callback):
(WebCore::TestObjV8Internal::classMethodCallback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::classMethodWithClampCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2Callback):
(WebCore::TestObjV8Internal::convert1Callback):
(WebCore::TestObjV8Internal::convert2Callback):
(WebCore::TestObjV8Internal::convert3Callback):
(WebCore::TestObjV8Internal::convert4Callback):
(WebCore::TestObjV8Internal::convert5Callback):
(WebCore::TestObjV8Internal::orangeCallback):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListCallback):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListCallback):
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

  • bindings/v8/V8Binding.h:

(WebCore::v8Undefined):
(WebCore):

11:17 AM Changeset in webkit [124628] by tommyw@google.com
  • 6 edits
    2 copies in trunk/Tools

[chromium] MediaStream API: Add MockWebRTCPeerConnectionHandler
https://bugs.webkit.org/show_bug.cgi?id=93091

Reviewed by Adam Barth.

Add a skeleton MockWebRTCPeerConnectionHandler to DumpRenderTree,
to complete the infrastructure for RTCPeerConnection.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp:

(MockWebKitPlatformSupport::createRTCPeerConnectionHandler):

  • DumpRenderTree/chromium/MockWebKitPlatformSupport.h:

(MockWebKitPlatformSupport):

  • DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:
  • DumpRenderTree/chromium/MockWebMediaStreamCenter.h:
  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.h.

(MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):
(MockWebRTCPeerConnectionHandler::initialize):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.h.

(WebKit):
(MockWebRTCPeerConnectionHandler):
(MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):

10:45 AM Changeset in webkit [124627] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Remove v8StringToWebCoreString()
https://bugs.webkit.org/show_bug.cgi?id=93087

Reviewed by Adam Barth.

There should be only one API that converts V8 String
to WebCore String. v8ValueToWebCoreString() does it.
We can remove v8StringToWebCoreString().

No tests. No change in behavior.

  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):

  • bindings/v8/V8Binding.cpp:

(WebCore::v8ValueToWebCoreString):

  • bindings/v8/V8Binding.h:

(WebCore):

10:39 AM Qt, TextureMapper and Coordinated Compositing.png attached to CoordinatedGraphicsSystem by noam.rosenthal@nokia.com
10:38 AM CoordinatedGraphicsSystem created by noam.rosenthal@nokia.com
WIP
10:32 AM Changeset in webkit [124626] by jonlee@apple.com
  • 3 edits
    2 adds in trunk

Crash in Notification when setting a non-object as an event listener (91881)
https://bugs.webkit.org/show_bug.cgi?id=91881
<rdar://problem/11923341>

Reviewed by Oliver Hunt.

Source/WebCore:

Check to make sure that the value being retrieved is an object. This is similar
to the isObject() check done in the bindings code.

Test: fast/notifications/notifications-event-listener-crash.html

  • bindings/js/Dictionary.h:

(WebCore::Dictionary::getEventListener):

LayoutTests:

  • fast/notifications/notifications-event-listener-crash-expected.txt: Added.
  • fast/notifications/notifications-event-listener-crash.html: Added.
10:21 AM Changeset in webkit [124625] by Hugo Parente Lima
  • 5 edits in trunk

[Qt][WK2] There's no way to test the gesture tap on WTR
https://bugs.webkit.org/show_bug.cgi?id=92895

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add an instance of QtViewportHandler to QQuickWebViewPrivate, so it's
now available on mobile and desktop modes, as a side effect gesture tap
events can now be created and sent to WebCore.

This is needed to test tap gestures and to get tap gestures working
when you have a WebView (in desktop mode) on notebooks equipped with
touch screens.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::onComponentComplete):
(QQuickWebViewFlickablePrivate::onComponentComplete): Implementation
moved to QQuickWebViewPrivate::onComponentComplete.

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):

Tools:

WTR doesn't create the QQuickItem from C++, not from QML, so a call
to componentComplete() was added to mimic the QML behaviour.

  • WebKitTestRunner/qt/PlatformWebViewQt.cpp:

(WTR::PlatformWebView::PlatformWebView):

9:47 AM Changeset in webkit [124624] by haraken@chromium.org
  • 9 edits in trunk/Source/WebCore

[V8] Remove v8StringToAtomicWebCoreString()
https://bugs.webkit.org/show_bug.cgi?id=93086

Reviewed by Dimitri Glazkov.

There should be only one API that converts V8 String to
AtomicString. v8ValueToAtomicWebCoreString() does it.
We can remove v8StringToAtomicWebCoreString().

No tests. No change in behavior.

  • bindings/v8/V8Binding.cpp:

(WebCore::v8ValueToAtomicWebCoreString):

  • bindings/v8/V8Binding.h:

(WebCore):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::getter):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::V8DOMWindow::namedPropertyGetter):

  • bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:

(WebCore::V8HTMLAllCollection::namedPropertyGetter):

  • bindings/v8/custom/V8HTMLCollectionCustom.cpp:

(WebCore::V8HTMLCollection::namedPropertyGetter):

  • bindings/v8/custom/V8HTMLFormElementCustom.cpp:

(WebCore::V8HTMLFormElement::namedPropertyGetter):

  • bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:

(WebCore::V8HTMLFrameSetElement::namedPropertyGetter):

9:44 AM Changeset in webkit [124623] by loislo@chromium.org
  • 10 edits in trunk/Source

Web Inspector: eliminate visitBaseClass method from NMI. It introduces unnecessary complexity.
https://bugs.webkit.org/show_bug.cgi?id=93129

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
(WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::reportMemoryUsage):

  • dom/ContainerNode.h:

(WebCore::ContainerNode::reportMemoryUsage):

  • dom/Document.cpp:

(WebCore::Document::reportMemoryUsage):

  • dom/Element.h:

(WebCore::Element::reportMemoryUsage):

  • dom/MemoryInstrumentation.h:
  • dom/Node.cpp:

(WebCore::Node::reportMemoryUsage):

Source/WebKit/chromium:

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::InstrumentedWithOwnPtr::reportMemoryUsage):

9:41 AM Changeset in webkit [124622] by ap@apple.com
  • 8 edits in trunk/Source/WebKit2

[WK2] Move some WebContext messages to WebProcessProxy
https://bugs.webkit.org/show_bug.cgi?id=93046

Reviewed by Anders Carlsson.

  • UIProcess/WebContext.cpp: (WebKit::WebContext::didReceiveSyncMessage): Unrelated fix - use actual process argument instead of second-guessing where the message came from.
  • UIProcess/WebContext.h: (WebKit::WebContext::historyClient): Expose history client, since WebProcessProxy now needs it.
  • UIProcess/WebContext.messages.in:
  • UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::didNavigateWithNavigationData): (WebKit::WebProcessProxy::didPerformClientRedirect): (WebKit::WebProcessProxy::didPerformServerRedirect): (WebKit::WebProcessProxy::didUpdateHistoryTitle):
  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebProcessProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::updateGlobalHistory): (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): (WebKit::WebFrameLoaderClient::setTitle): Move the messages.
9:25 AM Changeset in webkit [124621] by commit-queue@webkit.org
  • 21 edits
    1 copy
    8 moves
    10 deletes in trunk/Source

[chromium] Move ubercomp quads back into CC
https://bugs.webkit.org/show_bug.cgi?id=93062

Patch by Alexandre Elias <aelias@google.com> on 2012-08-03
Reviewed by James Robinson.

Because GTFO is almost done, we can move back the quad types
to CC and pickle them there. This patch moves everything back
to where it was before and changes types like WebRect to IntRect.

As a bonus, I also added CCRenderPassDrawQuad and CCYUVVideoDrawQuad
(which had been left in the CC files) to CCDrawQuad::size(), so now
every quad type is ready for serialization.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebCompositorCheckerboardQuad.h: Removed.
  • chromium/public/WebCompositorDebugBorderQuad.h: Removed.
  • chromium/public/WebCompositorIOSurfaceQuad.h: Removed.
  • chromium/public/WebCompositorQuad.h: Removed.
  • chromium/public/WebCompositorSharedQuadState.h: Removed.
  • chromium/public/WebCompositorSolidColorQuad.h: Removed.
  • chromium/public/WebCompositorStreamVideoQuad.h: Removed.
  • chromium/public/WebCompositorTextureQuad.h: Removed.
  • chromium/public/WebCompositorTileQuad.h: Removed.

Source/WebCore:

No new tests (no-op refactoring).

  • WebCore.gypi:
  • platform/chromium/support/WebCompositorStreamVideoQuad.cpp: Removed.
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):

  • platform/graphics/chromium/cc/CCCheckerboardDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCQuadSink.h.

(WebCore):
(WebCore::CCCheckerboardDrawQuad::create):
(WebCore::CCCheckerboardDrawQuad::CCCheckerboardDrawQuad):
(WebCore::CCCheckerboardDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCCheckerboardDrawQuad.h:

(WebCore):
(CCCheckerboardDrawQuad):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorDebugBorderQuad.cpp.

(WebCore):
(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
(WebCore::CCDebugBorderDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h:

(WebCore):
(CCDebugBorderDrawQuad):
(WebCore::CCDebugBorderDrawQuad::color):
(WebCore::CCDebugBorderDrawQuad::width):

  • platform/graphics/chromium/cc/CCDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorQuad.cpp.

(WebCore):
(WebCore::CCDrawQuad::CCDrawQuad):
(WebCore::CCDrawQuad::opaqueRect):
(WebCore::CCDrawQuad::setQuadVisibleRect):
(WebCore::CCDrawQuad::size):
(WebCore::CCDrawQuad::setSharedQuadState):

  • platform/graphics/chromium/cc/CCDrawQuad.h:

(WebCore):
(CCDrawQuad):
(WebCore::CCDrawQuad::quadRect):
(WebCore::CCDrawQuad::quadTransform):
(WebCore::CCDrawQuad::visibleContentRect):
(WebCore::CCDrawQuad::scissorRect):
(WebCore::CCDrawQuad::opacity):
(WebCore::CCDrawQuad::needsBlending):
(WebCore::CCDrawQuad::isLayerAxisAlignedIntRect):
(WebCore::CCDrawQuad::quadVisibleRect):
(WebCore::CCDrawQuad::isDebugQuad):
(WebCore::CCDrawQuad::material):
(WebCore::CCDrawQuad::sharedQuadState):
(WebCore::CCDrawQuad::sharedQuadStateId):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:

(WebCore::CCHeadsUpDisplayLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorIOSurfaceQuad.cpp.

(WebCore):
(WebCore::CCIOSurfaceDrawQuad::create):
(WebCore::CCIOSurfaceDrawQuad::CCIOSurfaceDrawQuad):
(WebCore::CCIOSurfaceDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.h:

(WebCore):
(CCIOSurfaceDrawQuad):
(WebCore::CCIOSurfaceDrawQuad::ioSurfaceSize):
(WebCore::CCIOSurfaceDrawQuad::ioSurfaceTextureId):
(WebCore::CCIOSurfaceDrawQuad::orientation):

  • platform/graphics/chromium/cc/CCQuadCuller.h:

(CCQuadCuller):

  • platform/graphics/chromium/cc/CCQuadSink.h:

(WebCore):
(CCQuadSink):

  • platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:

(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
(WebCore::CCRenderPassDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:

(CCRenderPassDrawQuad):

  • platform/graphics/chromium/cc/CCSharedQuadState.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorSharedQuadState.cpp.

(WebCore):
(WebCore::CCSharedQuadState::CCSharedQuadState):
(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.h:

(WebCore):
(CCSharedQuadState):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorSolidColorQuad.cpp.

(WebCore):
(WebCore::CCSolidColorDrawQuad::create):
(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):
(WebCore::CCSolidColorDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.h:

(WebCore):
(CCSolidColorDrawQuad):
(WebCore::CCSolidColorDrawQuad::color):

  • platform/graphics/chromium/cc/CCStreamVideoDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorCheckerboardQuad.cpp.

(WebCore):
(WebCore::CCStreamVideoDrawQuad::create):
(WebCore::CCStreamVideoDrawQuad::CCStreamVideoDrawQuad):
(WebCore::CCStreamVideoDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCStreamVideoDrawQuad.h:

(WebCore):
(CCStreamVideoDrawQuad):
(WebCore::CCStreamVideoDrawQuad::textureId):
(WebCore::CCStreamVideoDrawQuad::matrix):

  • platform/graphics/chromium/cc/CCTextureDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorTextureQuad.cpp.

(WebCore):
(WebCore::CCTextureDrawQuad::create):
(WebCore::CCTextureDrawQuad::CCTextureDrawQuad):
(WebCore::CCTextureDrawQuad::setNeedsBlending):
(WebCore::CCTextureDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCTextureDrawQuad.h:

(WebCore):
(CCTextureDrawQuad):
(WebCore::CCTextureDrawQuad::uvRect):
(WebCore::CCTextureDrawQuad::resourceId):
(WebCore::CCTextureDrawQuad::premultipliedAlpha):
(WebCore::CCTextureDrawQuad::flipped):

  • platform/graphics/chromium/cc/CCTileDrawQuad.cpp: Renamed from Source/WebCore/platform/chromium/support/WebCompositorTileQuad.cpp.

(WebCore):
(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):
(WebCore::CCTileDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h:

(WebCore):
(CCTileDrawQuad):
(WebCore::CCTileDrawQuad::resourceId):
(WebCore::CCTileDrawQuad::textureOffset):
(WebCore::CCTileDrawQuad::textureSize):
(WebCore::CCTileDrawQuad::textureFilter):
(WebCore::CCTileDrawQuad::swizzleContents):
(WebCore::CCTileDrawQuad::leftEdgeAA):
(WebCore::CCTileDrawQuad::topEdgeAA):
(WebCore::CCTileDrawQuad::rightEdgeAA):
(WebCore::CCTileDrawQuad::bottomEdgeAA):
(WebCore::CCTileDrawQuad::isAntialiased):

  • platform/graphics/chromium/cc/CCYUVVideoDrawQuad.cpp:

(WebCore::CCYUVVideoDrawQuad::create):
(WebCore::CCYUVVideoDrawQuad::CCYUVVideoDrawQuad):
(WebCore::CCYUVVideoDrawQuad::materialCast):

  • platform/graphics/chromium/cc/CCYUVVideoDrawQuad.h:

(CCYUVVideoDrawQuad):

9:08 AM Changeset in webkit [124620] by kbalazs@webkit.org
  • 3 edits in trunk/Source/WebKit2

Unreviewed, rolling out r124603.
http://trac.webkit.org/changeset/124603
https://bugs.webkit.org/show_bug.cgi?id=93077

Made a few tests crash under
LayerTreeCoordinator::flushPendingLayerChanges

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

9:07 AM Changeset in webkit [124619] by apavlov@chromium.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, restore Web Inspector JS frontend compilability after r124484 (fix JSDoc annotations).

  • inspector/front-end/Settings.js:
  • inspector/front-end/SettingsScreen.js:
  • inspector/front-end/UserAgentSupport.js:

(WebInspector.UserAgentSupport.DeviceOrientation):

9:05 AM Changeset in webkit [124618] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r124567.
http://trac.webkit.org/changeset/124567
https://bugs.webkit.org/show_bug.cgi?id=89382

Broke some tests with external resources

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::willSendRequestForFrame):

8:51 AM Changeset in webkit [124617] by Philippe Normand
  • 8 edits in trunk

Unreviewed, rolling out r124614.
http://trac.webkit.org/changeset/124614
https://bugs.webkit.org/show_bug.cgi?id=91727

gstreamer core .po files mess up the build again

Source/WebCore:

  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::adoptGRef):

  • platform/graphics/gstreamer/GStreamerVersioning.cpp:

(setGstElementClassMetadata):

  • platform/graphics/gstreamer/GStreamerVersioning.h:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient::didReceiveResponse):

Tools:

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject):

  • gtk/jhbuild.modules:
8:22 AM Changeset in webkit [124616] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Initialize the Event Names' string from read only memory
https://bugs.webkit.org/show_bug.cgi?id=92435

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-08-03
Reviewed by Anders Carlsson.

Similarily to r123689, we can initialize the event names' string from memory without copying the data.
This saves us memory and initialization time.

  • dom/EventNames.cpp:

(WebCore):

8:19 AM Changeset in webkit [124615] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Overlays display checkerboard that doesn't resolve
https://bugs.webkit.org/show_bug.cgi?id=93099

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-03
Reviewed by Antonio Gomes.

The WebKit-thread overlays, like tap highlight, inspector highlight and
selection are all part of a separate graphics layer tree rooted in
WebPagePrivate::m_overlayLayer.

When LayerRenderer needs to schedule a commit to reactively render
tiles and resolve checkerboard, it does so through the root layer.
Since the overlay layer root didn't have a GraphicsLayerClient, there
was no implementation of GraphicsLayerClient::notifySyncRequired() to
call, and a commit was never scheduled, thus checkerboard never
resolved.

Fixed by adding a fallback implementation of GraphicsLayerClient in
WebPagePrivate and hooking up the overlay root to it. Also, this
implementation can be shared by the various overlays to avoide code
duplication, specifically to implement notifySyncRequired(),
showDebugBorders() and showRepaintCounter() only once.

Fixing this revealed a bug where the web page would get stuck in an
endless sequence of commits. It turned out that
WebPagePrivate::updateDelegatedOverlays() was called right in the
middle of the commit operation, after performing the webkit thread part
of the commit operation but before we continued on the compositing
thread. Since updateDelegatedOverlays() typically mutates layers, this
is very bad (layers should not be mutated mid-commit). The mutations
also cause a new commit to scheduled from within the current, which
results in an endless sequence of commits.

Fixed this latter bug by moving the updateDelegatedOverlays() call to
the beginning of the method where it can cause no harm. This is before
we mark the web page as no longer needing commit, so even if the
implementation flips the "needs commit" bit, we will immediately flip
it back and proceed with commit as usual.

PR 187458, 184377

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::overlayLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::notifySyncRequired):
(BlackBerry::WebKit::WebPagePrivate::showDebugBorders):
(BlackBerry::WebKit::WebPagePrivate::showRepaintCounter):

  • Api/WebPage_p.h:

(WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::notifyAnimationStarted):
(BlackBerry::WebKit::WebPagePrivate::paintContents):

  • WebCoreSupport/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::notifySyncRequired):
(WebCore::InspectorOverlay::showDebugBorders):
(WebCore::InspectorOverlay::showRepaintCounter):

  • WebKitSupport/DefaultTapHighlight.cpp:

(BlackBerry::WebKit::DefaultTapHighlight::notifySyncRequired):
(BlackBerry::WebKit::DefaultTapHighlight::showDebugBorders):
(WebKit):
(BlackBerry::WebKit::DefaultTapHighlight::showRepaintCounter):

  • WebKitSupport/DefaultTapHighlight.h:

(DefaultTapHighlight):

  • WebKitSupport/SelectionOverlay.cpp:

(BlackBerry::WebKit::SelectionOverlay::notifySyncRequired):
(BlackBerry::WebKit::SelectionOverlay::showDebugBorders):
(WebKit):
(BlackBerry::WebKit::SelectionOverlay::showRepaintCounter):

  • WebKitSupport/SelectionOverlay.h:

(SelectionOverlay):

7:55 AM WebKit Team edited by Carlos Garcia Campos
Move myself from committer to reviewer list (diff)
7:43 AM Changeset in webkit [124614] by Philippe Normand
  • 8 edits in trunk

[GTK][jhbuild] Switch to GStreamer 0.11 build
https://bugs.webkit.org/show_bug.cgi?id=91727

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Add a new function to encapsulate the GStreamer API removal of
GST_OBJECT_IS_FLOATING in the upcoming 1.0 release. Use of this
macro can now be replaced by calling the g_object_is_floating
function.

  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::adoptGRef):

  • platform/graphics/gstreamer/GStreamerVersioning.cpp:

(gstObjectIsFloating):

  • platform/graphics/gstreamer/GStreamerVersioning.h:

Tools:

Switch build-webkit --gtk to GStreamer 0.11 support and build the
necessary GStreamer git modules from JHBuild.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject): Build WebKit with GStreamer 0.11 support.

  • gtk/jhbuild.modules: GStreamer build support.
7:40 AM Changeset in webkit [124613] by mario@webkit.org
  • 5 edits in trunk

Unreviewed build fix for GTK after r124479.

.:

  • Source/autotools/symbols.filter: Removed unneeded symbol.

Source/WebKit2:

  • UIProcess/WebInspectorProxy.cpp:

(WebKit): Moved static const definitions from header file.

  • UIProcess/WebInspectorProxy.h:

(WebInspectorProxy): Don't give values to static const members
here.

7:39 AM Changeset in webkit [124612] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium mac] DumpRenderTree compile fails with warning/error in LayoutTestHelper.mm with 10.7sdk
https://bugs.webkit.org/show_bug.cgi?id=92820

Reviewed by Jochen Eisinger.

When building with the 10.7 SDK, use newer functions to switch color
profiles. Note that these newer functions aren't available on 10.6,
but we don't intend to ship DRT to users, and no bots that currently
build with the 10.7 SDK ship their binaries to 10.6 testers.

The new code was copied from Apple's DRT/mac/LayoutTestHelper.m.

  • DumpRenderTree/chromium/LayoutTestHelper.mm:

(installLayoutTestColorProfile):
(restoreUserColorProfile):
(saveCurrentColorProfile):

7:37 AM Changeset in webkit [124611] by benjamin@webkit.org
  • 7 edits
    2 adds in trunk

StringImpl created from literal should be BufferInternal
https://bugs.webkit.org/show_bug.cgi?id=92940

Reviewed by Anders Carlsson.

Source/WTF:

The ownership of string created from literal should be BufferInternal so that
StringImpl never tries to delete the characters.

The ownership was accidentaly set to BufferOwned in r123689.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createFromLiteral): Update to use the new constructor.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):
Add a new constructor making the construction from literal explicit.
Add the flag s_hashFlagHasTerminatingNullCharacter since the data has the terminating
null character.

Tools:

Add tests for the contruction of strings from literal.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/AtomicString.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/StringImpl.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST):

7:15 AM Changeset in webkit [124610] by kbalazs@webkit.org
  • 3 edits in trunk/Tools

[nrwt] fix unit tests after turned pixel testing to be a per test setting
https://bugs.webkit.org/show_bug.cgi?id=93112

Reviewed by Csaba Osztrogonác.

Change unit tests in accordance of per test switching of pixel testing.

  • Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:

(ChromiumAndroidDriverTest.test_command_from_driver_input):

  • Scripts/webkitpy/layout_tests/port/driver_unittest.py:

(DriverTest.test_no_timeout):

7:14 AM Changeset in webkit [124609] by staikos@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Add a null check for media implementation to fix a crash.
https://bugs.webkit.org/show_bug.cgi?id=93107

Reviewed by Rob Buis.

Fixes media/video-size.html.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::paintMediaSliderTrack): Add null check.

7:11 AM Changeset in webkit [124608] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Populate .qmake.cache from the top-level project file

This makes it possible to build webkit without using the perl build
script. The duplicated logic in build-webkit will be removed when we
remove the Qt4 code paths. The build-webkit script will then simply
call 'qmake WebKit.pro' from WEBKITOUTPUTDIR.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-08-03
Reviewed by Tor Arne Vestbø.

7:10 AM Changeset in webkit [124607] by vestbo@webkit.org
  • 3 edits in trunk/Tools

[Qt] Move build config default to build-webkit instead of default_pre

Allows the qmake buildsystem have its own default.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-08-03
Reviewed by Tor Arne Vestbø.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

  • qmake/mkspecs/features/default_pre.prf:
7:07 AM Changeset in webkit [124606] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fixed WinCE compilation after r124589.

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
(WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):

6:53 AM Changeset in webkit [124605] by keishi@webkit.org
  • 7 edits in trunk

Add keyboard support for color suggestion popup
https://bugs.webkit.org/show_bug.cgi?id=93069

Reviewed by Kent Tamura.

Source/WebCore:

This adds support for keyboard inside the color suggestion popup.
Tab or arrow keys to move around. Return or space to select the color.
Escape closes the popup.

No new tests. Covered in platform/chromium/fast/forms/color/color-suggestion-picker-appearance.html.

  • Resources/colorSuggestionPicker.css:

(.color-swatch):
(.color-swatch:focus):

  • Resources/colorSuggestionPicker.js:

(ColorPicker):
(ColorPicker.prototype._layout):
(ColorPicker.prototype.selectColorAtIndex): Selects color at index.
(ColorPicker.prototype._handleMouseMove): Set focus to the swatch under the mouse cursor.
(ColorPicker.prototype._handleKeyDown): Move focused element on arrow keys.
(ColorPicker.prototype._handleMouseDown): Prevents blur on click.

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png:
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/color/color-suggestion-picker-appearance.html:
6:47 AM Changeset in webkit [124604] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening of failing tests
https://bugs.webkit.org/show_bug.cgi?id=93098

Unreviewed EFL gardening. Add failing tests to the Test Expectations.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-08-03

  • platform/efl/TestExpectations:
6:06 AM Changeset in webkit [124603] by kbalazs@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] LayerTreeCoordinator can disallow tile updates in forceRepaint
https://bugs.webkit.org/show_bug.cgi?id=93077

Reviewed by Jocelyn Turcotte.

Force tile updates when doing a forced repaint.

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

5:56 AM Changeset in webkit [124602] by mario@webkit.org
  • 2 edits in trunk/Tools

Unreviewed build fix for GTK after r124581.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(runTest): Fix wrong variable name in ASSERT.

5:54 AM Changeset in webkit [124601] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Always save CONFIG & DEFINES in default_pre

Always doing it is cheaper than checking whether it needs to be done.
apart from that, it would break configuration initiated from another
project.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-08-03
Reviewed by Tor Arne Vestbø.

  • qmake/mkspecs/features/default_pre.prf:
5:25 AM Changeset in webkit [124600] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

[WTR] process unresponsiveness is reported to the wrong test
https://bugs.webkit.org/show_bug.cgi?id=88404

2nd unreviewed buildfix.

  • WebKitTestRunner/TestInvocation.cpp:
5:16 AM Changeset in webkit [124599] by commit-queue@webkit.org
  • 3 edits in trunk

[EFL][DRT] fast/loader/stop-provisional-loads.html fails
https://bugs.webkit.org/show_bug.cgi?id=92219

Patch by Joone Hur <joone.hur@intel.com> on 2012-08-03
Reviewed by Kenneth Rohde Christiansen.

This patch adds the ability to tell DRT to call ewk_frame_stop
inside of a didStartProvisionalLoadForFrame signal handler.
It allows to pass fast/loader/stop-provisional-loads.html.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::onFrameProvisionalLoad):

5:08 AM Changeset in webkit [124598] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

[WTR] process unresponsiveness is reported to the wrong test
https://bugs.webkit.org/show_bug.cgi?id=88404

Unreviewed buildfix. Also made the change on the array size
suggested on review because I forgot it when landed.

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):

4:53 AM Changeset in webkit [124597] by vestbo@webkit.org
  • 2 edits in trunk/Source/WebCore

Add missing include to build on Mac OS 10.8

Reviewed by Ossy.

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
4:51 AM Changeset in webkit [124596] by kbalazs@webkit.org
  • 6 edits in trunk/Tools

[WTR] process unresponsiveness is reported to the wrong test
https://bugs.webkit.org/show_bug.cgi?id=88404

Reviewed by Zoltan Herczeg.

Do resetting to consistent state after the finished test,
not before the next. This way we can report unresponsiveness
to the test that triggered it, and we do a restart before the
next test so it will start in a functional state.

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitDriver._check_for_driver_crash):
Print the error line for unresponsive web process, otherwise
it's hard to tell what happened.

  • WebKitTestRunner/TestController.cpp:

(WTR):
Decreased the default short timeout so we can detect unresponsiveness
before the timer of the test harness times out. It was unnecessarily
high anyway, we should get answer from the web process in those cases
when the short timeout is used in less than a second.
(WTR::TestController::runTest):
(WTR::TestController::run):

  • WebKitTestRunner/TestController.h:

(TestController):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):
(WTR::TestInvocation::dump):
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):

  • WebKitTestRunner/TestInvocation.h:

(TestInvocation): Make the dump function static as it doesn't need an object.

4:38 AM BuildBot edited by gyuyoung.kim@samsung.com
(diff)
4:23 AM Changeset in webkit [124595] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

[EFL] (REGRESSION 124581) : EFL 64-bit Debug bot is red and build is exiting early after 20 test crashes
https://bugs.webkit.org/show_bug.cgi?id=93084

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-08-03
Reviewed by Csaba Osztrogonác.

Fix regression introduced in r124581.

  • DumpRenderTree/efl/DumpRenderTree.cpp:

(getFinalTestURL): Convert the path into a full file URL.
(runTest):

4:17 AM Changeset in webkit [124594] by abarth@webkit.org
  • 7 edits in trunk/Source/WebCore

[V8] Re-wire "target" half of the same-origin security check through Document rather than DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=93079

Reviewed by Eric Seidel.

Before this patch, we were traversing from Nodes to Frames to
DOMWindows to SecurityOrigins when determing the "target" of an
operation for the same-origin policy security check. Rather than
detouring through DOMWindow, these security checks should operate in
terms of ScriptExecutionContexts (aka Documents) because that's the
canonical place we store SecurityOrigin objects.

A future patch will re-wire the "active" part of the security check to
use ScriptExecutionContexts as well and we'll be able to remove the
extra copy of SecurityOrigin that we keep in DOMWindow.

  • bindings/generic/BindingSecurity.cpp:

(WebCore::canAccessDocument):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):

  • bindings/v8/BindingState.cpp:

(WebCore::immediatelyReportUnsafeAccessTo):

  • bindings/v8/BindingState.h:

(WebCore):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::reportUnsafeJavaScriptAccess):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

3:49 AM Changeset in webkit [124593] by keishi@webkit.org
  • 4 edits
    6 adds in trunk

ColorSuggestionPicker popup's height doesn't get smaller than 100 px
https://bugs.webkit.org/show_bug.cgi?id=92945

Reviewed by Kent Tamura.

Source/WebCore:

A window cannot be resized to be smaller than 100x100 pixels so this
adjust the color suggestion popup UI to look better when there are only
a few suggestions.

Tests: platform/chromium/fast/forms/color/color-suggestion-picker-one-row-appearance.html

platform/chromium/fast/forms/color/color-suggestion-picker-two-row-appearance.html

  • Resources/colorSuggestionPicker.css:

(.color-swatch-container): Vertically center the swatches.

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/color/color-suggestion-picker-one-row-appearance-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/color/color-suggestion-picker-two-row-appearance-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/color/color-suggestion-picker-one-row-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/color/color-suggestion-picker-one-row-appearance.html: Added.
  • platform/chromium/fast/forms/color/color-suggestion-picker-two-row-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/color/color-suggestion-picker-two-row-appearance.html: Added.
3:45 AM Changeset in webkit [124592] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Remove InspectorCSSAgent from InstrumentingAgents on clearFrontend()
https://bugs.webkit.org/show_bug.cgi?id=93082

Reviewed by Yury Semikhatsky.

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::~InspectorCSSAgent):
(WebCore::InspectorCSSAgent::setFrontend):
(WebCore::InspectorCSSAgent::clearFrontend):

3:28 AM Changeset in webkit [124591] by commit-queue@webkit.org
  • 12 edits
    1 add in trunk

Web Inspector: Profiles: extract save to file / load from code
https://bugs.webkit.org/show_bug.cgi?id=92348

Patch by Eugene Klyuchnikov <eustas.big@gmail.com> on 2012-08-03
Reviewed by Yury Semikhatsky.

Source/WebCore:

Motivation: extract reusable code for timeline load/save.
FileUtils.js will contain common code. Not all code moved to FileUtils
to make review easier. This code will be moved in next patch.

Core abstractions: OutputStream and OutputStreamDelegate.

OutputStream is interface that is used to transfer entity divded
to chunks. Transfer process is explicitly initialized (startTransfer)
and finalized (finishTrnsfer).

OutputStreamDelegate is interface to receive notifications about
transfer process: onTransferStarted, onChunkTransferred, onTransferFinished.

ChunkedFileReader: utility class that loads file by chunks of specified
size and notifies given delegate. OutputStream is supplied as a
parameter of method "start".

ChunkedFileWriter: implementation of OutputStream that saves data
to file specified by file name and notifies given delegate.

  • WebCore.gypi: Added 'FileUtils.js'.
  • WebCore.vcproj/WebCore.vcproj: Added 'FileUtils.js'.
  • inspector/compile-front-end.py: Added 'FileUtils.js'.
  • inspector/front-end/FileUtils.js: Added.

(WebInspector.OutputStreamDelegate): Added.
(WebInspector.ChunkedFileReader): Added.
(WebInspector.createFileSelectorElement): Added utility method to construct
hidden input element to select file.

  • inspector/front-end/HeapSnapshotLoader.js: Adopted new API.
  • inspector/front-end/HeapSnapshotProxy.js: Adopted new API.
  • inspector/front-end/HeapSnapshotView.js: Adopted new API.

(WebInspector.HeapSnapshotLoadFromFileDelegate):
Extracted from existing code.
(WebInspector.ChunkedFileWriter): Renamed and refactored.
(WebInspector.HeapSnapshotSaveToFileDelegate):
Extracted from existing code.

  • inspector/front-end/ProfilesPanel.js: Adopted new API.

LayoutTests:

Changed test to adopt new API. Replaced FS mock with
reader mock.

  • inspector/profiler/heap-snapshot-loader.html:

Adopted new API.

3:25 AM Changeset in webkit [124590] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: Incorrect blob url href when inspecting
https://bugs.webkit.org/show_bug.cgi?id=93076

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Special-cased the "blob" scheme to return the original URL intact on completion.

  • inspector/front-end/ResourceUtils.js:

(WebInspector.completeURL):

LayoutTests:

  • inspector/styles/styles-url-linkify-expected.txt:
  • inspector/styles/styles-url-linkify.html:
3:18 AM Changeset in webkit [124589] by yurys@chromium.org
  • 30 edits in trunk/Source/WebCore

Web Inspector: add CSSRule memory instrumentation
https://bugs.webkit.org/show_bug.cgi?id=92962

Reviewed by Pavel Feldman.

Added memory footprint reporting method to CSSRule and its descendants.

  • css/CSSCharsetRule.cpp:

(WebCore::CSSCharsetRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSCharsetRule.h:

(CSSCharsetRule):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::reportMemoryUsage):
(WebCore):

  • css/CSSComputedStyleDeclaration.h:

(CSSComputedStyleDeclaration):

  • css/CSSFontFaceRule.cpp:

(WebCore::CSSFontFaceRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSFontFaceRule.h:

(CSSFontFaceRule):

  • css/CSSImportRule.cpp:

(WebCore::CSSImportRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSImportRule.h:

(CSSImportRule):

  • css/CSSMediaRule.cpp:

(WebCore::CSSMediaRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSMediaRule.h:

(CSSMediaRule):

  • css/CSSPageRule.cpp:

(WebCore::CSSPageRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSPageRule.h:

(CSSPageRule):

  • css/CSSRule.cpp:

(WebCore::CSSRule::reportMemoryUsage): we manually implement polymorphic
call here to avoid adding vtable pointer to all CSSRule objects. Descendants
are expected to report their memory via reportDescendantMemoryUsage. The name
is intentionally different from reportMemoryUsage to avoid accidential infitite
recursion: if the descendants overrode non-virtual CSSRule::reportMemoryUsage,
it would be easy to add a new descendant type to the switch in
CSSRule::reportMemoryUsage without providing proper override for reportMemoryUsage
and CSSRule::reportMemoryUsage would end up calling itself.
(WebCore):
(WebCore::CSSRule::reportBaseClassMemoryUsage): again we cannot use
MemoryClassInfo::visitBaseClass like we do for virtual methods because it would
lead to a recursive call of CSSRule::reportMemoryUsage. This is why we use
reportBaseClassMemoryUsage to allow descendants to report objects referenced
from their base class.

  • css/CSSRule.h:

(WebCore):
(CSSRule):

  • css/CSSRuleList.cpp:

(WebCore::StaticCSSRuleList::reportMemoryUsage):
(WebCore):

  • css/CSSRuleList.h:

(WebCore):
(CSSRuleList):
(StaticCSSRuleList):
(LiveCSSRuleList):

  • css/CSSStyleDeclaration.h:

(WebCore):
(CSSStyleDeclaration):

  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::reportDescendantMemoryUsage):
(WebCore):

  • css/CSSStyleRule.h:

(CSSStyleRule):

  • css/CSSStyleSheet.cpp:

(StyleSheetCSSRuleList):
(WebCore::CSSStyleSheet::reportMemoryUsage):

  • css/CSSUnknownRule.h:

(CSSUnknownRule):
(WebCore::CSSUnknownRule::reportDescendantMemoryUsage):

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::reportMemoryUsage):
(WebCore):
(WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
(WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):

  • css/PropertySetCSSStyleDeclaration.h:

(PropertySetCSSStyleDeclaration):
(StyleRuleCSSStyleDeclaration):
(InlineCSSStyleDeclaration):

  • css/WebKitCSSKeyframeRule.cpp:

(WebCore::WebKitCSSKeyframeRule::reportDescendantMemoryUsage):
(WebCore):

  • css/WebKitCSSKeyframeRule.h:

(WebKitCSSKeyframeRule):

  • css/WebKitCSSKeyframesRule.cpp:

(WebCore::WebKitCSSKeyframesRule::reportDescendantMemoryUsage):
(WebCore):

  • css/WebKitCSSKeyframesRule.h:

(WebKitCSSKeyframesRule):

  • css/WebKitCSSRegionRule.cpp:

(WebCore::WebKitCSSRegionRule::reportDescendantMemoryUsage):
(WebCore):

  • css/WebKitCSSRegionRule.h:

(WebKitCSSRegionRule):

3:14 AM Changeset in webkit [124588] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

WebCore::DragController::cleanupAfterSystemDrag should null-check page
https://bugs.webkit.org/show_bug.cgi?id=61815

Reviewed by Eric Seidel.

  • page/DragController.cpp:

(WebCore::DragController::dragEnteredOrUpdated):
(WebCore::DragController::doSystemDrag):

3:02 AM Changeset in webkit [124587] by commit-queue@webkit.org
  • 2 edits in trunk

[cmake] Cleanup FindHarfBuzz.cmake
https://bugs.webkit.org/show_bug.cgi?id=92984

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-08-03
Reviewed by Hajime Morita.

Cleanup which didn't make it into my previous ptch.

  • Source/cmake/FindHarfBuzz.cmake: Remove duplicate line, add a bit of documentation.
2:35 AM Changeset in webkit [124586] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Delete text from password does nothing.
https://bugs.webkit.org/show_bug.cgi?id=92040

Patch by Sergio Carlos Morales Angeles <carloschilazo@gmail.com> on 2012-08-03
Reviewed by Ryosuke Niwa.

Source/WebCore:

Use Editor::canDelete() to determine if field is editable or not.
Added password-delete-contents test.

Test: editing/deleting/password-delete-contents.html

  • editing/EditorCommand.cpp:

(WebCore::enabledDelete):

LayoutTests:

Added regression test for password field content delete.

  • editing/deleting/password-delete-contents-expected.txt: Added.
  • editing/deleting/password-delete-contents.html: Added.
2:12 AM Changeset in webkit [124585] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding text failure expectations for 20 MathML
Presentation tests that started failing after r124512.

  • platform/gtk/TestExpectations:
2:03 AM Changeset in webkit [124584] by commit-queue@webkit.org
  • 11 edits in trunk

Web Inspector: Make textModel private to textEditor
https://bugs.webkit.org/show_bug.cgi?id=92999

Patch by Jan Keromnes <janx@linux.com> on 2012-08-03
Reviewed by Pavel Feldman.

Source/WebCore:

Making textModel private to the textEditor ensures that it is accessed
only through the textEditor, making the latter more modular.

Tests were changed accordingly.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
(WebInspector.JavaScriptSourceFrame.prototype._restoreBreakpointsAfterEditing):
(WebInspector.JavaScriptSourceFrame.prototype._addBreakpointDecoration):
(WebInspector.JavaScriptSourceFrame.prototype._removeBreakpointDecoration):
(WebInspector.JavaScriptSourceFrame.prototype._lineNumberAfterEditing):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):
(WebInspector.SourceFrame.prototype.setContent):
(WebInspector.SourceFrame.prototype.replaceAllWith):
(WebInspector.SourceFrame.prototype._collectRegexMatches):
(WebInspector.SourceFrame.prototype.addMessageToSource):
(WebInspector.SourceFrame.prototype.removeMessageFromSource):
(WebInspector.TextEditorDelegateForSourceFrame.prototype.commitEditing):

  • inspector/front-end/TextEditor.js:

(WebInspector.TextEditor.prototype.setText):
(WebInspector.TextEditor.prototype.text):
(WebInspector.TextEditor.prototype.range):
(WebInspector.TextEditor.prototype.line):
(WebInspector.TextEditor.prototype.get linesCount):
(WebInspector.TextEditor.prototype.setAttribute):
(WebInspector.TextEditor.prototype.getAttribute):
(WebInspector.TextEditor.prototype.removeAttribute):

  • inspector/front-end/UISourceCodeFrame.js:

(WebInspector.UISourceCodeFrame.prototype.afterTextChanged):

LayoutTests:

Tests no longer access textModel directly from sourceFrame.

  • http/tests/inspector/debugger-test.js:

(initialize_DebuggerTest):

  • http/tests/inspector/live-edit-test.js:

(initialize_LiveEditTest.InspectorTest.replaceInSource):
(initialize_LiveEditTest):

  • inspector/debugger/pause-in-inline-script.html:
  • inspector/debugger/script-formatter.html:
  • inspector/debugger/source-url-comment.html:
1:56 AM Changeset in webkit [124583] by abarth@webkit.org
  • 20 edits in trunk/Source

V8Proxy::retrieve(*) leads to really obfuscated code and should be removed
https://bugs.webkit.org/show_bug.cgi?id=93072

Reviewed by Eric Seidel.

Source/WebCore:

Once upon a time, V8Proxy::retrieve did a bunch of checks before
returning the V8Proxy object (such as checking whether script was
enabled). Over time, we've removed all of these checks in order to fix
various bugs. Now all it does is check whether the Frame is 0. However,
because the function ends up returning 0 when its argument is 0, the
caller sill needs to have a null check.

This patch deletes all the variations of V8Proxy::retrieve(*) and
inlines them into their callers. In several cases, inlining the
function call showed that we were testing the Frame for 0 twice, and
I've removed the redundant null checks. In other cases, I've
uncontorted the callers to make the code more readable.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateToV8Converters):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::V8TestActiveDOMObject::wrapSlow):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::V8TestNode::wrapSlow):

  • bindings/v8/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::addListener):

  • bindings/v8/ScheduledAction.cpp:

(WebCore::ScheduledAction::execute):

  • bindings/v8/ScriptController.h:

(WebCore::ScriptController::windowShell):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::instantiateV8Object):

  • bindings/v8/V8EventListener.cpp:

(WebCore::V8EventListener::callListenerFunction):

  • bindings/v8/V8Helpers.cpp:

(WebCore::toV8Proxy):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::callListenerFunction):
(WebCore::V8LazyEventListener::prepareListenerObject):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::handleOutOfMemory):
(WebCore::V8Proxy::retrievePerContextData):
(WebCore::V8Proxy::mainWorldContext):
(WebCore::toV8Context):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::toV8):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::openCallback):
(WebCore::toV8):

  • bindings/v8/custom/V8SVGDocumentCustom.cpp:

(WebCore::toV8):

Source/WebKit/chromium:

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::didCreateScriptContext):

1:41 AM Changeset in webkit [124582] by gyuyoung.kim@samsung.com
  • 18 edits in trunk/Source/WebCore

Add *explicit* keyword to constructors in WebCore/accessibility
https://bugs.webkit.org/show_bug.cgi?id=93067

Reviewed by Kentaro Hara.

As a step to add *explicit* keyword to constructors which have a parameter,
*explicit* keyword is added to Source/WebCore/accessibility in order to avoid
implicit type conversion.

No new tests. Covered by existing tests.

  • accessibility/AXObjectCache.h:

(AXObjectCache):

  • accessibility/AccessibilityARIAGrid.h:

(AccessibilityARIAGrid):

  • accessibility/AccessibilityARIAGridCell.h:

(AccessibilityARIAGridCell):

  • accessibility/AccessibilityARIAGridRow.h:

(AccessibilityARIAGridRow):

  • accessibility/AccessibilityList.h:

(AccessibilityList):

  • accessibility/AccessibilityListBox.h:

(AccessibilityListBox):

  • accessibility/AccessibilityMediaControls.h:

(AccessibilityMediaControl):
(AccessibilityMediaTimeline):
(AccessibilityMediaControlsContainer):
(AccessibilityMediaTimeDisplay):

  • accessibility/AccessibilityMenuList.h:

(AccessibilityMenuList):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):

  • accessibility/AccessibilityProgressIndicator.h:

(AccessibilityProgressIndicator):

  • accessibility/AccessibilityRenderObject.h:

(AccessibilityRenderObject):

  • accessibility/AccessibilityScrollView.h:

(AccessibilityScrollView):

  • accessibility/AccessibilityScrollbar.h:

(AccessibilityScrollbar):

  • accessibility/AccessibilitySlider.h:

(AccessibilitySlider):

  • accessibility/AccessibilityTable.h:

(AccessibilityTable):

  • accessibility/AccessibilityTableCell.h:

(AccessibilityTableCell):

  • accessibility/AccessibilityTableRow.h:

(AccessibilityTableRow):

1:20 AM Changeset in webkit [124581] by kbalazs@webkit.org
  • 29 edits
    4 moves
    1 add in trunk/Tools

All ports should support per test switching of pixel testing
https://bugs.webkit.org/show_bug.cgi?id=92398

Reviewed by Dirk Pranke.

Teach all test drivers to accept a per test control of whether
to dump pixels. Drivers now accept a -p/--pixel-test argument
on the standart input that means that running the current
test as pixel test is allowed (even if the expected hash is
missing). Removed the --pixel-tests command line option since
there is no need for it anymore.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/DumpRenderTree.h:

(TestCommand::TestCommand):
(TestCommand):

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/DumpRenderTreeCommon.cpp: Added.

(CommandTokenizer):
(CommandTokenizer::CommandTokenizer):
(CommandTokenizer::pump):
(CommandTokenizer::next):
(CommandTokenizer::hasNext):
(die):
(parseInputLine):
Common logic to parse the input line from the standard input (or from the command line
in standalone mode). Made it somewhat general so we can easily add more arguments if
there is a need.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(runTest):
(main):

  • DumpRenderTree/chromium/TestRunner/AccessibilityControllerChromium.cpp: Renamed from Tools/DumpRenderTree/chromium/TestRunner/AccessibilityController.cpp.
  • DumpRenderTree/chromium/TestRunner/AccessibilityControllerChromium.h: Renamed from Tools/DumpRenderTree/chromium/TestRunner/AccessibilityController.h.
  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp: Renamed from Tools/DumpRenderTree/chromium/TestRunner/AccessibilityUIElement.cpp.
  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.h: Renamed from Tools/DumpRenderTree/chromium/TestRunner/AccessibilityUIElement.h.

Renamed these files with a Chromium suffix because they were clashing with the common ones used by other ports after adding the root
DumpRenderTree directory to the include path.

  • DumpRenderTree/chromium/TestRunner/TestInterfaces.cpp:
  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):
(TestShell::runFileTest):
(TestShell::dump):

  • DumpRenderTree/chromium/TestShell.h:

(TestParams::TestParams):
(TestShell):

  • DumpRenderTree/efl/CMakeLists.txt:
  • DumpRenderTree/efl/DumpRenderTree.cpp:

(parseCommandLineOptions):
(runTest):
(shouldDumpPixelsAndCompareWithExpected):
(main):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeGlobalsFromCommandLineOptions):
(dump):
(runTest):
(main):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(initializeGlobalsFromCommandLineOptions):
(dumpRenderTree):
(dump):
(runTest):

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::processLine):
(WebCore::DumpRenderTree::dump):

  • DumpRenderTree/qt/DumpRenderTreeQt.h:

(DumpRenderTree):

  • DumpRenderTree/qt/main.cpp:

(isOption):
(printUsage):
(main):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(dump):
(runTest):
(dllLauncherEntryPoint):

  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/wscript:
  • DumpRenderTree/wx/DumpRenderTreeWx.cpp:

(dump):
(runTest):
(MyApp::OnInit):

  • GNUmakefile.am:
  • Scripts/old-run-webkit-tests:
  • Scripts/old-run-webkit-tests:

Pass --pixel-test before the hash.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.should_run_as_pixel_test): Removed now that all ports supports it.

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.cmd_line): Don't pass --pixel-tests anymore.
(Driver._command_from_driver_input):

  • Scripts/webkitpy/layout_tests/port/qt.py:

(QtPort.should_run_as_pixel_test):

  • Scripts/webkitpy/layout_tests/port/test.py:

(TestPort.should_run_as_pixel_test):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::TestController):
(WTR::TestController::initialize):
(WTR::TestCommand::TestCommand):
(TestCommand):
(WTR):
(CommandTokenizer):
(WTR::CommandTokenizer::CommandTokenizer):
(WTR::CommandTokenizer::pump):
(WTR::CommandTokenizer::next):
(WTR::CommandTokenizer::hasNext):
(WTR::die):
(WTR::parseInputLine):
(WTR::TestController::runTest):

  • WebKitTestRunner/TestController.h:

(TestController):
Duplicate the logic for parsing the command line because
unfortunately there is no way to share code between
WebKitTestRunner and DumpRenderTree.

1:15 AM Changeset in webkit [124580] by inferno@chromium.org
  • 2 edits in trunk/Source/WebCore

Regression(r124564): Wrong inlineChildrenBlock->hasLayer() computed in RenderBlock::removeChild.
https://bugs.webkit.org/show_bug.cgi?id=90800

Reviewed by Eric Seidel.

r124564 reversed the sequence of setStyle and removeChildNode calls, but failed to cache the value
of inlineChildrenBlock->hasLayer(). So, it will be null when the layer is removed from parent in setStyle.
Fixed by the caching the bool value.

Covered by existing test fast/block/layer-not-removed-from-parent-crash.html.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::removeChild):

1:04 AM Changeset in webkit [124579] by loislo@chromium.org
  • 1 edit
    9 adds in trunk/Tools

Web Inspector: clang plugin for checking native memory instrumentation coverage.
https://bugs.webkit.org/show_bug.cgi?id=92650

Reviewed by Yury Semikhatsky.

This is the clang plugin for checking native memory instrumentation coverage.
The idea: InspectorMemoryAgent traverses through instrumented objects and collects pointers and their sizes and types.
It is doing that with help of reportMemoryUsage function that needs to be implemented in each, significant
from native memory footprint point of view, WebCore class.
This plugin checks that the list of class members is matching with the list of members reported in reportMemoryUsage function
and makes a warning for the each member that needs to be reported.

  • clang/ReportMemoryUsagePlugin/CMakeLists.txt: Added.
  • clang/ReportMemoryUsagePlugin/Makefile: Added.
  • clang/ReportMemoryUsagePlugin/ReportMemoryUsage.cpp: Added.

(clang):
(AddMemberCallVisitor):
(clang::AddMemberCallVisitor::VisitCallExpr):
(clang::AddMemberCallVisitor::instrumentedMembers):
(ReportMemoryUsageVisitor):
(clang::ReportMemoryUsageVisitor::ReportMemoryUsageVisitor):
(clang::ReportMemoryUsageVisitor::VisitCXXMethodDecl):
(clang::ReportMemoryUsageVisitor::emitWarning):
(clang::ReportMemoryUsageVisitor::findInstrumentationMethod):
(clang::ReportMemoryUsageVisitor::needsToBeInstrumented):
(clang::ReportMemoryUsageVisitor::CheckMembersCoverage):
(ReportMemoryUsageConsumer):
(clang::ReportMemoryUsageConsumer::ReportMemoryUsageConsumer):
(clang::ReportMemoryUsageConsumer::HandleTranslationUnit):
(ReportMemoryUsageAction):
(clang::ReportMemoryUsageAction::CreateASTConsumer):
(clang::ReportMemoryUsageAction::ParseArgs):

  • clang/ReportMemoryUsagePlugin/tests/Source/WebCore/Test.cpp: Added.

(aNamespace):
(MemoryInstrumentation):
(MemoryClassInfo):
(aNamespace::MemoryClassInfo::MemoryClassInfo):
(aNamespace::MemoryClassInfo::addMember):
(aNamespace::MemoryClassInfo::addInstrumentedMember):
(OwnPtr):
(aNamespace::OwnPtr::OwnPtr):
(RefPtr):
(aNamespace::RefPtr::RefPtr):
(Vector):
(String):
(NotInstrumentedClass):
(InstrumentedClass):
(aNamespace::InstrumentedClass::reportMemoryUsage):
(InstrumentedChildClass):
(aNamespace::InstrumentedChildClass::reportMemoryUsage):
(InstrumentedChildChildClass):
(InstrumentedChildChildClass::reportMemoryUsage):
(main):

1:03 AM Changeset in webkit [124578] by mario@webkit.org
  • 5 edits
    2 adds in trunk/Source

[GTK] Add a new and reusable enchant-based spellchecker in WebCore
https://bugs.webkit.org/show_bug.cgi?id=90269

Reviewed by Martin Robinson.

Source/WebCore:

Move enchant specific code down to WebCore, into a new class
TextCheckerEnchant, that we can use from WK1 and WK2.

  • GNUmakefile.am: Add flags to handle the SPELLCHECK feature.
  • GNUmakefile.list.am: Added new files.
  • platform/text/gtk/TextCheckerEnchant.cpp: Added.

(getAvailableDictionariesCallback):
(TextCheckerEnchant::TextCheckerEnchant):
(TextCheckerEnchant::~TextCheckerEnchant):
(TextCheckerEnchant::ignoreWord):
(TextCheckerEnchant::learnWord):
(TextCheckerEnchant::checkSpellingOfString):
(TextCheckerEnchant::getGuessesForWord):
(TextCheckerEnchant::updateSpellCheckingLanguages):
(TextCheckerEnchant::freeEnchantBrokerDictionaries):

  • platform/text/gtk/TextCheckerEnchant.h: Added.

(WebCore):
(TextCheckerEnchant):
(WebCore::TextCheckerEnchant::create):

Source/WebKit/gtk:

Remove enchant specific code from WebKitSpellCheckerEnchant and
implement it relying in the new TextCheckerEnchant class in WebCore.

  • webkit/webkitspellcheckerenchant.cpp:

(_WebKitSpellCheckerEnchantPrivate):
(webkit_spell_checker_enchant_finalize):
(webkit_spell_checker_enchant_class_init):
(webkit_spell_checker_enchant_init):
(checkSpellingOfString):
(getGuessesForWord):
(updateSpellCheckingLanguages):
(learnWord):
(ignoreWord):

1:00 AM Changeset in webkit [124577] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed r124536 followup, fix the assertion error on Chromium.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

12:56 AM Changeset in webkit [124576] by Martin Robinson
  • 1 copy in releases/WebKitGTK/webkit-1.8.2

Tag the WebKitGTK+ 1.8.2 release.

12:53 AM Changeset in webkit [124575] by Martin Robinson
  • 1 delete in releases/WebKitGTK/webkit-1.8.2

Remove failed WebKitGTK+ 1.8.2 tag

12:52 AM Changeset in webkit [124574] by yutak@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, test expectation change only.

  • platform/chromium/TestExpectations: Merge a couple of tests into an existing bug.
12:43 AM Changeset in webkit [124573] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r124549. Skipped a newly added failing test.
https://bugs.webkit.org/show_bug.cgi?id=93074

Patch by János Badics <János Badics> on 2012-08-03

  • platform/qt/Skipped:
12:41 AM Changeset in webkit [124572] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: simple replace objectType with ownerObjectType in NMI code.
https://bugs.webkit.org/show_bug.cgi?id=93001

Reviewed by Yury Semikhatsky.

In all the cases when we are visiting members, objectType field is actually the object type of the member's owner object.

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryInstrumentation::InstrumentedPointer::InstrumentedPointer):
(InstrumentedPointer):
(WebCore::MemoryInstrumentation::addObject):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(WebCore::MemoryInstrumentation::addRawBuffer):
(WebCore::MemoryInstrumentation::OwningTraits::addInstrumentedObject):
(WebCore::MemoryInstrumentation::OwningTraits::addObject):
(WebCore::MemoryObjectInfo::MemoryObjectInfo):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):
(WebCore::MemoryInstrumentation::addHashMap):
(WebCore::MemoryInstrumentation::addHashSet):
(WebCore::MemoryInstrumentation::addInstrumentedCollection):
(WebCore::MemoryInstrumentation::addListHashSet):
(WebCore::MemoryInstrumentation::addVector):
(WebCore::::process):

12:41 AM Changeset in webkit [124571] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, skip appcache abort() tests.

  • platform/chromium/TestExpectations:
12:33 AM Changeset in webkit [124570] by loislo@chromium.org
  • 4 edits in trunk/Source

Web Inspector: extend test coverage for nmi code and fix 2 bugs.
https://bugs.webkit.org/show_bug.cgi?id=92994

Reviewed by Yury Semikhatsky.

1) owner object type propagation.
If a class with object-type DOM has an instrumented member with object-type Other then it has to be recorded as DOM.
Sample: We have SharedBuffer class and we don't know the object-type for it but we know that it is owned by an object with object-type CachedResourceImage.

2) the first member of an instrumented non virtual class was skipped even if it was reported properly.
it happened because the first member has the same address as it's owner

Source/WebCore:

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryInstrumentation::addRootObject):
(WebCore::MemoryInstrumentation::InstrumentedPointer::InstrumentedPointer):
(InstrumentedPointer):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::OwningTraits::addInstrumentedObject):
(WebCore::MemoryObjectInfo::MemoryObjectInfo):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCore::MemoryClassInfo::addInstrumentedMember):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):
(WebCore::MemoryInstrumentation::addInstrumentedCollection):
(WebCore::::process):

Source/WebKit/chromium:

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::TEST):
(WebCore):
(InstrumentedOther):
(WebCore::InstrumentedOther::InstrumentedOther):
(WebCore::InstrumentedOther::reportMemoryUsage):
(InstrumentedDOM):
(WebCore::InstrumentedDOM::InstrumentedDOM):
(WebCore::InstrumentedDOM::reportMemoryUsage):
(NonVirtualInstrumented):
(WebCore::NonVirtualInstrumented::reportMemoryUsage):

12:33 AM Changeset in webkit [124569] by commit-queue@webkit.org
  • 7 edits in trunk

[EFL][DRT] WebKitAnimation API compile-time disabled
https://bugs.webkit.org/show_bug.cgi?id=84593

Patch by Joone Hur <joone.hur@intel.com> on 2012-08-03
Reviewed by Laszlo Gombos.

.:

Enable ENABLE_ANIMATION_API by default on the Efl port.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmakeconfig.h.cmake:

Tools:

Enable ENABLE_ANIMATION_API by default on the Efl port.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Removing animations/animation-api-1.html from TestExpectations
by enabling ENABLE_ANIMATION_API.

  • platform/efl/TestExpectations:
12:30 AM Changeset in webkit [124568] by Martin Robinson
  • 1 copy in releases/WebKitGTK/webkit-1.8.2

Tag the WebKitGTK+ 1.8.2 release

12:28 AM Changeset in webkit [124567] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

WTR should be able to load external resources
https://bugs.webkit.org/show_bug.cgi?id=89382

Reviewed by Ryosuke Niwa.

Allow to load an external resource as the main frame
and allow all subsequent external loads for such a main
frame. This behavior is necessary for being able to run
performance tests (wkb.ug/84008).

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::isLocalHost):
(WTR):
(WTR::isHTTPOrHTTPSScheme):
(WTR::InjectedBundlePage::willSendRequestForFrame):

12:23 AM Changeset in webkit [124566] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Make v8NonStringValueToWebCoreString a static method
https://bugs.webkit.org/show_bug.cgi?id=93066

Reviewed by Adam Barth.

v8NonStringValueToWebCoreString() and v8NonStringValueToAtomicWebCoreString()
are not intended to be used from outside V8Binding.cpp.
They should be static methods.

No tests. No change in behavior.

  • bindings/v8/V8Binding.cpp:

(WebCore::v8NonStringValueToWebCoreString):
(WebCore):
(WebCore::v8NonStringValueToAtomicWebCoreString):

  • bindings/v8/V8Binding.h:

(WebCore::v8StringToWebCoreString):
(WebCore::v8StringToAtomicWebCoreString):

Aug 2, 2012:

11:27 PM Changeset in webkit [124565] by zandobersek@gmail.com
  • 2 edits in trunk

Unreviewed attempt at fixing the GTK 64-bit debug build.

  • Source/autotools/symbols.filter:
10:53 PM Changeset in webkit [124564] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash due to layer not removed from parent for anonymous block.
https://bugs.webkit.org/show_bug.cgi?id=90800

Reviewed by Kent Tamura.

Source/WebCore:

Reverse the order of setStyle and removeChildNode calls. This ensures that setting the style
properly removes its layer from the parent in RenderBoxModelObject::styleDidChange. Calling
removeChildNode before calling setStyle is problematic since the parent layer never gets
notified.

Test: fast/block/layer-not-removed-from-parent-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::removeChild):

LayoutTests:

  • fast/block/layer-not-removed-from-parent-crash-expected.txt: Added.
  • fast/block/layer-not-removed-from-parent-crash.html: Added.
10:32 PM Changeset in webkit [124563] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

V8Proxy::retrieveFrameFor*Context are used only by BindingState and should be removed as separate functions
https://bugs.webkit.org/show_bug.cgi?id=93049

Reviewed by Eric Seidel.

No one calls these functions directly anymore. This patch removes them
from V8Proxy and inlines their logic into BindingState.cpp.

  • bindings/v8/BindingState.cpp:

(WebCore::activeContext):
(WebCore):
(WebCore::activeWindow):
(WebCore::activeFrame):
(WebCore::firstFrame):
(WebCore::currentFrame):

  • bindings/v8/V8Proxy.cpp:
  • bindings/v8/V8Proxy.h:

(V8Proxy):

10:26 PM Changeset in webkit [124562] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

Make order of attribute/method in HTMLTrackElement.idl as same as specification
https://bugs.webkit.org/show_bug.cgi?id=80102

Reviewed by Kentaro Hara.

No new tests. This patch doesn't change behavior.

  • html/HTMLTrackElement.idl: Reorder attribute/method position.
10:07 PM Changeset in webkit [124561] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

IndexedDB: remove leftover chromium stubs from putIndexWithKeys
https://bugs.webkit.org/show_bug.cgi?id=93032

Patch by Alec Flett <alecflett@chromium.org> on 2012-08-02
Reviewed by Darin Fisher.

Remove old chromium APIs that are no longer called by chrome.

  • public/WebIDBCursor.h:
  • public/WebIDBObjectStore.h:
  • public/WebIDBTransaction.h:
10:06 PM Changeset in webkit [124560] by Patrick Gansterer
  • 6 edits in trunk/Source

Move getLocalTime() as static inline function to DateMath
https://bugs.webkit.org/show_bug.cgi?id=92955

Reviewed by Ryosuke Niwa.

getCurrentLocalTime() and getLocalTime() has been superseded with the
GregorianDateTime class. So we can move it into DateMath.cpp as an static inline
function. This allows us to remove the dependecy on time() and localtime()
for Windows CE, where this functions require the ce_time library to work.

Source/JavaScriptCore:

Source/WTF:

  • wtf/CurrentTime.cpp:

(WTF):

  • wtf/CurrentTime.h:
  • wtf/DateMath.cpp:

(WTF):
(WTF::getLocalTime):

9:42 PM Changeset in webkit [124559] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Build break when building DumpRenderTree/gtk/EditingCallbacks.cpp
https://bugs.webkit.org/show_bug.cgi?id=93061

Unreviewed, Fix build break for WebKitGtk+.

Use webkit_dom_element_get_class_name instead of webkit_dom_html_element_get_class_name.

Patch by Joone Hur <joone.hur@intel.com> on 2012-08-02

  • DumpRenderTree/gtk/EditingCallbacks.cpp:

(shouldShowDeleteInterfaceForElement):

8:44 PM Changeset in webkit [124558] by fpizlo@apple.com
  • 2 edits in trunk/PerformanceTests/SunSpider

Unreviewed, revert debugging stuff I landed in http://trac.webkit.org/changeset/124557
by accident.

  • tests/v8-v6/v8-crypto.js:

(am1):
(am2):
(am3):
(am4):
(bnpCopyTo):
(bnpFromString):
(bnpClamp):

8:38 PM Changeset in webkit [124557] by fpizlo@apple.com
  • 2 edits
    4 adds in trunk

Unreviewed, land some overrides for Chromium for the tests I just added, since
V8 attachs a slightly different (but equally valid) string for the exception we
expect to see.

  • platform/chromium/fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
  • platform/chromium/fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
  • platform/chromium/fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
  • platform/chromium/fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
8:31 PM Changeset in webkit [124556] by tkent@chromium.org
  • 17 edits
    4 adds in trunk

Fix crashes for <input> and <textarea> with display:run-in.
https://bugs.webkit.org/show_bug.cgi?id=87300

Reviewed by Abhishek Arya.

Source/WebCore:

Introduce RenderObject::canBeReplacedWithInlineRunIn, and renderers which
should not be run-in override it so that it returns false.

Test: fast/runin/input-text-runin.html

fast/runin/textarea-runin.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
Checks canBeReplacedWithInlineRunIn instead of checking tag names.

  • rendering/RenderFileUploadControl.cpp:

(WebCore::RenderFileUploadControl::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.

  • rendering/RenderFileUploadControl.h:

(RenderFileUploadControl): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.

  • rendering/RenderListBox.h:

(RenderListBox): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.

  • rendering/RenderMenuList.h:

(RenderMenuList): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::canBeReplacedWithInlineRunIn):
Added. Allow run-in by default.

  • rendering/RenderObject.h:

(RenderObject): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderProgress.cpp:

(WebCore::RenderProgress::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.

  • rendering/RenderProgress.h:

(RenderProgress): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderSlider.cpp:

(WebCore::RenderSlider::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.

  • rendering/RenderSlider.h:

(RenderSlider): Declare canBeReplacedWithInlineRunIn.

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.

  • rendering/RenderTextControl.h:

(RenderTextControl): Declare canBeReplacedWithInlineRunIn.

LayoutTests:

  • fast/runin/input-text-runin-expected.txt: Added.
  • fast/runin/input-text-runin.html: Added.
  • fast/runin/textarea-runin-expected.txt: Added.
  • fast/runin/textarea-text-runin.html: Added.
8:27 PM Changeset in webkit [124555] by fpizlo@apple.com
  • 6 edits
    12 adds in trunk
ASSERTION FAILED: at(m_compileIndex).canExit()
m_isCheckingArgumentTypes

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

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Fixes a bug where the speculative JIT was performing an unnecessary speculation that the
CFA had proven shouldn't be performed, leading to asserts that a node should not have
exit sites. This is a debug-only assert with no release symptom - we were just emitting
a check that was not reachable.

Also found, and fixed, a bug where structure check hoisting was slightly confusing the
CFA by inserting GetLocal's into the graph. CSE would clean the GetLocal's up, which
would make the backend happy - but the CFA would produce subtly wrong results.

  • bytecode/SpeculatedType.h:

(JSC::isOtherOrEmptySpeculation):
(JSC):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):

LayoutTests:

Added a test for this specific case (dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object)
as well as three other tests to cover similar, though not necessarily currently broken, cases, since it was previously the
case that we apparently had no explicit coverage for these code paths.

  • fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
  • fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object.html: Added.
  • fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
  • fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object.html: Added.
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object.html: Added.
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object.html: Added.
  • fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object.js: Added.

(foo):

  • fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object.js: Added.

(foo):

  • fast/js/script-tests/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object.js: Added.

(foo):

  • fast/js/script-tests/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object.js: Added.

(foo):

8:23 PM Changeset in webkit [124554] by yosin@chromium.org
  • 6 edits
    1 add in trunk/LayoutTests

Unreviewed. Rebaseline fast/forms/basic-selects.html for Chromium-Mac and Chromium-Win.

r124416 changes rendering of non-disabled option element in disabled select.

  • platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png:
  • platform/chromium-mac/fast/forms/basic-selects-expected.png:
  • platform/chromium-mac/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-win/fast/forms/basic-selects-expected.png:
  • platform/chromium-win/fast/forms/basic-selects-expected.txt:
  • platform/chromium/TestExpectations:
7:46 PM Changeset in webkit [124553] by piman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] add lost context test case for HW video decoder
https://bugs.webkit.org/show_bug.cgi?id=93057

Reviewed by Adrienne Walker.

We check that we don't use resources after a lost context (assuming
proper WebVideoFrameProvider behavior).

  • tests/CCLayerTreeHostImplTest.cpp:
7:40 PM Changeset in webkit [124552] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Fix wrong assigned value of BatteryStatus
https://bugs.webkit.org/show_bug.cgi?id=93058

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-02
Reviewed by Kentaro Hara.

There is a wrong change in the bug 92964.
property variable have to be used after assigned value in the setBatteryClient.

  • platform/efl/BatteryProviderEfl.cpp:

(WebCore::BatteryProviderEfl::setBatteryClient):

7:35 PM Changeset in webkit [124551] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Layout Test: fast/css/image-orientation/image-orientation needs to be added to skip list for Windows.
https://bugs.webkit.org/show_bug.cgi?id=93053

Patch by Roger Fong <roger_fong@apple.com> on 2012-08-02
Reviewed by Tim Horton.

The feature has not been completed yet.
It has been added to all other platforms' skip lists (see https://bugs.webkit.org/show_bug.cgi?id=89624), except for Windows.

  • platform/win/Skipped:

Added fast/css/image-orientation/image-orientation to skip list.

7:26 PM Changeset in webkit [124550] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[BlackBerry] Add default implementation of GraphicsLayerClient::contentsVisible()
https://bugs.webkit.org/show_bug.cgi?id=93036

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-02
Reviewed by George Staikos.

Source/WebCore:

Returning true by default would cause memory usage to balloon, because
the LayerTiler would believe every tile is visible and always needs to
be rendered. Instead, we choose to return false by default, relying
entirely on reactive rendering through render jobs.

However this revealed a subtle bug. If the entire layer was invalidated
every frame, checkerboard would never resolve with this default
implementation.

Fixed by not clearing render jobs when the entire layer is invalidated,
thus making us robust against an incomplete contentsVisible
implementation.

Also removed dead code related to the deprecated
LayerTiler::m_tilesWebKitThread mechanism, which has been replaced by
the implicit visibility management resulting from render jobs.

With m_tilesWebKitThread out of the way, rename m_tilesCompositingThread
to be simply m_tiles.

PR 187458

This is not currently testable using BlackBerry testing infrastructure.

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::contentsVisible): Gets a default implementation instead of being pure virtual.

  • platform/graphics/blackberry/LayerTile.cpp:

(WebCore::LayerTile::LayerTile): Merged LayerTileData into LayerTile now that m_tilesWebKitThread is gone.

  • platform/graphics/blackberry/LayerTile.h:

(LayerTile):

  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore::LayerTiler::~LayerTiler):
(WebCore::LayerTiler::updateTextureContentsIfNeeded): Bug fix to make us robust against the new default implementation of GraphicsLayerClient::contentsVisible()
(WebCore::LayerTiler::shouldPerformRenderJob):
(WebCore::LayerTiler::layerVisibilityChanged):
(WebCore::LayerTiler::uploadTexturesIfNeeded):
(WebCore::LayerTiler::drawTexturesInternal):
(WebCore::LayerTiler::deleteTextures):
(WebCore::LayerTiler::pruneTextures):
(WebCore::LayerTiler::bindContentsTexture):

  • platform/graphics/blackberry/LayerTiler.h:

(LayerTiler):

Source/WebKit/blackberry:

Remove implementation of GraphicsLayerClient::contentsVisible() now
that it has a default implementation.

This also fixes a bug where memory usage for the inspector highlight
overlay would balloon because it returned true from contentsVisible()
which would cause the LayerTiler to populate all tiles. The default
implementation returns false instead.

PR 187458, 184377

  • WebCoreSupport/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::showRepaintCounter):

  • WebCoreSupport/InspectorOverlay.h:

(InspectorOverlay):

  • WebKitSupport/DefaultTapHighlight.h:
  • WebKitSupport/SelectionOverlay.h:
7:05 PM Changeset in webkit [124549] by keishi@webkit.org
  • 9 edits
    2 adds in trunk

Slider should snap to datalist tick marks
https://bugs.webkit.org/show_bug.cgi?id=92640

Reviewed by Kent Tamura.

Source/WebCore:

Input type=range slider snaps to datalist tick marks.

Test: fast/forms/datalist/range-snap-to-datalist.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::findClosestTickMarkValue): Just calls InputType::findClosestTickMarkValue.
(WebCore):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/InputType.cpp:

(WebCore):
(WebCore::InputType::findClosestTickMarkValue): Overridden by RangeInputType.

  • html/InputType.h:

(InputType):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::RangeInputType):
(WebCore):
(WebCore::RangeInputType::listAttributeTargetChanged): Mark m_tickMarkValues as dirty.
(WebCore::decimalCompare):
(WebCore::RangeInputType::updateTickMarkValues): Sets m_tickMarkValues to a list of sorted valid datalist values.
(WebCore::RangeInputType::findClosestTickMarkValue): Finds closest tick mark value to a given value.

  • html/RangeInputType.h:

(RangeInputType):

  • html/shadow/SliderThumbElement.cpp:

(WebCore):
(WebCore::SliderThumbElement::setPositionFromPoint): Snaps to the closest tick mark value if it is within a certain distance.

LayoutTests:

  • fast/forms/datalist/range-snap-to-datalist-expected.txt: Added.
  • fast/forms/datalist/range-snap-to-datalist.html: Added.
6:54 PM Changeset in webkit [124548] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] Crash while loading plugin after r121467
https://bugs.webkit.org/show_bug.cgi?id=92943

Reviewed by Laszlo Gombos.

r121467 replaced POSIX dlopen to helpers in eina_module, but some codes
are not changed.

No new tests, behavior has not changed.

  • plugins/efl/PluginPackageEfl.cpp:

(WebCore::PluginPackage::fetchInfo):
Changes dlsym to eina_module_symbol_get to follow changes of r121467.

6:51 PM Changeset in webkit [124547] by abarth@webkit.org
  • 13 edits in trunk/Source/WebCore

V8 bindings code that tries to find its context should use BindingState functions rather than V8Proxy
https://bugs.webkit.org/show_bug.cgi?id=93038

Reviewed by Eric Seidel.

After this patch, most code in the V8 bindings that tries to determine
it's "context" goes through BindingState.h rather than V8Proxy. This
patch is a step towards unifying all these code paths.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructorCallback):

  • bindings/v8/BindingState.cpp:

(WebCore::currentFrame):
(WebCore):

  • bindings/v8/BindingState.h:

(WebCore):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::retrieveFrameForEnteredContext):
(WebCore::ScriptController::retrieveFrameForCurrentContext):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::v8UncaughtExceptionHandler):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

  • bindings/v8/V8Utilities.cpp:

(WebCore::getScriptExecutionContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::handlePostMessageCallback):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::writeCallback):
(WebCore::V8HTMLDocument::writelnCallback):
(WebCore::V8HTMLDocument::openCallback):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::v8HTMLImageElementConstructorCallback):

6:43 PM Changeset in webkit [124546] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

[WINCE] Return 0 at calculateDSTOffset(double, double)
https://bugs.webkit.org/show_bug.cgi?id=92953

Reviewed by Ryosuke Niwa.

localtime() is implemented as a call to gmtime() in ce_time.c.
Since this will never return correct values, returning 0 instead
does not remove any existing functionality, but decreases the
dependency on the (external) ce_time implementation.

  • wtf/DateMath.cpp:

(WTF::calculateDSTOffsetSimple):

6:32 PM Changeset in webkit [124545] by dimich@chromium.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r124540.
http://trac.webkit.org/changeset/124540
https://bugs.webkit.org/show_bug.cgi?id=93055

Broke compile on Chromium Win bot (Requested by dimich on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-02

Source/WebCore:

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBCallbacks.h:

(IDBCallbacks):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall):
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::metadata):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseCallbacks.h:

(IDBDatabaseCallbacks):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::open):

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::deleteDatabase):

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::commit):

Source/WebKit/chromium:

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::FailingBackingStore::createIDBDatabaseMetaData):

  • tests/IDBFakeBackingStore.h:
6:14 PM Changeset in webkit [124544] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Upstream GraphicsLayerClient::contentsVisible()
https://bugs.webkit.org/show_bug.cgi?id=93040

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-02
Reviewed by George Staikos.

Our LayerTiler uses both proactive and reactive rendering to populate
tiles. If contentsVisible() is accurate, it will cause the right tiles
to be rendered. Failing that, when a dirty tile is found to be visible
on the compositing thread, a render job is scheduled.

This is not currently testable using BlackBerry testing infrastructure.

  • platform/graphics/GraphicsLayerClient.h:

(GraphicsLayerClient): New BlackBerry-specific method "contentsVisible" added.

  • rendering/RenderLayerBacking.cpp:

(WebCore):
(WebCore::RenderLayerBacking::contentsVisible): BlackBerry-specific implementation.

6:01 PM FeatureFlags edited by jianli@chromium.org
(diff)
5:51 PM Changeset in webkit [124543] by commit-queue@webkit.org
  • 15 edits in trunk/Source

[chromium] deviceViewportSize cleanup
https://bugs.webkit.org/show_bug.cgi?id=92794

Patch by Alexandre Elias <aelias@google.com> on 2012-08-02
Reviewed by Adrienne Walker.

In the future, CSS layout size will become increasingly disassociated
from physical device size, and it will become impossible to infer one
from the other inside the compositor. Therefore, this patch allows
deviceViewportSize to be explicitly passed in by the outside client.

I also renamed the existing viewportSize field to "layoutViewportSize"
for clarity, and converted its uses to deviceViewportSize since
that is more appropriate.

I had to add some default-value scaffolding to WebLayerTreeView in
order to avoid breaking ui/compositor. We can delete it once that's
updated.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):

Source/WebCore:

No new tests (covered by existing tests).

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setViewportSize):
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::setDeviceScaleFactor):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):
(WebCore::CCLayerTreeHost::layoutViewportSize):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
(WebCore::CCLayerTreeHostImpl::setViewportSize):
(WebCore::CCLayerTreeHostImpl::setDeviceScaleFactor):
(WebCore::CCLayerTreeHostImpl::updateMaxScrollPosition):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::layoutViewportSize):

Source/WebKit/chromium:

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::setViewportSize):
(WebKit::WebLayerTreeView::layoutViewportSize):
(WebKit):
(WebKit::WebLayerTreeView::deviceViewportSize):
(WebKit::WebLayerTreeView::setDeviceScaleFactor):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::paint):
(WebKit::WebViewImpl::updateLayerTreeViewport):

5:45 PM Changeset in webkit [124542] by abarth@webkit.org
  • 8 edits in trunk/Source

V8Proxy::currentContext() doesn't do anything and should be removed
https://bugs.webkit.org/show_bug.cgi?id=93041

Reviewed by Eric Seidel.

Source/WebCore:

It's just a wrapper for GetCurrent().

  • bindings/v8/DateExtension.cpp:

(WebCore::DateExtension::setAllowSleep):

  • bindings/v8/V8NPUtils.cpp:

(WebCore::convertV8ObjectToNPVariant):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::retrieve):
(WebCore::V8Proxy::mainWorldContext):

  • bindings/v8/V8Proxy.h:

(V8Proxy):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::getJSListenerFunctions):

Source/WebKit/chromium:

  • src/WebBindings.cpp:

(WebKit::makeIntArrayImpl):
(WebKit::makeStringArrayImpl):

5:40 PM Changeset in webkit [124541] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

5:35 PM Changeset in webkit [124540] by dgrogan@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Core upgradeneeded logic
https://bugs.webkit.org/show_bug.cgi?id=92558

Reviewed by Ojan Vafai.

Source/WebCore:

This is the backend webkit logic needed for integer versions. The rest
is in https://bugs.webkit.org/show_bug.cgi?id=89505.

I tried to make use of the existing processPendingCalls and added two
more queues, pendingOpenWithVersionCalls and
pendingSecondHalfOpenWithVersionCalls. The "second half" refers to
how there are two events that need to be fired in response to an
open-with-version call. The "second half" queue holds the open
requests that should immediately follow the caller's upgradeneeded
handler.

No new tests, there are so many they are in their own patch:
https://bugs.webkit.org/show_bug.cgi?id=92560

Though this patch doesn't change any expected behavior anyway, lack of
regressions is what we're hoping for here.

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onBlocked):
(WebCore::IDBCallbacks::onUpgradeNeeded):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(IDBDatabaseBackendImpl::PendingOpenCall):
(IDBDatabaseBackendImpl::PendingOpenWithVersionCall):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::create):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::callbacks):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::version):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::PendingOpenWithVersionCall):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::metadata):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::setIntVersionInternal):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndEventsFired):
When an upgradeneeded event is fired in response to an
open-with-version call, the version change transaction must receive its
complete event before processPendingCalls fires a success event at
IDBOpenDBRequest. In the future this should probably be changed
instead to transactionFinishedAndAbortFired and
transactionFinishedAndCompleteFired so that we'll know to fire a
success or error event at IDBOpenDBRequest. Currently, instead of
firing error when there's an abort, we don't fire anything.

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
Now that this is called after a connection is opened, we unfortunately
lose the invariant that there is only one existing connection when this
is called, but nothing inside this function actually relied on that.
Additionally, the secondHalfOpen calls only ever need to be serviced
in one place: right after a version change transaction completes, so
it could be moved out of here.

(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
Now that setVersion and deleteDatabase calls are queued up behind
secondHalfOpen calls, we have to service those queues when
secondHalfOpen calls complete, which is here. So call
processPendingCalls().

(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::openConnectionWithVersion):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseCallbacks.h:

(WebCore::IDBDatabaseCallbacks::onVersionChange):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::open):
This is refactored some so that the call to openConection{WithVersion}
happens once, at the end.

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::updateIDBDatabaseIntVersion):
(WebCore):
(WebCore::IDBLevelDBBackingStore::deleteDatabase):

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::commit):
See above comments about transactionFinishedAndEventsFired. I tried
moving the call to transactionFinished after the events were fired but
that failed some asserts. But changing those asserts is still an
alternative to splitting up transactionFinished as is done here.

Source/WebKit/chromium:

Update overridden methods to match new signatures.

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::FailingBackingStore::createIDBDatabaseMetaData):

  • tests/IDBFakeBackingStore.h:
5:27 PM Changeset in webkit [124539] by Lucas Forschler
  • 1 copy in tags/Safari-537.3

New Tag.

5:23 PM Changeset in webkit [124538] by rwlbuis@webkit.org
  • 5 edits in trunk/Source/WebCore

SVG text selection doesn't work with hyperlinked text
https://bugs.webkit.org/show_bug.cgi?id=29166

Reviewed by Eric Seidel.

Cleanup SVGAElement. There is no need to test for middle mouse button here, this
is handled elsewhere, so remove isMiddleMouseButtonEvent. Similarly handleLinkClick
is not used anymore by HTMLAnchorElement, remove it. Finally, _self indeed is not needed.

No new tests, since no change in behaviour.

  • WebCore.order:
  • html/HTMLAnchorElement.cpp:
  • html/HTMLAnchorElement.h:

(WebCore):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::defaultEventHandler):

5:16 PM Changeset in webkit [124537] by kseo@webkit.org
  • 4 edits in trunk/Source/WebCore

Move causesFosterParenting() to HTMLStackItem
https://bugs.webkit.org/show_bug.cgi?id=93048

Reviewed by Adam Barth.

Changed to share causesFosterParenting() between HTMLTreeBuilder and HTMLConstructionSite
by moving this function to HTMLStackItem.

No functional change, so no new tests.

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::shouldFosterParent):

  • html/parser/HTMLStackItem.h:

(WebCore::HTMLStackItem::causesFosterParenting):
(HTMLStackItem):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

5:15 PM Changeset in webkit [124536] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Read tag names and attributes from the saved tokens in HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken*)
https://bugs.webkit.org/show_bug.cgi?id=93047

Reviewed by Adam Barth.

This is a follow-up patch for r123577.
Changed to retrieve the stack item of commonAncestor and read the local name from the saved token.

No new tests, covered by existing tests.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

4:58 PM Changeset in webkit [124535] by scheib@chromium.org
  • 17 edits
    2 adds
    7 deletes in trunk

Remove old Pointer Lock API.
https://bugs.webkit.org/show_bug.cgi?id=88892

Reviewed by Adam Barth.

Source/WebCore:

Removing the old Pointer Lock API as one of the final cleanup
changes for the Update to Fullscreen style locking Spec meta
bug https://bugs.webkit.org/show_bug.cgi?id=84402.

This change primarily removes idl, access in navigator,
one event, and supporting infrastructure in page/PointerLock.

In PointerLockController changes were already noted clearly with
TODOs differentiating old and new api sections.

Test: pointer-lock/pointerlockchange-event-on-lock-lost.html

  • WebCore.gypi:
  • dom/Element.cpp:

(WebCore::Element::webkitRequestPointerLock):

  • dom/EventNames.h:

(WebCore):

  • page/Navigator.cpp:
  • page/Navigator.h:

(WebCore):
(Navigator):

  • page/Navigator.idl:
  • page/PointerLock.cpp: Removed.
  • page/PointerLock.h: Removed.
  • page/PointerLock.idl: Removed.
  • page/PointerLockController.cpp:

(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::didAcquirePointerLock):
(WebCore::PointerLockController::didNotAcquirePointerLock):
(WebCore::PointerLockController::didLosePointerLock):

  • page/PointerLockController.h:

(PointerLockController):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

Removed #include to old API header.

LayoutTests:

Tests for old API removed, and most remaining tests required only small
changes.

  • platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
  • pointer-lock/lock-already-locked-expected.txt:
  • pointer-lock/lock-already-locked.html:
  • pointer-lock/lock-fail-responses-expected.txt: Removed.
  • pointer-lock/lock-fail-responses.html: Removed.

This test only covered the old API. The related concept is tested
for the new api in pointerlockchange-pointerlockerror-events.html.

  • pointer-lock/pointer-lock-api-expected.txt:
  • pointer-lock/pointer-lock-api.html:
  • pointer-lock/pointerlockchange-event-on-lock-lost-expected.txt: Added.
  • pointer-lock/pointerlockchange-event-on-lock-lost.html: Added.
  • pointer-lock/pointerlocklost-event-expected.txt: Removed.
  • pointer-lock/pointerlocklost-event.html: Removed.

pointerlocklost-event.html renamed to pointerlockchange-event-on-lock-lost.html.

4:55 PM Changeset in webkit [124534] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-536.26-branch

Merged r121388. <rdar://problem/11968328>

4:51 PM Changeset in webkit [124533] by Lucas Forschler
  • 3 edits in branches/safari-536.26-branch/Source/WebCore

Merged r121279. <rdar://problem/11968288>

4:48 PM Changeset in webkit [124532] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.26-branch

Merged r121275. <rdar://problem/11968288>

4:38 PM Changeset in webkit [124531] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r121031. <rdar://problem/11968321>

4:34 PM Changeset in webkit [124530] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-536.26-branch

Merged r120862. <rdar://problem/11983818>

4:30 PM Changeset in webkit [124529] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r120801. <rdar://problem/11968314>

4:27 PM Changeset in webkit [124528] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-536.26-branch

Merged r120761. <rdar://problem/11983816>

4:21 PM Changeset in webkit [124527] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r120731. <rdar://problem/11968306>

4:18 PM Changeset in webkit [124526] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r120559. <rdar://problem/11968285>

4:12 PM Changeset in webkit [124525] by Lucas Forschler
  • 2 edits in branches/safari-536.26-branch/Source/WebCore

Merged r120554. <rdar://problem/11968310>

4:09 PM Changeset in webkit [124524] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-536.26-branch

Merged r119914. <rdar://problem/11979241>

4:09 PM Changeset in webkit [124523] by dpranke@chromium.org
  • 3 edits in trunk/Tools

test-webkitpy can fail on a clean checkout
https://bugs.webkit.org/show_bug.cgi?id=93039

Reviewed by Adam Barth.

Now that we run tests in parallel that can cause the installer
to try and install packages in parallel (even the same package),
and that probably won't work. We fix this by autoinstalling
everything up front (serially).

  • Scripts/webkitpy/test/main.py:

(Tester._run_tests):

  • Scripts/webkitpy/thirdparty/init.py:

(autoinstall_everything):

4:06 PM Changeset in webkit [124522] by Lucas Forschler
  • 4 edits
    3 copies in branches/safari-536.26-branch

Merged r119911. <rdar://problem/11968297>

4:03 PM Changeset in webkit [124521] by Lucas Forschler
  • 6 edits in branches/safari-536.26-branch/Source/WebCore

Merged r119870. <rdar://problem/11968280>

4:02 PM Changeset in webkit [124520] by rniwa@webkit.org
  • 7 edits in trunk

scripts in formaction should be stripped upon paste
https://bugs.webkit.org/show_bug.cgi?id=92298

Reviewed by Eric Seidel.

Source/WebCore:

Strip formaction attribute values when the URL is of javascript protocol.

Test: editing/pasteboard/paste-noscript-xhtml.html

editing/pasteboard/paste-noscript.html

  • dom/Element.cpp:

(WebCore::isAttributeToRemove): Explicitly compare with href and nohref instead of comparing
the ends of strings since comparing two AtomicString is much faster.

LayoutTests:

Added formaction attributes to tests.

  • editing/pasteboard/paste-noscript-expected.txt:
  • editing/pasteboard/paste-noscript-xhtml-expected.txt:
  • editing/pasteboard/paste-noscript.html:
  • editing/pasteboard/resources/paste-noscript-content.html:
4:01 PM Changeset in webkit [124519] by Lucas Forschler
  • 2 edits in branches/safari-536.26-branch/Source/WebCore

Merged r119439. <rdar://problem/11968335>

3:50 PM Changeset in webkit [124518] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Built in quotes don't use lang attribute
https://bugs.webkit.org/show_bug.cgi?id=92918

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-08-02
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Previously even though there was a table in RenderQuote of languages mapped
to quotes we always used basic quotes. This patch removes the broken tree
walking and uses Element::computeInheritedLanguage fixing this.

Tests: fast/css-generated-content/quotes-lang-expected.html

fast/css-generated-content/quotes-lang.html
fast/css-generated-content/quotes-xml-lang-expected.html
fast/css-generated-content/quotes-xml-lang.html

  • rendering/RenderQuote.cpp:

(WebCore::RenderQuote::originalText):
(WebCore::RenderQuote::quotesData): New method that determines the right QuotesData to use.
(WebCore):

  • rendering/RenderQuote.h:

(RenderQuote):

LayoutTests:

Add a test that the built in quote languages are used and that custom
languages work as well. This also tests that xml:lang takes precedence
over lang.

  • fast/css-generated-content/quotes-lang-expected.html: Added.
  • fast/css-generated-content/quotes-lang.html: Added.
  • fast/css-generated-content/quotes-xml-lang-expected.html: Added.
  • fast/css-generated-content/quotes-xml-lang.html: Added.
3:48 PM Changeset in webkit [124517] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Add back a header I mistakenly removed in my previous commit.

  • WebCore.xcodeproj/project.pbxproj:
3:47 PM Changeset in webkit [124516] by enne@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Remove dependency on Scrollbar.h from ScrollbarLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=93024

Reviewed by James Robinson.

Change part enum from the Scrollbar version to WebScrollbar's.

Tested by composited layout tests.

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarBackgroundPainter::create):
(WebCore::ScrollbarBackgroundPainter::ScrollbarBackgroundPainter):
(ScrollbarBackgroundPainter):
(WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):

3:46 PM Changeset in webkit [124515] by abarth@webkit.org
  • 10 edits
    1 add
    2 deletes in trunk/Source/WebCore

BindingSecurityBase serves no purpose and should be removed
https://bugs.webkit.org/show_bug.cgi?id=93025

Reviewed by Eric Seidel.

Now that we don't use templates in the generic bindings, we can merge
BindingSecurity and BindingSecurityBase. This patch also removes some
functions that are no longer used (and reduces the number of
#includes).

No behavior change.

  • GNUmakefile.list.am:
  • WebCore.gypi:
  • bindings/generic/BindingSecurity.h:

(WebCore):
(BindingSecurity):

  • bindings/generic/BindingSecurityBase.cpp: Removed.
  • bindings/generic/BindingSecurityBase.h: Removed.
  • bindings/v8/V8Binding.h:
  • bindings/v8/V8Utilities.cpp:
  • bindings/v8/custom/V8MutationObserverCustom.cpp:
3:41 PM Changeset in webkit [124514] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Let XCode have its own away and also sort the files.

  • WebCore.xcodeproj/project.pbxproj:
3:39 PM Changeset in webkit [124513] by commit-queue@webkit.org
  • 14 edits
    5 adds in trunk/Source

[chromium] Add CCScrollbarAnimationController class for compositor scrollbar animation
https://bugs.webkit.org/show_bug.cgi?id=91688

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-08-02
Reviewed by Adrienne Walker.

Source/WebCore:

Add CCScrollbarAnimationController that serves as the middle man
between the scrolling layer and scrollbar layer. Now all scroll offset
information are pushed through the controller, and individual platform
can provide specialized controller for extra processing.

A basic fadeout controller for Android scrollbar is included.

New test: ScrollbarLayerChromiumTest.scrollOffsetSynchronization

CCScrollbarAnimationControllerLinearFade.*

  • WebCore.gypi:
  • page/FrameView.cpp:

(WebCore::FrameView::calculateScrollbarModesForLayout):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::createScrollbarLayer):

  • platform/graphics/chromium/TreeSynchronizer.cpp:

(WebCore::TreeSynchronizer::synchronizeTreeRecursive):
(WebCore::TreeSynchronizer::updateScrollbarLayerPointersRecursive):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::scrollBy):
(WebCore::CCLayerImpl::setMaxScrollPosition):
(WebCore):
(WebCore::CCLayerImpl::horizontalScrollbarLayer):
(WebCore::CCLayerImpl::setHorizontalScrollbarLayer):
(WebCore::CCLayerImpl::verticalScrollbarLayer):
(WebCore::CCLayerImpl::setVerticalScrollbarLayer):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(WebCore):
(CCLayerImpl):
(WebCore::CCLayerImpl::scrollbarAnimationController):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::animate):
(WebCore::CCLayerTreeHostImpl::pinchGestureBegin):
(WebCore::CCLayerTreeHostImpl::pinchGestureUpdate):
(WebCore::CCLayerTreeHostImpl::pinchGestureEnd):
(WebCore::CCLayerTreeHostImpl::animateScrollbars):
(WebCore):
(WebCore::CCLayerTreeHostImpl::animateScrollbarsRecursive):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCScrollbarAnimationController.cpp: Added.

(WebCore):
(WebCore::CCScrollbarAnimationController::create):
(WebCore::CCScrollbarAnimationController::CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::~CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::getScrollLayerBounds):
(WebCore::CCScrollbarAnimationController::updateScrollOffset):

  • platform/graphics/chromium/cc/CCScrollbarAnimationController.h: Added.

(WebCore):
(CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::animate):
(WebCore::CCScrollbarAnimationController::didPinchGestureBegin):
(WebCore::CCScrollbarAnimationController::didPinchGestureUpdate):
(WebCore::CCScrollbarAnimationController::didPinchGestureEnd):
(WebCore::CCScrollbarAnimationController::setHorizontalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::horizontalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::setVerticalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::verticalScrollbarLayer):

  • platform/graphics/chromium/cc/CCScrollbarAnimationControllerAndroid.cpp: Added.

(WebCore):
(WebCore::CCScrollbarAnimationController::create):
(WebCore::CCScrollbarAnimationControllerAndroid::CCScrollbarAnimationControllerAndroid):
(WebCore::CCScrollbarAnimationControllerAndroid::~CCScrollbarAnimationControllerAndroid):
(WebCore::CCScrollbarAnimationControllerAndroid::animate):
(WebCore::CCScrollbarAnimationControllerAndroid::didPinchGestureUpdate):
(WebCore::CCScrollbarAnimationControllerAndroid::didPinchGestureEnd):
(WebCore::CCScrollbarAnimationControllerAndroid::updateScrollOffset):
(WebCore::CCScrollbarAnimationControllerAndroid::opacityAtTime):

  • platform/graphics/chromium/cc/CCScrollbarAnimationControllerAndroid.h: Added.

(WebCore):
(CCScrollbarAnimationControllerAndroid):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:

(WebCore::CCScrollbarLayerImpl::CCScrollbarLayerImpl):
(WebCore):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::value):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::currentPos):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::totalSize):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::maximum):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:

(WebCore::CCScrollbarLayerImpl::orientation):
(WebCore::CCScrollbarLayerImpl::setCurrentPos):
(WebCore::CCScrollbarLayerImpl::setTotalSize):
(WebCore::CCScrollbarLayerImpl::setMaximum):
(CCScrollbarLayerImpl):

Source/WebKit/chromium:

New unit test ScrollbarLayerChromiumTest.scrollOffsetSynchronization to verify
scroll offset is updated during tree synchronization and threaded scrolling.
Another new unit test CCScrollbarAnimationControllerLinearFadeTest to verify
opacity animates as intended.

  • tests/ScrollbarLayerChromiumTest.cpp:
3:34 PM Changeset in webkit [124512] by Dave Barton
  • 60 edits in trunk

MathML: nested square root symbols have varying descenders
https://bugs.webkit.org/show_bug.cgi?id=43819

Reviewed by Eric Seidel.

Source/WebCore:

This bug stems from the use of offsetHeight() on a renderer that's possibly a
RenderInline, in getBoxModelObjectHeight() in RenderMathMLBlock.h.
RenderInline::offsetHeight() actually returns linesBoundingBox().height(), which can be
overly large, especially for the big STIX fonts that include a few mathematical symbols
with unusually tall ascenders or descenders. A better solution for MathML in general is
the CSS properties { -webkit-line-box-contain: glyphs replaced; line-height: 0; }. This
gives tight glyph-based formatting in radical expressions, subscripts, superscripts,
underscripts, overscripts, numerators, denominators, etc. To make this work, inline
elements such as <mn> and <mi> must be wrapped inside implicit <mrow>s or just
RenderMathMLBlocks, when a tight height is desired. We also replace
getBoxModelObjectWidth(), which uses offsetWidth(), with contentLogicalWidth(). Finally,
we enable the STIXGeneral font for use inside layout tests.

Tested by existing LayoutTests/mathml/presentation/ files including roots.xhtml.

  • css/mathml.css:

(math):
(mtext):
(mroot > * + *):
(mtd):

  • rendering/mathml/RenderMathMLBlock.cpp:

(WebCore::RenderMathMLBlock::preferredLogicalHeightAfterSizing):
(WebCore::RenderMathMLBlock::baselinePosition):

  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::baselinePosition):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::createStackableStyle):
(WebCore::RenderMathMLOperator::baselinePosition):

  • rendering/mathml/RenderMathMLRoot.cpp:

(WebCore::RenderMathMLRoot::addChild):
(WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
(WebCore::RenderMathMLRoot::paint):

  • rendering/mathml/RenderMathMLRoot.h:
  • rendering/mathml/RenderMathMLSquareRoot.cpp:
  • rendering/mathml/RenderMathMLSquareRoot.h:
  • rendering/mathml/RenderMathMLSubSup.cpp:

(WebCore::RenderMathMLSubSup::layout):

  • rendering/mathml/RenderMathMLUnderOver.cpp:

(WebCore::RenderMathMLUnderOver::baselinePosition):

  • rendering/mathml/RenderMathMLUnderOver.h:

Tools:

Allow the STIXGeneral font to be used during layout tests, especially for MathML.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(allowedFontFamilySet):

  • WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:

(WTR::allowedFontFamilySet):

LayoutTests:

These tests are rebaselined to use the STIXGeneral font, and tight glyph-based MathML
layout using the CSS properties
{ -webkit-line-box-contain: glyphs replaced; line-height: 0; }.

  • mathml/presentation/style.xhtml:
  • platform/mac/mathml/presentation/attributes-expected.png:
  • platform/mac/mathml/presentation/attributes-expected.txt:
  • platform/mac/mathml/presentation/fenced-expected.png:
  • platform/mac/mathml/presentation/fenced-expected.txt:
  • platform/mac/mathml/presentation/fenced-mi-expected.png:
  • platform/mac/mathml/presentation/fenced-mi-expected.txt:
  • platform/mac/mathml/presentation/fractions-expected.png:
  • platform/mac/mathml/presentation/fractions-expected.txt:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/mac/mathml/presentation/mo-expected.png:
  • platform/mac/mathml/presentation/mo-expected.txt:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • platform/mac/mathml/presentation/mroot-pref-width-expected.png:
  • platform/mac/mathml/presentation/mroot-pref-width-expected.txt:
  • platform/mac/mathml/presentation/over-expected.png:
  • platform/mac/mathml/presentation/over-expected.txt:
  • platform/mac/mathml/presentation/roots-expected.png:
  • platform/mac/mathml/presentation/roots-expected.txt:
  • platform/mac/mathml/presentation/row-alignment-expected.png:
  • platform/mac/mathml/presentation/row-alignment-expected.txt:
  • platform/mac/mathml/presentation/row-expected.png:
  • platform/mac/mathml/presentation/row-expected.txt:
  • platform/mac/mathml/presentation/style-expected.png:
  • platform/mac/mathml/presentation/style-expected.txt:
  • platform/mac/mathml/presentation/sub-expected.png:
  • platform/mac/mathml/presentation/sub-expected.txt:
  • platform/mac/mathml/presentation/subsup-expected.png:
  • platform/mac/mathml/presentation/subsup-expected.txt:
  • platform/mac/mathml/presentation/sup-expected.png:
  • platform/mac/mathml/presentation/sup-expected.txt:
  • platform/mac/mathml/presentation/tables-expected.png:
  • platform/mac/mathml/presentation/tables-expected.txt:
  • platform/mac/mathml/presentation/tokenElements-expected.png:
  • platform/mac/mathml/presentation/tokenElements-expected.txt:
  • platform/mac/mathml/presentation/under-expected.png:
  • platform/mac/mathml/presentation/under-expected.txt:
  • platform/mac/mathml/presentation/underover-expected.png:
  • platform/mac/mathml/presentation/underover-expected.txt:
  • platform/mac/mathml/xHeight-expected.png:
  • platform/mac/mathml/xHeight-expected.txt:
3:29 PM Changeset in webkit [124511] by enne@google.com
  • 5 edits in trunk/Source

[chromium] Make CCScrollbarLayerImpl handle lost contexts properly
https://bugs.webkit.org/show_bug.cgi?id=93021

Reviewed by James Robinson.

Source/WebCore:

The resource ids that CCScrollbarLayerImpl holds onto need to be
discarded during a lost context as the resource provider they came
from is also destroyed.

Make a scrollbarGeometry function that wraps all uses of the
m_geometry member to make it possible to test CCScrollbarLayerImpl
without depending on WebCore.

Test: CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:

(WebCore::CCScrollbarLayerImpl::scrollbarGeometry):
(WebCore):
(WebCore::CCScrollbarLayerImpl::appendQuads):
(WebCore::CCScrollbarLayerImpl::didLoseContext):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:

(CCScrollbarLayerImpl):

Source/WebKit/chromium:

Add CCScrollbarLayerImpl to the dontUseOldResourceAfterLostContext
test. Additionally, modify this test so that stale resource ids
properly point at invalid texture ids so that the test actually tests
what it is supposed to be testing.

  • tests/CCLayerTreeHostImplTest.cpp:
3:24 PM Changeset in webkit [124510] by oliver@apple.com
  • 5 edits in trunk/Source/WebCore

A few objects aren't being safely protected from GC in all cases
https://bugs.webkit.org/show_bug.cgi?id=93031

Reviewed by Filip Pizlo.

I haven't seen evidence that anyone is hitting bugs due to this, but any
GC error can lead to later -- hard to diagnose -- bugs if they result in
resurrecting dead objects.

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::create):
(WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSCustomXPathNSResolver.h:

(JSCustomXPathNSResolver):

  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::tryGetProperty):

  • bindings/js/JSDictionary.h:

(WebCore::JSDictionary::JSDictionary):
(WebCore::JSDictionary::initializerObject):

3:11 PM Changeset in webkit [124509] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r119050. <rdar://problem/11968276>

3:05 PM Changeset in webkit [124508] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.26-branch

Merged r118816. <rdar://problem/11969449>

3:01 PM Changeset in webkit [124507] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.26-branch

Merged r118703. <rdar://problem/11968262>

2:59 PM Changeset in webkit [124506] by eae@chromium.org
  • 4 edits
    2 adds in trunk

Range::isPointInRange incorrectly throws WRONG_DOCUMENT_ERR
https://bugs.webkit.org/show_bug.cgi?id=93009

Reviewed by Ojan Vafai.

Source/WebCore:

The latest working draft of the DOM4 spec has all but killed the
WRONG_DOCUMENT_ERR exception. Update isPointInRange to return false
instead of throwing an exception when the range and point are in
different documents. This matches the Mozilla behavior.

Test: fast/html/range-point-in-range-for-different-documents.html

  • dom/Range.cpp:

(WebCore::Range::isPointInRange):
Return false instead of throwing WRONG_DOCUMENT_ERR when the point is in
a different document.

LayoutTests:

Add test for Range::isPointInRange where the point is in a different
document than the range.

  • fast/dom/move-nodes-across-documents.html: Change expectations for isPointInRange
  • fast/html/range-point-in-range-for-different-documents-expected.txt: Added.
  • fast/html/range-point-in-range-for-different-documents.html: Added.
2:58 PM Changeset in webkit [124505] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.26-branch

Merged r118592. <rdar://problem/11969445>

2:38 PM Changeset in webkit [124504] by dpranke@chromium.org
  • 3 edits in trunk/Tools

test-webkitpy: some tests need to run by themselves
https://bugs.webkit.org/show_bug.cgi?id=92926

Reviewed by Ojan Vafai.

Due to timing issues some of the executive tests will collide
and fail if they're run concurrently. This patch adds support
for writing tests that will be executed one at a time
(serially); to get them, add "serial_" to the front of the test
method name.

  • Scripts/webkitpy/common/system/executive_unittest.py:

(ExecutiveTest.serial_test_kill_process):
(ExecutiveTest.serial_test_kill_all):
(ExecutiveTest.serial_test_check_running_pid):
(ExecutiveTest.serial_test_running_pids):
(ExecutiveTest.serial_test_run_in_parallel):

  • Scripts/webkitpy/test/main.py:

(Tester._run_tests):
(Tester._test_names):

2:36 PM Changeset in webkit [124503] by dpranke@chromium.org
  • 5 edits in trunk/Tools

test-webkitpy: integrate proper support for integration tests
https://bugs.webkit.org/show_bug.cgi?id=92925

Reviewed by Ojan Vafai.

This patch merges the custom loader I used for integration tests
into the main test-webkitpy code. Integration tests are not run
by default yet, but at least they can be run.

  • Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:

(MockTestShellTest.test_test_shell_parse_options):

  • Scripts/webkitpy/layout_tests/port/port_testcase.py:

(test_path_to_apache_config_file):

  • Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:

(WebsocketserverTest):

  • Scripts/webkitpy/test/main.py:

(Tester._parse_args):
(Tester._run_tests):
(Tester._test_names):
(Tester._log_exception):
(_Loader):
(_Loader.getTestCaseNames):
(_Loader.getTestCaseNames.isTestMethod):

2:36 PM Changeset in webkit [124502] by eae@chromium.org
  • 12 edits
    2 copies in branches/chromium/1180

Merge 124295 - Float imprecision causes incorrect wrapping in LineLayout with subpixel layout
https://bugs.webkit.org/show_bug.cgi?id=92778

Reviewed by Eric Seidel.

Source/WebCore:

Due to float imprecision an incorrect wrapping decision is made in
certain cases where the values being compare are close but not exactly
the same. This can happen as the size of blocks is represented in layout
units while line layout uses floats.

Test: fast/sub-pixel/inline-block-should-not-wrap.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::fitsOnLine):
Use LayoutUnit::epsilon when comparing values as that is the maximum
precision we support.

LayoutTests:

Add test ensuring that an inline block isn't wrapped incorrectly.

  • fast/sub-pixel/inline-block-should-not-wrap-expected.html: Added.
  • fast/sub-pixel/inline-block-should-not-wrap.html: Added.
  • platform/mac-lion/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/mac-wk2/Skipped:
  • platform/mac/Skipped:
  • platform/qt-4.8/Skipped:
  • platform/qt/Skipped:
  • platform/win-wk2/Skipped:
  • platform/win-xp/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
  • platform/wk2/Skipped:

TBR=eae@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10829151

2:35 PM Changeset in webkit [124501] by dpranke@chromium.org
  • 5 edits in trunk/Tools

test-webkitpy: clean up runner in preparation for running tests serially as necessary
https://bugs.webkit.org/show_bug.cgi?id=92922

Reviewed by Ojan Vafai.

In order to run some tests by themselves (serially, rather than
in parallel with other tests), we will need to be able to run
multiple test suites; this causes us to move loading the logic
for finding test method names out of the runner and into main.

I'm taking advantage of this to simplify some other stuff from
the runner as well; it is now very simple and doesn't expose its
dependency on unittest.TestResult at all (nor will the Printer
use TestResult).

Subsequent patches will move the custom loader from
port_testcase so that we can properly choose whether to run
integration tests and/or serial tests, and then update the
appropriate tests to run only serially.

  • Scripts/webkitpy/test/main.py:

(Tester._run_tests):
(Tester):
(Tester._check_imports):
(Tester._test_names):
(Tester._all_test_names):

  • Scripts/webkitpy/test/printer.py:

(Printer.init):
(Printer.write_update):
(Printer):
(Printer.print_finished_test):
(Printer.print_result):

  • Scripts/webkitpy/test/runner.py:

(unit_test_name):
(Runner.init):
(Runner.run):
(Runner.handle):
(_Worker.handle):

  • Scripts/webkitpy/test/runner_unittest.py:

(FakeLoader.loadTestsFromName):
(RunnerTest.test_run):

2:34 PM Changeset in webkit [124500] by eae@chromium.org
  • 1 edit in branches/chromium/1180/Source/WebCore/platform/FractionalLayoutUnit.h

Merge 121709 - LayoutUnit::epsilon() is wrong
https://bugs.webkit.org/show_bug.cgi?id=90083

Patch by Behdad Esfahbod <behdad@behdad.org> on 2012-07-02
Reviewed by Eric Seidel.

Do division in floats, not integers.

No new tests. No code using the affected function.

  • platform/FractionalLayoutUnit.h:

(WebCore::FractionalLayoutUnit::epsilon):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/10828136

2:28 PM Changeset in webkit [124499] by arv@chromium.org
  • 5 edits
    2 adds in trunk

DOM4: className should be defined on Element and not on HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=93014

Reviewed by Adam Barth.

DOM4 specs that Element should have the className WebIDL attribute. This moves the
attribute to the correct IDL file.

Source/WebCore:

Test: fast/dom/Element/class-name.html

  • dom/Element.idl:
  • html/HTMLElement.idl:

LayoutTests:

  • fast/dom/Element/class-name-expected.txt: Added.
  • fast/dom/Element/class-name.html: Added.
2:25 PM Changeset in webkit [124498] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Handle case where Error.prototype returns an empty object
https://bugs.webkit.org/show_bug.cgi?id=91792

Reviewed by Kentaro Hara.

In some edge cases we get an empty object back from Error.prototype.

No new tests. I cannot reproduce this.

  • bindings/v8/V8BindingPerContextData.cpp:

(WebCore::V8BindingPerContextData::constructorForTypeSlowCase):

2:10 PM Changeset in webkit [124497] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, build fix for DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

  • dfg/DFGStructureCheckHoistingPhase.cpp:

(JSC::DFG::StructureCheckHoistingPhase::run):

2:06 PM Changeset in webkit [124496] by eric@webkit.org
  • 2 edits in trunk/Source/WebCore

Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Unreviewed, follow-up per Mitz's request.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paint):

2:00 PM Changeset in webkit [124495] by jamesr@google.com
  • 4 edits in trunk/Source/WebCore

[chromium] Remove unused includes from compositor code
https://bugs.webkit.org/show_bug.cgi?id=92930

Reviewed by Adrienne Walker.

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:
  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
1:57 PM Changeset in webkit [124494] by gavinp@chromium.org
  • 3 edits
    3 copies in branches/chromium/1180

Merge 123798 - Guard Prerenderer against inserting prerenders into detached documents.
https://bugs.webkit.org/show_bug.cgi?id=92401

Reviewed by Adam Barth.

Source/WebCore:

If the document is detached, we should not launch a prerender.

Test: fast/dom/HTMLLinkElement/prerender-insert-after-stop.html

  • loader/Prerenderer.cpp:

(WebCore::Prerenderer::render):

LayoutTests:

If the document is detached, we should just not launch a prerender.

  • fast/dom/HTMLLinkElement/prerender-insert-after-stop-expected.txt: Added.
  • fast/dom/HTMLLinkElement/prerender-insert-after-stop.html: Added.
  • fast/dom/HTMLLinkElement/resources/empty2.html: Added.

TBR=gavinp@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10824152

1:50 PM Changeset in webkit [124493] by abarth@webkit.org
  • 2 edits in trunk/Tools

Turn on tests for the mac-ews, for realz this time.

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:

(MacEWS):

1:49 PM Changeset in webkit [124492] by abarth@webkit.org
  • 39 edits
    2 adds
    1 delete in trunk/Source

The generic bindings shouldn't use templates
https://bugs.webkit.org/show_bug.cgi?id=93016

Reviewed by Eric Seidel.

Source/WebCore:

We originally created the generic bindings to share code between the
JavaScriptCore and V8 bindings. However, the code came out sort of ugly
because we used templates (with the idea that templates would let us
use more than one scripting engine).

This patch rips out the templates in an attempt to make the code
prettier and therefore easier to use in both V8 and JSC. I've tried to
keep this patch small by remaning things mostly in place. In the next
patch, I'll move a bunch of code out of headers and into cpp files.

No behavior change.

  • GNUmakefile.am:
  • UseV8.cmake:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • bindings/generic/BindingSecurity.h:

(WebCore):
(BindingSecurity):
(WebCore::BindingSecurity::canAccessWindow):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):
(WebCore::BindingSecurity::allowPopUp):
(WebCore::BindingSecurity::allowSettingFrameSrcToJavascriptUrl):
(WebCore::BindingSecurity::allowSettingSrcToJavascriptURL):

  • bindings/generic/GenericBinding.h:

(WebCore::completeURL):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrGetter):
(GenerateReplaceableAttrSetter):
(GenerateFunctionCallback):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8Float64Array.cpp:
  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:
  • bindings/scripts/test/V8/V8TestEventTarget.cpp:
  • bindings/scripts/test/V8/V8TestException.cpp:
  • bindings/scripts/test/V8/V8TestInterface.cpp:
  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
  • bindings/scripts/test/V8/V8TestNode.cpp:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::contentDocumentAttrGetter):
(WebCore::TestObjV8Internal::getSVGDocumentCallback):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
  • bindings/v8/BindingState.cpp: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.cpp.

(WebCore):
(WebCore::BindingState::instance):
(WebCore::activeWindow):
(WebCore::firstWindow):
(WebCore::activeFrame):
(WebCore::firstFrame):
(WebCore::immediatelyReportUnsafeAccessTo):

  • bindings/v8/BindingState.h: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.h.

(WebCore):
(BindingState):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::canAccessFromCurrentOrigin):

  • bindings/v8/V8Binding.h:

(WebCore):

  • bindings/v8/V8DOMWindowShell.cpp:
  • bindings/v8/V8Proxy.cpp:
  • bindings/v8/V8Utilities.cpp:

(WebCore::callingOrEnteredFrame):
(WebCore::completeURL):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::WindowSetTimeoutImpl):
(WebCore::V8DOMWindow::eventAccessorGetter):
(WebCore::V8DOMWindow::eventAccessorSetter):
(WebCore::V8DOMWindow::locationAccessorSetter):
(WebCore::V8DOMWindow::openerAccessorSetter):
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):
(WebCore::V8DOMWindow::showModalDialogCallback):
(WebCore::V8DOMWindow::openCallback):
(WebCore::V8DOMWindow::namedSecurityCheck):
(WebCore::V8DOMWindow::indexedSecurityCheck):

  • bindings/v8/custom/V8DocumentLocationCustom.cpp:

(WebCore::V8Document::locationAccessorSetter):

  • bindings/v8/custom/V8EntryCustom.cpp:
  • bindings/v8/custom/V8EntrySyncCustom.cpp:
  • bindings/v8/custom/V8HTMLFrameElementCustom.cpp:

(WebCore::V8HTMLFrameElement::locationAccessorSetter):

  • bindings/v8/custom/V8HistoryCustom.cpp:

(WebCore::V8History::indexedSecurityCheck):
(WebCore::V8History::namedSecurityCheck):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
  • bindings/v8/custom/V8InjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::canAccessInspectedWindow):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::hashAccessorSetter):
(WebCore::V8Location::hostAccessorSetter):
(WebCore::V8Location::hostnameAccessorSetter):
(WebCore::V8Location::hrefAccessorSetter):
(WebCore::V8Location::pathnameAccessorSetter):
(WebCore::V8Location::portAccessorSetter):
(WebCore::V8Location::protocolAccessorSetter):
(WebCore::V8Location::searchAccessorSetter):
(WebCore::V8Location::reloadAccessorGetter):
(WebCore::V8Location::replaceAccessorGetter):
(WebCore::V8Location::assignAccessorGetter):
(WebCore::V8Location::reloadCallback):
(WebCore::V8Location::replaceCallback):
(WebCore::V8Location::assignCallback):
(WebCore::V8Location::toStringCallback):
(WebCore::V8Location::indexedSecurityCheck):
(WebCore::V8Location::namedSecurityCheck):

  • bindings/v8/custom/V8NamedNodeMapCustom.cpp:
  • bindings/v8/custom/V8NodeCustom.cpp:

Source/WebKit/chromium:

Update #include.

  • src/WebBindings.cpp:
1:44 PM Changeset in webkit [124491] by inferno@chromium.org
  • 6 edits
    2 adds in trunk

No isChildAllowed checked when adding RenderFullScreen as the child..
https://bugs.webkit.org/show_bug.cgi?id=92995

Reviewed by Eric Seidel.

Source/WebCore:

Test: fullscreen/fullscreen-child-not-allowed-crash.html

  • dom/Document.cpp:

(WebCore::Document::webkitWillEnterFullScreenForElement): pass the object's parent
pointer as an additional argument.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRendererFactory::createRendererIfNeeded): pass the to be parent |parentRenderer|
as the argument.

  • rendering/RenderFullScreen.cpp:

(RenderFullScreen::wrapRenderer): make sure that parent allows RenderFullScreen as the child.

  • rendering/RenderFullScreen.h:

(RenderFullScreen): support the object's parent
pointer as an additional argument.

LayoutTests:

  • fullscreen/fullscreen-child-not-allowed-crash-expected.txt: Added.
  • fullscreen/fullscreen-child-not-allowed-crash.html: Added.
1:33 PM Changeset in webkit [124490] by jamesr@google.com
  • 10 edits
    1 copy
    1 add in trunk/Source

[chromium] Wrap shared context getters in WebKit API and avoid WebCore::GraphicsContext3D use in compositor internals
https://bugs.webkit.org/show_bug.cgi?id=92917

Reviewed by Adrienne Walker.

Source/Platform:

This adds Platform API for creating and accessing shared GraphicsContext3D and Ganesh contexts from the main or
compositor threads. These can be used for evaluating filters or doing accelerated painting. These contexts are
generally leaked until lost or process exit, the details are documented in WebSharedGraphicsContext3D.h

  • Platform.gypi:
  • chromium/public/WebSharedGraphicsContext3D.h: Added.

(WebKit):
(WebSharedGraphicsContext3D):

Source/WebCore:

This uses Platform API wrappers to access the shared WebGraphicsContext3D / Ganesh contexts from the compositor
to evaluate accelerated filters or do accelerated painting.

Filters changes covered by css3/filters/*-hw.html layout tests.

  • WebCore.gypi:
  • platform/chromium/support/WebSharedGraphicsContext3D.cpp:

(WebKit):
(WebKit::WebSharedGraphicsContext3D::mainThreadContext):
(WebKit::WebSharedGraphicsContext3D::mainThreadGrContext):
(WebKit::WebSharedGraphicsContext3D::compositorThreadContext):
(WebKit::WebSharedGraphicsContext3D::compositorThreadGrContext):
(WebKit::WebSharedGraphicsContext3D::haveCompositorThreadContext):
(WebKit::WebSharedGraphicsContext3D::createCompositorThreadContext):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::createAcceleratedCanvas):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:

(WebKit):
(FrameBufferSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::applyFilters):

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:

(WebCore::CCRenderSurfaceFilters::apply):

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.h:

(WebKit):
(CCRenderSurfaceFilters):

1:30 PM Changeset in webkit [124489] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=93020
REGRESSION (tiled scrolling): Full-screen video is broken if page is
scrolled
-and corresponding-
<rdar://problem/11629778>

Reviewed by Anders Carlsson.

The bug here is that ScrollingTreeNodeMac::setScrollLayerPosition()
uses the CALayer (PlatformLayer) directly to set the position. That
means that the GraphicsLayer that owns that PlatformLayer does not
have updated position information. That results in this bug when we
switch from fast scrolling to main thread scrolling, because at that
point, the GraphicsLayer needs to have the correct information. So
make sure to update the main thread scroll position and layer
position before transitioning to main thread scrolling.

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):

1:23 PM Changeset in webkit [124488] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Unreviewed debug build fix (bug 92889)

Patch by Antonio Gomes <agomes@rim.com> on 2012-08-02

  • WebKitSupport/InRegionScroller.cpp:

(BlackBerry::WebKit::pushBackInRegionScrollable):

12:53 PM Changeset in webkit [124487] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Rounding error of destination rect of checkerboard
https://bugs.webkit.org/show_bug.cgi?id=93012

Patch by Leo Yang <leoyang@rim.com> on 2012-08-02
Reviewed by Rob Buis.

Reviewed internally by Jakob Petsovits.

Intersect with the destination rectangle to eliminate the rounding error.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::blitContents):

12:42 PM Changeset in webkit [124486] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Rename 'User agent' to 'Overrides' in settings screen
https://bugs.webkit.org/show_bug.cgi?id=92990

Patch by Addy Osmani <addyo@chromium.org> on 2012-08-02
Reviewed by Pavel Feldman.

Simple setting rename of User agent -> Overrides

  • English.lproj/localizedStrings.js:
  • inspector/front-end/SettingsScreen.js:
12:36 PM Changeset in webkit [124485] by pdr@google.com
  • 8 edits
    2 adds in trunk

Do not dispatch modification events in SVG attribute synchronization
https://bugs.webkit.org/show_bug.cgi?id=92604

Reviewed by Ryosuke Niwa.

Source/WebCore:

Previously, calling hasAttribute() during layout could hit a
layout-during-layout bug because calling hasAttribute() could dispatch a
subtree modification event which could synchronously force a layout. hasAttribute()
exhibits this behavior because property synchronization is done lazily.

This patch skips dispatching subtree modification events during attribute
synchronization.

Additionally, this patch contains a refactoring of lazy attribute setting. We
now have a single place where lazy attributes are set (setSynchronizedLazyAttribute)
and lazy attribute flags have been moved to just Element and ElementAttributeData.

Test: svg/custom/path-domsubtreemodified-crash.html

  • dom/Element.cpp:

(WebCore::Element::setAttribute):
(WebCore::Element::setSynchronizedLazyAttribute):
(WebCore):
(WebCore::Element::setAttributeInternal):

  • dom/Element.h:

(Element):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):

  • dom/ElementAttributeData.h:

(ElementAttributeData):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::updateStyleAttribute):

  • svg/properties/SVGAnimatedPropertyMacros.h:

(WebCore::SVGSynchronizableAnimatedProperty::synchronize):

LayoutTests:

  • svg/custom/path-domsubtreemodified-crash-expected.txt: Added.
  • svg/custom/path-domsubtreemodified-crash.html: Added.
12:29 PM Changeset in webkit [124484] by kpiascik@rim.com
  • 14 edits
    2 adds in trunk

Web Inspector: Override the DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=91008

Reviewed by Pavel Feldman.

Source/WebCore:

Re-added the m_page member variable to DeviceOrientationController and
added InspectorInstrumentation to see if the DeviceOrientationData
should be overridden or not.

Added UI to the web inspector front-end to allow users to override the
device orientation. This is currently hidden behind an experiment.

Test: inspector/device-orientation-success.html

  • English.lproj/localizedStrings.js:
  • dom/DeviceOrientationController.cpp:

(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::create):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
(WebCore::provideDeviceOrientationTo):

  • dom/DeviceOrientationController.h:

(DeviceOrientationController):

  • inspector/Inspector.json:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::overrideDeviceOrientationImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::overrideDeviceOrientation):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setDeviceOrientationOverride):
(WebCore):
(WebCore::InspectorPageAgent::clearDeviceOrientationOverride):
(WebCore::InspectorPageAgent::canOverrideDeviceOrientation):
(WebCore::InspectorPageAgent::overrideDeviceOrientation):

  • inspector/InspectorPageAgent.h:
  • inspector/front-end/Settings.js:

(WebInspector.ExperimentsSettings):

  • inspector/front-end/SettingsScreen.js:

(WebInspector.UserAgentSettingsTab):
(WebInspector.UserAgentSettingsTab.prototype._createInput):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceMetricsElement):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):
(WebInspector.UserAgentSettingsTab.prototype._onDeviceOrientationOverrideCheckboxClicked):
(WebInspector.UserAgentSettingsTab.prototype._applyDeviceOrientationUserInput):
(WebInspector.UserAgentSettingsTab.prototype._setDeviceOrientation.set if):
(WebInspector.UserAgentSettingsTab.prototype._setDeviceOrientation):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceOrientationOverrideElement):

  • inspector/front-end/UserAgentSupport.js:

(WebInspector.UserAgentSupport.DeviceOrientation):
(WebInspector.UserAgentSupport.DeviceOrientation.prototype.toSetting):
(WebInspector.UserAgentSupport.DeviceOrientation.parseSetting):
(WebInspector.UserAgentSupport.DeviceOrientation.parseUserInput):
(WebInspector.UserAgentSupport.DeviceOrientation.clearDeviceOrientationOverride):

  • inspector/front-end/inspector.js:

(WebInspector.doLoadedDone):

LayoutTests:

New tests for Device Orientation override.

  • inspector/device-orientation-success-expected.txt: Added.
  • inspector/device-orientation-success.html: Added.
12:20 PM Changeset in webkit [124483] by commit-queue@webkit.org
  • 14 edits
    1 add in trunk

TypedArray set method is slow when called with another typed array
https://bugs.webkit.org/show_bug.cgi?id=92556

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-02
Reviewed by Kenneth Russell.

PerformanceTests:

  • Bindings/typed-array-set-from-typed.html: Added.

Source/WebCore:

When setting multiples values to a typed array from an array like
element, try to determine if the argument is a typed array. If so,
cast the argument to a typed array, and read each element with .item()
method. That avoid reading the value as a JSValue, and speedups set
method by approximatively 10x.

Introduce setWebGLArrayWithTypedArrayArgument template function which
checks if argument is a typed array. If so, it copies the data to
target typed array and returns true. Otherwise, it returns false.

Introduce copyTypedArrayBuffer template function which copies data
from a typed array to another one. This function is also used from
constructArrayBufferViewWithTypedArrayArgument.

  • bindings/js/JSArrayBufferViewHelper.h:

(WebCore):
(WebCore::copyTypedArrayBuffer):
(WebCore::setWebGLArrayWithTypedArrayArgument):
(WebCore::setWebGLArrayHelper):
(WebCore::constructArrayBufferViewWithTypedArrayArgument):

  • bindings/js/JSFloat32ArrayCustom.cpp:

(WebCore::JSFloat32Array::set):

  • bindings/js/JSFloat64ArrayCustom.cpp:

(WebCore::JSFloat64Array::set):

  • bindings/js/JSInt16ArrayCustom.cpp:

(WebCore::JSInt16Array::set):

  • bindings/js/JSInt32ArrayCustom.cpp:

(WebCore::JSInt32Array::set):

  • bindings/js/JSInt8ArrayCustom.cpp:

(WebCore::JSInt8Array::set):

  • bindings/js/JSUint16ArrayCustom.cpp:

(WebCore::JSUint16Array::set):

  • bindings/js/JSUint32ArrayCustom.cpp:

(WebCore::JSUint32Array::set):

  • bindings/js/JSUint8ArrayCustom.cpp:

(WebCore::JSUint8Array::set):

  • bindings/js/JSUint8ClampedArrayCustom.cpp:

(WebCore::JSUint8ClampedArray::set):

Source/WTF:

Add an checkInboundData function to TypedArrayBase to check if a
position will be not be out of bound or overflow from the typed array.

  • wtf/TypedArrayBase.h:

(WTF::TypedArrayBase::checkInboundData):
(TypedArrayBase):

11:53 AM Changeset in webkit [124482] by Chris Fleizach
  • 7 edits in trunk

AXEnabled = false for AXIncrementors inside text fields
https://bugs.webkit.org/show_bug.cgi?id=93008

Reviewed by Anders Carlsson.

Source/WebCore:

Mock objects should return "enabled" by default, since they are valid objects.

  • accessibility/AccessibilityMockObject.h:

(WebCore::AccessibilityMockObject::isEnabled):
(AccessibilityMockObject):

LayoutTests:

Update tests to reflect that mock objects should be enabled by default.

  • platform/mac/accessibility/html5-input-number-expected.txt:
  • platform/mac/accessibility/html5-input-number.html:
  • platform/mac/accessibility/table-attributes-expected.txt:
  • platform/mac/accessibility/table-sections-expected.txt:
11:46 AM Changeset in webkit [124481] by wangxianzhu@chromium.org
  • 5 edits in trunk/Tools

[Chromium-Android] Run layout tests on multiple devices in parallel
https://bugs.webkit.org/show_bug.cgi?id=92877

Reviewed by Dirk Pranke.

Moved methods that run command on a particular device from ChromiumAndroidPort to ChromiumAndroidDriver.
The drivers run adb commands with the '-s serial_number' parameter which specifies the device according to the work_number.

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:

(ChromiumAndroidPort.init):
(ChromiumAndroidPort.default_child_processes): Default to the number of attached devices.
(ChromiumAndroidPort.test_expectations): Removed because it is unused.
(ChromiumAndroidPort.setup_test_run): Most contents moved into ChromiumAndroidDriver._setup_test()
(ChromiumAndroidPort.clean_up_test_run): Now the http server is stopped here.
(ChromiumAndroidPort._get_devices):
(ChromiumAndroidPort._get_device_serial):
(ChromiumAndroidDriver):
(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver.del):
(ChromiumAndroidDriver._setup_test): Original contents of ChromiumAndroidPort.setup_test_run().
(ChromiumAndroidDriver._push_executable): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._push_fonts): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._push_test_resources): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._synchronize_datetime): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._run_adb_command): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._teardown_performance): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._get_crash_log): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver.cmd_line):
(ChromiumAndroidDriver._file_exists_on_device):
(ChromiumAndroidDriver._remove_all_pipes):
(ChromiumAndroidDriver._start):
(ChromiumAndroidDriver._start_once):
(ChromiumAndroidDriver.stop):

  • Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:

(MockRunCommand):
(MockRunCommand.init):
(MockRunCommand.mock_run_command_fn):
(MockRunCommand.mock_no_device):
(MockRunCommand.mock_one_device):
(MockRunCommand.mock_two_devices):
(MockRunCommand.mock_no_tombstone_dir):
(MockRunCommand.mock_no_tombstone_file):
(MockRunCommand.mock_ten_tombstones):
(MockRunCommand.mock_logcat):
(ChromiumAndroidPortTest):
(ChromiumAndroidPortTest.make_port):
(ChromiumAndroidPortTest.test_driver_cmd_line):
(ChromiumAndroidPortTest.test_get_devices_no_device):
(ChromiumAndroidPortTest.test_get_devices_one_device):
(ChromiumAndroidPortTest.test_get_devices_two_devices):
(ChromiumAndroidPortTest.test_get_device_serial_no_device):
(ChromiumAndroidPortTest.test_get_device_serial_one_device):
(ChromiumAndroidPortTest.test_get_device_serial_two_devices):
(ChromiumAndroidDriverTest):
(ChromiumAndroidDriverTest.setUp):
(ChromiumAndroidDriverTest.test_get_last_stacktrace):
(ChromiumAndroidDriverTest.test_get_crash_log):
(ChromiumAndroidDriverTest.test_cmd_line):
(ChromiumAndroidDriverTwoDriversTest):
(ChromiumAndroidDriverTwoDriversTest.test_two_drivers):

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.run_test):
(Driver._get_crash_log): Added to allow subclasses to override.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args): Removed the --adb-args command-line parameter because now we select device automatically. Added --adb-device to specify devices.

11:41 AM Changeset in webkit [124480] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Layout Test: compositing/backface-visibility/backface-visibility-webgl.html is not supported on Windows.
No WebGL support.
https://bugs.webkit.org/show_bug.cgi?id=92929

Patch by Roger Fong <roger_fong@apple.com> on 2012-08-02
Reviewed by Tim Horton.

  • platform/win/Skipped:

compositing/backface-visibility/backface-visibility-webgl.html added to Windows skip list.

10:44 AM Changeset in webkit [124479] by Carlos Garcia Campos
  • 4 edits in trunk/Source/WebKit2

[GTK] Inspector should set a default attached height before being attached
https://bugs.webkit.org/show_bug.cgi?id=90767

Reviewed by Xan Lopez.

We are currently using the minimum attached height in
WebKitWebViewBase as the default height for the inspector when
attached. It would be easier for WebKitWebViewBase and embedders
implementing attach() if the inspector already had an attached
height set when it's being attached.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseContainerAdd): Don't initialize
inspectorViewHeight.
(webkitWebViewBaseSetInspectorViewHeight): Allow to set the
inspector view height before having an inpector view, but only
queue a resize when the view already has an inspector view.

  • UIProcess/API/gtk/tests/TestInspector.cpp:

(testInspectorDefault):
(testInspectorManualAttachDetach):

  • UIProcess/gtk/WebInspectorProxyGtk.cpp:

(WebKit::WebInspectorProxy::platformAttach): Set the default
attached height before attach the inspector view.

10:40 AM Changeset in webkit [124478] by peter@chromium.org
  • 6 edits
    1 add in trunk/Source

[Chromium] Add a stub for WebView::getTouchHighlightQuads()
https://bugs.webkit.org/show_bug.cgi?id=92997

Reviewed by Adam Barth.

Chrome on Android will be using this method for the link preview
implementation, discussion about which is available in Bug 79150. Since
that system is fairly big, will require refactoring, and the unavailable
APIs are blocking API compatibility, add a stub for now.

Together with the WebView API, also add the "WebTouchCandidatesInfo"
structure which is being used by it.

Source/Platform:

  • Platform.gypi: List WebTouchCandidatesInfo.h
  • chromium/public/WebTouchCandidatesInfo.h: Added.

(WebKit):
(WebTouchCandidatesInfo):
(WebKit::WebTouchCandidatesInfo::WebTouchCandidatesInfo):

Source/WebKit/chromium:

  • public/WebView.h:

(WebKit):
(WebView):

  • src/WebViewImpl.cpp:

(WebKit):
(WebKit::WebViewImpl::getTouchHighlightQuads):

  • src/WebViewImpl.h:

(WebViewImpl):

10:36 AM Changeset in webkit [124477] by commit-queue@webkit.org
  • 11 edits in trunk

WebKitTestRunner needs layoutTestController.setUserStyleSheetEnabled
https://bugs.webkit.org/show_bug.cgi?id=42679

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-08-02
Reviewed by Eric Seidel.

Source/WebKit2:

Added WKBundleSetUserStyleSheetLocation API.

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetUserStyleSheetLocation): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetUserStyleSheetLocation.
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setUserStyleSheetLocation): Added. Sets the user style sheet location
for all pages in the page group.
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Added

setUserStyleSheetEnabled and setUserStyleSheetLocation.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::LayoutTestController): Initialize new members added.
(WTR::LayoutTestController::setUserStyleSheetEnabled): Added.
(WTR::LayoutTestController::setUserStyleSheetLocation): Added.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.h: Added members

userStyleSheetEnabled, and m_userStyleSheetLocation and methods
setUserStyleSheetEnabled, and setUserStyleSheetLocation.

LayoutTests:

Removed tests that are now passing.

  • platform/wk2/Skipped:
10:32 AM Changeset in webkit [124476] by mhahnenberg@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Remove all uses of ClassInfo for JSStrings in JIT code
https://bugs.webkit.org/show_bug.cgi?id=92935

Reviewed by Geoffrey Garen.

This is the first step in removing our dependence on in-object ClassInfo pointers
in JIT code. Most of the changes are to check the Structure, which is unique for
JSString primitives.

  • bytecode/SpeculatedType.cpp:

(JSC::speculationFromClassInfo):
(JSC::speculationFromStructure): Changed to check the TypeInfo in the Structure
since there wasn't a JSGlobalData immediately available to grab the JSString
Structure out of.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • jit/JITInlineMethods.h:

(JSC::JIT::emitLoadCharacterString):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_convert_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_convert_this):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):

  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::loadJSStringArgument):

  • jit/ThunkGenerators.cpp:

(JSC::stringCharLoad):
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):

10:25 AM Changeset in webkit [124475] by eric@webkit.org
  • 2 edits in trunk/Source/WebCore

Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Reviewed by Julien Chaffraix.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paint):

10:14 AM Changeset in webkit [124474] by hans@chromium.org
  • 6 edits in trunk

Speech JavaScript API: Fire speech start event at the same time as sound start event
https://bugs.webkit.org/show_bug.cgi?id=92971

Reviewed by Adam Barth.

Source/WebKit/chromium:

Chromium's speech recognizer doesn't differentiate between "sound
started" and "speech started". Just fire those events at the same
time, and don't provide functions for them in
WebSpeechRecognizerClient.

  • public/WebSpeechRecognizerClient.h:
  • src/SpeechRecognitionClientProxy.cpp:

(WebKit::SpeechRecognitionClientProxy::didStartSound):
(WebKit::SpeechRecognitionClientProxy::didEndSound):

  • src/SpeechRecognitionClientProxy.h:

(SpeechRecognitionClientProxy):

Tools:

Update the MockWebSpeechRecognizer to not fire "speech started" events
separately.

  • DumpRenderTree/chromium/MockWebSpeechRecognizer.cpp:

(MockWebSpeechRecognizer::start):

10:01 AM Changeset in webkit [124473] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Month-year selector on calendar picker should be touch friendly.
https://bugs.webkit.org/show_bug.cgi?id=92678

Patch by Kevin Ellis <kevers@chromium.org> on 2012-08-02
Reviewed by Kent Tamura.

Previously the month-year popup menu was implemented using a listbox,
which does not support CSS customization. Entries in the listbox
were too shallow to reliably target with touch gestures. The
replacement popup is CSS configurable with larger entries on devices
that support touch input.

Manually tested with and without touch support in English, Japanese
and Arabic.

  • Resources/calendarPicker.css:

(.month-selector-popup): Update to use scrollable div instead of listbox.
(.month-selector-popup-contents): Render popup as a table within a scrollable div.
(.month-selector-popup-entry): Formatting entries in the month-year popup.
(.selected-month-year): Highlight the selected month-year.
(@media (pointer:coarse)): Enlarge entries in the popup meu on devices that support touch.

  • Resources/calendarPicker.js:

(YearMonthController.prototype.attachTo): Change selector popup from a list-box to a div.
(YearMonthController.prototype._redraw): Populate table based popup rather than listbox.
(YearMonthController.prototype._showPopup): Set scroll position and resize for scrollbar.
(YearMonthController.prototype._closePopup): Restore focus to the calendar.
(YearMonthController.prototype._getSelection): Added to retrieve the selected month-year.
(YearMonthController.prototype._handleMouseMove): Added to update selected month-year on hover.
(YearMonthController.prototype._handleMonthPopupKey): Add keyboard navigation.
(YearMonthController.prototype._handleYearMonthChange): Retrieve value from selected month-year.

9:53 AM Changeset in webkit [124472] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK] make sometimes using a single core
https://bugs.webkit.org/show_bug.cgi?id=92998

Reviewed by Martin Robinson.

In the GTK 64-bit Release buildbot some builds use a single core
for the make process. I suspect this is because in those cases
nproc reports a single core available. The proposed solution is to
always rely on all the cores available in the machine.

  • Scripts/webkitdirs.pm:

(determineNumberOfCPUs):

9:48 AM Changeset in webkit [124471] by abarth@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] WebViewImpl::showTouchHighlightQuads isn't needed for Android
https://bugs.webkit.org/show_bug.cgi?id=92921

Reviewed by Nate Chapin.

We originally added a stub implementation of this function to make
merging detectContentOnTouch easier, but showTouchHighlightQuads is
being removed from the chromium-android branch in favor of the code in
https://bugs.webkit.org/show_bug.cgi?id=84487. This patch removes the
stub.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::detectContentIntentOnTouch):

  • src/WebViewImpl.h:

(WebViewImpl):

9:42 AM Changeset in webkit [124470] by tonikitoo@webkit.org
  • 7 edits
    2 adds in trunk/Source/WebKit

[BlackBerry] Implement InRegionScroller class as a in-region scroll controller
https://bugs.webkit.org/show_bug.cgi?id=92889
PR #186587

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

Internally reviewed by Arvid Nilsson.

Source/WebKit:

  • PlatformBlackBerry.cmake: Added InRegionScroller.cpp|h to the build system.

Source/WebKit/blackberry:

Moved all in-region scrolling code out of WebPagePrivate to the just
created InRegionScroller class. This class aims to:

1) Centralize all in-region scroll code and clean up WebPagePrivate as a consequence.
2) Be the bases to add UI/Compositing thread driven scrolls to in-region.

The patch does not change any functionallity change.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::scrollBy):
(BlackBerry::WebKit::WebPagePrivate::notifyInRegionScrollStatusChanged):
(BlackBerry::WebKit::WebPagePrivate::clearDocumentData):
(BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::layer):

  • WebKitSupport/InRegionScroller.cpp: Added.

(WebKit):
(BlackBerry::WebKit::canScrollInnerFrame):
(BlackBerry::WebKit::canScrollRenderBox):
(BlackBerry::WebKit::parentLayer):
(BlackBerry::WebKit::enclosingLayerNode):
(BlackBerry::WebKit::isNonRenderViewFixedPositionedContainer):
(BlackBerry::WebKit::pushBackInRegionScrollable):
(BlackBerry::WebKit::InRegionScroller::InRegionScroller):
(BlackBerry::WebKit::InRegionScroller::setNode):
(BlackBerry::WebKit::InRegionScroller::node):
(BlackBerry::WebKit::InRegionScroller::reset):
(BlackBerry::WebKit::InRegionScroller::isNull):
(BlackBerry::WebKit::InRegionScroller::scrollBy):
(BlackBerry::WebKit::InRegionScroller::inRegionScrollableAreasForPoint):
(BlackBerry::WebKit::InRegionScroller::scrollNodeRecursively):
(BlackBerry::WebKit::InRegionScroller::scrollRenderer):
(BlackBerry::WebKit::InRegionScroller::adjustScrollDelta):

  • WebKitSupport/InRegionScroller.h: Added.

(WebCore):
(WebKit):
(InRegionScroller):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

9:36 AM Changeset in webkit [124469] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Regression] context menu does not open on Sources panel tabs on mac
https://bugs.webkit.org/show_bug.cgi?id=93000

Reviewed by Pavel Feldman.

  • inspector/front-end/UIUtils.js:

(WebInspector._elementDragStart):

9:36 AM Changeset in webkit [124468] by abarth@webkit.org
  • 2 edits in trunk/Tools

Re-land http://trac.webkit.org/changeset/94441 now that lforschler is ready.

This patch enables testing on the mac-ews bots.

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:
9:30 AM Changeset in webkit [124467] by abarth@webkit.org
  • 2 edits in trunk/Tools

[Chromium] Merge final nits to DumpRenderTree.gyp for Android
https://bugs.webkit.org/show_bug.cgi?id=90920

Reviewed by Tony Chang.

This patch contains the last few small changes to DumpRenderTree.gyp
from the chromium-android branch. After this change, this file will be
fully merged.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
9:14 AM Changeset in webkit [124466] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL][GTK] Implement font-feature settings
https://bugs.webkit.org/show_bug.cgi?id=84239

Unreviewed EFL gardening.

Now working after bug 91864 is closed.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-08-02

  • platform/efl/TestExpectations:
  • platform/efl/css3/font-feature-settings-rendering-expected.png:
  • platform/efl/css3/font-feature-settings-rendering-expected.txt:
9:11 AM Changeset in webkit [124465] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Check if the last table element's parent node is an element when determining the foster parent element.
https://bugs.webkit.org/show_bug.cgi?id=92977

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-02
Reviewed by Adam Barth.

Source/WebCore:

According to the HTML5 spec, if the last table element in the stack of open elements has no parent,
or ITS PARENT NODE IS NOT AN ELEMENT, then the foster parent element is the element
before the last table element in the stack of open elements.

Changed to check if the table element's parent node is an element.

Test: fast/parser/foster-parent.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::findFosterSite):

LayoutTests:

This new test changes the table element's parent node to a newly created document fragment node.
Because a document fragment node is not an element, the foster parent element must be the element
before the last table element in the stack of open elements.

  • fast/parser/foster-parent-expected.txt: Added.
  • fast/parser/foster-parent.html: Added.
9:09 AM Changeset in webkit [124464] by Philippe Normand
  • 3 edits in trunk/Source/WebCore

[GStreamer] Use GST_DEBUG instead of LOG_VERBOSE
https://bugs.webkit.org/show_bug.cgi?id=89350

Reviewed by Martin Robinson.

Wrap the media player's logging calls to a new macro that also
hooks into GStreamer's logging facilities. This way the developer
gets the best of both worlds, leaving the choice between GST_DEBUG
and WEBKIT_DEBUG environment variables.

  • platform/graphics/gstreamer/GStreamerUtilities.h:

(WebCore):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::initializeGStreamerAndRegisterWebKitElements):
(WebCore::MediaPlayerPrivateGStreamer::load):
(WebCore::MediaPlayerPrivateGStreamer::commitLoad):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::duration):
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::naturalSize):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
(WebCore::MediaPlayerPrivateGStreamer::processBufferingStats):
(WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
(WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
(WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded):
(WebCore::MediaPlayerPrivateGStreamer::didLoadingProgress):

9:08 AM Changeset in webkit [124463] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Inline stylesheets can confuse style sharing
https://bugs.webkit.org/show_bug.cgi?id=92970

Reviewed by Dan Bernstein.

Source/WebCore:

Consider document

<div class="i30"></div>
<style>.i30 { background-color:green; }</style>
<div class="i30"></div>

When processing the <style> element the scope optimization marks the first div as needing style recalc.
Next the parser adds the second div to the tree and immediately calculates its style. Since it looks exactly
like the first div the style sharing optimization copies the style from there. The pending recalc of the
first div is resolved by a timer but the second div is left with the old style.

Fix by disallowing style sharing from elements with pending style recalc.

Test: fast/css/style-sharing-inline-stylesheet.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::canShareStyleWithElement):

LayoutTests:

  • fast/css/style-sharing-inline-stylesheet-expected.txt: Added.
  • fast/css/style-sharing-inline-stylesheet.html: Added.
9:07 AM Changeset in webkit [124462] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Fix axis locking when panning on N9
https://bugs.webkit.org/show_bug.cgi?id=92394

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-08-02
Reviewed by Simon Hausmann.

Make the QQuickWebView axis locker calculate the
time between events using QInputEvent.timestamp, which
is set from the native event when available.

Also use touchPoint.pos() instead of screenPos() to
correct the axis detection when running on N9, which
has a native landscape display and the applications usually
run in portrait mode.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::FlickableAxisLocker::FlickableAxisLocker):
(QQuickWebViewPrivate::FlickableAxisLocker::touchVelocity):
(QQuickWebViewPrivate::FlickableAxisLocker::update):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(FlickableAxisLocker):

9:03 AM Changeset in webkit [124461] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk/Source/WebKit2

[EFL][WK2]Add ewk_view_ui_client.
https://bugs.webkit.org/show_bug.cgi?id=89864

Patch by Hyerim Bae <hyerim.bae@samsung.com> on 2012-08-02
Reviewed by Kentaro Hara.

Add ewk_view_ui_client.h / cpp files for wrapping WKPageSetPageUIClient,
add close, createNewPage callback member to WKPageSetPageUIClient.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_base_add):
(ewk_view_page_close):
(ewk_view_page_create):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/ewk_view_ui_client.cpp: Added.

(toEwkView):
(closePage):
(createNewPage):
(ewk_view_ui_client_attach):

  • UIProcess/API/efl/ewk_view_ui_client_private.h: Added.
8:56 AM Changeset in webkit [124460] by tommyw@google.com
  • 9 edits
    1 copy
    6 adds in trunk/Source

MediaStream API: Add RTCPeerConnectionHandler infrastructure
https://bugs.webkit.org/show_bug.cgi?id=92866

Reviewed by Adam Barth.

Introducing RTCPeerConnectionHandler & RTCPeerConnectionHandlerClient,
together with the Chromium WebKit interface, following the pattern of
the previous PeerConnection00Handler but with the optimizations from MediaStreamCenter.

Source/Platform:

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::createRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandler.h: Added.

(WebKit):
(WebRTCPeerConnectionHandler):
(WebKit::WebRTCPeerConnectionHandler::~WebRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h: Added.

(WebKit):
(WebRTCPeerConnectionHandlerClient):
(WebKit::WebRTCPeerConnectionHandlerClient::~WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Not yet testable due to not enough code landed.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):

  • Modules/mediastream/RTCPeerConnection.h:

(RTCPeerConnection):

  • WebCore.gypi:
  • platform/mediastream/RTCPeerConnectionHandler.cpp: Added.

(WebCore):
(RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerDummy::RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::~RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::initialize):

  • platform/mediastream/RTCPeerConnectionHandler.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.

(WebCore):
(RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::~RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::RTCPeerConnectionHandler):

  • platform/mediastream/RTCPeerConnectionHandlerClient.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.

(WebCore):
(RTCPeerConnectionHandlerClient):
(WebCore::RTCPeerConnectionHandlerClient::~RTCPeerConnectionHandlerClient):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Added.

(WebCore):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::~RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::initialize):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Added.

(WebCore):
(RTCPeerConnectionHandlerChromium):

8:53 AM Changeset in webkit [124459] by tkent@chromium.org
  • 4 edits
    2 adds in trunk/Source/WebCore

Move number localization code in LocaleICU.cpp to new class
https://bugs.webkit.org/show_bug.cgi?id=92976

Reviewed by Kentaro Hara.

The number localization code by character mapping is usefull for non-ICU
platforms.

No new tests. This is just a refactoring, and is covered by
Source/WebKit/chromium/tests/LocalizedNumberICUTest.cpp.

  • WebCore.gypi: Add NumberLocalizer.{cpp,h}.
  • platform/text/LocaleICU.cpp:

(WebCore::LocaleICU::decimalSymbol):
Renamed from setDecimalSymbol. This function returns the resultant
string instead of setting it to a data member.
(WebCore::LocaleICU::decimalTextAttribute):
Renamed from setDecimalTextAttributel. This function returns the
resultant string instead of setting it to the specified string.
(WebCore::LocaleICU::initializeNumberLocalizerData):
Renamed from initializeDecimalFormat.
Calls NumberLocaizer::setNumberLocalizerData.
(WebCore::LocaleICU::localizedDecimalSeparator):
Rename initializeDecimalFormat to initializeNumberLocalizerData.

  • platform/text/LocaleICU.h:

(LocaleICU): Remove some members, and inherit NumberLocalizer.

  • platform/text/NumberLocalizer.cpp: Added. Move the code from LocaleICU.cpp

(WebCore):
(WebCore::NumberLocalizer::~NumberLocalizer):
(WebCore::NumberLocalizer::setNumberLocalizerData): Added.
(WebCore::NumberLocalizer::convertToLocalizedNumber):
(WebCore::matches):
(WebCore::NumberLocalizer::detectSignAndGetDigitRange):
(WebCore::NumberLocalizer::matchedDecimalSymbolIndex):
(WebCore::NumberLocalizer::convertFromLocalizedNumber):
(WebCore::NumberLocalizer::localizedDecimalSeparator):

  • platform/text/NumberLocalizer.h: Added.

(NumberLocalizer):
(WebCore::NumberLocalizer::NumberLocalizer):

8:19 AM Changeset in webkit [124458] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Move DOM breakpoints-related context menu items into a submenu
https://bugs.webkit.org/show_bug.cgi?id=92989

Reviewed by Vsevolod Vlasov.

A "Break on..." submenu is added to the element context menu, to host all DOM breakpoint items.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DOMBreakpointsSidebarPane.js:

(WebInspector.DOMBreakpointsSidebarPane):
(WebInspector.DOMBreakpointsSidebarPane.prototype.populateNodeContextMenu):

8:09 AM Changeset in webkit [124457] by peter@chromium.org
  • 4 edits in trunk

[Chromium] Toggle the type of ant compile for webkit_unit_tests and TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=92858

Reviewed by Adam Barth.

Now that the sdk_build variable is available, we can remove these two differences
as well. This goes together with Adam's bug 90920.

After this patch, the whole Tools/ directory will be unforked :-).

Source/WebKit/chromium:

  • WebKitUnitTests.gyp:

Tools:

  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
8:01 AM Changeset in webkit [124456] by Carlos Garcia Campos
  • 8 edits in trunk/Source/WebKit2

[GTK] No main resource in WebView on load committed when page has been loaded from history cache
https://bugs.webkit.org/show_bug.cgi?id=91482

Reviewed by Martin Robinson.

We assume that on load committed, we already have a main resource
in the web view, and it has already received a response. This is
not true for pages loaded from the history cache, so when going
back/forward, we don't have a main resource when the
load-committed signal is emitted. We must ensure that the loading
process documented in the API is the same for pages loaded from
the history cache too.

  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(didCommitLoadForFrame): Call webkitWebViewLoadChanged() and let
the web view handle the certificate.

  • UIProcess/API/gtk/WebKitWebResource.cpp:

(webkitWebResourceGetFrame): Helper private function to easily get
the WKFrame associated with a WebResource.

  • UIProcess/API/gtk/WebKitWebResourcePrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewDisconnectMainResourceResponseChangedSignalHandler):
Disconnect the notify::response signal of the main resource.
(webkitWebViewFinalize): Call
webkitWebViewDisconnectMainResourceResponseChangedSignalHandler().
(setCertificateToMainResource): Set the TLS certificate on the
response of the main resource.
(webkitWebViewEmitLoadChanged): Helper function to emit
load-chancged signal.
(webkitWebViewEmitDelayedLoadEvents): If we were waiting for the
main resource, emit the signals that were delayed.
(webkitWebViewLoadChanged): Do not emit committed or finished if
we are still waiting for the main resource. Set the TLS
certificate if we already have a main resource or wait until we
have the main resource with a response.
(mainResourceResponseChangedCallback): Emitted when the main
resource received the response. Set the certificate on the
response and emit load signals delayed.
(waitForMainResourceResponseIfWaitingForResource): If we are
waiting for the main resource, connect to the notify::response
signal of the WebResource to make sure it has a response already
when load signal delayed are emitted.
(webkitWebViewResourceLoadStarted): Call
waitForMainResourceResponseIfWaitingForResource().

  • UIProcess/API/gtk/tests/LoadTrackingTest.cpp:

(loadChangedCallback):
(LoadTrackingTest::goBack):
(LoadTrackingTest::goForward):

  • UIProcess/API/gtk/tests/LoadTrackingTest.h:

(LoadTrackingTest):

  • UIProcess/API/gtk/tests/TestLoaderClient.cpp:

(testWebViewHistoryLoad):
(serverCallback):
(beforeAll):

7:42 AM Changeset in webkit [124455] by abecsi@webkit.org
  • 6 edits in trunk/Source/WebKit2

[Qt][WK2] Click, mouse and links rely on touch mocking.
https://bugs.webkit.org/show_bug.cgi?id=83091

Reviewed by Simon Hausmann.

Send the incoming mouse events directly to the gesture recognizers to make
the WebView behave consistent with other Flickables.
This patch unifies the code paths for input events and makes it possible
to enable mouse events on the flickable web view again, thus makes the
mobile-version of QQuickWebView usable on desktop.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::handleMouseEvent):
(QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::handleMouseEvent):
(QQuickWebView::mousePressEvent):
(QQuickWebView::mouseMoveEvent):
(QQuickWebView::mouseReleaseEvent):
(QQuickWebView::mouseDoubleClickEvent):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):

  • UIProcess/qt/QtPanGestureRecognizer.cpp:

(WebKit::QtPanGestureRecognizer::update):

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
(WebKit::QtWebPageEventHandler::handleInputEvent):
(WebKit):
(WebKit::QtWebPageEventHandler::doneWithTouchEvent):

  • UIProcess/qt/QtWebPageEventHandler.h:

(QtWebPageEventHandler):

7:21 AM Changeset in webkit [124454] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

[Cairo] Add complex font drawing using HarfbuzzNG
https://bugs.webkit.org/show_bug.cgi?id=91864

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-08-02
Reviewed by Martin Robinson.

Source/WebCore:

Unfortunately the Freetype based approach that avoids allocations and UTF8 conversion
fails to produce correct results for some tests.

No new tests, at least

fast/dom/52776.html
fast/text/atsui-negative-spacing-features.html
fast/text/atsui-spacing-features.html

expose this problem.

  • platform/graphics/harfbuzz/ng/HarfBuzzNGFaceCairo.cpp:

(WebCore::harfbuzzGetGlyph): Revert to initial cairo_scaled_font based approach.

LayoutTests:

Unskipping tests, now passing with valid complex font results.

  • platform/efl/TestExpectations:
  • platform/efl/fast/text/atsui-pointtooffset-calls-cg-expected.txt:
  • platform/efl/fast/text/international/text-spliced-font-expected.png: Added.
  • platform/efl/fast/text/international/text-spliced-font-expected.txt: Added.
7:19 AM Changeset in webkit [124453] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Fix protocol version check.
https://bugs.webkit.org/show_bug.cgi?id=91497

Patch by Eugene Klyuchnikov <eustas.big@gmail.com> on 2012-08-02
Reviewed by Pavel Feldman.

Generated method 'supportsInspectorProtocolVersion' should return
false when requested minor version is *greater* than actual
minor version.

  • inspector/generate-inspector-protocol-version: Fixed stub text
7:14 AM Changeset in webkit [124452] by commit-queue@webkit.org
  • 14 edits in trunk/Source

Web Inspector: count RenderStyle objects in the native memory profiler
https://bugs.webkit.org/show_bug.cgi?id=91759

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-02
Reviewed by Yury Semikhatsky.

Source/WebCore:

The patch adds instrumentation to the following classes:

  • RenderStyle
  • StyleRareInheritedData
  • StyleRareNonInheritedData
  • bindings/js/ScriptWrappable.h:
  • bindings/v8/ScriptWrappable.h:
  • dom/MemoryInstrumentation.h:

(WebCore):
(WebCore::MemoryInstrumentation::OwningTraits::addObject):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):

  • dom/Node.cpp:

(WebCore::Node::reportMemoryUsage):

  • dom/Node.h:

(WebCore):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::reportMemoryUsage):
(WebCore):

  • rendering/style/RenderStyle.h:

(WebCore):

  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::reportMemoryUsage):
(WebCore):

  • rendering/style/StyleRareInheritedData.h:

(WebCore):
(StyleRareInheritedData):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::reportMemoryUsage):
(WebCore):

  • rendering/style/StyleRareNonInheritedData.h:

(WebCore):
(StyleRareNonInheritedData):

Source/WebKit/chromium:

Add a test for DataRef<T> wrapped member instrumentation.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::InstrumentedRefPtr::create):
(WebCore::TEST):
(WebCore):

7:10 AM Changeset in webkit [124451] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: rename host->origin in the inspector protocol DOMStorage entry
https://bugs.webkit.org/show_bug.cgi?id=92979

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-02
Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorDOMStorageResource.cpp:

(WebCore::InspectorDOMStorageResource::bind):

  • inspector/front-end/DOMStorage.js:

(WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):

6:45 AM Changeset in webkit [124450] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Change return value of battey level
https://bugs.webkit.org/show_bug.cgi?id=92964

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-02
Reviewed by Simon Hausmann.

Change return value of navigator.webkitBattery.level from 0~100 to 0~1.0.
Battery level have to returns 0~1.0 by Battery Status API spec.

  • platform/efl/BatteryProviderEfl.cpp:

(WebCore::BatteryProviderEfl::setBatteryClient):

6:45 AM Changeset in webkit [124449] by Martin Robinson
  • 2 edits in trunk

[GTK] When farstream is not present do not enable MediaStream

Reviewed by Philippe Normand.

When farstream libraries are no present, simply do not build MediaStream
support.

  • configure.ac:
6:17 AM Changeset in webkit [124448] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark accessibility/loading-iframe-updates-axtree.html as crashy on Mac.

  • platform/chromium/TestExpectations:
6:13 AM Changeset in webkit [124447] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] MSVC specific buildfix for DRT.
https://bugs.webkit.org/show_bug.cgi?id=92978

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-02
Reviewed by Simon Hausmann.

DumpRenderTree/qt subdirectory is missing from generated makefile under MSVC build, need to be added to the pro file.

  • DumpRenderTree/qt/DumpRenderTree.pro:
6:13 AM Changeset in webkit [124446] by zandobersek@gmail.com
  • 5 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Updating baselines for fast/box-sizing/box-sizing.html after r124347
and fast/forms/basic-selects.html after r124416.

Also fix a bogus TestExpectations entry so fast/css/widget-region-parser.html
is properly skipped.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/box-sizing/box-sizing-expected.png:
  • platform/gtk/fast/box-sizing/box-sizing-expected.txt: Added.
  • platform/gtk/fast/forms/basic-selects-expected.png:
  • platform/gtk/fast/forms/basic-selects-expected.txt:
5:56 AM Changeset in webkit [124445] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL][WK2] WTR is failing when X server is not running
https://bugs.webkit.org/show_bug.cgi?id=92719

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-08-02
Reviewed by Hajime Morita.

EFL's WebKitTestRunner doesn't execute tests when X server is not running.
This patch fixes the problem by checking environment variable before ecore x initialization.

  • Scripts/webkitpy/layout_tests/port/efl.py:

(EflPort.setup_environ_for_server):

  • WebKitTestRunner/efl/main.cpp:

(main):

5:52 AM Changeset in webkit [124444] by yurys@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: remove extraObjectSize parameter from MemoryClassInfo constructor
https://bugs.webkit.org/show_bug.cgi?id=92981

Reviewed by Alexander Pavlov.

Refactored MemoryInstrumentation to get rid of extraSize parameter from
MemoryObjectInfo constructor and MemoryObjectInfo::reportObjectInfo. The
extra size should always be reported as an object that occupies these extra
bytes.

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::reportMemoryUsage):
(WebCore):

  • dom/ElementAttributeData.h:

(WebCore):
(ElementAttributeData):

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):

5:33 AM Changeset in webkit [124443] by commit-queue@webkit.org
  • 9 edits
    7 deletes in trunk/Source

Unreviewed, rolling out r124439.
http://trac.webkit.org/changeset/124439
https://bugs.webkit.org/show_bug.cgi?id=92980

Broke Chromium Mac Release compile (Requested by apavlov on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-02

Source/Platform:

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::createPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandler.h: Removed.
  • chromium/public/WebRTCPeerConnectionHandlerClient.h: Removed.

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):

  • Modules/mediastream/RTCPeerConnection.h:
  • WebCore.gypi:
  • platform/mediastream/RTCPeerConnectionHandler.cpp: Removed.
  • platform/mediastream/RTCPeerConnectionHandler.h: Removed.
  • platform/mediastream/RTCPeerConnectionHandlerClient.h: Removed.
  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Removed.
  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Removed.
5:26 AM Changeset in webkit [124442] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Qt] Uninitialized memory read in QObject runtime bridge
https://bugs.webkit.org/show_bug.cgi?id=92972

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-08-02
Reviewed by Kenneth Rohde Christiansen.

The vargs array has an initial size of 0 and when calling a method with no return value
and no arguments, vargs remains empty. Therefore unconditional access to vargs[0] results
in access to uninitialized memory.

No new tests, covered by valgrind in existing qobjectbridge tests.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtRuntimeMetaMethod::call):

  • bridge/qt/qt_runtime_qt4.cpp:

(JSC::Bindings::QtRuntimeMetaMethod::call):

5:03 AM Changeset in webkit [124441] by zherczeg@webkit.org
  • 2 edits in trunk/Source/WebCore

Alignment issue for readTime in PluginDatabase.cpp
https://bugs.webkit.org/show_bug.cgi?id=92746

Reviewed by Simon Hausmann.

When the byte stream is written, nothing guarantees that
the time_t data is aligned. This issue caused alignment
traps on ARM CPUs.

No new tests. Covered by existing tests.

  • plugins/PluginDatabase.cpp:

(WebCore::readTime):

5:02 AM Changeset in webkit [124440] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a failing test.
https://bugs.webkit.org/show_bug.cgi?id=92963.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-08-02

  • platform/qt-5.0-wk2/Skipped:
4:43 AM Changeset in webkit [124439] by tommyw@google.com
  • 9 edits
    1 copy
    6 adds in trunk/Source

MediaStream API: Add RTCPeerConnectionHandler infrastructure
https://bugs.webkit.org/show_bug.cgi?id=92866

Reviewed by Kentaro Hara.

Introducing RTCPeerConnectionHandler & RTCPeerConnectionHandlerClient,
together with the Chromium WebKit interface, following the pattern of
the previous PeerConnection00Handler but with the optimizations from MediaStreamCenter.

Source/Platform:

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::createRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandler.h: Added.

(WebKit):
(WebRTCPeerConnectionHandler):
(WebKit::WebRTCPeerConnectionHandler::~WebRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h: Added.

(WebKit):
(WebRTCPeerConnectionHandlerClient):
(WebKit::WebRTCPeerConnectionHandlerClient::~WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Not yet testable due to not enough code landed.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):

  • Modules/mediastream/RTCPeerConnection.h:

(RTCPeerConnection):

  • WebCore.gypi:
  • platform/mediastream/RTCPeerConnectionHandler.cpp: Added.

(WebCore):
(RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerDummy::RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::~RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::initialize):

  • platform/mediastream/RTCPeerConnectionHandler.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.

(WebCore):
(RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::~RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::RTCPeerConnectionHandler):

  • platform/mediastream/RTCPeerConnectionHandlerClient.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.

(WebCore):
(RTCPeerConnectionHandlerClient):
(WebCore::RTCPeerConnectionHandlerClient::~RTCPeerConnectionHandlerClient):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Added.

(WebCore):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::~RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::initialize):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Added.

(WebCore):
(RTCPeerConnectionHandlerChromium):

4:28 AM Changeset in webkit [124438] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark 3 404-related appcache tests as TEXT.

  • platform/chromium/TestExpectations:
4:02 AM Changeset in webkit [124437] by keishi@webkit.org
  • 2 edits
    3 adds in trunk/LayoutTests

[Chromium] Rebaseline test color-suggestion-picker-with-scrollbar-appearance.html

Unreviewed.

  • platform/chromium-linux/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
  • platform/chromium/TestExpectations:
3:56 AM Changeset in webkit [124436] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, update expectations for 6 failing http/tests/appcache/abort-cache-on*.html tests.

  • platform/chromium/TestExpectations:
3:16 AM Changeset in webkit [124435] by yurys@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: rename reportMemoryUsage to reportDescendantMemoryUsage in StyleRuleBase descendants
https://bugs.webkit.org/show_bug.cgi?id=92966

Reviewed by Alexander Pavlov.

Renamed reportMemoryUsage to reportDescendantMemoryUsage in all descendants of
StyleRuleBase to avoid accidental recursive calls to StyleRuleBase::reportMemoryUsage
when a new type of rule is added.

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRule::reportDescendantMemoryUsage):
(WebCore::StyleRulePage::reportDescendantMemoryUsage):
(WebCore::StyleRuleFontFace::reportDescendantMemoryUsage):
(WebCore::StyleRuleBlock::reportDescendantMemoryUsage):
(WebCore::StyleRuleMedia::reportDescendantMemoryUsage):
(WebCore::StyleRuleRegion::reportDescendantMemoryUsage):

  • css/StyleRule.h:

(StyleRule):
(StyleRuleFontFace):
(StyleRulePage):
(StyleRuleBlock):
(StyleRuleMedia):
(StyleRuleRegion):

  • css/StyleRuleImport.cpp:

(WebCore::StyleRuleImport::reportDescendantMemoryUsage):

  • css/StyleRuleImport.h:

(StyleRuleImport):

  • css/WebKitCSSKeyframesRule.cpp:

(WebCore::StyleRuleKeyframes::reportDescendantMemoryUsage):

  • css/WebKitCSSKeyframesRule.h:

(StyleRuleKeyframes):

3:14 AM Changeset in webkit [124434] by hbono@chromium.org
  • 4 edits
    1 add in trunk/Source

[Chromium] Implement hyphenation for Chromium
https://bugs.webkit.org/show_bug.cgi?id=48610

Reviewed by Eric Seidel.

This change adds a couple of methods canHyphenate and computeLastHyphenLocation
to Platform so Chromium can implement them. Also, this change uses these methods
to implement the hyphenation methods of WebCore. (This change does not change
any behaviors until Chromium implements these methods.)

Source/Platform:

  • chromium/public/Platform.h:

(Platform):
(WebKit::Platform::canHyphenate): Added a stub method so Chromium can implement it.
(WebKit::Platform::computeLastHyphenLocation): ditto.

Source/WebCore:

No new tests because this change is for fixing a couple of existing layout tests
'fast/text/hyphenate-character.html' and 'fast/text/hyphens.html'.

  • WebCore.gypi:
  • platform/text/chromium/Hyphenation.cpp: Added.

(WebCore):
(WebCore::canHyphenate): Called Platform::canHyphenation().
(WebCore::lastHyphenLocation): Called Platform::computeLastHyphenLocation().

3:12 AM Changeset in webkit [124433] by pkasting@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

[Chromium] Test expectation updates.
https://bugs.webkit.org/show_bug.cgi?id=92948
http://crbug.com/131687

Unreviewed, test expectation updates.

Removed bogus baseline. Fixed some other expectation problems.

  • platform/chromium-linux-x86/fast/js/dfg-double-vote-fuzz-expected.txt: Removed.
  • platform/chromium/TestExpectations:
3:03 AM Changeset in webkit [124432] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
2:26 AM Changeset in webkit [124431] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[chromium] Improve garbage collector hint if page uses Canvas contexts
https://bugs.webkit.org/show_bug.cgi?id=92856

Patch by ulan@chromium.org <ulan@chromium.org> on 2012-08-02
Reviewed by Kentaro Hara.

Request GC by sending context disposed and idle notification to V8 instead
of sending low memory notification. It is faster as it causes one GC
instead of seven GCs caused by low memory notification.

  • bindings/v8/V8Binding.cpp:

(WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):

  • bindings/v8/V8Binding.h:

(V8BindingPerIsolateData):
(WebCore::V8BindingPerIsolateData::setShouldCollectGarbageSoon):
(WebCore::V8BindingPerIsolateData::clearShouldCollectGarbageSoon):
(WebCore::V8BindingPerIsolateData::shouldCollectGarbageSoon):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::hintForGCIfNecessary):

  • bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:

(WebCore::V8HTMLCanvasElement::getContextCallback):

2:18 AM Changeset in webkit [124430] by keishi@webkit.org
  • 2 edits
    11 adds in trunk/LayoutTests

[Chromium] fast/forms/color/input-appearance-color.html and input-color-onchange-event.html are failing on WebKit waterfall
https://bugs.webkit.org/show_bug.cgi?id=88951

Unreviewed.

Rebaseline these two tests.

  • platform/chromium-linux/fast/forms/color/input-appearance-color-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/color/input-appearance-color-expected.png: Added.
  • platform/chromium-mac/fast/forms/color/input-appearance-color-expected.png: Added.
  • platform/chromium-mac/fast/forms/color/input-appearance-color-expected.txt: Added.
  • platform/chromium-win/fast/forms/color/input-appearance-color-expected.png: Added.
  • platform/chromium-win/fast/forms/color/input-appearance-color-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/color/input-color-onchange-event-expected.txt: Added.
2:14 AM Changeset in webkit [124429] by pkasting@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation updates.
https://bugs.webkit.org/show_bug.cgi?id=76270
https://bugs.webkit.org/show_bug.cgi?id=92941

Mark a test as flakily crashing, unskip some questionably-skipped tests, reorganize slow test section a bit.

  • platform/chromium/TestExpectations:
2:09 AM Changeset in webkit [124428] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening after r124278, r124371
https://bugs.webkit.org/show_bug.cgi?id=92959

Unreviewed gardening.

Putting to TestExpectations css3/flexbox/content-height-with-scrollbars.html and
http/tests/security/contentSecurityPolicy/object-src-url-blocked.html.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-02

  • platform/efl/TestExpectations:
2:06 AM Changeset in webkit [124427] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/gtk

[GTK] Add WebKitNetworkResponse::suggested-filename property
https://bugs.webkit.org/show_bug.cgi?id=92878

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-08-02
Reviewed by Carlos Garcia Campos.

Webcore has API the suggested filename for a response, add
a property and getter for it in WebKitNetworkResponse.

  • docs/webkitgtk-sections.txt: Add the symbols
  • webkit/webkitnetworkresponse.cpp:

(_WebKitNetworkResponsePrivate): Add suggested_filename.
(webkit_network_response_finalize): Free it on finalize
(webkit_network_response_get_property): Add the getter call.
(webkit_network_response_class_init): Install the property.
(webkit_network_response_get_suggested_filename): New getter.

  • webkit/webkitnetworkresponse.h: Add the declaration to header

file.

2:04 AM Changeset in webkit [124426] by tkent@chromium.org
  • 6 edits
    1 delete in trunk/LayoutTests

[Chromium] Update expectations of calendar-picker-appearance.html
https://bugs.webkit.org/show_bug.cgi?id=92710

  • platform/chromium-linux-x86/fast/forms/date/calendar-picker-appearance-expected.png: Removed.
  • platform/chromium-linux/fast/forms/date/calendar-picker-appearance-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/calendar-picker-appearance-expected.png:
  • platform/chromium-mac/fast/forms/date/calendar-picker-appearance-expected.png:
  • platform/chromium-win-xp/fast/forms/date/calendar-picker-appearance-expected.png:
  • platform/chromium-win/fast/forms/date/calendar-picker-appearance-expected.png:
1:49 AM Changeset in webkit [124425] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

CSSRegions: Crash when reattaching a region to a named flow.
https://bugs.webkit.org/show_bug.cgi?id=91307

Reviewed by Abhishek Arya.

Source/WebCore:

The lifetime of a flow thread has changed from not being destroyed (until the RenderView is destroyed) to being destroyed,
under certain conditions, no attached regions and no content, before RenderView is destroyed.
When the flow thread does not have any content and the region to be detached is the last region for the flow thread,
the flow thread is destroyed.
In this case, if the same region has to be attached again to the flow thread, the flow thread needs to be
recreated, otherwise the crash will result.

Test: fast/regions/region-flow-reattach-crash.html

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::attachRegion):
We skip the attach if we are in the middle of document destruction.
We recreate the flow thread to which the region is intended to be attached only if the region was
not previously marked as invalid in relation to the flow thread (because the region was part of a
circular dependency).
(WebCore::RenderRegion::detachRegion): After the region is detached from flow thread,
null the region internal pointer to the flow thread to mark that the region is not
attached.

LayoutTests:

Test that after the last region from a flow thread is reattached
to the same flow thread, the flow thread object is properly recreated
thus preventing a crash.

  • fast/regions/region-flow-reattach-crash-expected.txt: Added.
  • fast/regions/region-flow-reattach-crash.html: Added.
1:46 AM Changeset in webkit [124424] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, expectations cleanup

  • platform/chromium/TestExpectations:
1:43 AM Changeset in webkit [124423] by kkristof@inf.u-szeged.hu
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/Skipped:
  • platform/qt/fast/box-sizing/box-sizing-expected.txt:
  • platform/qt/fast/forms/basic-selects-expected.txt:
1:27 AM Changeset in webkit [124422] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, missed a style goof in the previous patch: "NodeIndex nodeIndex"
in a method signature is painfully redundant.

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

1:23 AM Changeset in webkit [124421] by tommyw@google.com
  • 6 edits
    3 adds in trunk/Source

MediaStream API: Move RTCConfiguration to its proper place
https://bugs.webkit.org/show_bug.cgi?id=92867

Reviewed by Adam Barth.

This patch moves RTCConfiguration to Source/WebCore/platform/mediastream,
and adds its WebKit interface for chromium.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebRTCConfiguration.h: Added.

(WebCore):
(WebKit):
(WebRTCICEServer):
(WebKit::WebRTCICEServer::WebRTCICEServer):
(WebKit::WebRTCICEServer::~WebRTCICEServer):
(WebKit::WebRTCICEServer::operator=):
(WebKit::WebRTCICEServer::isNull):
(WebRTCConfiguration):
(WebKit::WebRTCConfiguration::WebRTCConfiguration):
(WebKit::WebRTCConfiguration::~WebRTCConfiguration):
(WebKit::WebRTCConfiguration::operator=):
(WebKit::WebRTCConfiguration::isNull):

Source/WebCore:

No functional code changes.

  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:
  • WebCore.gypi:
  • platform/chromium/support/WebRTCConfiguration.cpp: Added.

(WebKit):
(WebKit::WebRTCICEServer::WebRTCICEServer):
(WebKit::WebRTCICEServer::assign):
(WebKit::WebRTCICEServer::reset):
(WebKit::WebRTCICEServer::uri):
(WebKit::WebRTCICEServer::credential):
(WebKit::WebRTCConfiguration::WebRTCConfiguration):
(WebKit::WebRTCConfiguration::assign):
(WebKit::WebRTCConfiguration::reset):
(WebKit::WebRTCConfiguration::numberOfServers):
(WebKit::WebRTCConfiguration::server):

  • platform/mediastream/RTCConfiguration.h: Added.

(WebCore):
(RTCIceServer):
(WebCore::RTCIceServer::create):
(WebCore::RTCIceServer::~RTCIceServer):
(WebCore::RTCIceServer::uri):
(WebCore::RTCIceServer::credential):
(WebCore::RTCIceServer::RTCIceServer):
(RTCConfiguration):
(WebCore::RTCConfiguration::create):
(WebCore::RTCConfiguration::~RTCConfiguration):
(WebCore::RTCConfiguration::appendServer):
(WebCore::RTCConfiguration::numberOfServers):
(WebCore::RTCConfiguration::server):
(WebCore::RTCConfiguration::RTCConfiguration):

1:22 AM Changeset in webkit [124420] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFGSpeculativeJIT.h has too many inline method bodies
https://bugs.webkit.org/show_bug.cgi?id=92957

Reviewed by Antti Koivisto.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::speculationCheckWithConditionalDirection):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecutionWithConditionalDirection):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

1:17 AM Changeset in webkit [124419] by yosin@chromium.org
  • 4 edits in trunk/LayoutTests

Layout Test fast/forms/input-widths.html is failing
https://bugs.webkit.org/show_bug.cgi?id=92863

Reviewed by Kent Tamura.

This patch removes test cases for "date", "datetime", "datetime-local",
"month", "time" and "week" input types from fast/forms/input-widths.html
and updates its expectation, because these test cases aren't reasonable
any more.

This patch also removes test sample of input type "color".

After r124314, All chromium ports, except for Android, input type
"time" uses "monospace" font which makes input field wider.

  • fast/forms/input-widths-expected.txt: Removed expectation of "date", "datetime", "datetime-local",

"month", "time" and "week" input types.

  • fast/forms/input-widths.html: Removed test cases for "date", "datetime", "datetime-local",

"month", "time" and "week" input types, and a test sample for "color".

  • platform/chromium/TestExpectations: Removed disabling line of fast/forms/input-widths.html
12:49 AM Changeset in webkit [124418] by pkasting@chromium.org
  • 6 edits
    4 adds
    3 deletes in trunk/LayoutTests

Rebaseline per bug 92904.
https://bugs.webkit.org/show_bug.cgi?id=92904

Unreviewed, rebaselining.

  • fast/box-sizing/box-sizing-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/box-sizing/box-sizing-expected.png:
  • platform/chromium-mac-snowleopard/fast/box-sizing/box-sizing-expected.txt: Removed.
  • platform/chromium-mac/compositing/overflow/clip-descendents-expected.txt: Added.
  • platform/chromium-mac/fast/box-sizing/box-sizing-expected.png:
  • platform/chromium-mac/fast/box-sizing/box-sizing-expected.txt:
  • platform/chromium-win-xp/fast/box-sizing: Added.
  • platform/chromium-win-xp/fast/box-sizing/box-sizing-expected.png: Added.
  • platform/chromium-win/fast/box-sizing/box-sizing-expected.png:
  • platform/chromium/TestExpectations:
  • platform/efl/fast/box-sizing/box-sizing-expected.txt: Removed.
  • platform/gtk/fast/box-sizing/box-sizing-expected.txt: Removed.
12:48 AM Changeset in webkit [124417] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Browser crashes when non-progress element with -webkit-appearance:progress-bar is rendered
https://bugs.webkit.org/show_bug.cgi?id=92747

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-08-02
Reviewed by Hajime Morita.

When https://bugs.webkit.org/show_bug.cgi?id=40158 was fixed, all ports
were fixed except EFL port. This patch fixes assert that is hit when
non-progress element is rendered with -webkit-appearance:progress-bar style.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::paintProgressBar):

12:14 AM Changeset in webkit [124416] by yosin@chromium.org
  • 9 edits in trunk

REGRESSION(r102741): [Forms] In selects, when disabled, browser skips first option if not in optgroup, then selects first option in optgroup
https://bugs.webkit.org/show_bug.cgi?id=92833

Reviewed by Kent Tamura.

Source/WebCore:

This patch changes implementation of HTMLOptionElement::disabled() to
follow the "disabled" concept of option element in HTML5 specification[1],
the option element is disabled if option element has "disabled"
attribute or parent optgroup element has "disabled" attribute. Before
this patch, HTMLOptionElement::disabled() checks presenting "disabled"
attribute in option element itself and any parent element.

Before this patch, HTMLSelectElement::recalcListItems() didn't considers
non-disabled option as default selected option if select element is
disabled because HTMLOptionElement::disabled() returned true if select
element is disabled.

After this patch, HTMLOptionElement::disabled() is independent from
select element. HTMLSelectElement::recalcListItems() considers
non-disabled option as default selected option.

[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#concept-option-disabled

Tests: fast/forms/basic-selects.html: Fixed expectation to right thing.

  • css/html.css:

(select[disabled]>option): Added to render option elements in disabled
select element to disabled color as before this patch.

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::disabled): Changed to check parent element
is optgroup.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler): On mouse up
and down, don't update selection if select element is disabled.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::paintItemForeground): Added checking select
element is disabled. Before this patch, it was done by HTMLOptionElement::disabled().

LayoutTests:

This patch updates test expectation of fast/forms/basic-selects.html
for Chromium-Linux and disables it for Chromium-Mac and Chromium-Win.

Note: We need to rebaseline for all ports expect for Chromium-Linux.

  • platform/chromium-linux/fast/forms/basic-selects-expected.png: Changed for default selected option for disabled select element, "foo" to "bar" of second select element of "Line-height should be ignored" line.
  • platform/chromium-linux/fast/forms/basic-selects-expected.txt:
  • platform/chromium/TestExpectations: Disabled fast/forms/basic-selects.html for Chromium-Mac and Chromium-Win.
12:09 AM Changeset in webkit [124415] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark fast/js/dfg-osr-entry-hoisted-clobbered-structure-check.html as DEBUG SLOW = PASS.

  • platform/chromium/TestExpectations:

Aug 1, 2012:

11:59 PM Changeset in webkit [124414] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, update test expectations.

  • platform/chromium/TestExpectations:
11:44 PM Changeset in webkit [124413] by commit-queue@webkit.org
  • 26 edits in trunk/Source

Unreviewed, rolling out r124406.
http://trac.webkit.org/changeset/124406
https://bugs.webkit.org/show_bug.cgi?id=92951

it set the Mac bots on fire (Requested by pizlo on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-01

Source/JavaScriptCore:

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitDebugHook):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ArrayNode::toArgumentList):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::ConditionalNode::emitBytecode):
(JSC::ConstStatementNode::emitBytecode):
(JSC::EmptyStatementNode::emitBytecode):
(JSC::DebuggerStatementNode::emitBytecode):
(JSC::ExprStatementNode::emitBytecode):
(JSC::VarStatementNode::emitBytecode):
(JSC::IfNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):
(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):
(JSC::ThrowNode::emitBytecode):
(JSC::TryNode::emitBytecode):
(JSC::ProgramNode::emitBytecode):
(JSC::EvalNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):

  • debugger/Debugger.h:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::throwException):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:

(Interpreter):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • parser/ASTBuilder.h:

(ASTBuilder):
(JSC::ASTBuilder::createCommaExpr):
(JSC::ASTBuilder::createLogicalNot):
(JSC::ASTBuilder::createUnaryPlus):
(JSC::ASTBuilder::createVoid):
(JSC::ASTBuilder::thisExpr):
(JSC::ASTBuilder::createResolve):
(JSC::ASTBuilder::createObjectLiteral):
(JSC::ASTBuilder::createArray):
(JSC::ASTBuilder::createNumberExpr):
(JSC::ASTBuilder::createString):
(JSC::ASTBuilder::createBoolean):
(JSC::ASTBuilder::createNull):
(JSC::ASTBuilder::createBracketAccess):
(JSC::ASTBuilder::createDotAccess):
(JSC::ASTBuilder::createRegExp):
(JSC::ASTBuilder::createNewExpr):
(JSC::ASTBuilder::createConditionalExpr):
(JSC::ASTBuilder::createAssignResolve):
(JSC::ASTBuilder::createFunctionExpr):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createArgumentsList):
(JSC::ASTBuilder::createPropertyList):
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::createBlockStatement):
(JSC::ASTBuilder::createExprStatement):
(JSC::ASTBuilder::createIfStatement):
(JSC::ASTBuilder::createForLoop):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::createEmptyStatement):
(JSC::ASTBuilder::createVarStatement):
(JSC::ASTBuilder::createReturnStatement):
(JSC::ASTBuilder::createBreakStatement):
(JSC::ASTBuilder::createContinueStatement):
(JSC::ASTBuilder::createTryStatement):
(JSC::ASTBuilder::createSwitchStatement):
(JSC::ASTBuilder::createWhileStatement):
(JSC::ASTBuilder::createDoWhileStatement):
(JSC::ASTBuilder::createLabelStatement):
(JSC::ASTBuilder::createWithStatement):
(JSC::ASTBuilder::createThrowStatement):
(JSC::ASTBuilder::createDebugger):
(JSC::ASTBuilder::createConstStatement):
(JSC::ASTBuilder::appendConstDecl):
(JSC::ASTBuilder::combineCommaNodes):
(JSC::ASTBuilder::appendBinaryOperation):
(JSC::ASTBuilder::createAssignment):
(JSC::ASTBuilder::createNumber):
(JSC::ASTBuilder::makeTypeOfNode):
(JSC::ASTBuilder::makeDeleteNode):
(JSC::ASTBuilder::makeNegateNode):
(JSC::ASTBuilder::makeBitwiseNotNode):
(JSC::ASTBuilder::makeMultNode):
(JSC::ASTBuilder::makeDivNode):
(JSC::ASTBuilder::makeModNode):
(JSC::ASTBuilder::makeAddNode):
(JSC::ASTBuilder::makeSubNode):
(JSC::ASTBuilder::makeLeftShiftNode):
(JSC::ASTBuilder::makeRightShiftNode):
(JSC::ASTBuilder::makeURightShiftNode):
(JSC::ASTBuilder::makeBitOrNode):
(JSC::ASTBuilder::makeBitAndNode):
(JSC::ASTBuilder::makeBitXOrNode):
(JSC::ASTBuilder::makeFunctionCallNode):
(JSC::ASTBuilder::makeBinaryNode):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):

  • parser/Lexer.cpp:

(JSC::::setCode):
(JSC::::internalShift):
(JSC::::shift):
(JSC::::lex):

  • parser/Lexer.h:

(Lexer):
(JSC::::lexExpectIdentifier):

  • parser/NodeConstructors.h:

(JSC::Node::Node):
(JSC::ExpressionNode::ExpressionNode):
(JSC::StatementNode::StatementNode):
(JSC::NullNode::NullNode):
(JSC::BooleanNode::BooleanNode):
(JSC::NumberNode::NumberNode):
(JSC::StringNode::StringNode):
(JSC::RegExpNode::RegExpNode):
(JSC::ThisNode::ThisNode):
(JSC::ResolveNode::ResolveNode):
(JSC::ArrayNode::ArrayNode):
(JSC::PropertyListNode::PropertyListNode):
(JSC::ObjectLiteralNode::ObjectLiteralNode):
(JSC::BracketAccessorNode::BracketAccessorNode):
(JSC::DotAccessorNode::DotAccessorNode):
(JSC::ArgumentListNode::ArgumentListNode):
(JSC::NewExprNode::NewExprNode):
(JSC::EvalFunctionCallNode::EvalFunctionCallNode):
(JSC::FunctionCallValueNode::FunctionCallValueNode):
(JSC::FunctionCallResolveNode::FunctionCallResolveNode):
(JSC::FunctionCallBracketNode::FunctionCallBracketNode):
(JSC::FunctionCallDotNode::FunctionCallDotNode):
(JSC::CallFunctionCallDotNode::CallFunctionCallDotNode):
(JSC::ApplyFunctionCallDotNode::ApplyFunctionCallDotNode):
(JSC::PrePostResolveNode::PrePostResolveNode):
(JSC::PostfixResolveNode::PostfixResolveNode):
(JSC::PostfixBracketNode::PostfixBracketNode):
(JSC::PostfixDotNode::PostfixDotNode):
(JSC::PostfixErrorNode::PostfixErrorNode):
(JSC::DeleteResolveNode::DeleteResolveNode):
(JSC::DeleteBracketNode::DeleteBracketNode):
(JSC::DeleteDotNode::DeleteDotNode):
(JSC::DeleteValueNode::DeleteValueNode):
(JSC::VoidNode::VoidNode):
(JSC::TypeOfResolveNode::TypeOfResolveNode):
(JSC::TypeOfValueNode::TypeOfValueNode):
(JSC::PrefixResolveNode::PrefixResolveNode):
(JSC::PrefixBracketNode::PrefixBracketNode):
(JSC::PrefixDotNode::PrefixDotNode):
(JSC::PrefixErrorNode::PrefixErrorNode):
(JSC::UnaryOpNode::UnaryOpNode):
(JSC::UnaryPlusNode::UnaryPlusNode):
(JSC::NegateNode::NegateNode):
(JSC::BitwiseNotNode::BitwiseNotNode):
(JSC::LogicalNotNode::LogicalNotNode):
(JSC::BinaryOpNode::BinaryOpNode):
(JSC::MultNode::MultNode):
(JSC::DivNode::DivNode):
(JSC::ModNode::ModNode):
(JSC::AddNode::AddNode):
(JSC::SubNode::SubNode):
(JSC::LeftShiftNode::LeftShiftNode):
(JSC::RightShiftNode::RightShiftNode):
(JSC::UnsignedRightShiftNode::UnsignedRightShiftNode):
(JSC::LessNode::LessNode):
(JSC::GreaterNode::GreaterNode):
(JSC::LessEqNode::LessEqNode):
(JSC::GreaterEqNode::GreaterEqNode):
(JSC::ThrowableBinaryOpNode::ThrowableBinaryOpNode):
(JSC::InstanceOfNode::InstanceOfNode):
(JSC::InNode::InNode):
(JSC::EqualNode::EqualNode):
(JSC::NotEqualNode::NotEqualNode):
(JSC::StrictEqualNode::StrictEqualNode):
(JSC::NotStrictEqualNode::NotStrictEqualNode):
(JSC::BitAndNode::BitAndNode):
(JSC::BitOrNode::BitOrNode):
(JSC::BitXOrNode::BitXOrNode):
(JSC::LogicalOpNode::LogicalOpNode):
(JSC::ConditionalNode::ConditionalNode):
(JSC::ReadModifyResolveNode::ReadModifyResolveNode):
(JSC::AssignResolveNode::AssignResolveNode):
(JSC::ReadModifyBracketNode::ReadModifyBracketNode):
(JSC::AssignBracketNode::AssignBracketNode):
(JSC::AssignDotNode::AssignDotNode):
(JSC::ReadModifyDotNode::ReadModifyDotNode):
(JSC::AssignErrorNode::AssignErrorNode):
(JSC::CommaNode::CommaNode):
(JSC::ConstStatementNode::ConstStatementNode):
(JSC::EmptyStatementNode::EmptyStatementNode):
(JSC::DebuggerStatementNode::DebuggerStatementNode):
(JSC::ExprStatementNode::ExprStatementNode):
(JSC::VarStatementNode::VarStatementNode):
(JSC::IfNode::IfNode):
(JSC::IfElseNode::IfElseNode):
(JSC::DoWhileNode::DoWhileNode):
(JSC::WhileNode::WhileNode):
(JSC::ForNode::ForNode):
(JSC::ContinueNode::ContinueNode):
(JSC::BreakNode::BreakNode):
(JSC::ReturnNode::ReturnNode):
(JSC::WithNode::WithNode):
(JSC::LabelNode::LabelNode):
(JSC::ThrowNode::ThrowNode):
(JSC::TryNode::TryNode):
(JSC::FuncExprNode::FuncExprNode):
(JSC::FuncDeclNode::FuncDeclNode):
(JSC::SwitchNode::SwitchNode):
(JSC::ConstDeclNode::ConstDeclNode):
(JSC::BlockNode::BlockNode):
(JSC::ForInNode::ForInNode):

  • parser/Nodes.cpp:

(JSC):
(JSC::StatementNode::setLoc):
(JSC::ScopeNode::ScopeNode):
(JSC::ProgramNode::ProgramNode):
(JSC::ProgramNode::create):
(JSC::EvalNode::EvalNode):
(JSC::EvalNode::create):
(JSC::FunctionBodyNode::FunctionBodyNode):
(JSC::FunctionBodyNode::create):

  • parser/Nodes.h:

(Node):
(ExpressionNode):
(StatementNode):
(NullNode):
(BooleanNode):
(NumberNode):
(StringNode):
(RegExpNode):
(ThisNode):
(ResolveNode):
(ArrayNode):
(PropertyListNode):
(ObjectLiteralNode):
(BracketAccessorNode):
(DotAccessorNode):
(ArgumentListNode):
(NewExprNode):
(EvalFunctionCallNode):
(FunctionCallValueNode):
(FunctionCallResolveNode):
(FunctionCallBracketNode):
(FunctionCallDotNode):
(CallFunctionCallDotNode):
(ApplyFunctionCallDotNode):
(PrePostResolveNode):
(PostfixResolveNode):
(PostfixBracketNode):
(PostfixDotNode):
(PostfixErrorNode):
(DeleteResolveNode):
(DeleteBracketNode):
(DeleteDotNode):
(DeleteValueNode):
(VoidNode):
(TypeOfResolveNode):
(TypeOfValueNode):
(PrefixResolveNode):
(PrefixBracketNode):
(PrefixDotNode):
(PrefixErrorNode):
(UnaryOpNode):
(UnaryPlusNode):
(NegateNode):
(BitwiseNotNode):
(LogicalNotNode):
(BinaryOpNode):
(MultNode):
(DivNode):
(ModNode):
(AddNode):
(SubNode):
(LeftShiftNode):
(RightShiftNode):
(UnsignedRightShiftNode):
(LessNode):
(GreaterNode):
(LessEqNode):
(GreaterEqNode):
(ThrowableBinaryOpNode):
(InstanceOfNode):
(InNode):
(EqualNode):
(NotEqualNode):
(StrictEqualNode):
(NotStrictEqualNode):
(BitAndNode):
(BitOrNode):
(BitXOrNode):
(LogicalOpNode):
(ConditionalNode):
(ReadModifyResolveNode):
(AssignResolveNode):
(ReadModifyBracketNode):
(AssignBracketNode):
(AssignDotNode):
(ReadModifyDotNode):
(AssignErrorNode):
(CommaNode):
(ConstDeclNode):
(ConstStatementNode):
(BlockNode):
(EmptyStatementNode):
(DebuggerStatementNode):
(ExprStatementNode):
(VarStatementNode):
(IfNode):
(IfElseNode):
(DoWhileNode):
(WhileNode):
(ForNode):
(ForInNode):
(ContinueNode):
(BreakNode):
(ReturnNode):
(WithNode):
(LabelNode):
(ThrowNode):
(TryNode):
(ScopeNode):
(ProgramNode):
(EvalNode):
(FunctionBodyNode):
(FuncExprNode):
(FuncDeclNode):
(SwitchNode):

  • parser/Parser.cpp:

(JSC::::parseSourceElements):
(JSC::::parseVarDeclaration):
(JSC::::parseConstDeclaration):
(JSC::::parseDoWhileStatement):
(JSC::::parseWhileStatement):
(JSC::::parseVarDeclarationList):
(JSC::::parseConstDeclarationList):
(JSC::::parseForStatement):
(JSC::::parseBreakStatement):
(JSC::::parseContinueStatement):
(JSC::::parseReturnStatement):
(JSC::::parseThrowStatement):
(JSC::::parseWithStatement):
(JSC::::parseSwitchStatement):
(JSC::::parseTryStatement):
(JSC::::parseDebuggerStatement):
(JSC::::parseBlockStatement):
(JSC::::parseStatement):
(JSC::::parseFunctionBody):
(JSC::::parseFunctionInfo):
(JSC::::parseFunctionDeclaration):
(JSC::::parseExpressionOrLabelStatement):
(JSC::::parseExpressionStatement):
(JSC::::parseIfStatement):
(JSC::::parseExpression):
(JSC::::parseAssignmentExpression):
(JSC::::parseConditionalExpression):
(JSC::::parseBinaryExpression):
(JSC::::parseProperty):
(JSC::::parseObjectLiteral):
(JSC::::parseStrictObjectLiteral):
(JSC::::parseArrayLiteral):
(JSC::::parsePrimaryExpression):
(JSC::::parseArguments):
(JSC::::parseMemberExpression):
(JSC::::parseUnaryExpression):

  • parser/Parser.h:

(JSC::Parser::next):
(JSC::Parser::nextExpectIdentifier):
(JSC::Parser::tokenStart):
(JSC::Parser::tokenLine):
(JSC::Parser::tokenEnd):
(JSC::Parser::getTokenName):
(JSC::::parse):

  • parser/ParserTokens.h:

(JSC::JSTokenInfo::JSTokenInfo):
(JSTokenInfo):
(JSToken):

  • parser/SourceProviderCacheItem.h:

(JSC::SourceProviderCacheItem::closeBraceToken):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::makeFunctionCallNode):
(JSC::SyntaxChecker::createCommaExpr):
(JSC::SyntaxChecker::makeAssignNode):
(JSC::SyntaxChecker::makePrefixNode):
(JSC::SyntaxChecker::makePostfixNode):
(JSC::SyntaxChecker::makeTypeOfNode):
(JSC::SyntaxChecker::makeDeleteNode):
(JSC::SyntaxChecker::makeNegateNode):
(JSC::SyntaxChecker::makeBitwiseNotNode):
(JSC::SyntaxChecker::createLogicalNot):
(JSC::SyntaxChecker::createUnaryPlus):
(JSC::SyntaxChecker::createVoid):
(JSC::SyntaxChecker::thisExpr):
(JSC::SyntaxChecker::createResolve):
(JSC::SyntaxChecker::createObjectLiteral):
(JSC::SyntaxChecker::createArray):
(JSC::SyntaxChecker::createNumberExpr):
(JSC::SyntaxChecker::createString):
(JSC::SyntaxChecker::createBoolean):
(JSC::SyntaxChecker::createNull):
(JSC::SyntaxChecker::createBracketAccess):
(JSC::SyntaxChecker::createDotAccess):
(JSC::SyntaxChecker::createRegExp):
(JSC::SyntaxChecker::createNewExpr):
(JSC::SyntaxChecker::createConditionalExpr):
(JSC::SyntaxChecker::createAssignResolve):
(JSC::SyntaxChecker::createFunctionExpr):
(JSC::SyntaxChecker::createFunctionBody):
(JSC::SyntaxChecker::createArgumentsList):
(JSC::SyntaxChecker::createPropertyList):
(JSC::SyntaxChecker::createFuncDeclStatement):
(JSC::SyntaxChecker::createBlockStatement):
(JSC::SyntaxChecker::createExprStatement):
(JSC::SyntaxChecker::createIfStatement):
(JSC::SyntaxChecker::createForLoop):
(JSC::SyntaxChecker::createForInLoop):
(JSC::SyntaxChecker::createEmptyStatement):
(JSC::SyntaxChecker::createVarStatement):
(JSC::SyntaxChecker::createReturnStatement):
(JSC::SyntaxChecker::createBreakStatement):
(JSC::SyntaxChecker::createContinueStatement):
(JSC::SyntaxChecker::createTryStatement):
(JSC::SyntaxChecker::createSwitchStatement):
(JSC::SyntaxChecker::createWhileStatement):
(JSC::SyntaxChecker::createWithStatement):
(JSC::SyntaxChecker::createDoWhileStatement):
(JSC::SyntaxChecker::createLabelStatement):
(JSC::SyntaxChecker::createThrowStatement):
(JSC::SyntaxChecker::createDebugger):
(JSC::SyntaxChecker::createConstStatement):
(JSC::SyntaxChecker::appendConstDecl):
(JSC::SyntaxChecker::createGetterOrSetterProperty):
(JSC::SyntaxChecker::combineCommaNodes):
(JSC::SyntaxChecker::operatorStackPop):

Source/WebCore:

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::hasBreakpoint):
(WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::callEvent):
(WebCore::ScriptDebugServer::atStatement):
(WebCore::ScriptDebugServer::returnEvent):
(WebCore::ScriptDebugServer::exception):
(WebCore::ScriptDebugServer::willExecuteProgram):
(WebCore::ScriptDebugServer::didExecuteProgram):
(WebCore::ScriptDebugServer::didReachBreakpoint):

  • bindings/js/ScriptDebugServer.h:

(ScriptDebugServer):

11:32 PM Changeset in webkit [124412] by loislo@chromium.org
  • 7 edits
    1 add in trunk/Source

Web Inspector: test native memory instrumentation code with help of unittests
https://bugs.webkit.org/show_bug.cgi?id=92743

Reviewed by Yury Semikhatsky.

Test a part of existing Native Memory Instrumentation code with help of unit tests.
6 tests were added and two bugs were fixed.
a drive-by improvement: the method MemoryInstrumentation::addInstrumentedObject
was marked as private and addRootObject was introduced instead of it.
The new function also calls processDeferedPointers.

Source/WebCore:

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::collectBindingMemoryInfo):

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryInstrumentation::addRootObject):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore):
(WebCore::MemoryInstrumentation::addObjectImpl):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::totalSize):
(WebCore::MemoryInstrumentationImpl::reportedSizeForAllTypes):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/MemoryInstrumentationTest.cpp: Added.

(WebCore):
(NotInstrumented):
(Instrumented):
(WebCore::Instrumented::Instrumented):
(WebCore::Instrumented::~Instrumented):
(WebCore::Instrumented::reportMemoryUsage):
(WebCore::TEST):
(InstrumentedWithOwnPtr):
(WebCore::InstrumentedWithOwnPtr::InstrumentedWithOwnPtr):
(WebCore::InstrumentedWithOwnPtr::reportMemoryUsage):

10:57 PM Changeset in webkit [124411] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Chromium Android build fix after r124402.
Initialize the out variables as suggested by the compiler.

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::decode):

10:53 PM Changeset in webkit [124410] by rniwa@webkit.org
  • 405 edits in trunk/LayoutTests

Use testRunner instead of layoutTestController in fast/notifications, overflow, parser, performance,
preloader, profiler, reflections, regex, regions, repaint, ruby and runin tests
https://bugs.webkit.org/show_bug.cgi?id=92944

Reviewed by Kent Tamura.

  • fast/notifications/notification-after-close.html:
  • fast/notifications/notifications-cancel-request-permission.html:
  • fast/notifications/notifications-check-permission.html:
  • fast/notifications/notifications-click-event-focus.html:
  • fast/notifications/notifications-click-event.html:
  • fast/notifications/notifications-display-close-events.html:
  • fast/notifications/notifications-document-close-crash.html:
  • fast/notifications/notifications-double-show.html:
  • fast/notifications/notifications-event-stop-propagation.html-disabled:
  • fast/notifications/notifications-multi-events.html-disabled:
  • fast/notifications/notifications-no-icon.html:
  • fast/notifications/notifications-replace.html:
  • fast/notifications/notifications-request-permission.html:
  • fast/notifications/notifications-rtl.html:
  • fast/notifications/notifications-window-close-crash.html:
  • fast/notifications/notifications-with-permission.html:
  • fast/notifications/notifications-without-permission.html:
  • fast/notifications/resources/notifications-cancel-request-permission.html:
  • fast/overflow/generated-content-crash.html:
  • fast/overflow/hidden-scrollbar-resize.html:
  • fast/overflow/horizontal-scroll-after-back.html:
  • fast/overflow/lots-of-sibling-inline-boxes.html:
  • fast/overflow/onscroll-layer-self-destruct.html:
  • fast/overflow/overflow-height-float-not-removed-crash.html:
  • fast/overflow/overflow-height-float-not-removed-crash2.html:
  • fast/overflow/overflow-height-float-not-removed-crash3.html:
  • fast/overflow/overflow-rtl-vertical-origin.html:
  • fast/overflow/overflow-text-hit-testing.html:
  • fast/overflow/overflow-y-scroll.html:
  • fast/overflow/scroll-vertical-not-horizontal.html:
  • fast/overflow/scrollRevealButton.html:
  • fast/overflow/scrollbar-restored-and-then-locked.html:
  • fast/overflow/scrollbar-restored.html:
  • fast/overflow/setting-scrollTop-after-hide-show.html:
  • fast/parser/:
  • fast/preloader/document-write-2.html:
  • fast/preloader/document-write-noscript.html:
  • fast/preloader/document-write.html:
  • fast/preloader/first-base-tag-scanned-wins.html:
  • fast/preloader/first-base-tag-wins.html:
  • fast/preloader/image.html:
  • fast/preloader/input.html:
  • fast/preloader/link.html:
  • fast/preloader/noscript.html:
  • fast/preloader/scan-body-from-head-import.html:
  • fast/preloader/scan-body-from-head-script.html:
  • fast/preloader/script.html:
  • fast/preloader/style.html:
  • fast/preloader/understands-base-tag.html:
  • fast/profiler/:
  • fast/reflections/inline-crash.html:
  • fast/reflections/pending-reflection-mask-crash.html:
  • fast/reflections/reflected-img-crash.html:
  • fast/reflections/reflection-computed-style.html:
  • fast/reflections/remove-reflection-crash.html:
  • fast/reflections/resources/reflection-overflow-scroll.js:
  • fast/reflections/teardown-crash.html:
  • fast/reflections/toggle-reflection-crash.html:
  • fast/regex/syntax-errors.html:
  • fast/regions/content-flowed-into-regions-no-scroll.html:
  • fast/regions/element-region-overflow-state-vertical-rl.html:
  • fast/regions/element-region-overflow-state.html:
  • fast/regions/flexbox-in-region-crash.html:
  • fast/regions/flow-anonymous-children.html:
  • fast/regions/flowed-content-bounding-client-rect-horizontal-bt.html:
  • fast/regions/flowed-content-bounding-client-rect-vertical-rl.html:
  • fast/regions/flowed-content-bounding-client-rect-vertical.html:
  • fast/regions/flowed-content-bounding-client-rect.html:
  • fast/regions/flowed-content-transform-bounding-client-rect.html:
  • fast/regions/get-regions-by-content-horiz-bt.html:
  • fast/regions/get-regions-by-content-horiz-tb.html:
  • fast/regions/get-regions-by-content-vert-lr.html:
  • fast/regions/get-regions-by-content-vert-rl.html:
  • fast/regions/get-regions-by-content.html:
  • fast/regions/get-regions-by-content2.html:
  • fast/regions/hit-test-float.html:
  • fast/regions/hit-test-region.html:
  • fast/regions/imbricated-flow-threads-crash.html:
  • fast/regions/no-split-line-box.html:
  • fast/regions/parse-incomplete-region-rule.html:
  • fast/regions/parsing-region-style-rule.html:
  • fast/regions/region-element-dynamic-attach-flow.html:
  • fast/regions/region-element-dynamic-detach-flow.html:
  • fast/regions/region-range-for-box-crash.html:
  • fast/regions/region-style-block-background-color2.html:
  • fast/regions/script-tests/css-regions-disabled.js:
  • fast/regions/select-in-region-crash.html:
  • fast/regions/set-box-style-in-region-crash.html:
  • fast/regions/svg-root-element-collected.html:
  • fast/regions/symbol-in-named-flow-crash.svg:
  • fast/regions/text-region-breaks.html:
  • fast/regions/text-region-split-after-resize.html:
  • fast/regions/text-region-split-horizontal-bt.html:
  • fast/regions/text-region-split-vertical-rl.html:
  • fast/regions/text-region-split-vertical.html:
  • fast/regions/text-region-split.html:
  • fast/regions/webkit-named-flow-event-add-to-flow.html:
  • fast/regions/webkit-named-flow-event-no-regions.html:
  • fast/regions/webkit-named-flow-event-remove-from-dom.html:
  • fast/regions/webkit-named-flow-event-remove-from-flow.html:
  • fast/regions/webkit-named-flow-event-target.html:
  • fast/regions/webkit-named-flow-event-to-null.html:
  • fast/regions/webkit-named-flow-event.html:
  • fast/regions/webkit-named-flow-existing-flow.html:
  • fast/regions/webkit-named-flow-first-empty-region-index.html:
  • fast/regions/webkit-named-flow-flow-added.html:
  • fast/regions/webkit-named-flow-get-content.html:
  • fast/regions/webkit-named-flow-invalid-name.html:
  • fast/regions/webkit-named-flow-modified-flow.html:
  • fast/regions/webkit-named-flow-name.html:
  • fast/regions/webkit-named-flow-non-existing-flow.html:
  • fast/regions/webkit-named-flow-overset.html:
  • fast/regions/webkit-named-flow-removed-flow.html:
  • fast/regions/webkit-named-flow-same-object.html:
  • fast/repaint/:
  • fast/replaced/css-content-and-webkit-mask-box-image-crash.html:
  • fast/replaced/frame-removed-during-resize-smaller.html:
  • fast/replaced/frame-removed-during-resize.html:
  • fast/replaced/image-map-2.html:
  • fast/replaced/image-map-bug16782.html:
  • fast/replaced/image-map.html:
  • fast/replaced/image-resize-width.html:
  • fast/replaced/invalid-object-with-fallback.html:
  • fast/replaced/object-param-no-name.html:
  • fast/replaced/object-param-spaces.html:
  • fast/replaced/object-with-embed-url-param.html:
  • fast/replaced/object-with-non-empty-classid-triggers-fallback.html:
  • fast/replaced/outline-replaced-elements.html:
  • fast/replaced/resources/focus-test.js:

(checkNoFocusRing):

  • fast/replaced/table-percent-height-text-controls.html:
  • fast/replaced/table-percent-height.html:
  • fast/replaced/table-percent-width.html:
  • fast/replaced/table-replaced-element.html:
  • fast/replaced/vertical-resize-100percent-element.html:
  • fast/replaced/width100percent-textarea.html:
  • platform/chromium/fast/repaint/fixed-layout-360x240.html:
  • platform/mac/fast/overflow/overflow-scrollbar-hit-test.html:
  • platform/qt/fast/repaint/flexible-box-overflow-expected.txt:
  • platform/qt/fast/repaint/flexible-box-overflow-horizontal-expected.txt:
  • platform/qt/fast/repaint/focus-ring-expected.txt:
  • platform/qt/fast/repaint/inline-block-overflow-expected.txt:
  • platform/qt/fast/repaint/layer-child-outline-expected.txt:
  • platform/qt/fast/repaint/layer-outline-expected.txt:
  • platform/qt/fast/repaint/layer-outline-horizontal-expected.txt:
  • platform/qt/fast/repaint/list-marker-expected.txt:
  • platform/qt/fast/repaint/text-shadow-expected.txt:
  • platform/qt/fast/repaint/text-shadow-horizontal-expected.txt:
10:29 PM Changeset in webkit [124409] by keishi@webkit.org
  • 4 edits
    3 adds in trunk

Fix typo in colorSuggestionPicker.js
https://bugs.webkit.org/show_bug.cgi?id=92936

Reviewed by Kent Tamura.

Source/WebCore:

Fixes typo.

Test: platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance.html

  • Resources/colorSuggestionPicker.js:

(getScrollbarWidth):

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance.html: Added. Tests the appearance when there are many datalist options.
10:21 PM Changeset in webkit [124408] by pkasting@chromium.org
  • 5 edits
    3 deletes in trunk/LayoutTests

[Chromium] Test expectation updates.
https://bugs.webkit.org/show_bug.cgi?id=72990
https://bugs.webkit.org/show_bug.cgi?id=74694
https://bugs.webkit.org/show_bug.cgi?id=80219
https://bugs.webkit.org/show_bug.cgi?id=90741
https://bugs.webkit.org/show_bug.cgi?id=92850
https://bugs.webkit.org/show_bug.cgi?id=92852
https://bugs.webkit.org/show_bug.cgi?id=92938
https://bugs.webkit.org/show_bug.cgi?id=92941

Unreviewed, test expectation updates.

  • Attempting to fix http/tests/cache tests dumping as pixel tests by changing "window.testRunner.dumpAsText()" to "testRunner.dumpAsText()" since the test opens multiple windows. (I don't know why else it might not be working.)
  • Removing erroneous Chromium Linux pixel baselines for that test.
  • Rebaselined a CSS test after http://trac.webkit.org/changeset/123782 , which only got partially rebaselined before.
  • Fixed some incorrect bug numbers on some expectations.
  • Miscellaneous other stuff.
  • http/tests/cache/history-only-cached-subresource-loads-max-age-https.html:
  • http/tests/cache/history-only-cached-subresource-loads.html:
  • platform/chromium-linux/http/tests/cache/history-only-cached-subresource-loads-expected.png: Removed.
  • platform/chromium-linux/http/tests/cache/history-only-cached-subresource-loads-max-age-https-expected.png: Removed.
  • platform/chromium-mac-snowleopard/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt: Removed.
  • platform/chromium-mac/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
  • platform/chromium/TestExpectations:
9:57 PM Changeset in webkit [124407] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

The elements in Shadow DOM of input should not be modifiable.
https://bugs.webkit.org/show_bug.cgi?id=92200

Reviewed by Kent Tamura.

Source/WebCore:

Since we don't have "-webkit-user-modify: read-only !important;" for the elements in Shadow DOM of
input element, user can change them and it causes a crash.

We should have "-webkit-user-modify: read-only !important;" for those elements.

Test: fast/forms/input-user-modify.html

  • css/html.css:

(input::-webkit-textfield-decoration-container):
(input[type="search"]::-webkit-search-cancel-button):
(input[type="search"]::-webkit-search-decoration):
(input[type="search"]::-webkit-search-results-decoration):
(input[type="search"]::-webkit-search-results-button):
(input::-webkit-inner-spin-button):
(input::-webkit-input-speech-button):
(input::-webkit-input-placeholder, isindex::-webkit-input-placeholder):
(input[type="file"]::-webkit-file-upload-button):
(input[type="range"]::-webkit-slider-container, input[type="range"]::-webkit-media-slider-container):
(input[type="range"]::-webkit-slider-runnable-track):
(input[type="range"]::-webkit-slider-thumb, input[type="range"]::-webkit-media-slider-thumb):
(input[type="color"]::-webkit-color-swatch-wrapper):
(input[type="color"]::-webkit-color-swatch):
(input::-webkit-calendar-picker-indicator):

LayoutTests:

  • fast/forms/input-user-modify-expected.txt: Added.
  • fast/forms/input-user-modify.html: Added.
9:49 PM Changeset in webkit [124406] by commit-queue@webkit.org
  • 26 edits in trunk/Source

Web Inspector: [JSC] implement setting breakpoints by line:column
https://bugs.webkit.org/show_bug.cgi?id=53003

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-08-01
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add a counter in lexer to record the column of each token. Debugger will use column info
in "Pretty Print" debug mode of Inspector.

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitDebugHook):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ArrayNode::toArgumentList):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::ConditionalNode::emitBytecode):
(JSC::ConstStatementNode::emitBytecode):
(JSC::EmptyStatementNode::emitBytecode):
(JSC::DebuggerStatementNode::emitBytecode):
(JSC::ExprStatementNode::emitBytecode):
(JSC::VarStatementNode::emitBytecode):
(JSC::IfNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):
(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):
(JSC::ThrowNode::emitBytecode):
(JSC::TryNode::emitBytecode):
(JSC::ProgramNode::emitBytecode):
(JSC::EvalNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):

  • debugger/Debugger.h:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::throwException):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:

(Interpreter):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • parser/ASTBuilder.h:

(ASTBuilder):
(JSC::ASTBuilder::createCommaExpr):
(JSC::ASTBuilder::createLogicalNot):
(JSC::ASTBuilder::createUnaryPlus):
(JSC::ASTBuilder::createVoid):
(JSC::ASTBuilder::thisExpr):
(JSC::ASTBuilder::createResolve):
(JSC::ASTBuilder::createObjectLiteral):
(JSC::ASTBuilder::createArray):
(JSC::ASTBuilder::createNumberExpr):
(JSC::ASTBuilder::createString):
(JSC::ASTBuilder::createBoolean):
(JSC::ASTBuilder::createNull):
(JSC::ASTBuilder::createBracketAccess):
(JSC::ASTBuilder::createDotAccess):
(JSC::ASTBuilder::createRegExp):
(JSC::ASTBuilder::createNewExpr):
(JSC::ASTBuilder::createConditionalExpr):
(JSC::ASTBuilder::createAssignResolve):
(JSC::ASTBuilder::createFunctionExpr):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createArgumentsList):
(JSC::ASTBuilder::createPropertyList):
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::createBlockStatement):
(JSC::ASTBuilder::createExprStatement):
(JSC::ASTBuilder::createIfStatement):
(JSC::ASTBuilder::createForLoop):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::createEmptyStatement):
(JSC::ASTBuilder::createVarStatement):
(JSC::ASTBuilder::createReturnStatement):
(JSC::ASTBuilder::createBreakStatement):
(JSC::ASTBuilder::createContinueStatement):
(JSC::ASTBuilder::createTryStatement):
(JSC::ASTBuilder::createSwitchStatement):
(JSC::ASTBuilder::createWhileStatement):
(JSC::ASTBuilder::createDoWhileStatement):
(JSC::ASTBuilder::createLabelStatement):
(JSC::ASTBuilder::createWithStatement):
(JSC::ASTBuilder::createThrowStatement):
(JSC::ASTBuilder::createDebugger):
(JSC::ASTBuilder::createConstStatement):
(JSC::ASTBuilder::appendConstDecl):
(JSC::ASTBuilder::combineCommaNodes):
(JSC::ASTBuilder::appendBinaryOperation):
(JSC::ASTBuilder::createAssignment):
(JSC::ASTBuilder::createNumber):
(JSC::ASTBuilder::makeTypeOfNode):
(JSC::ASTBuilder::makeDeleteNode):
(JSC::ASTBuilder::makeNegateNode):
(JSC::ASTBuilder::makeBitwiseNotNode):
(JSC::ASTBuilder::makeMultNode):
(JSC::ASTBuilder::makeDivNode):
(JSC::ASTBuilder::makeModNode):
(JSC::ASTBuilder::makeAddNode):
(JSC::ASTBuilder::makeSubNode):
(JSC::ASTBuilder::makeLeftShiftNode):
(JSC::ASTBuilder::makeRightShiftNode):
(JSC::ASTBuilder::makeURightShiftNode):
(JSC::ASTBuilder::makeBitOrNode):
(JSC::ASTBuilder::makeBitAndNode):
(JSC::ASTBuilder::makeBitXOrNode):
(JSC::ASTBuilder::makeFunctionCallNode):
(JSC::ASTBuilder::makeBinaryNode):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):

  • parser/Lexer.cpp:

(JSC::::setCode):
(JSC::::internalShift):
(JSC::::shift):
(JSC::::lex):

  • parser/Lexer.h:

(Lexer):
(JSC::Lexer::currentColumnNumber):
(JSC::::lexExpectIdentifier):

  • parser/NodeConstructors.h:

(JSC::Node::Node):
(JSC::ExpressionNode::ExpressionNode):
(JSC::StatementNode::StatementNode):
(JSC::NullNode::NullNode):
(JSC::BooleanNode::BooleanNode):
(JSC::NumberNode::NumberNode):
(JSC::StringNode::StringNode):
(JSC::RegExpNode::RegExpNode):
(JSC::ThisNode::ThisNode):
(JSC::ResolveNode::ResolveNode):
(JSC::ArrayNode::ArrayNode):
(JSC::PropertyListNode::PropertyListNode):
(JSC::ObjectLiteralNode::ObjectLiteralNode):
(JSC::BracketAccessorNode::BracketAccessorNode):
(JSC::DotAccessorNode::DotAccessorNode):
(JSC::ArgumentListNode::ArgumentListNode):
(JSC::NewExprNode::NewExprNode):
(JSC::EvalFunctionCallNode::EvalFunctionCallNode):
(JSC::FunctionCallValueNode::FunctionCallValueNode):
(JSC::FunctionCallResolveNode::FunctionCallResolveNode):
(JSC::FunctionCallBracketNode::FunctionCallBracketNode):
(JSC::FunctionCallDotNode::FunctionCallDotNode):
(JSC::CallFunctionCallDotNode::CallFunctionCallDotNode):
(JSC::ApplyFunctionCallDotNode::ApplyFunctionCallDotNode):
(JSC::PrePostResolveNode::PrePostResolveNode):
(JSC::PostfixResolveNode::PostfixResolveNode):
(JSC::PostfixBracketNode::PostfixBracketNode):
(JSC::PostfixDotNode::PostfixDotNode):
(JSC::PostfixErrorNode::PostfixErrorNode):
(JSC::DeleteResolveNode::DeleteResolveNode):
(JSC::DeleteBracketNode::DeleteBracketNode):
(JSC::DeleteDotNode::DeleteDotNode):
(JSC::DeleteValueNode::DeleteValueNode):
(JSC::VoidNode::VoidNode):
(JSC::TypeOfResolveNode::TypeOfResolveNode):
(JSC::TypeOfValueNode::TypeOfValueNode):
(JSC::PrefixResolveNode::PrefixResolveNode):
(JSC::PrefixBracketNode::PrefixBracketNode):
(JSC::PrefixDotNode::PrefixDotNode):
(JSC::PrefixErrorNode::PrefixErrorNode):
(JSC::UnaryOpNode::UnaryOpNode):
(JSC::UnaryPlusNode::UnaryPlusNode):
(JSC::NegateNode::NegateNode):
(JSC::BitwiseNotNode::BitwiseNotNode):
(JSC::LogicalNotNode::LogicalNotNode):
(JSC::BinaryOpNode::BinaryOpNode):
(JSC::MultNode::MultNode):
(JSC::DivNode::DivNode):
(JSC::ModNode::ModNode):
(JSC::AddNode::AddNode):
(JSC::SubNode::SubNode):
(JSC::LeftShiftNode::LeftShiftNode):
(JSC::RightShiftNode::RightShiftNode):
(JSC::UnsignedRightShiftNode::UnsignedRightShiftNode):
(JSC::LessNode::LessNode):
(JSC::GreaterNode::GreaterNode):
(JSC::LessEqNode::LessEqNode):
(JSC::GreaterEqNode::GreaterEqNode):
(JSC::ThrowableBinaryOpNode::ThrowableBinaryOpNode):
(JSC::InstanceOfNode::InstanceOfNode):
(JSC::InNode::InNode):
(JSC::EqualNode::EqualNode):
(JSC::NotEqualNode::NotEqualNode):
(JSC::StrictEqualNode::StrictEqualNode):
(JSC::NotStrictEqualNode::NotStrictEqualNode):
(JSC::BitAndNode::BitAndNode):
(JSC::BitOrNode::BitOrNode):
(JSC::BitXOrNode::BitXOrNode):
(JSC::LogicalOpNode::LogicalOpNode):
(JSC::ConditionalNode::ConditionalNode):
(JSC::ReadModifyResolveNode::ReadModifyResolveNode):
(JSC::AssignResolveNode::AssignResolveNode):
(JSC::ReadModifyBracketNode::ReadModifyBracketNode):
(JSC::AssignBracketNode::AssignBracketNode):
(JSC::AssignDotNode::AssignDotNode):
(JSC::ReadModifyDotNode::ReadModifyDotNode):
(JSC::AssignErrorNode::AssignErrorNode):
(JSC::CommaNode::CommaNode):
(JSC::ConstStatementNode::ConstStatementNode):
(JSC::EmptyStatementNode::EmptyStatementNode):
(JSC::DebuggerStatementNode::DebuggerStatementNode):
(JSC::ExprStatementNode::ExprStatementNode):
(JSC::VarStatementNode::VarStatementNode):
(JSC::IfNode::IfNode):
(JSC::IfElseNode::IfElseNode):
(JSC::DoWhileNode::DoWhileNode):
(JSC::WhileNode::WhileNode):
(JSC::ForNode::ForNode):
(JSC::ContinueNode::ContinueNode):
(JSC::BreakNode::BreakNode):
(JSC::ReturnNode::ReturnNode):
(JSC::WithNode::WithNode):
(JSC::LabelNode::LabelNode):
(JSC::ThrowNode::ThrowNode):
(JSC::TryNode::TryNode):
(JSC::FuncExprNode::FuncExprNode):
(JSC::FuncDeclNode::FuncDeclNode):
(JSC::SwitchNode::SwitchNode):
(JSC::ConstDeclNode::ConstDeclNode):
(JSC::BlockNode::BlockNode):
(JSC::ForInNode::ForInNode):

  • parser/Nodes.cpp:

(JSC::StatementNode::setLoc):
(JSC):
(JSC::ScopeNode::ScopeNode):
(JSC::ProgramNode::ProgramNode):
(JSC::ProgramNode::create):
(JSC::EvalNode::EvalNode):
(JSC::EvalNode::create):
(JSC::FunctionBodyNode::FunctionBodyNode):
(JSC::FunctionBodyNode::create):

  • parser/Nodes.h:

(Node):
(JSC::Node::columnNo):
(ExpressionNode):
(StatementNode):
(JSC::StatementNode::column):
(NullNode):
(BooleanNode):
(NumberNode):
(StringNode):
(RegExpNode):
(ThisNode):
(ResolveNode):
(ArrayNode):
(PropertyListNode):
(ObjectLiteralNode):
(BracketAccessorNode):
(DotAccessorNode):
(ArgumentListNode):
(NewExprNode):
(EvalFunctionCallNode):
(FunctionCallValueNode):
(FunctionCallResolveNode):
(FunctionCallBracketNode):
(FunctionCallDotNode):
(CallFunctionCallDotNode):
(ApplyFunctionCallDotNode):
(PrePostResolveNode):
(PostfixResolveNode):
(PostfixBracketNode):
(PostfixDotNode):
(PostfixErrorNode):
(DeleteResolveNode):
(DeleteBracketNode):
(DeleteDotNode):
(DeleteValueNode):
(VoidNode):
(TypeOfResolveNode):
(TypeOfValueNode):
(PrefixResolveNode):
(PrefixBracketNode):
(PrefixDotNode):
(PrefixErrorNode):
(UnaryOpNode):
(UnaryPlusNode):
(NegateNode):
(BitwiseNotNode):
(LogicalNotNode):
(BinaryOpNode):
(MultNode):
(DivNode):
(ModNode):
(AddNode):
(SubNode):
(LeftShiftNode):
(RightShiftNode):
(UnsignedRightShiftNode):
(LessNode):
(GreaterNode):
(LessEqNode):
(GreaterEqNode):
(ThrowableBinaryOpNode):
(InstanceOfNode):
(InNode):
(EqualNode):
(NotEqualNode):
(StrictEqualNode):
(NotStrictEqualNode):
(BitAndNode):
(BitOrNode):
(BitXOrNode):
(LogicalOpNode):
(ConditionalNode):
(ReadModifyResolveNode):
(AssignResolveNode):
(ReadModifyBracketNode):
(AssignBracketNode):
(AssignDotNode):
(ReadModifyDotNode):
(AssignErrorNode):
(CommaNode):
(ConstDeclNode):
(ConstStatementNode):
(BlockNode):
(EmptyStatementNode):
(DebuggerStatementNode):
(ExprStatementNode):
(VarStatementNode):
(IfNode):
(IfElseNode):
(DoWhileNode):
(WhileNode):
(ForNode):
(ForInNode):
(ContinueNode):
(BreakNode):
(ReturnNode):
(WithNode):
(LabelNode):
(ThrowNode):
(TryNode):
(ScopeNode):
(ProgramNode):
(EvalNode):
(FunctionBodyNode):
(FuncExprNode):
(FuncDeclNode):
(SwitchNode):

  • parser/Parser.cpp:

(JSC::::parseSourceElements):
(JSC::::parseVarDeclaration):
(JSC::::parseConstDeclaration):
(JSC::::parseDoWhileStatement):
(JSC::::parseWhileStatement):
(JSC::::parseVarDeclarationList):
(JSC::::parseConstDeclarationList):
(JSC::::parseForStatement):
(JSC::::parseBreakStatement):
(JSC::::parseContinueStatement):
(JSC::::parseReturnStatement):
(JSC::::parseThrowStatement):
(JSC::::parseWithStatement):
(JSC::::parseSwitchStatement):
(JSC::::parseTryStatement):
(JSC::::parseDebuggerStatement):
(JSC::::parseBlockStatement):
(JSC::::parseStatement):
(JSC::::parseFunctionBody):
(JSC::::parseFunctionInfo):
(JSC::::parseFunctionDeclaration):
(JSC::::parseExpressionOrLabelStatement):
(JSC::::parseExpressionStatement):
(JSC::::parseIfStatement):
(JSC::::parseExpression):
(JSC::::parseAssignmentExpression):
(JSC::::parseConditionalExpression):
(JSC::::parseBinaryExpression):
(JSC::::parseProperty):
(JSC::::parseObjectLiteral):
(JSC::::parseStrictObjectLiteral):
(JSC::::parseArrayLiteral):
(JSC::::parsePrimaryExpression):
(JSC::::parseArguments):
(JSC::::parseMemberExpression):
(JSC::::parseUnaryExpression):

  • parser/Parser.h:

(JSC::Parser::next):
(JSC::Parser::nextExpectIdentifier):
(JSC::Parser::tokenStart):
(JSC::Parser::tokenLine):
(JSC::Parser::tokenEnd):
(JSC::Parser::tokenLocation):
(Parser):
(JSC::Parser::getTokenName):
(JSC::::parse):

  • parser/ParserTokens.h:

(JSC::JSTokenLocation::JSTokenLocation):
(JSTokenLocation):
(JSToken):

  • parser/SourceProviderCacheItem.h:

(JSC::SourceProviderCacheItem::closeBraceToken):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::makeFunctionCallNode):
(JSC::SyntaxChecker::createCommaExpr):
(JSC::SyntaxChecker::makeAssignNode):
(JSC::SyntaxChecker::makePrefixNode):
(JSC::SyntaxChecker::makePostfixNode):
(JSC::SyntaxChecker::makeTypeOfNode):
(JSC::SyntaxChecker::makeDeleteNode):
(JSC::SyntaxChecker::makeNegateNode):
(JSC::SyntaxChecker::makeBitwiseNotNode):
(JSC::SyntaxChecker::createLogicalNot):
(JSC::SyntaxChecker::createUnaryPlus):
(JSC::SyntaxChecker::createVoid):
(JSC::SyntaxChecker::thisExpr):
(JSC::SyntaxChecker::createResolve):
(JSC::SyntaxChecker::createObjectLiteral):
(JSC::SyntaxChecker::createArray):
(JSC::SyntaxChecker::createNumberExpr):
(JSC::SyntaxChecker::createString):
(JSC::SyntaxChecker::createBoolean):
(JSC::SyntaxChecker::createNull):
(JSC::SyntaxChecker::createBracketAccess):
(JSC::SyntaxChecker::createDotAccess):
(JSC::SyntaxChecker::createRegExp):
(JSC::SyntaxChecker::createNewExpr):
(JSC::SyntaxChecker::createConditionalExpr):
(JSC::SyntaxChecker::createAssignResolve):
(JSC::SyntaxChecker::createFunctionExpr):
(JSC::SyntaxChecker::createFunctionBody):
(JSC::SyntaxChecker::createArgumentsList):
(JSC::SyntaxChecker::createPropertyList):
(JSC::SyntaxChecker::createFuncDeclStatement):
(JSC::SyntaxChecker::createBlockStatement):
(JSC::SyntaxChecker::createExprStatement):
(JSC::SyntaxChecker::createIfStatement):
(JSC::SyntaxChecker::createForLoop):
(JSC::SyntaxChecker::createForInLoop):
(JSC::SyntaxChecker::createEmptyStatement):
(JSC::SyntaxChecker::createVarStatement):
(JSC::SyntaxChecker::createReturnStatement):
(JSC::SyntaxChecker::createBreakStatement):
(JSC::SyntaxChecker::createContinueStatement):
(JSC::SyntaxChecker::createTryStatement):
(JSC::SyntaxChecker::createSwitchStatement):
(JSC::SyntaxChecker::createWhileStatement):
(JSC::SyntaxChecker::createWithStatement):
(JSC::SyntaxChecker::createDoWhileStatement):
(JSC::SyntaxChecker::createLabelStatement):
(JSC::SyntaxChecker::createThrowStatement):
(JSC::SyntaxChecker::createDebugger):
(JSC::SyntaxChecker::createConstStatement):
(JSC::SyntaxChecker::appendConstDecl):
(JSC::SyntaxChecker::createGetterOrSetterProperty):
(JSC::SyntaxChecker::combineCommaNodes):
(JSC::SyntaxChecker::operatorStackPop):

Source/WebCore:

As JSC is enabled to provide column info of statement, ScriptDebugServer can use it to
support "Pretty Print" debug mode.

No new test case for this patch.

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore):
(WebCore::ScriptDebugServer::updateCurrentStatementPosition):
(WebCore::ScriptDebugServer::hasBreakpoint):
(WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
(WebCore::ScriptDebugServer::callEvent):
(WebCore::ScriptDebugServer::atStatement):
(WebCore::ScriptDebugServer::returnEvent):
(WebCore::ScriptDebugServer::exception):
(WebCore::ScriptDebugServer::willExecuteProgram):
(WebCore::ScriptDebugServer::didExecuteProgram):
(WebCore::ScriptDebugServer::didReachBreakpoint):

  • bindings/js/ScriptDebugServer.h:

(ScriptDebugServer):

9:45 PM Changeset in webkit [124405] by ryuan.choi@samsung.com
  • 3 edits in trunk/Source/WebKit/efl

[EFL][Regression] Build break with NETSCAPE_PLUGIN_API after r123604
https://bugs.webkit.org/show_bug.cgi?id=92937

Unreviewed build fix.

r123604 replaced strdup to eina_stringshare, but related codes are not
changed properly.
This patch changes remained code to use eina_stringshare.

  • ewk/ewk_js.cpp:

(ewk_js_variant_to_npvariant):
(ewk_js_property_free):
(ewk_js_npvariant_to_variant):
(ewk_js_variant_free):
(ewk_js_variant_array_free):

  • ewk/ewk_js.h:
9:32 PM Changeset in webkit [124404] by fpizlo@apple.com
  • 25 edits
    5 adds in trunk

DFG should hoist structure checks
https://bugs.webkit.org/show_bug.cgi?id=92696

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

This hoists structure checks in the same way that we would hoist array checks, but with added
complexity to cope with the fact that the structure of an object may change. This is handled
by performing a side effects analysis over the region in which the respective variable is
live. If a structure clobbering side effect may happen then we either hoist the structure
checks and fall back on structure transition watchpoints (if the watchpoint set is still
valid), or we avoid hoisting altogether.

Doing this required teaching the CFA that we may have an expectation that an object has a
particular structure even after structure clobbering happens, in the sense that structure
proofs that were cobbered can be revived using watchpoints. CFA must know about this so that
OSR entry may know about it, since we cannot allow entry to happen if the variable has a
clobbered structure proof, will have a watchpoint to revive the proof, and the variable in
the baseline JIT has a completely unrelated structure.

This is mostly performance neutral.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::isSet):
(JSC::ValueRecovery::operator!):
(ValueRecovery):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::clobberWorld):
(DFG):
(JSC::DFG::AbstractState::clobberCapturedVars):

  • dfg/DFGAbstractState.h:

(AbstractState):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::clear):
(JSC::DFG::AbstractValue::isClear):
(JSC::DFG::AbstractValue::makeTop):
(JSC::DFG::AbstractValue::isTop):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::operator==):
(JSC::DFG::AbstractValue::merge):
(JSC::DFG::AbstractValue::filter):
(JSC::DFG::AbstractValue::validate):
(JSC::DFG::AbstractValue::validateForEntry):
(AbstractValue):
(JSC::DFG::AbstractValue::checkConsistency):
(JSC::DFG::AbstractValue::dump):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::fixVariableAccessSpeculations):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::checkStructureLoadElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::getLocalLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::vote):
(Graph):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
(Node):
(JSC::DFG::Node::hasStructureSet):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):
(PredictionPropagationPhase):
(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::speculationCheckWithConditionalDirection):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecutionWithConditionalDirection):
(JSC::DFG::SpeculateCellOperand::SpeculateCellOperand):
(JSC::DFG::SpeculateCellOperand::gpr):
(SpeculateCellOperand):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStructureCheckHoistingPhase.cpp: Added.

(DFG):
(StructureCheckHoistingPhase):
(JSC::DFG::StructureCheckHoistingPhase::StructureCheckHoistingPhase):
(JSC::DFG::StructureCheckHoistingPhase::run):
(JSC::DFG::StructureCheckHoistingPhase::noticeStructureCheck):
(JSC::DFG::StructureCheckHoistingPhase::noticeClobber):
(JSC::DFG::StructureCheckHoistingPhase::clobber):
(CheckData):
(JSC::DFG::StructureCheckHoistingPhase::CheckData::CheckData):
(JSC::DFG::performStructureCheckHoisting):

  • dfg/DFGStructureCheckHoistingPhase.h: Added.

(DFG):

  • dfg/DFGVariableAccessData.h:

(VariableAccessData):
(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeStructureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::structureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::clearVotes):
(JSC::DFG::VariableAccessData::vote):
(JSC::DFG::VariableAccessData::voteRatio):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):

  • runtime/Options.h:

(JSC):

LayoutTests:

Rubber stamped by Gavin Barraclough.

Added a new test that covers the following scenarios:

  • OSR entry if a variable with a hoisted check has an unexpected structure, structures get clobbered, and we're protecting ourselves with structure transition watchpoints.


  • OSR exit on hoisted structure checks, if the object doesn't have the expected structure, and where the source of the assignment is side-effecting.


I combined these into a single test because there is no way to test the latter without testing the former.

  • fast/js/dfg-osr-entry-hoisted-clobbered-structure-check-expected.txt: Added.
  • fast/js/dfg-osr-entry-hoisted-clobbered-structure-check.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-osr-entry-hoisted-clobbered-structure-check.js: Added.

(foo):
(bar):
(baz):

8:55 PM Changeset in webkit [124403] by charles.wei@torchmobile.com.cn
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Favicon should be Base64 encoded for cross-process passing
https://bugs.webkit.org/show_bug.cgi?id=92857

Reviewed by George Staikos.

The current implementation just passes the internal of SkPixels data to the client,
which can't be passed accross the process boundary to chrome for processing.
This patch makes the favicon Base64 encoded so that can be passed to chrome in another process.

  • Api/WebPageClient.h:
  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidReceiveIcon):

8:08 PM Changeset in webkit [124402] by commit-queue@webkit.org
  • 5 edits in trunk/Source

IndexedDB: ObjectStoreMetaDataKey::m_metaDataType should use byte type
https://bugs.webkit.org/show_bug.cgi?id=92725

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2012-08-01
Reviewed by Kentaro Hara.

Source/WebCore:

No new tests - Low level functions covered by existing layout tests and also covered by Chromium
webkit_unit_tests IDBLevelIDBCodingTest.*.

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::decodeByte):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::metaDataType):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::decode):

  • Modules/indexeddb/IDBLevelDBCoding.h:

(IDBLevelDBCoding):

Source/WebKit/chromium:

Add two new tests in IDBLevelDBCodingTest.cpp. One for an added function decodeByte() and
another for verifying that encodeByte() and encodeVarInt() are indentical when the encoded
values are <= 127.

  • tests/IDBLevelDBCodingTest.cpp:

(IDBLevelDBCoding::TEST):
(IDBLevelDBCoding):

7:31 PM Changeset in webkit [124401] by dpranke@chromium.org
  • 3 edits in trunk/Tools

REGRESSION(r123893): Reftest mismatches are run through ImageDiff with 0.1 tolerance
https://bugs.webkit.org/show_bug.cgi?id=92847

Reviewed by Ojan Vafai.

I was failing to distinguish between 'None' and 0 :(. Fixed and added tests.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.diff_image):

  • Scripts/webkitpy/layout_tests/port/port_testcase.py:

(PortTestCase.test_diff_image.make_proc):
(PortTestCase.test_diff_image):

7:29 PM Changeset in webkit [124400] by commit-queue@webkit.org
  • 16 edits in trunk/Source

[chromium] Use new-style tracing macros with explicit category
https://bugs.webkit.org/show_bug.cgi?id=92928

Patch by James Robinson <jamesr@chromium.org> on 2012-08-01
Reviewed by Adam Barth.

Source/WebCore:

The chromium tracing system supports using a string identifier for trace categories that can be used to filter
events. This switches over to setting an explicit category for all traces and removes the old-style
TRACE_EVENT() macro.

  • bindings/v8/ScheduledAction.cpp:

(WebCore::ScheduledAction::execute):

  • platform/ScrollAnimatorNone.cpp:

(WebCore::ScrollAnimatorNone::scroll):
(WebCore::ScrollAnimatorNone::animationTimerFired):

  • platform/chromium/TraceEvent.h:
  • platform/graphics/chromium/ProgramBinding.cpp:

(WebCore::ProgramBindingBase::init):

  • platform/graphics/skia/ImageSkia.cpp:

(WebCore::drawResampledBitmap):
(WebCore::paintSkBitmap):
(WebCore::Image::drawPattern):

  • platform/graphics/skia/NativeImageSkia.cpp:

(WebCore::NativeImageSkia::resizedBitmap):

  • platform/graphics/skia/PlatformContextSkia.cpp:

(WebCore::PlatformContextSkia::bitmap):

  • platform/image-decoders/bmp/BMPImageDecoder.cpp:

(WebCore::BMPImageDecoder::decode):

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::decode):

  • platform/image-decoders/ico/ICOImageDecoder.cpp:

(WebCore::ICOImageDecoder::decode):

  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(WebCore::JPEGImageDecoder::decode):

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::decode):

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(WebCore::WEBPImageDecoder::decode):

Source/WebKit/chromium:

Set the category explicitly in traces.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::updateAnimations):
(WebKit::WebViewImpl::layout):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

6:44 PM Changeset in webkit [124399] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Crash at WebCore::toRenderSlider
https://bugs.webkit.org/show_bug.cgi?id=92893

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-01
Reviewed by Hajime Morita.

Added a type check before casting a render object to RenderSlider as
an arbitrary element can have for example webkit-appearance: slider-horizontal.

No new tests. Existing test fast/forms/range/slider-appearance-crash.html covers the case.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::paintThemePart):

6:28 PM Changeset in webkit [124398] by fpizlo@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

DFG should distinguish between PutByVal's that clobber the world and ones that don't
https://bugs.webkit.org/show_bug.cgi?id=92923

Reviewed by Mark Hahnenberg.

This is performance-neutral. I also confirmed that it's neutral if we make the
clobbering variant (PutByValSafe) clobber all knowledge of what is an array,
which should feed nicely into work on removing uses of ClassInfo.

  • bytecode/DFGExitProfile.h:
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::getByValLoadElimination):
(JSC::DFG::CSEPhase::checkStructureLoadElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::getByOffsetLoadElimination):
(JSC::DFG::CSEPhase::putByOffsetStoreElimination):
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::byValIsPure):
(JSC::DFG::Graph::clobbersWorld):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

6:26 PM Changeset in webkit [124397] by yosin@chromium.org
  • 9 edits in trunk/Source/WebCore

Cache support for OpenTypeVerticalData
https://bugs.webkit.org/show_bug.cgi?id=81332

Patch by Koji Ishii <Koji Ishii> on 2012-08-01
Reviewed by Tony Chang.

This patch adds FontCache to cache OpenTypeVerticalData class
instances that was introduced in bug 81326.

We need one instance of the class per OpenType font file, and we don't
have a class to hold such instances today.

ENABLE_OPENTYPE_VERTICAL isn't enabled for any platforms yet, so this
patch isn't on any code path. Apple Windows port (bug 48459) is going
to use this code, and probably Chromium (51450, 69282) as well.

"FIXME" comment in SimpleFontData.h will be implemented in 48459.

No new tests are required. No behavior changes.

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::getCachedFontPlatformData): Ignore leading "@" on Windows to disable Windows feature for vertical flow.
(WebCore):
(WebCore::FontCache::getVerticalData): Get cached OpenTypeVerticalData from FontPlatformData, or crete one.
(WebCore::FontCache::purgeInactiveFontData): Purge inactive OpenTypeVerticalData.

  • platform/graphics/FontCache.h:

(WebCore):

  • platform/graphics/SimpleFontData.h:

(SimpleFontData):
(WebCore::SimpleFontData::verticalData): A dummy implementation for purgeInactiveFontData() to work.

  • platform/graphics/opentype/OpenTypeVerticalData.h: Added m_inFontCache for mark & sweep.

(OpenTypeVerticalData):

6:18 PM Changeset in webkit [124396] by jamesr@google.com
  • 17 edits in trunk/Source

[chromium] Move compositor HUD font atlas initialization code out of compositor core
https://bugs.webkit.org/show_bug.cgi?id=92924

Reviewed by Adrienne Walker.

Source/Platform:

The chromium compositor does not have any text rendering capabilities. It generally does not need them, but it
is helpful for some debugging aids to be able to render at least ASCII text to the screen. This provides an API
on WebLayerTreeView by which an embedder can provide an ASCII glyph atlas to use for displaying debug
information.

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):

Source/WebCore:

This moves the HUD font atlas initialization code out of the compositor implementation to cut out Font-related
dependencies. The new flow is that an embedder can pass a font atlas to the CCLayerTreeHost, after which the
atlas is provided the HUD layer (if any) on the next commit. The HUD layer renders text using the font atlas if
it has any if the settings require text.

HUD tested manually, we don't have automated tests for this debugging-only feature.

  • platform/graphics/chromium/CompositorHUDFontAtlas.cpp:

(WebCore):
(WebCore::CompositorHUDFontAtlas::generateFontAtlas):

  • platform/graphics/chromium/CompositorHUDFontAtlas.h:

(CompositorHUDFontAtlas):

  • platform/graphics/chromium/HeadsUpDisplayLayerChromium.cpp:

(WebCore::HeadsUpDisplayLayerChromium::create):
(WebCore::HeadsUpDisplayLayerChromium::HeadsUpDisplayLayerChromium):
(WebCore::HeadsUpDisplayLayerChromium::setFontAtlas):
(WebCore):
(WebCore::HeadsUpDisplayLayerChromium::createCCLayerImpl):
(WebCore::HeadsUpDisplayLayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/HeadsUpDisplayLayerChromium.h:

(HeadsUpDisplayLayerChromium):

  • platform/graphics/chromium/cc/CCFontAtlas.cpp:

(WebCore::CCFontAtlas::CCFontAtlas):

  • platform/graphics/chromium/cc/CCFontAtlas.h:

(WebCore):
(WebCore::CCFontAtlas::create):
(CCFontAtlas):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:

(WebCore::CCHeadsUpDisplayLayerImpl::CCHeadsUpDisplayLayerImpl):
(WebCore::CCHeadsUpDisplayLayerImpl::setFontAtlas):
(WebCore):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:

(WebCore::CCHeadsUpDisplayLayerImpl::create):
(CCHeadsUpDisplayLayerImpl):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::setFontAtlas):
(WebCore):
(WebCore::CCLayerTreeHost::willCommit):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore):
(CCLayerTreeHost):

Source/WebKit/chromium:

This initializes the compositor's font atlas when initialization the compositor if the "Show FPS counter" or
"Show layer tree" settings are true.

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::setFontAtlas):
(WebKit):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

5:49 PM Changeset in webkit [124395] by jianli@chromium.org
  • 2 edits in trunk/Source/Platform

Unreviewed. Fix build break for chromium.

  • Platform.gypi:
5:27 PM Changeset in webkit [124394] by jianli@chromium.org
  • 8 edits
    1 add in trunk/Source

[chromium] Make WebKit API support draggable region change update
https://bugs.webkit.org/show_bug.cgi?id=92813

Reviewed by Adam Barth.

Source/Platform:

Add WebDraggableRegion for chromium's usage.

  • Platform.gypi:

Source/WebKit/chromium:

Introduce WebDraggableRegion and delegate the draggable region update
call to the new method draggableRegionsChanged in WebViewClient.

  • public/WebDocument.h:

(WebDocument):

  • public/WebDraggableRegion.h: Added.

(WebKit):
(WebDraggableRegion):

  • public/WebViewClient.h:

(WebViewClient):
(WebKit::WebViewClient::draggableRegionsChanged):

  • src/ChromeClientImpl.cpp:

(WebKit):
(WebKit::ChromeClientImpl::dashboardRegionsChanged):

  • src/ChromeClientImpl.h:

(ChromeClientImpl):

  • src/WebDocument.cpp:

(WebKit::WebDocument::draggableRegions):
(WebKit):

5:26 PM Changeset in webkit [124393] by beidson@apple.com
  • 6 edits in trunk/Source/WebKit2

Small part of "Out-of-process plug-ins should support asynchronous initialization."
<rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

Reviewed by Anders Carlsson.

Add API-level preferences for:

  • Is asynchronous plug-in initialization enabled.
  • Is an artificial initialization delay (for testing purposes) enabled.
  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetAsynchronousPluginInitializationEnabled):
(WKPreferencesGetAsynchronousPluginInitializationEnabled):
(WKPreferencesSetArtificialPluginInitializationDelayEnabled):
(WKPreferencesGetArtificialPluginInitializationDelayEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::asynchronousPluginInitializationEnabled):
(WebKit::WebPage::artificialPluginInitializationDelayEnabled):
(WebPage):

5:22 PM Changeset in webkit [124392] by piman@chromium.org
  • 10 edits
    1 copy
    1 add in trunk/Source

[chromium] factor out the optimization pass in CCRenderSurfaceFilters::apply
https://bugs.webkit.org/show_bug.cgi?id=92453

Reviewed by James Robinson.

This separates the "optimization" pass in CCRenderSurfaceFilters::apply
to resolve a succession of color matrix filters into a single operation.
This allows testing of that code.
This introduces a new generic color matrix WebFilterOperation, which can
also be used on its own.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebFilterOperation.h:

(WebKit::WebFilterOperation::matrix):
(WebKit::WebFilterOperation::createColorMatrixFilter):
(WebFilterOperation):
(WebKit::WebFilterOperation::WebFilterOperation):

  • chromium/src/WebFilterOperation.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCRenderSurfaceFilters.h.

(WebKit):
(WebKit::WebFilterOperation::equals):
(WebKit::WebFilterOperation::WebFilterOperation):

  • chromium/src/WebFilterOperations.cpp:

(WebKit::WebFilterOperations::hasFilterThatAffectsOpacity):

Source/WebCore:

New test: CCRenderSurfaceFiltersTest.

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:

(WebCore::CCRenderSurfaceFilters::optimize):
(WebCore):
(WebCore::CCRenderSurfaceFilters::apply):

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.h:

(CCRenderSurfaceFilters):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/CCRenderSurfaceFiltersTest.cpp: Added.

(WebKit):
(WebKit::isCombined):
(WebKit::TEST):

5:20 PM Changeset in webkit [124391] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Fix for drawing invalid layers in WebViewBenchmarkSupportImpl
https://bugs.webkit.org/show_bug.cgi?id=92920

Patch by Daniel Murphy <dmurph@chromium.org> on 2012-08-01
Reviewed by Adrienne Walker.

The GraphicsLayers without content needed to be skipped.

  • src/WebViewBenchmarkSupportImpl.cpp:

(WebKit::WebViewBenchmarkSupportImpl::acceleratedPaintUnclipped):

5:16 PM Changeset in webkit [124390] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

Enable codec tests in TestExpectations and update expected mp3 files
https://bugs.webkit.org/show_bug.cgi?id=92886

Patch by Raymond Toy <Raymond Toy> on 2012-08-01
Reviewed by Chris Rogers.

Update expected results caused by ffmpeg now removing pre-roll samples.

  • platform/chromium-linux/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav:
  • platform/chromium-mac/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav:
  • platform/chromium-win/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav:

Enable codec tests.

  • platform/chromium/TestExpectations:
5:14 PM Changeset in webkit [124389] by jianli@chromium.org
  • 45 edits
    2 adds in trunk

Add new CSS property "-webkit-widget-region" to expose dashboard region support for other port
https://bugs.webkit.org/show_bug.cgi?id=90298

Reviewed by Adam Barth.

.:

  • configure.ac: Add ENABLE_WIDGET_REGION define.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.

Source/WebCore:

The css property "-webkit-widget-region" is essentially a synonym of
"-webkit-dashboard-region" that allows us to expose dashboard region
support for other port. This patch also adds a new feature define
ENABLE(WIDGET_REGION) such that "-webkit-dashboard-region" is only
provided under ENABLE(DASHBOARD_SUPPORT) as it is now and
"-webkit-widget-region" is only exposed under ENABLE(WIDGET_REGION).

Change almost all the code pieces guarded by ENABLE(DASHBOARD_SUPPORT)
to make them also guarded by ENABLE(WIDGET_REGION), except those
that are specific to Apple/WebKit.

Currently ENABLE(WIDGET_REGION) has been turned on by default for
Mac/WebKit and chromium ports.

Test: fast/css/widget-region-parser.html

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.
  • DerivedSources.make:
  • GNUmakefile.am: Add ENABLE_WIDGET_REGION define.
  • WebCore.exp.in:
  • css/CSSComputedStyleDeclaration.cpp: Handle CSSPropertyWebkitWidgetRegion.

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp: Parse "-webkit-widget-region".

(WebCore::CSSParser::parseValue):
(WebCore):
(WebCore::CSSParser::parseDashboardRegions):

  • css/CSSProperty.cpp: Handle CSSPropertyWebkitWidgetRegion.

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPrimitiveValue.cpp:

(WebCore):
(WebCore::CSSPrimitiveValue::customCssText):
(WebCore::CSSPrimitiveValue::cloneForCSSOM):

  • css/CSSPropertyNames.in: Add "-webkit-widget-region" property.
  • css/DashboardRegion.h:

(DashboardRegion):

  • css/StyleResolver.cpp: Handle CSSPropertyWebkitWidgetRegion.
  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore):

  • dom/Document.h:

(WebCore):
(Document):

  • page/Chrome.cpp:

(WebCore):

  • page/ChromeClient.h:

(ChromeClient):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):
(WebCore):
(WebCore::FrameView::paintContents):

  • page/FrameView.h:

(FrameView):

  • rendering/RenderInline.cpp:

(WebCore):

  • rendering/RenderInline.h:

(RenderInline):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):
(WebCore::RenderLayer::updateScrollbarsAfterLayout):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::setHasVerticalScrollbar):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::styleWillChange):
(WebCore):

  • rendering/RenderObject.h:

(RenderObject):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):
(WebCore):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleDashboardRegion.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

(WebCore):
(StyleRareNonInheritedData):

Source/WebKit/chromium:

  • features.gypi: Add ENABLE_WIDGET_REGION define.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.

LayoutTests:

Added a new test to test the new CSS property.

  • fast/css/widget-region-parser-expected.txt: Added.
  • fast/css/widget-region-parser.html: Added.
  • platform/efl/Skipped: Skip the new test.
  • platform/gtk/TestExpectations: Skip the new test.
  • platform/qt/Skipped: Skip the new test.
  • platform/win/Skipped: Skip the new test.
  • platform/wincario/Skipped: Skip the new test.
5:10 PM Changeset in webkit [124388] by fpizlo@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Remove apparent merge goof from JavaScriptCore/ChangeLog

4:57 PM Changeset in webkit [124387] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Some of the test results for LayoutTests/accessibility/canvas-accessibilitynodeobject.html do not show up on Windows.
https://bugs.webkit.org/show_bug.cgi?id=92916

Patch by Roger Fong <roger_fong@apple.com> on 2012-08-01
Reviewed by Tim Horton.

Adding a failing test result and filing a bug.

  • platform/win/accessibility/canvas-accessibilitynodeobject-expected.txt: Added.
4:53 PM Changeset in webkit [124386] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

[V8] TypedArray binding performance improvements
https://bugs.webkit.org/show_bug.cgi?id=92557

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-01
Reviewed by Kenneth Russell.

Improve TypedArray bindings performance:

  • create arrays with createUninitialized when possible. Typed Array

construction is about 10% faster.

  • when creating a typed array from a same typed array, memcpy data

from source to target.

In order to detect if argument array is the same type as
implementation array, we pass the javascript wrapper type as a new
type argument to template function constructWebGLArray.

Introduce wrapArrayBufferView which wraps typed array into a v8::Value

No new tests: Performance tests are already handled by
Bindings/typed-array-construct-from-same-type.html and
Bindings/typed-array-construct-from-typed.html

  • bindings/v8/custom/V8ArrayBufferViewCustom.h:

(WebCore):
(WebCore::constructWebGLArray):

  • bindings/v8/custom/V8Float32ArrayCustom.cpp:

(WebCore::V8Float32Array::constructorCallback):

  • bindings/v8/custom/V8Float64ArrayCustom.cpp:

(WebCore::V8Float64Array::constructorCallback):

  • bindings/v8/custom/V8Int16ArrayCustom.cpp:

(WebCore::V8Int16Array::constructorCallback):

  • bindings/v8/custom/V8Int32ArrayCustom.cpp:

(WebCore::V8Int32Array::constructorCallback):

  • bindings/v8/custom/V8Int8ArrayCustom.cpp:

(WebCore::V8Int8Array::constructorCallback):

  • bindings/v8/custom/V8Uint16ArrayCustom.cpp:

(WebCore::V8Uint16Array::constructorCallback):

  • bindings/v8/custom/V8Uint32ArrayCustom.cpp:

(WebCore::V8Uint32Array::constructorCallback):

  • bindings/v8/custom/V8Uint8ArrayCustom.cpp:

(WebCore::V8Uint8Array::constructorCallback):

  • bindings/v8/custom/V8Uint8ClampedArrayCustom.cpp:

(WebCore::V8Uint8ClampedArray::constructorCallback):

4:48 PM Changeset in webkit [124385] by piman@chromium.org
  • 5 edits in trunk/Source

[chromium] Fix lost context handling on hud layer
https://bugs.webkit.org/show_bug.cgi?id=92915

Reviewed by Adrienne Walker.

On lost context we need to release CCScopedTextures, otherwise later on
we will try to re-allocate it using a stale CCResourceProvider.

Test CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext
extended.

Source/WebCore:

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:

(WebCore::CCHeadsUpDisplayLayerImpl::didLoseContext):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
4:43 PM Changeset in webkit [124384] by thakis@chromium.org
  • 2 edits
    1 delete in trunk/Source/WebKit/chromium

[chromium/mac] Delete WebImageCG.cpp
https://bugs.webkit.org/show_bug.cgi?id=92910

Reviewed by James Robinson.

It's been unused since the switch to skia.
Also remove now-unneeded *CG.cpp exclusion rule.

  • WebKit.gyp:
  • src/WebImageCG.cpp: Removed.
4:27 PM Changeset in webkit [124383] by dgrogan@chromium.org
  • 3 edits
    36 adds in trunk/LayoutTests

IndexedDB: integer version layout tests
https://bugs.webkit.org/show_bug.cgi?id=92560

Reviewed by Nate Chapin.

Most of the integer version layout tests are here, with failures in
the expected files. This will allow us to incrementally implement
upgradeneeded and integer versions and just make the big patch in bug
89505 smaller.

There are two added skips to TestExpectations, one test exposes a bug
in the current implementation, causing an assert to fail. The other
times out in DRT so we will run it as a content_browsertest for the
time being.

  • platform/chromium/TestExpectations:
  • storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt: Added.
  • storage/indexeddb/intversion-abort-in-initial-upgradeneeded.html: Added.
  • storage/indexeddb/intversion-and-setversion-expected.txt: Added.
  • storage/indexeddb/intversion-and-setversion.html: Added.
  • storage/indexeddb/intversion-blocked-expected.txt: Added.
  • storage/indexeddb/intversion-blocked.html: Added.
  • storage/indexeddb/intversion-close-between-events-expected.txt: Added.
  • storage/indexeddb/intversion-close-between-events.html: Added.
  • storage/indexeddb/intversion-close-in-oncomplete-expected.txt: Added.
  • storage/indexeddb/intversion-close-in-oncomplete.html: Added.
  • storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt: Added.
  • storage/indexeddb/intversion-close-in-upgradeneeded.html: Added.
  • storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt: Added.
  • storage/indexeddb/intversion-delete-in-upgradeneeded.html: Added.
  • storage/indexeddb/intversion-gated-on-delete-expected.txt: Added.
  • storage/indexeddb/intversion-gated-on-delete.html: Added.
  • storage/indexeddb/intversion-invalid-setversion-has-no-side-effects-expected.txt: Added.
  • storage/indexeddb/intversion-invalid-setversion-has-no-side-effects.html: Added.
  • storage/indexeddb/intversion-long-queue-expected.txt: Added.
  • storage/indexeddb/intversion-long-queue.html: Added.
  • storage/indexeddb/intversion-omit-parameter-expected.txt: Added.
  • storage/indexeddb/intversion-omit-parameter.html: Added.
  • storage/indexeddb/intversion-open-with-version-expected.txt: Added.
  • storage/indexeddb/intversion-open-with-version.html: Added.

and their respective js files...

  • storage/indexeddb/resources/shared.js:

(unexpectedVersionChangeCallback):
(setDBNameFromPath):
(preamble):

4:15 PM Changeset in webkit [124382] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] IndexedDB: API stubs to simplify WebIDBCursor API
https://bugs.webkit.org/show_bug.cgi?id=92414

Reviewed by Adam Barth.

Prep work to unblock Chromium changes so that http://webkit.org/b/92278 can land.
Adds no-op methods which will later be implemented; during the landing sequence,
Chromium will call both the new methods and the old ones. The end goal is that
the success callbacks for cursors will include the new key/primaryKey/value rather
than requiring the callee to call back into the cursor backend to fetch them.

  • public/WebIDBCallbacks.h:

(WebIDBCallbacks):
(WebKit::WebIDBCallbacks::onSuccess):

4:12 PM Changeset in webkit [124381] by mitz@apple.com
  • 1 edit in trunk/WebKitLibraries/libWebKitSystemInterfaceMountainLion.a

Set the svn:mime-type property on libWebKitSystemInterfaceMountainLion.a to indicate that it is a binary.

4:05 PM Changeset in webkit [124380] by fmalita@chromium.org
  • 435 edits in trunk/LayoutTests

Use testRunner instead of layoutTestController in SVG tests
https://bugs.webkit.org/show_bug.cgi?id=92898

Reviewed by Dirk Schulze.

  • svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg:
  • svg/animations/animate-beginElementAt.svg:
  • svg/animations/animate-calcMode-spline-crash-bad-array-length.xhtml:
  • svg/animations/animate-linear-discrete-additive-b.svg:
  • svg/animations/animate-linear-discrete-additive-c.svg:
  • svg/animations/animate-linear-discrete-additive.svg:
  • svg/animations/animate-list-crash.svg:
  • svg/animations/animate-setcurrenttime.html:
  • svg/animations/animate-update-crash.xhtml:
  • svg/animations/animateColor-additive-2a.svg:
  • svg/animations/animateColor-additive-2b.svg:
  • svg/animations/animateColor-additive-2c.svg:
  • svg/animations/animateColor-additive-2d.svg:
  • svg/animations/animateMotion-additive-1.svg:
  • svg/animations/animateMotion-additive-2a.svg:
  • svg/animations/animateMotion-additive-2b.svg:
  • svg/animations/animateMotion-additive-2c.svg:
  • svg/animations/animateMotion-additive-2d.svg:
  • svg/animations/animateTransform-accumulation.svg:
  • svg/animations/animateTransform-by-scale-1.svg:
  • svg/animations/animateTransform-by-scale.svg:
  • svg/animations/animateTransform-from-by-from-to-comparision-expected.svg:
  • svg/animations/animateTransform-from-by-from-to-comparision.svg:
  • svg/animations/animateTransform-from-by-scale-additive-sum.svg:
  • svg/animations/animateTransform-from-by-scale.svg:
  • svg/animations/animateTransform-rotate-around-point.svg:
  • svg/animations/animateTransform-skewX.svg:
  • svg/animations/animateTransform-skewY.svg:
  • svg/animations/animateTransform-translate.svg:
  • svg/animations/dynamic-modify-attributename-crash.svg:
  • svg/animations/keypoints-mismatch.svg:
  • svg/animations/length-list-animation.svg:
  • svg/animations/list-wrapper-assertion.svg:
  • svg/animations/mozilla/animateMotion-by-1.svg:
  • svg/animations/mozilla/animateMotion-from-to-1-expected.svg:
  • svg/animations/mozilla/animateMotion-from-to-1.svg:
  • svg/animations/mozilla/animateMotion-mpath-pathLength-1.svg:
  • svg/animations/mozilla/animateMotion-mpath-targetChange-1.svg:
  • svg/animations/mozilla/animateMotion-to-overridden-1.svg:
  • svg/animations/multiple-animateTransform-additive-sum.svg:
  • svg/animations/multiple-begin-animation-discrete.svg:
  • svg/animations/multiple-begin-animation.svg:
  • svg/animations/path-animation.svg:
  • svg/animations/repeatDur-zero.xhtml:
  • svg/animations/repeating-path-animation.svg:
  • svg/animations/resources/SVGAnimationTestCase.js:

(runAnimationTest):

  • svg/animations/smil-element-not-removed-crash.html:
  • svg/animations/smil-element-target-crash-main.html:
  • svg/animations/smil-leak-dynamically-added-element-instances.svg:
  • svg/animations/smil-leak-element-instances-noBaseValRef.svg:
  • svg/animations/smil-leak-element-instances.svg:
  • svg/animations/smil-leak-elements.svg:
  • svg/animations/svg-two-animate-elements-crash.svg:
  • svg/animations/svglength-animation-retarget-crash.html:
  • svg/animations/svglength-element-removed-crash.svg:
  • svg/as-background-image/animated-svg-as-background.html:
  • svg/as-background-image/svg-background-crash-on-refresh.html:
  • svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size.html:
  • svg/as-image/animated-svg-as-image-same-image.html:
  • svg/as-image/animated-svg-as-image.html:
  • svg/as-image/animated-svg-repaints-completely-in-hidpi.html:
  • svg/as-image/drag-svg-as-image.html:
  • svg/as-image/image-respects-deviceScaleFactor.html:
  • svg/as-image/image-respects-pageScaleFactor-change.html:
  • svg/as-image/svg-image-leak-cached-data.html:
  • svg/as-image/svg-image-leak-loader.html:
  • svg/as-image/svg-nested.html:
  • svg/as-object/embedded-svg-immediate-offsetWidth-query.html:
  • svg/as-object/embedded-svg-size-changes-no-layout-triggers.html:
  • svg/as-object/embedded-svg-size-changes.html:
  • svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-1.html:
  • svg/as-object/nested-embedded-svg-size-changes-no-layout-triggers-2.html:
  • svg/as-object/nested-embedded-svg-size-changes.html:
  • svg/as-object/resources/embedded-svg-size-changes-no-layout-triggers.svg:
  • svg/as-object/resources/nested-embedded-svg-size-changes-target-no-layout-triggers-1.html:
  • svg/carto.net/frameless-svg-parse-error.html:
  • svg/carto.net/window.svg:
  • svg/css/crash-css-generated-content.xhtml:
  • svg/css/cursor-image-replace.svg:
  • svg/css/cursor-replace.svg:
  • svg/css/getComputedStyle-basic.xhtml:
  • svg/css/invalid-color-crash.svg:
  • svg/css/multiple-cursors-crash.html:
  • svg/css/script-tests/svg-attribute-length-parsing.js:
  • svg/css/script-tests/svg-attribute-parser-mode.js:
  • svg/css/style-change-crash.html:
  • svg/css/svg-ellipse-render-crash.html:
  • svg/custom/acid3-test-77.html:
  • svg/custom/anchor-on-use.svg:
  • svg/custom/animate-disallowed-mask-element.svg:
  • svg/custom/animate-disallowed-use-element.svg:
  • svg/custom/animate-path-discrete.svg:
  • svg/custom/animate-path-morphing.svg:
  • svg/custom/animate-target-id-changed.svg:
  • svg/custom/animate-target-removed-from-document.svg:
  • svg/custom/animate-use-crash.xhtml:
  • svg/custom/assert-empty-layout-attributes.svg:
  • svg/custom/bbox-of-g-in-symbol.svg:
  • svg/custom/boundingBox.html:
  • svg/custom/bug78700.svg:
  • svg/custom/bug78807.svg:
  • svg/custom/bug78838.html:
  • svg/custom/bug79798.html:
  • svg/custom/bug86119.html:
  • svg/custom/bug86392.html:
  • svg/custom/bug86781.html:
  • svg/custom/click-internal-anchor-with-use-crash.xhtml:
  • svg/custom/crash-inline-container-client.html:
  • svg/custom/crash-text-in-textpath.svg:
  • svg/custom/crash-textPath-attributes.html:
  • svg/custom/delete-modified-text-in-defs-crash.svg:
  • svg/custom/delete-text-crash.html:
  • svg/custom/delete-text-innerText-crash.html:
  • svg/custom/detached-outermost-svg-crash.html:
  • svg/custom/disallowed-text-content-rendering.svg:
  • svg/custom/display-table-caption-foreignObject.svg:
  • svg/custom/display-table-caption-inherit-foreignObject.xhtml:
  • svg/custom/display-table-caption-inherit-text.xhtml:
  • svg/custom/display-table-caption-text.svg:
  • svg/custom/element-instance-held-by-js-crash.svg:
  • svg/custom/embedded-svg-allowed-in-dashboard.xml:
  • svg/custom/empty-className-baseVal-crash.html:
  • svg/custom/filter-on-svgimage.svg:
  • svg/custom/font-face-move.svg:
  • svg/custom/font-face-name-without-name-attr.svg:
  • svg/custom/font-face-not-in-document.svg:
  • svg/custom/font-platformDestroy-crash.svg:
  • svg/custom/foreignObject-crash-on-hover.xml:
  • svg/custom/foreignobject-crash-with-absolute-positioned-children.svg:
  • svg/custom/frame-getSVGDocument.html:
  • svg/custom/g-outside-svg.html:
  • svg/custom/get-text-element-transform-crash.html:
  • svg/custom/getBBox-empty-container.html:
  • svg/custom/getBBox-js.svg:
  • svg/custom/getBBox-path.svg:
  • svg/custom/getBBox-perpendicular-path.svg:
  • svg/custom/getscreenctm-in-mixed-content2.xhtml:
  • svg/custom/gradient-attr-update.svg:
  • svg/custom/gradient-stop-display-none-crash.svg:
  • svg/custom/hit-test-path-stroke.svg:
  • svg/custom/hit-test-path.svg:
  • svg/custom/hit-test-unclosed-subpaths.svg:
  • svg/custom/hit-test-with-br.xhtml:
  • svg/custom/image-base-uri.svg:
  • svg/custom/image-clipped-hit.svg:
  • svg/custom/image-rescale-scroll.html:
  • svg/custom/image-with-prefix-in-webarchive-expected.webarchive:
  • svg/custom/image-with-prefix-in-webarchive.svg:
  • svg/custom/insertItemBefore-from-non-list-origin.svg:
  • svg/custom/intersection-list-clipping.svg:
  • svg/custom/intersection-list-crash.svg:
  • svg/custom/intersection-list-nested-svg.svg:
  • svg/custom/intersection-list-null.svg:
  • svg/custom/invalid-gradient-with-xlink.svg:
  • svg/custom/invalid-paint-shape-mask.svg:
  • svg/custom/js-late-clipPath-and-object-creation.svg:
  • svg/custom/js-late-clipPath-creation.svg:
  • svg/custom/js-late-gradient-and-object-creation.svg:
  • svg/custom/js-late-gradient-creation.svg:
  • svg/custom/js-late-marker-and-object-creation.svg:
  • svg/custom/js-late-marker-creation.svg:
  • svg/custom/js-late-mask-and-object-creation.svg:
  • svg/custom/js-late-mask-creation.svg:
  • svg/custom/js-late-pattern-and-object-creation.svg:
  • svg/custom/js-late-pattern-creation.svg:
  • svg/custom/js-svg-constructors.svg:
  • svg/custom/js-update-container2.svg:
  • svg/custom/js-update-image-and-display.svg:
  • svg/custom/js-update-image-and-display2.svg:
  • svg/custom/js-update-image-and-display3.svg:
  • svg/custom/layout-loop.svg:
  • svg/custom/linking-a-03-b-all.svg:
  • svg/custom/linking-a-03-b-preserveAspectRatio.svg:
  • svg/custom/linking-a-03-b-transform.svg:
  • svg/custom/linking-a-03-b-viewBox-transform.svg:
  • svg/custom/linking-a-03-b-viewBox.svg:
  • svg/custom/linking-a-03-b-viewTarget.svg:
  • svg/custom/linking-a-03-b-zoomAndPan.svg:
  • svg/custom/linking-uri-01-b.svg:
  • svg/custom/loadevents-capturing.svg:
  • svg/custom/loadevents-externalresourcesrequired-displaynone.svg:
  • svg/custom/loadevents-externalresourcesrequired.svg:
  • svg/custom/loadevents-normal-displaynone.svg:
  • svg/custom/loadevents-normal.svg:
  • svg/custom/manually-parsed-embedded-svg-allowed-in-dashboard.html:
  • svg/custom/manually-parsed-svg-allowed-in-dashboard.html:
  • svg/custom/marker-getPropertyValue.svg:
  • svg/custom/mask-changes.svg:
  • svg/custom/mask-invalidation.svg:
  • svg/custom/mouse-move-on-svg-container-standalone.svg:
  • svg/custom/mouse-move-on-svg-container.xhtml:
  • svg/custom/mouse-move-on-svg-root-standalone.svg:
  • svg/custom/mouse-move-on-svg-root.xhtml:
  • svg/custom/multiple-title-elements.svg:
  • svg/custom/new-image-is-html-element.svg:
  • svg/custom/path-getPresentationAttribute-crash.html:
  • svg/custom/path-getTotalLength-on-big-segment-crash.svg:
  • svg/custom/path-getTotalLength.svg:
  • svg/custom/pending-resource-after-removal.xhtml:
  • svg/custom/pending-resource-leak-2.svg:
  • svg/custom/pending-resource-leak-3.svg:
  • svg/custom/pending-resource-leak.svg:
  • svg/custom/pointer-events-image-css-transform.svg:
  • svg/custom/pointer-events-image.svg:
  • svg/custom/pointer-events-invalid-fill.svg:
  • svg/custom/pointer-events-on-rounded-rect.xhtml:
  • svg/custom/pointer-events-on-svg-with-pointer.xhtml:
  • svg/custom/pointer-events-on-svg-without-pointer.xhtml:
  • svg/custom/pointer-events-text-css-transform.svg:
  • svg/custom/pointer-events-text.svg:
  • svg/custom/pointer-events-with-linecaps-and-miterlimits.xhtml:
  • svg/custom/poly-points-attribute-changes.svg:
  • svg/custom/polyline-hittest.svg:
  • svg/custom/polyline-points-crash.html:
  • svg/custom/prevent-default.svg:
  • svg/custom/recursive-use.svg:
  • svg/custom/recursive-use2.svg:
  • svg/custom/repaint-moving-svg-and-div.xhtml:
  • svg/custom/resource-client-removal.svg:
  • svg/custom/resources/focus-event-handling-keyboard.js:
  • svg/custom/resources/focus-event-handling.js:
  • svg/custom/resources/link-target.html:
  • svg/custom/resources/linkingCircle-f.svg:
  • svg/custom/resources/svgsvgelement-ctm.js:
  • svg/custom/resources/use-instanceRoot-event-bubbling.js:

(repaintTest):

  • svg/custom/resources/use-instanceRoot-event-listeners.js:

(repaintTest):

  • svg/custom/scroll-hit-test.xhtml:
  • svg/custom/scroll-to-anchor-in-symbol.svg:
  • svg/custom/scroll-to-svg-element-assertion.html:
  • svg/custom/scrolling-embedded-svg-file-image-repaint-problem.html:
  • svg/custom/stop-crash.svg:
  • svg/custom/stroke-width-click.svg:
  • svg/custom/svg-allowed-in-dashboard-object.html:
  • svg/custom/svg-features.html:
  • svg/custom/svg-fonts-in-html-linebreaks.html:
  • svg/custom/svg-fonts-no-latin-glyph.html:
  • svg/custom/svg-getelementid.xhtml:
  • svg/custom/svg-parse-overflow-1.html:
  • svg/custom/svg-parse-overflow-2.html:
  • svg/custom/svg-parse-overflow-3.html:
  • svg/custom/svg-parse-overflow-4.html:
  • svg/custom/svg-parse-overflow-5.html:
  • svg/custom/svg-use-style-float-crash.svg:
  • svg/custom/svg-width-intrinsic-crash.html:
  • svg/custom/symbol-viewport-element-crash.svg:
  • svg/custom/text-node-in-text-invalidated.svg:
  • svg/custom/text-tref-03-b-dynamic.svg:
  • svg/custom/text-tref-03-b-dynamic2.svg:
  • svg/custom/textPath-assert.svg:
  • svg/custom/textPath-set-id.svg:
  • svg/custom/tiling-regular-hexagonal-crash.svg:
  • svg/custom/tref-clone-crash.html:
  • svg/custom/tref-shadowdom.html:
  • svg/custom/use-animation-in-fill.html:
  • svg/custom/use-crash-in-non-wellformed-document.svg:
  • svg/custom/use-crash-pending-resource.svg:
  • svg/custom/use-crash-using-children-before-destroy.svg:
  • svg/custom/use-crash-when-href-change.svg:
  • svg/custom/use-detach.svg:
  • svg/custom/use-display-none.svg:
  • svg/custom/use-elementInstance-event-target.svg:
  • svg/custom/use-elementInstance-methods.svg:
  • svg/custom/use-event-handler-on-referenced-element.svg:
  • svg/custom/use-event-handler-on-use-element.svg:
  • svg/custom/use-external-crash.svg:
  • svg/custom/use-instanceRoot-as-event-target.xhtml:
  • svg/custom/use-instanceRoot-event-listener-liveness.xhtml:
  • svg/custom/use-instanceRoot-with-use-removed.svg:
  • svg/custom/use-invalid-font-face.svg:
  • svg/custom/use-invalid-html.xhtml:
  • svg/custom/use-invalid-pattern.svg:
  • svg/custom/use-invalid-style.svg:
  • svg/custom/use-move-to-offset.svg:
  • svg/custom/use-multiple-on-nested-disallowed-font.html:
  • svg/custom/use-mutation-event-crash.svg:
  • svg/custom/use-nested-children.svg:
  • svg/custom/use-nested-disallowed-target.svg:
  • svg/custom/use-nested-missing-target-added.svg:
  • svg/custom/use-nested-missing-target-removed.svg:
  • svg/custom/use-nested-missing-target.svg:
  • svg/custom/use-nested-notarget.svg:
  • svg/custom/use-non-existing-symbol-crash.svg:
  • svg/custom/use-on-use-with-child-and-empty-target.svg:
  • svg/custom/use-on-use-with-child.svg:
  • svg/custom/use-referencing-style-crash.svg:
  • svg/custom/use-shadow-root-parent-removal.svg:
  • svg/custom/use-tref-crash.svg:
  • svg/custom/webkit-transform-crash.html:
  • svg/custom/xlink-prefix-in-attributes.html:
  • svg/custom/xlink-to-invalid-gradient.svg:
  • svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml:
  • svg/dom/SVGPolygonElement-baseVal-list-removal-crash.html:
  • svg/dom/SVGScriptElement/script-async-attr.svg:
  • svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg:
  • svg/dom/SVGScriptElement/script-clone-rerun-self.svg:
  • svg/dom/SVGScriptElement/script-clone-rerun.svg:
  • svg/dom/SVGScriptElement/script-load-and-error-events.svg:
  • svg/dom/SVGScriptElement/script-onerror-bubbling.svg:
  • svg/dom/SVGScriptElement/script-reexecution.svg:
  • svg/dom/SVGScriptElement/script-set-href.svg:
  • svg/dom/SVGStyledElement-pendingResource-crash.html:
  • svg/dom/SVGTransformList-empty-list-consolidation.html:
  • svg/dom/animated-tearoff-equality.xhtml:
  • svg/dom/animated-tearoff-lifespan.xhtml:
  • svg/dom/baseVal-animVal-crash.html:
  • svg/dom/baseVal-animVal-list-crash.html:
  • svg/dom/frame-related-api-during-load.html:
  • svg/dom/parent-view-layout-crash.html:
  • svg/dom/path-marker-removed-crash.svg:
  • svg/dom/resources/viewspec-parser.js:

(continueFuzzing.else.script.onload):
(continueFuzzing):

  • svg/dom/script-tests/SVGViewSpec.js:

(completeTest.script.onload):
(completeTest):

  • svg/dom/smil-methods.svg:
  • svg/dom/stylesheet-candidate-node-crash-main.html:
  • svg/dom/svg-element-attribute-js-null.xhtml:
  • svg/dom/symbol-embeddedAnimation.svg:
  • svg/dom/use-style-recalc-script-execute-crash.html:
  • svg/dom/use-transform.svg:
  • svg/dom/viewport-container-crash.svg:
  • svg/dom/vkern-element-crash.html:
  • svg/dynamic-updates/resources/SVGTestCase.js:

(createSVGTestCase):
(embedSVGTestCase):
(completeTest.script.onload):
(completeTest):

  • svg/dynamic-updates/resources/linkTarget.svg:
  • svg/filters/feBlend-invalid-mode.xhtml:
  • svg/filters/feColorMatrix-invalid-value.svg:
  • svg/filters/feComponentTransfer-style-crash.xhtml:
  • svg/filters/feDisplacementMap-crash-test.xhtml:
  • svg/filters/feImage-animated-transform-on-target-rect.svg:
  • svg/filters/feImage-target-reappend-to-document.svg:
  • svg/filters/feImage-zero-size-crash.svg:
  • svg/filters/feMorphology-invalid-radius.svg:
  • svg/filters/feMorphology-zero-radius.svg:
  • svg/filters/filter-after-transform-crash.svg:
  • svg/filters/reparent-animated-filter-target.html:
  • svg/filters/svg-transform-blur-crash.svg:
  • svg/foreignObject/absolute-position-foreign-object-child-crash.html:
  • svg/foreignObject/fO-fixed-position-crash.html:
  • svg/hittest/foreign-object-background.svg:
  • svg/hittest/svg-ellipse-non-scale-stroke.xhtml:
  • svg/hittest/svg-ellipse-rect-stroke.xhtml:
  • svg/hittest/svg-ellipse.xhtml:
  • svg/hittest/svg-inside-display-table.xhtml:
  • svg/hittest/svg-inside-table.xhtml:
  • svg/hittest/svg-padding.xhtml:
  • svg/hittest/svg-shapes-non-scale-stroke.html:
  • svg/hittest/svg-small-path.xhtml:
  • svg/hittest/svg-small-viewbox.xhtml:
  • svg/hittest/zero-length-butt-cap-path.xhtml:
  • svg/hittest/zero-length-round-cap-path.xhtml:
  • svg/hittest/zero-length-square-cap-path.xhtml:
  • svg/hixie/dynamic/001.xml:
  • svg/hixie/links/003.xml:
  • svg/hixie/perf/001.xml:
  • svg/hixie/perf/002.xml:
  • svg/hixie/perf/003.xml:
  • svg/hixie/perf/004.xml:
  • svg/hixie/perf/005.xml:
  • svg/hixie/perf/006.xml:
  • svg/hixie/perf/007.xml:
  • svg/in-html/script-external.html:
  • svg/in-html/script-nested.html:
  • svg/in-html/script-write.html:
  • svg/in-html/script.html:
  • svg/in-html/svg-assert-failure-percentage.html:
  • svg/path-arc-invalid.html:
  • svg/repaint/filter-repaint.svg:
  • svg/repaint/image-href-change.svg:
  • svg/repaint/image-with-clip-path.svg:
  • svg/repaint/repainting-after-animation-element-removal.svg:
  • svg/text/add-tspan-position-bug.html:
  • svg/text/caret-in-svg-text.xhtml:
  • svg/text/clear-floats-crash.svg:
  • svg/text/font-size-null-assertion.svg:
  • svg/text/font-size-too-large-crash.svg:
  • svg/text/foreignObject-text-clipping-bug.xml:
  • svg/text/glyphref-renderer-create-crash.html:
  • svg/text/highcharts-assertion.html:
  • svg/text/inline-text-destroy-attributes-crash.xhtml:
  • svg/text/modify-tspan-position-bug.html:
  • svg/text/resources/SelectionTestCase.js:
  • svg/text/select-text-svgfont.html:
  • svg/text/selection-doubleclick.svg:
  • svg/text/selection-tripleclick.svg:
  • svg/text/svg-rtl-text-crash.html:
  • svg/text/svg-zoom-large-value.xhtml:
  • svg/text/text-align-01-b.svg:
  • svg/text/text-align-02-b.svg:
  • svg/text/text-align-03-b.svg:
  • svg/text/text-align-04-b.svg:
  • svg/text/text-align-05-b.svg:
  • svg/text/text-align-06-b.svg:
  • svg/text/text-altglyph-01-b.svg:
  • svg/text/text-assert.svg:
  • svg/text/text-block-child-crash.xhtml:
  • svg/text/text-deco-01-b.svg:
  • svg/text/text-font-anonymous-parent.xhtml:
  • svg/text/text-font-invalid.html:
  • svg/text/text-font-uri-invalid.svg:
  • svg/text/text-fonts-01-t.svg:
  • svg/text/text-fonts-02-t.svg:
  • svg/text/text-intro-05-t.svg:
  • svg/text/text-path-01-b.svg:
  • svg/text/text-positioning-remove-child-crash.svg:
  • svg/text/text-property-with-display-none.html:
  • svg/text/text-spacing-01-b.svg:
  • svg/text/text-style-invalid.svg:
  • svg/text/text-style-recalc-crash.html:
  • svg/text/text-text-01-b.svg:
  • svg/text/text-text-03-b.svg:
  • svg/text/text-text-04-t.svg:
  • svg/text/text-text-05-t.svg:
  • svg/text/text-text-06-t.svg:
  • svg/text/text-text-07-t.svg:
  • svg/text/text-text-08-b.svg:
  • svg/text/text-tref-01-b.svg:
  • svg/text/text-tselect-01-b.svg:
  • svg/text/text-tselect-02-f.svg:
  • svg/text/text-tspan-01-b.svg:
  • svg/text/text-ws-01-t.svg:
  • svg/text/text-ws-02-t.svg:
  • svg/text/textPathBoundsBug.svg:
  • svg/text/textpath-reference-crash.html:
  • svg/text/tref-event-listener-crash.svg:
  • svg/text/tspan-getComputedTextLength.svg:
  • svg/transforms/percent-transform-values.xhtml:
  • svg/transforms/transform-origin-presentation-attribute.xhtml:
  • svg/webarchive/svg-cursor-subresources-expected.webarchive:
  • svg/webarchive/svg-cursor-subresources.svg:
  • svg/webarchive/svg-feimage-subresources-expected.webarchive:
  • svg/webarchive/svg-feimage-subresources.svg:
  • svg/webarchive/svg-script-subresouces-expected.webarchive:
  • svg/webarchive/svg-script-subresouces.svg:
  • svg/zoom/page/zoom-getBoundingClientRect.xhtml:
  • svg/zoom/page/zoom-zoom-coords.xhtml:
  • svg/zoom/resources/testPageZoom.js:

(repaintTest):
(completeDynamicTest.script.onload):
(completeDynamicTest):

  • svg/zoom/resources/testTextZoom.js:

(repaintTest):

3:56 PM Changeset in webkit [124379] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Read tag names and attributes from the saved tokens in HTMLElementStack
https://bugs.webkit.org/show_bug.cgi?id=92830

Reviewed by Adam Barth.

This is a follow-up patch for r123577.
Replaced top()->hasTagName(x) with topStackItem()->hasTagName(x).
Also replaced item->element()->hasTagName(x) with item->hasTagName(x).

No new tests, covered by existing tests.

  • html/parser/HTMLElementStack.cpp:

(WebCore::HTMLElementStack::pop):
(WebCore::HTMLElementStack::popUntil):
(WebCore::HTMLElementStack::pushHTMLHtmlElement):
(WebCore::HTMLElementStack::pushHTMLHeadElement):
(WebCore::HTMLElementStack::pushHTMLBodyElement):
(WebCore::HTMLElementStack::push):
(WebCore::HTMLElementStack::insertAbove):
(WebCore::HTMLElementStack::popCommon):

3:53 PM Changeset in webkit [124378] by dpranke@chromium.org
  • 5 edits in trunk/Tools

test-webkitpy: clean up handling of tests to skip
https://bugs.webkit.org/show_bug.cgi?id=92909

Reviewed by Ryosuke Niwa.

This change moves the handling of tests to skip into main.py
where it is at least slightly more findable and generic.

Also fix a couple of lint nits.

  • Scripts/webkitpy/test/finder.py:

(Finder.init):
(Finder.skip):
(Finder._default_names):

  • Scripts/webkitpy/test/main.py:

(main):
(Tester.skip):

  • Scripts/webkitpy/test/main_unittest.py:

(TesterTest.test_no_tests_found):

  • Scripts/webkitpy/test/runner_unittest.py:
3:52 PM Changeset in webkit [124377] by dpranke@chromium.org
  • 5 edits in trunk/Tools

test-webkitpy: remove --skip-integrationtests flag
https://bugs.webkit.org/show_bug.cgi?id=92907

Reviewed by Ryosuke Niwa.

This flag is no longer used since the tests complete quickly.

Also clean up the unused skip_if_parallel arg in finder, and
make a couple of lint fixes.

  • Scripts/webkitpy/test/finder.py:

(Finder.find_names):
(Finder._default_names):

  • Scripts/webkitpy/test/finder_unittest.py:

(FinderTest.check_names):
(FinderTest.test_default_names):

  • Scripts/webkitpy/test/main.py:

(Tester._parse_args):
(Tester.run):

  • Scripts/webkitpy/test/main_unittest.py:

(TesterTest.test_no_tests_found):

3:27 PM Changeset in webkit [124376] by piman@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] remove unused fields from LayerRendererCapabilities
https://bugs.webkit.org/show_bug.cgi?id=92906

Reviewed by James Robinson.

No new tests (just removing dead code).

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::initialize):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
(LayerRendererCapabilities):

3:26 PM Changeset in webkit [124375] by jamesr@google.com
  • 5 edits
    2 adds in trunk/Source/WebCore

[chromium] Move compositor HUD font atlas generation out of compositor core
https://bugs.webkit.org/show_bug.cgi?id=92901

Reviewed by Adrienne Walker.

This moves the font atlas generation out of CCFontAtlas into a separate helper class and ports the CCFontAtlas
text drawing code over to use skia directly.

  • WebCore.gypi:
  • platform/graphics/chromium/CompositorHUDFontAtlas.cpp: Added.

(WebCore):
(WebCore::wrapPositionIfNeeded):
(WebCore::CompositorHUDFontAtlas::generateFontAtlas):

  • platform/graphics/chromium/CompositorHUDFontAtlas.h: Added.

(WebCore):
(CompositorHUDFontAtlas):

  • platform/graphics/chromium/cc/CCFontAtlas.cpp:

(WebCore::CCFontAtlas::CCFontAtlas):
(WebCore::CCFontAtlas::~CCFontAtlas):
(WebCore::CCFontAtlas::initialize):
(WebCore::CCFontAtlas::drawText):
(WebCore::CCFontAtlas::drawOneLineOfTextInternal):
(WebCore::CCFontAtlas::drawDebugAtlas):

  • platform/graphics/chromium/cc/CCFontAtlas.h:

(WebCore):
(CCFontAtlas):

  • platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
3:21 PM Changeset in webkit [124374] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Race condition between first layout and viewport attributes initialization
https://bugs.webkit.org/show_bug.cgi?id=92902

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-08-01
Reviewed by Noam Rosenthal.

Initializing m_rawAttributes from QtViewportHandler to avoid calculation of random
scale factors on the first layout is triggered.

  • UIProcess/qt/QtViewportHandler.cpp:

(WebKit::QtViewportHandler::QtViewportHandler):

3:16 PM Changeset in webkit [124373] by rniwa@webkit.org
  • 5 edits
    2 moves in trunk/Tools

Generalize SheriffIRCBot to prepare for PerfBot
https://bugs.webkit.org/show_bug.cgi?id=92912

Reviewed by Adam Barth.

Renamed SheriffIRCBot to IRCBot and generalized to support non-sheriffbot IRC bot in the future.
This will be useful when I add an experimental perf EWS IRC bot.

  • Scripts/webkitpy/tool/bot/irc_command.py:

(Whois.execute):

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:

(IRCCommandTest):

  • Scripts/webkitpy/tool/bot/ircbot.py: Moved from Tools/Scripts/webkitpy/tool/bot/sheriffircbot.py.

(Eliza): Moved from irc_command.
(Eliza.init):
(Eliza.execute):
(IRCBot):
(IRCBot.init):
(IRCBot.irc_delegate):
(IRCBot._parse_command_and_args):
(IRCBot.process_message):

  • Scripts/webkitpy/tool/bot/ircbot_unittest.py: Moved from Tools/Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py.

(run):
(IRCBotTest):
(IRCBotTest.test_eliza): Moved from IRCCommandTest.
(IRCBotTest.test_parse_command_and_args):
(IRCBotTest.test_exception_during_command):

  • Scripts/webkitpy/tool/bot/sheriffircbot.py: Removed.
  • Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: Removed.
  • Scripts/webkitpy/tool/commands/sheriffbot.py:

(SheriffBot.begin_work_queue):

  • Scripts/webkitpy/webkitpy.pyproj:
3:12 PM Changeset in webkit [124372] by peter@chromium.org
  • 12 edits
    2 adds in trunk

[Text Autosizing] Provide an API for influencing the font scale factor
https://bugs.webkit.org/show_bug.cgi?id=92882

Reviewed by Adam Barth.

Source/WebCore:

Add the font scale factor to settings, and provide an API in
window.internal.settings to change it from layout tests.

The font scale factor applied to Text Autosizing influences the sizing
of text, and will influence the scaling of boosted blocks once the
implementation progresses. For Android, it will be set to the font size
chosen in the user's system-wide preferences.

Test: fast/text-autosizing/font-scale-factor.html

  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore):
(WebCore::Settings::setTextAutosizingFontScaleFactor):

  • page/Settings.h:

(Settings):
(WebCore::Settings::textAutosizingFontScaleFactor):

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processBlock):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setTextAutosizingFontScaleFactor):
(WebCore):

  • testing/InternalSettings.h:

(Backup):
(InternalSettings):

  • testing/InternalSettings.idl:

Source/WebKit/chromium:

Add an API to change Text Autosizing's font scale factor.

The font scale factor applied to Text Autosizing influences the sizing
of text, and will influence the scaling of boosted blocks once the
implementation progresses. For Android, it will be set to the font size
chosen in the user's system-wide preferences.

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setTextAutosizingFontScaleFactor):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

LayoutTests:

Add a basic test. More usable tests should be added later, as it's
really hard to test this accurately in this phase of the implementation,
and Text Autosizing is still subject to various bugs.

The font scale factor applied to Text Autosizing influences the sizing
of text, and will influence the scaling of boosted blocks once the
implementation progresses. For Android, it will be set to the font size
chosen in the user's system-wide preferences.

  • fast/text-autosizing/font-scale-factor-expected.html: Added.
  • fast/text-autosizing/font-scale-factor.html: Added.
2:34 PM Changeset in webkit [124371] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk

CSP should correctly block plugin resources rendered in PluginDocuments.
https://bugs.webkit.org/show_bug.cgi?id=92675

Patch by Mike West <mkwst@chromium.org> on 2012-08-01
Reviewed by Adam Barth.

Source/WebCore:

In certain cases, plugins aren't loaded directly, but are stuffed into a
newly-created PluginDocument before rendering. While we were already
correctly populating information that allowed us to make decisions about
that document's security origin, and already dealing with sandbox
status by creating a 'SinkDocument' that ignored plugin data, we weren't
correctly inheriting the parent frame's Content Security Policy. This
patch ensures that PluginDocuments correctly inherit their parent's
Content Security Policy, meaning that the plugin is blocked or allowed
according to the policy of the protected resource in which the
PluginDocument is embedded.

Tests: http/tests/security/contentSecurityPolicy/object-src-url-allowed.html

http/tests/security/contentSecurityPolicy/object-src-url-blocked.html

  • dom/Document.cpp:

(WebCore::Document::initContentSecurityPolicy):

Populate a created PluginDocument with its frame's parent's Content
Security Policy.

LayoutTests:

  • http/tests/plugins/resources/mock-plugin.pl: Added.

This lovely perl script mocks a plugin by sending a
'Content-Type application/x-webkit-test-netscape' header.

  • http/tests/security/contentSecurityPolicy/object-src-url-allowed-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/object-src-url-allowed.html: Added.
  • http/tests/security/contentSecurityPolicy/object-src-url-blocked-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/object-src-url-blocked.html: Added.

Test that non-'data:' URLs that end up in PluginDocuments are also
dealt with correctly by CSP.

2:27 PM Changeset in webkit [124370] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: reenable the test for --verbose working in child processes
https://bugs.webkit.org/show_bug.cgi?id=92894

Reviewed by Ryosuke Niwa.

This change rewrites the test to not use outputcapture, meaning
that the MockHost can propagate to Worker properly and things
work again :).

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.test_verbose_in_child_processes):

2:24 PM Changeset in webkit [124369] by fmalita@chromium.org
  • 3 edits
    2 adds in trunk

SVG animation not working for elements inserted after parsing is finished
https://bugs.webkit.org/show_bug.cgi?id=92025

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Time containers for SVG elements inserted after document parsing is finished need to be
initialized on insertion (since they've missed the Document::implicitClose() initialization
point).

Test: svg/animations/deferred-insertion.html

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::insertedInto):

LayoutTests:

  • svg/animations/deferred-insertion-expected.txt: Added.
  • svg/animations/deferred-insertion.html: Added.
2:21 PM Changeset in webkit [124368] by scheib@chromium.org
  • 4 edits
    2 adds in trunk

Block pointer lock for sandboxed iframes.
https://bugs.webkit.org/show_bug.cgi?id=92796

Reviewed by Adam Barth.

Source/WebCore:

Sandboxed iframe documents should be blocked from using the
pointer lock API until there is specification agreement
on what attribute to use to allow the feature. After
specification this restriction can be relaxed, but not
restricting it now would require breaking applications
later.

Test: http/tests/pointer-lock/iframe-sandboxed.html

  • dom/SecurityContext.h:
  • page/PointerLockController.cpp:

(WebCore::PointerLockController::requestPointerLock):

LayoutTests:

Sandboxed iframe documents should be blocked from using the
pointer lock API until there is specification agreement
on what attribute to use to allow the feature.

  • http/tests/pointer-lock/iframe-sandboxed-expected.txt: Added.
  • http/tests/pointer-lock/iframe-sandboxed.html: Added.
2:19 PM Changeset in webkit [124367] by eae@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium TestExpectations change, replace BUG_eae with a proper bug number.

  • platform/chromium/TestExpectations:
2:02 PM Changeset in webkit [124366] by rniwa@webkit.org
  • 3 edits in trunk/Tools

run-perf-tests --build-directory doesn't work
https://bugs.webkit.org/show_bug.cgi?id=92051

Reviewed by Dirk Pranke.

The bug was caused by not prepending build_directory even when one is defined.
Fixed that.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port._build_path):

  • Scripts/webkitpy/layout_tests/port/base_unittest.py:

(PortTest.test_build_path):

1:49 PM Changeset in webkit [124365] by Patrick Gansterer
  • 15 edits
    1 add in trunk/Source

Replace WTF::getCurrentLocalTime() with GregorianDateTime::setToCurrentLocalTime()
https://bugs.webkit.org/show_bug.cgi?id=92286

Reviewed by Geoffrey Garen.

Add a method to GregorianDateTime to set its values to the current locale time.
Replacing all occurrences of getCurrentLocalTime with the new function allows
us to remove getCurrentLocalTime in a next step.

Source/JavaScriptCore:

Source/WebCore:

  • html/FTPDirectoryDocument.cpp:

(WebCore::processFileDateString):

  • loader/archive/mhtml/MHTMLArchive.cpp:

(WebCore::MHTMLArchive::generateMHTMLData):

Source/WTF:

  • GNUmakefile.list.am:
  • WTF.gypi:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/DateMath.cpp:

(WTF::dayInYear):

  • wtf/DateMath.h:

(WTF):

  • wtf/GregorianDateTime.cpp: Added.

(WTF):
(WTF::GregorianDateTime::setToCurrentLocalTime):

  • wtf/GregorianDateTime.h:

(GregorianDateTime):

1:47 PM Changeset in webkit [124364] by ojan@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove code duplication in determining if display is inline or replaced
https://bugs.webkit.org/show_bug.cgi?id=92880

Reviewed by Julien Chaffraix.

Deduplicate lists of display types by using private helpers.

No new tests. No change in behavior.

  • rendering/style/RenderStyle.h:
1:35 PM Changeset in webkit [124363] by jonlee@apple.com
  • 4 edits in trunk/WebKitLibraries

Update WKSI.

Reviewed by Mark Rowe.

  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
1:33 PM Changeset in webkit [124362] by tommyw@google.com
  • 5 edits in trunk/Source

MediaStream API: Add ExtraData capability to MediaStreamSource
https://bugs.webkit.org/show_bug.cgi?id=92860

Reviewed by Adam Barth.

The Chromium port needs to store some related data in MediaStreamSource objects.

Source/Platform:

  • chromium/public/WebMediaStreamSource.h:

(ExtraData):
(WebKit::WebMediaStreamSource::ExtraData::~ExtraData):
(WebMediaStreamSource):

Source/WebCore:

Not testable from a LayoutTest.

  • platform/chromium/support/WebMediaStreamSource.cpp:

(ExtraDataContainer):
(WebKit::ExtraDataContainer::ExtraDataContainer):
(WebKit::ExtraDataContainer::extraData):
(WebKit):
(WebKit::WebMediaStreamSource::extraData):
(WebKit::WebMediaStreamSource::setExtraData):

  • platform/mediastream/MediaStreamSource.h:

(ExtraData):
(WebCore::MediaStreamSource::ExtraData::~ExtraData):
(MediaStreamSource):
(WebCore::MediaStreamSource::extraData):
(WebCore::MediaStreamSource::setExtraData):

1:20 PM Changeset in webkit [124361] by jsbell@chromium.org
  • 7 edits
    3 adds in trunk

IndexedDB: IDBCursor.continue(key) does not throw for key "behind" cursor
https://bugs.webkit.org/show_bug.cgi?id=92562

Reviewed by Ojan Vafai.

Source/WebCore:

Per spec, IDBCursor.continue(key) should throw for forward cursors
if key <= current key, and for reverse cursors if key >= current key.
Code was present on the back end but the error code was ignored, possibly
broken in a recent refactor, and there were no tests for this case.

Test: storage/indexeddb/cursor-continue-dir.html

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::advance): Handle async transaction termination.
(WebCore::IDBCursor::continueFunction): Move checks here from backend.

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): Don't need direction param.
(WebCore::IDBCursorBackendImpl::continueFunction): Remove checks.

  • Modules/indexeddb/IDBCursorBackendImpl.h: Only IDBBackingStore::cursor needs direction now.

(WebCore::IDBCursorBackendImpl::create):
(IDBCursorBackendImpl):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::openCursorInternal): Drop unused param.

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::openCursorInternal): Ditto.

LayoutTests:

Ensure cursor.continue(key) throws if key is "behind" the cursor.

  • storage/indexeddb/cursor-continue-dir-expected.txt: Added.
  • storage/indexeddb/cursor-continue-dir.html: Added.
  • storage/indexeddb/resources/cursor-continue-dir.js: Added.

(test.request.onsuccess.request.onsuccess.request.onsuccess):
(test.request.onsuccess.request.onsuccess):
(test.request.onsuccess):
(test):
(testCursors):
(testForwardCursor.request.onsuccess):
(testForwardCursor):
(testReverseCursor.request.onsuccess):
(testReverseCursor):

1:14 PM Changeset in webkit [124360] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit/mac

Assertion failure in inspector/profiler/heap-snapshot-containment-show-all.html on Lion bot
https://bugs.webkit.org/show_bug.cgi?id=92888

Reviewed by Andreas Kling.

Protect the WebInspectorWindowController so it doesn't get destroyed during [WebView close] and cause
unsafe [WebView dealloc].

  • WebCoreSupport/WebInspectorClient.mm:

(-[WebInspectorWindowController destroyInspectorView:]):

1:10 PM Changeset in webkit [124359] by commit-queue@webkit.org
  • 5 edits in trunk

Source/WebCore: Don't request a clickCount of 1 on mouseMove event generated by tap gestures
https://bugs.webkit.org/show_bug.cgi?id=92779

Patch by Rick Byers <rbyers@chromium.org> on 2012-08-01
Reviewed by Adam Barth.

mousemove events don't have a click count, so we shouldn't be passing 1
here. Note this makes no real difference in practice since the value is
ignored - fixed strictly for pedantics.

Test: fast/events/touch/gesture/gesture-click

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureTap):

LayoutTests: Make Gesture click test validate click count in UIEvent.detail
https://bugs.webkit.org/show_bug.cgi?id=92779

Patch by Rick Byers <rbyers@chromium.org> on 2012-08-01
Reviewed by Adam Barth.

Also validates that no dblclick event is fired for this single click.

  • fast/events/touch/gesture/gesture-click.html:
  • platform/chromium/fast/events/touch/gesture/gesture-click-expected.txt:
12:51 PM Changeset in webkit [124358] by commit-queue@webkit.org
  • 7 edits in trunk

Dropping webkit prefix from Vibration API
https://bugs.webkit.org/show_bug.cgi?id=92840

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-01
Reviewed by Adam Barth.

Source/WebCore:

Remove webkit prefix from navigator.webkitVibrate().

  • Vibration API have been entered CR already.
  • Firefox already implements Vibration API.

No new tests. Covered by fast/dom/navigator-vibration.html

  • Modules/vibration/NavigatorVibration.cpp:

(WebCore::NavigatorVibration::vibrate):

  • Modules/vibration/NavigatorVibration.h:

(NavigatorVibration):

  • Modules/vibration/NavigatorVibration.idl:

LayoutTests:

Remove webkit prefix from navigator.webkitVibrate().

  • fast/dom/navigator-vibration-expected.txt:
  • fast/dom/navigator-vibration.html:
12:42 PM Changeset in webkit [124357] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Read tag names and attributes from the saved tokens in HTMLFormattingElementList::closestElementInScopeWithName(const AtomicString&)
https://bugs.webkit.org/show_bug.cgi?id=92841

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-01
Reviewed by Adam Barth.

This is a follow-up patch for r123577.
Replaced entry.element()->hasLocalName(targetName) with entry.stackItem()->hasLocalName(targetName).

No new tests, covered by existing tests.

  • html/parser/HTMLFormattingElementList.cpp:

(WebCore::HTMLFormattingElementList::closestElementInScopeWithName):

12:41 PM Changeset in webkit [124356] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

Fix FastMalloc build with assertions enabled.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_PageHeap::isScavengerSuspended):
(WTF::TCMalloc_PageHeap::scheduleScavenger):
(WTF::TCMalloc_PageHeap::suspendScavenger):

12:24 PM Changeset in webkit [124355] by mhahnenberg@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

C++ code should get ClassInfo from the Structure
https://bugs.webkit.org/show_bug.cgi?id=92892

Reviewed by Geoffrey Garen.

In our march to remove ClassInfo from our JSCell object headers, we can switch
C++ code over to grabbing the ClassInfo from the Structure since it is finally
safe to do so now that Structure access is safe during finalization/destruction.
The remaining JIT code changes can be done in a separate patch.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor): We don't want to clear the Structure any more
since the Structure should still be valid at this point.

  • heap/WeakSetInlines.h:

(JSC::WeakBlock::finalize): Ditto.

  • runtime/JSCell.h:

(JSC):

  • runtime/Structure.h:

(JSC::JSCell::classInfo): Move JSCell's classInfo() to Structure.h so it can be
inline. Use a different method of getting the JSCell's Structure based on
whether we're in GC_VALIDATION mode or not, since always using get() will cause
infinite recursion in GC_VALIDATION mode.
(JSC):

12:05 PM Changeset in webkit [124354] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Unreviewed, rolling out r123865.
http://trac.webkit.org/changeset/123865
https://bugs.webkit.org/show_bug.cgi?id=92891

This patch is causing the style-queue to fall behind
(Requested by abarth on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-01

  • Scripts/webkitpy/tool/commands/queues.py:

(AbstractReviewQueue.begin_work_queue):
(StyleQueue.init):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):

12:03 PM Changeset in webkit [124353] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

HTMLTreeBuilder passes a wrong token when pushing the head element
https://bugs.webkit.org/show_bug.cgi?id=92838

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-01
Reviewed by Adam Barth.

When the tree builder pushes the head element in the "after head" insertion mode,
it creates a HTMLStackItem from a wrong token.

Added HTMLConstructionSite::headStackItem() to retrieve the stack item for the head
element. Modified the tree builder to pass the correct stack item when pushing the head
element in the "after head" insertion mode.

No new tests, covered by existing tests.

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertHTMLHeadElement):

  • html/parser/HTMLConstructionSite.h:

(WebCore::HTMLConstructionSite::head):
(WebCore::HTMLConstructionSite::headStackItem):
(HTMLConstructionSite):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processStartTag):

11:55 AM Changeset in webkit [124352] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

MarkedBlock::sweep() should sweep another block if it can't sweep a Structure block
https://bugs.webkit.org/show_bug.cgi?id=92819

Reviewed by Geoffrey Garen.

If we are forced to allocate a new block for Structures because we are unable to safely
sweep our pre-existing Structure blocks, we should sweep another random block so that we
can start sweeping Structure blocks sooner.

  • heap/IncrementalSweeper.cpp:

(JSC::IncrementalSweeper::doSweep): Change to use sweepNextBlock.
(JSC):
(JSC::IncrementalSweeper::sweepNextBlock):

  • heap/IncrementalSweeper.h:

(IncrementalSweeper):

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::tryAllocateHelper): When we can't safely sweep
our Structure blocks, call sweepNextBlock instead.

11:45 AM Changeset in webkit [124351] by allan.jensen@nokia.com
  • 25 edits
    1 add in trunk/LayoutTests

Clean-up touchadjustment tests.
https://bugs.webkit.org/show_bug.cgi?id=92869

Reviewed by Jocelyn Turcotte.

Review and cleanup the touchadjustment tests, so they are more consistent,
uses best practices and are good examples for future touchadjustment tests.

Gather commonly used functions in touchadjustment.js.
Add HTML5 doctype to ensure strict parsing rules.
Remove redundant testRunner calls, and use js-test-post.js instead.
Fix XHTMLisms in small-target-test.html
Fix ignored offset mistake in nested-touch.html that resulted in three identical tests.

  • touchadjustment/big-div-expected.txt:
  • touchadjustment/big-div.html:
  • touchadjustment/block-testing-expected.txt:
  • touchadjustment/block-testing.html:
  • touchadjustment/disabled-formelements-expected.txt:
  • touchadjustment/disabled-formelements.html:
  • touchadjustment/event-triggered-widgets-expected.txt:
  • touchadjustment/event-triggered-widgets.html:
  • touchadjustment/html-label-expected.txt:
  • touchadjustment/html-label.html:
  • touchadjustment/iframe.html:
  • touchadjustment/nested-shadow-node.html:
  • touchadjustment/nested-touch-expected.txt:
  • touchadjustment/nested-touch.html:
  • touchadjustment/resources/inner-frame.html:
  • touchadjustment/resources/touchadjustment.js: Added.

(findAbsoluteBounds):
(nodeToString):
(touchPoint):
(offsetTouchPoint):

  • touchadjustment/rotated-node-expected.txt:
  • touchadjustment/rotated-node.html:
  • touchadjustment/scroll-offset-expected.txt:
  • touchadjustment/scroll-offset.html:
  • touchadjustment/search-cancel.html:
  • touchadjustment/small-target-test-expected.txt:
  • touchadjustment/small-target-test.html:
  • touchadjustment/touch-inlines-expected.txt:
  • touchadjustment/touch-inlines.html:
11:42 AM Changeset in webkit [124350] by commit-queue@webkit.org
  • 17 edits
    8 moves
    6 adds in trunk

[CSS Regions] The regionLayoutUpdate event should be dispatched on the NamedFlow object
https://bugs.webkit.org/show_bug.cgi?id=88778

Patch by Andrei Bucur <abucur@adobe.com> on 2012-08-01
Reviewed by Adam Barth.

Spec: http://www.w3.org/TR/css3-regions/#region-flow-layout-events

Source/WebCore:

This patch implements the regionLayoutUpdate event per May 3rd CSS Regions spec recommendation.
Before this patch the event was dispatched individually on each region whenever its overflow state changed. The trigger conditions are preserved with the following additions:

  • the event is dispatched when the last region is removed
  • the event is not dispatched when the named flow switches to the NULL state

Also, the NamedFlow objects are not deleted if they switch to the NULL state and have listeners attached. In that scenario the JS wrapper will not release the reference
until the parent Document is destroyed.

Tests: The old tests have been modified to use the event on the NamedFlow object rather the one on the Region. New tests have been added to verify the
correct behavior in the special states of the NamedFlow (no region chain, NULL state).

  • dom/Document.cpp:

(WebCore::Document::addListenerTypeIfNeeded): Listeners are not added on Nodes any more so the regionLayoutUpdate type was removed from the list.

  • dom/Document.h:
  • dom/EventTarget.h:

(WebCore):

  • dom/EventTargetFactory.in:
  • dom/Node.cpp:
  • dom/Node.h:

(Node):

  • dom/WebKitNamedFlow.cpp:

(WebCore::WebKitNamedFlow::eventTargetData):
(WebCore):
(WebCore::WebKitNamedFlow::ensureEventTargetData):
(WebCore::WebKitNamedFlow::dispatchRegionLayoutUpdateEvent): The 3rd May WD says the event is bubbling. However this doesn't make sense as this object doesn't belong to the DOM tree. This was fixed in the ED.
(WebCore::WebKitNamedFlow::interfaceName):
(WebCore::WebKitNamedFlow::scriptExecutionContext):
(WebCore::WebKitNamedFlow::base): Getter for the owner Document used by the wrapper to determine if the object is reachable.

  • dom/WebKitNamedFlow.h:

(WebCore):
(WebKitNamedFlow):
(WebCore::WebKitNamedFlow::refEventTarget):
(WebCore::WebKitNamedFlow::derefEventTarget):

  • dom/WebKitNamedFlow.idl:
  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::layout): The event dispatching is now handled by the implementation of RenderFlowThread.
(WebCore::RenderFlowThread::computeOverflowStateForRegions):

  • rendering/RenderFlowThread.h:
  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
(WebCore::RenderNamedFlowThread::removeRegionFromThread): The layout doesn't detect changes caused by removing the last region. This case is handled separately.
(WebCore::RenderNamedFlowThread::dispatchRegionLayoutUpdateEvent):
(WebCore):
(WebCore::RenderNamedFlowThread::regionLayoutUpdateEventTimerFired):

  • rendering/RenderNamedFlowThread.h:

(RenderNamedFlowThread):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::RenderRegion):

  • rendering/RenderRegion.h:

(RenderRegion):

LayoutTests:

The existing tests have been adapted to match the transition of the event on the NamedFlow interface. Also there are three more tests for the case
the region chain is removed, the flow goes in the NULL state and for the event target to match the NamedFlow object.

  • fast/regions/webkit-named-flow-event-add-to-flow-expected.txt: Renamed from LayoutTests/fast/regions/region-event-add-to-flow-expected.txt.
  • fast/regions/webkit-named-flow-event-add-to-flow.html: Renamed from LayoutTests/fast/regions/region-event-add-to-flow.html.
  • fast/regions/webkit-named-flow-event-expected.txt: Renamed from LayoutTests/fast/regions/region-event-expected.txt.
  • fast/regions/webkit-named-flow-event-no-regions-expected.txt: Added.
  • fast/regions/webkit-named-flow-event-no-regions.html: Added.
  • fast/regions/webkit-named-flow-event-remove-from-dom-expected.txt: Renamed from LayoutTests/fast/regions/region-event-remove-from-dom-expected.txt.
  • fast/regions/webkit-named-flow-event-remove-from-dom.html: Renamed from LayoutTests/fast/regions/region-event-remove-from-dom.html.
  • fast/regions/webkit-named-flow-event-remove-from-flow-expected.txt: Renamed from LayoutTests/fast/regions/region-event-remove-from-flow-expected.txt.
  • fast/regions/webkit-named-flow-event-remove-from-flow.html: Renamed from LayoutTests/fast/regions/region-event-remove-from-flow.html.
  • fast/regions/webkit-named-flow-event-target-expected.txt: Added.
  • fast/regions/webkit-named-flow-event-target.html: Added.
  • fast/regions/webkit-named-flow-event-to-null-expected.txt: Added.
  • fast/regions/webkit-named-flow-event-to-null.html: Added.
  • fast/regions/webkit-named-flow-event.html: Renamed from LayoutTests/fast/regions/region-event.html.
11:23 AM Changeset in webkit [124349] by rniwa@webkit.org
  • 3 edits in trunk/Tools

run-perf-tests throws an exception when the output json is malformed
https://bugs.webkit.org/show_bug.cgi?id=92887

Reviewed by Dirk Pranke.

Catch exceptions and gracefully fail. Also split _generate_json into smaller methods.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_output): Extracted from _generate_json.
(PerfTestsRunner._merge_source_json): Ditto; catch all exceptions since they are too many
exceptions to consder here.
(PerfTestsRunner._merge_outputs): Ditto.
(PerfTestsRunner._generate_output_files): Extracted from _generate_json.

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(_test_run_with_json_output): Don't assert logs when we except an non-zero exit code.
(create_runner_and_setup_results_template): Extracted from test_run_generates_results_page.
(test_run_generates_results_page):
(test_run_with_bad_output_json): Added.
(test_run_with_bad_json_source): Added.
(test_run_with_upload_json):

11:17 AM Changeset in webkit [124348] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll chromium DEPS to 149416.

Unreviewed.

  • DEPS:
11:16 AM Changeset in webkit [124347] by robert@webkit.org
  • 16 edits
    4 adds in trunk

CSS 2.1 failure: margin-collapse-012 fails
https://bugs.webkit.org/show_bug.cgi?id=80219

Reviewed by Eric Seidel.

Source/WebCore:

Tests: css2.1/20110323/margin-collapse-012.htm

fast/css/margin-collapse-abspos-negmargin.htm

I also ran this against the full margin-collapse-* CSS 2.1 suite without regressions.

Per http://www.w3.org/TR/CSS21/box.html#collapsing-margins don't collapse the margins of
positioned blocks. Instead, just use the margin of the sibling/container to offset the
positioned block's logical top - its own margin gets added in later at
RenderBox::computePositionedLogicalHeightUsing().

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::adjustPositionedBlock):

LayoutTests:

  • css2.1/20110323/margin-collapse-012.htm: Added.
  • css2.1/20110323/margin-collapse-012-expected.html: Added.
  • fast/css/margin-collapse-abspos-negmargin-expected.html: Added.
  • fast/css/margin-collapse-abspos-negmargin.htm: Added.
  • fast/block/positioning/auto/001.html:
  • fast/block/positioning/auto/002.html:
  • fast/block/positioning/auto/vertical-lr/002.html:
  • fast/block/positioning/auto/vertical-rl/002.html:
  • fast/dynamic/staticY.html: Remove the margins from these tests so the results remain the same. The new results are consistent with FF.
  • platform/chromium-linux/fast/box-sizing/box-sizing-expected.png:
  • platform/chromium-win/compositing/overflow/clip-descendents-expected.txt:
  • platform/chromium-win/fast/box-sizing/box-sizing-expected.txt: I've rebaselined these - removing the margins doesn't seem helpful.
11:10 AM Changeset in webkit [124346] by Lucas Forschler
  • 4 edits in branches/safari-536.26-branch/Source

Versioning.

11:05 AM Changeset in webkit [124345] by Lucas Forschler
  • 1 copy in tags/Safari-536.26.1

New Tag.

10:49 AM Changeset in webkit [124344] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Regression(r124135): nrwt: --verbose logging does not work right on windows
https://bugs.webkit.org/show_bug.cgi?id=92845

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-01
Reviewed by Dirk Pranke.

Disabled the failing test. The Workers spawned by this test are using Host()
instead of MockHost() and trying to access the real filesystem instead of the
MockFilesytem.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.disabled_test_verbose):

10:48 AM Changeset in webkit [124343] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

keyring.get_password may raise an exception.
https://bugs.webkit.org/show_bug.cgi?id=92876

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-01
Reviewed by Dirk Pranke.

keyring.get_password sometimes raises an exception. We wrap this call,
and also set_password to avoid breaking webkit-patch in that case.

  • Scripts/webkitpy/common/net/credentials.py:

(Credentials._offer_to_store_credentials_in_keyring):
(Credentials.read_credentials):

10:43 AM Changeset in webkit [124342] by commit-queue@webkit.org
  • 7 edits
    1 delete in trunk/Source

Unreviewed, rolling out r124334.
http://trac.webkit.org/changeset/124334
https://bugs.webkit.org/show_bug.cgi?id=92879

Broke MemoryInstrumentationTest.sizeOf from webkit_unit_tests
on Chromium canaries (Requested by apavlov1 on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-01

Source/WebCore:

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::collectBindingMemoryInfo):

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryInstrumentation::addInstrumentedObject):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::totalTypeSize):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/MemoryInstrumentationTest.cpp: Removed.
10:37 AM Changeset in webkit [124341] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix gcc 4.7 compile warnings.
https://bugs.webkit.org/show_bug.cgi?id=92797

Patch by Han Shen <shenhan@google.com> on 2012-08-01
Reviewed by Kentaro Hara.

GCC 4.7 gives (more strict) warnings on uninitialized variables,
fixed by providing initilization values.

Tested by gcc 4.7 building. No change in behavior.

  • platform/graphics/filters/arm/NEONHelpers.h:

(WebCore::loadRGBA8AsFloat): Add initilizaton value for local variable.

9:54 AM Changeset in webkit [124340] by wangxianzhu@chromium.org
  • 7 edits in trunk

Layout Test fast/text/descent-clip-in-scaled-page.html is failing on linux since it was added
https://bugs.webkit.org/show_bug.cgi?id=91386

Reviewed by Tony Chang.

Tools:

Added font mapping from SubpixelPositioningAhem to Ahem on Linux and Android
(used in layout test fast/text/descent-clip-in-scaled-page.html).
Added font mapping from SubpixelPositioning to Times New Roman on Android to match Linux
(used in platform/chromium-linux/fast/text/chromium-linux-text-subpixel-positioning.html)

  • DumpRenderTree/chromium/android_main_fonts.xml:
  • DumpRenderTree/chromium/fonts.conf:

LayoutTests:

The failure was because of the caching of font data. Now use the fake font families which are
only used when subpixel text positioing is enabled. This is the same method used in
platform/chromium-linux/fast/text/chromium-linux-text-subpixel-positioning.html.

On Linux and Android, the fake font families will be mapped to Time New Roman and Ahem, respectively.
On other platforms, they will fall back to system default fonts.

  • fast/text/descent-clip-in-scaled-page-expected.html:
  • fast/text/descent-clip-in-scaled-page.html:
  • platform/chromium/TestExpectations:
9:40 AM Changeset in webkit [124339] by rniwa@webkit.org
  • 3 edits
    4 adds in trunk

REGRESSION(r122498): Assertion failure: m_nodeListCounts is sometimes not zero in the Document destructor
https://bugs.webkit.org/show_bug.cgi?id=92742

Reviewed by Andreas Kling.

Source/WebCore:

The bug was caused by adoptTreeScope's not always calling unregisterNodeListCache and registerNodeListCache
on node lists that use m_atomicNameCaches and m_nameCaches.

Tests: fast/dom/NodeList/nodelist-moved-to-fragment-2.html

fast/dom/NodeList/nodelist-moved-to-fragment.html

  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::adoptTreeScope):

LayoutTests:

Add regression tests for two types of node lists: one that uses addCacheWithName and the other that uses
addCacheWithAtomicName.

  • fast/dom/NodeList/nodelist-moved-to-fragment-2-expected.txt: Added.
  • fast/dom/NodeList/nodelist-moved-to-fragment-2.html: Added.
  • fast/dom/NodeList/nodelist-moved-to-fragment-expected.txt: Added.
  • fast/dom/NodeList/nodelist-moved-to-fragment.html: Added.
9:15 AM Changeset in webkit [124338] by zhajiang@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Allow client side to add and remove origin access whitelist entries
https://bugs.webkit.org/show_bug.cgi?id=92790

Reviewed by Yong Li.

PR: 172658
Add two new APIs to add and remove origin access whitelist entries.
Initialize the BlackBerryAllowCrossSiteRequests WebSetting to false.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::addOriginAccessWhitelistEntry):
(WebKit):
(BlackBerry::WebKit::WebPage::addOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPagePrivate::removeOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPage::removeOriginAccessWhitelistEntry):

  • Api/WebPage.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • Api/WebSettings.cpp:

(BlackBerry::WebKit::WebSettings::standardSettings):

8:57 AM Changeset in webkit [124337] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Consolidate suppression of keyboard requests.
https://bugs.webkit.org/show_bug.cgi?id=92871

Reviewed by Antonio Gomes.

Reduce VKB requests even more by applying the filter on
all requests during processing.

Reviewed Internally by Gen Mak.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::focusedNodeChanged):
(BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):

8:45 AM Changeset in webkit [124336] by zeno.albisser@nokia.com
  • 7 edits in trunk

[Qt]REGRESSION(r123786): It made 3 fast/animation tests fail.
https://bugs.webkit.org/show_bug.cgi?id=92490

Source/WebKit/qt:

QAbstractAnimation:start() is implicitly calling updateTime
without going through the event loop. This resulted in executing
scripted animation callbacks right when registering a first callback.

Reviewed by Noam Rosenthal.

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::RefreshAnimation::scheduleAnimation):

Invoke QAbstractAnimation::start() method through the event loop.

Source/WebKit2:

Make sure that scripted animations are also serviced when
forceRepaint is being executed. As this is what is being used for
running layout tests.
Move servicing of scripted animations and layoutIfNeeded call
into a separate function syncDisplayState.
This function can then be called from forceRepaint as well as from
performScheduledLayerFlush.

Reviewed by Noam Rosenthal.

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
(WebKit):
(WebKit::LayerTreeCoordinator::syncDisplayState):

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

LayoutTests:

Reviewed by Noam Rosenthal.

  • platform/qt/Skipped: Unskipping the tests listed below.

fast/animation/request-animation-frame-cancel2.html
fast/animation/request-animation-frame-detach-element.html
fast/animation/request-animation-frame-during-modal.html
fast/animation/request-animation-frame-timestamps.html
fast/dom/Window/post-message-crash.html

7:58 AM Changeset in webkit [124335] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Crashes in NetworkResourcesData.
https://bugs.webkit.org/show_bug.cgi?id=92874

Reviewed by Yury Semikhatsky.

  • inspector/NetworkResourcesData.cpp:

(WebCore::contentSizeInBytes):
(WebCore):
(WebCore::NetworkResourcesData::ResourceData::removeContent):
(WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
(WebCore::NetworkResourcesData::setResourceContent):
(WebCore::NetworkResourcesData::maybeDecodeDataToContent):

7:38 AM Changeset in webkit [124334] by loislo@chromium.org
  • 7 edits
    1 add in trunk/Source

Web Inspector: test native memory instrumentation code with help of unittests
https://bugs.webkit.org/show_bug.cgi?id=92743

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test a part of existing Native Memory Instrumentation code with help of unit tests.
6 tests were added and two bugs were fixed.
a drive-by improvement: the method MemoryInstrumentation::addInstrumentedObject
was marked as private and addRootObject was introduced instead of it.
The new function also calls processDeferedPointers.

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::collectBindingMemoryInfo):

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryInstrumentation::addRootObject):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore):
(WebCore::MemoryInstrumentation::addObjectImpl):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationImpl):

Source/WebKit/chromium:

Test a part of existing Native Memory Instrumentation code with help of unit tests.
6 tests were added and two bugs were fixed.

  • WebKit.gypi:
  • tests/MemoryInstrumentationTest.cpp: Added.

(WebCore):
(MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::reportedSize):
(WebCore::MemoryInstrumentationImpl::countObjectSize):
(WebCore::MemoryInstrumentationImpl::processDeferredInstrumentedPointers):
(NotInstrumented):
(Instrumented):
(WebCore::Instrumented::Instrumented):
(WebCore::Instrumented::~Instrumented):
(WebCore::Instrumented::reportMemoryUsage):
(WebCore::TEST):
(InstrumentedWithOwnPtr):
(WebCore::InstrumentedWithOwnPtr::InstrumentedWithOwnPtr):
(WebCore::InstrumentedWithOwnPtr::reportMemoryUsage):

7:33 AM Changeset in webkit [124333] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Memory leak found while running webaudio tests
https://bugs.webkit.org/show_bug.cgi?id=92861

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-08-01
Reviewed by Philippe Normand.

Fix a memory leak in decodeAudioForBusCreation by adopting
an allocation of GInputStream.

No new tests. No change in behavior.

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::AudioFileReader::decodeAudioForBusCreation):

6:55 AM Changeset in webkit [124332] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Web Inspector: count DOM storage cache memory for native snapshot
https://bugs.webkit.org/show_bug.cgi?id=91617

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-01
Reviewed by Yury Semikhatsky.

Source/Platform:

Add memory size used for DOM storage cache reporting interface.

  • chromium/public/WebStorageArea.h:

(WebStorageArea):
(WebKit::WebStorageArea::memoryBytesUsedByCache):

Source/WebCore:

Add memory size used for DOM storage cache reporting interface.
Report it to the native memory snapshot instrumentation framework.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::memoryBytesUsedByStorageCache):
(WebCore):

  • inspector/InspectorDOMStorageAgent.h:

(InspectorDOMStorageAgent):

  • inspector/InspectorMemoryAgent.cpp:

(MemoryBlockName):
(WebCore):
(WebCore::dumpDOMStorageCache):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:

(WebCore):
(WebCore::InspectorMemoryAgent::create):
(InspectorMemoryAgent):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

  • storage/StorageArea.h:

(StorageArea):

  • storage/StorageAreaImpl.cpp:

(WebCore::StorageAreaImpl::memoryBytesUsedByCache):
(WebCore):

  • storage/StorageAreaImpl.h:

(StorageAreaImpl):

Source/WebKit/chromium:

Add memory size used for DOM storage cache reporting interface.

  • src/StorageAreaProxy.cpp:

(WebCore::StorageAreaProxy::memoryBytesUsedByCache):
(WebCore):

  • src/StorageAreaProxy.h:

(StorageAreaProxy):

6:39 AM Changeset in webkit [124331] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Disable tap highlight when transparent color is specified
https://bugs.webkit.org/show_bug.cgi?id=92849

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-01
Reviewed by Antonio Gomes.

When the web page specifies -webkit-tap-highlight-color:rgba(0,0,0,0)
or any color with alpha value 0, we should disable the tap highlight.

  • WebKitSupport/DefaultTapHighlight.cpp:

(BlackBerry::WebKit::DefaultTapHighlight::draw):

6:29 AM Changeset in webkit [124330] by yurys@chromium.org
  • 25 edits in trunk/Source/WebCore

Web Inspector: add CSSStyleSheet memory instrumentation
https://bugs.webkit.org/show_bug.cgi?id=92748

Reviewed by Antti Koivisto.

Added MemoryInstrumentation for CSSStyleSheet, StyleSheetContents, StyleRule,
CSSSelectorList and StylePropertySet. The coverage is not complete as the
patch was growing too big.

  • css/CSSSelectorList.cpp:

(WebCore::CSSSelectorList::CSSSelectorList):
(WebCore::CSSSelectorList::length):
(WebCore):
(WebCore::CSSSelectorList::reportMemoryUsage):

  • css/CSSSelectorList.h:

(WebCore):
(CSSSelectorList):

  • css/CSSStyleSheet.cpp:

(WebCore::CSSStyleSheet::reportMemoryUsage):
(WebCore):

  • css/CSSStyleSheet.h:

(WebCore):
(CSSStyleSheet):

  • css/MediaList.cpp:

(WebCore):
(WebCore::MediaQuerySet::reportMemoryUsage):
(WebCore::MediaList::reportMemoryUsage):

  • css/MediaList.h:

(WebCore):
(MediaQuerySet):
(MediaList):

  • css/MediaQuery.cpp:

(WebCore::MediaQuery::reportMemoryUsage):
(WebCore):

  • css/MediaQuery.h:

(WebCore):
(MediaQuery):

  • css/MediaQueryExp.cpp:

(WebCore::MediaQueryExp::reportMemoryUsage):
(WebCore):

  • css/MediaQueryExp.h:

(WebCore):
(MediaQueryExp):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::reportMemoryUsage):
(WebCore):

  • css/StylePropertySet.h:

(WebCore):
(StylePropertySet):

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::reportMemoryUsage): We cannot make
reportMemoryUsage virtual as it would add vtable to StyleRuleBase
and its descendants and would blow its memory footprint. This
is why we have a switch over StyleRule type here.
(WebCore):
(WebCore::StyleRule::reportMemoryUsage):
(WebCore::StyleRulePage::reportMemoryUsage):
(WebCore::StyleRuleFontFace::reportMemoryUsage):
(WebCore::StyleRuleBlock::reportMemoryUsage):
(WebCore::StyleRuleMedia::reportMemoryUsage):
(WebCore::StyleRuleRegion::reportMemoryUsage):

  • css/StyleRule.h:

(WebCore):
(StyleRuleBase):
(StyleRule):
(StyleRuleFontFace):
(StyleRulePage):
(StyleRuleBlock):
(StyleRuleMedia):
(StyleRuleRegion):

  • css/StyleSheetContents.cpp:

(WebCore::StyleSheetContents::reportMemoryUsage):
(WebCore):

  • css/StyleSheetContents.h:

(WebCore):
(StyleSheetContents):

  • dom/Document.cpp:

(WebCore::Document::reportMemoryUsage):

  • dom/MemoryInstrumentation.h:

(WebCore::MemoryClassInfo::addInstrumentedVectorPtr):
(WebCore::MemoryClassInfo::addVectorPtr):

5:28 AM Changeset in webkit [124329] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r124325.
http://trac.webkit.org/changeset/124325
https://bugs.webkit.org/show_bug.cgi?id=92865

broke android build (Requested by mnaganov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-01

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
5:23 AM Changeset in webkit [124328] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

Export StringImpl::sizeInBytes() with WTF_EXPORT_STRING_API
https://bugs.webkit.org/show_bug.cgi?id=92851

Reviewed by Hajime Morita.

r124069 missed to change one export macro, which is needed
to make the windows port with USE(EXPORT_MACROS).

  • wtf/text/StringImpl.h:

(StringImpl):

5:23 AM Changeset in webkit [124327] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL] Dump a backtrace in case of a crash on the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=92843

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-01
Reviewed by Csaba Osztrogonác.

We are already dumping the backtraces when automated tests are
crashing, but only for the WebProcess. This patch adds the same
hooks for the UIProcess.

  • TestWebKitAPI/efl/main.cpp:

(main):

  • WebKitTestRunner/efl/main.cpp:

(main):

5:03 AM Changeset in webkit [124326] by keishi@webkit.org
  • 4 edits in trunk

Attempt to fix flakiness of color-suggestion-picker-appearance.html
https://bugs.webkit.org/show_bug.cgi?id=92848

Reviewed by Kent Tamura.

Source/WebCore:

  • Resources/colorSuggestionPicker.js:

(ColorPicker.prototype._layout): We put the width and height into
variables so we don't call window.onresize twice.

LayoutTests:

We observed console.log bleeding into the next test.

  • platform/chromium/fast/forms/color/color-suggestion-picker-appearance.html:
4:51 AM Changeset in webkit [124325] by abarth@webkit.org
  • 2 edits in trunk/Tools

[Chromium] Merge final nits to DumpRenderTree.gyp for Android
https://bugs.webkit.org/show_bug.cgi?id=90920

Reviewed by Tony Chang.

This patch contains the last few small changes to DumpRenderTree.gyp
from the chromium-android branch. After this change, this file will be
fully merged.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
4:41 AM Changeset in webkit [124324] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] ImageDiff should use float division instead of integer
https://bugs.webkit.org/show_bug.cgi?id=92859

Reviewed by Zoltan Herczeg.

  • DumpRenderTree/qt/ImageDiff.cpp:

(main):

4:41 AM Changeset in webkit [124323] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, suppress fast/forms/input-widths.html failure, which is due to r124314.

  • platform/chromium/TestExpectations:
4:20 AM Changeset in webkit [124322] by Martin Robinson
  • 4 edits in releases/WebKitGTK/webkit-1.8

.: Update the NEWS file and configure.ac in preparation for the 1.8.2 release

Reviewed by Carlos Garcia Campos.

  • configure.ac: Update the version.

Source/WebKit/gtk: Update the NEWS file and configure.ac in preparation for the 1.8.2 release.

Reviewed by Carlos Garcia Campos.

  • NEWS: Add the news.
4:19 AM Changeset in webkit [124321] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk

Merge 124177 - [GTK] New lines automatically and repeatedly added to list items in Etherpad
https://bugs.webkit.org/show_bug.cgi?id=89971

Reviewed by Ryosuke Niwa.

Disable the deletion UI by default. This UI, which was enabled as a side-effect
of the addition of the private editing API, seems to expose a bug in Etherpad
which causes the continuous insertion of bullet points.

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::shouldShowDeleteInterface): Disable the deletion UI by default.

3:07 AM Changeset in webkit [124320] by Patrick Gansterer
  • 5 edits in trunk/Source/WTF

[WIN] Add missing WTF export macros to functions
https://bugs.webkit.org/show_bug.cgi?id=92842

Reviewed by Hajime Morita.

When we switch the windows port to USE(EXPORT_MACROS) we
need to export all functions referenced by WebKit.dll.

  • wtf/ThreadingPrimitives.h:

(WTF):

  • wtf/dtoa.h:

(WTF):

  • wtf/dtoa/double-conversion.h:

(StringToDoubleConverter):

  • wtf/unicode/UTF8.h:
2:33 AM Changeset in webkit [124319] by yosin@chromium.org
  • 26 edits
    1 delete in trunk/Tools

Unreviewed, rolling out r124313.
http://trac.webkit.org/changeset/124313
https://bugs.webkit.org/show_bug.cgi?id=92855

Compilation failed on Chromium ports (Requested by yosin on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-01

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/DumpRenderTree.h:
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/DumpRenderTreeCommon.cpp: Removed.
  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(runTest):
(main):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):
(TestShell::runFileTest):
(TestShell::dump):

  • DumpRenderTree/chromium/TestShell.h:

(TestParams):
(TestParams::TestParams):
(TestShell):

  • DumpRenderTree/efl/CMakeLists.txt:
  • DumpRenderTree/efl/DumpRenderTree.cpp:

(parseCommandLineOptions):
(getFinalTestURL):
(getExpectedPixelHash):
(runTest):
(shouldDumpPixelsAndCompareWithExpected):
(main):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeGlobalsFromCommandLineOptions):
(dump):
(runTest):
(main):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(initializeGlobalsFromCommandLineOptions):
(dumpRenderTree):
(dump):
(runTest):

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::processLine):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(dump):
(runTest):
(dllLauncherEntryPoint):

  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/wscript:
  • DumpRenderTree/wx/DumpRenderTreeWx.cpp:

(dump):
(runTest):
(MyApp::OnInit):

  • GNUmakefile.am:
  • Scripts/old-run-webkit-tests:
  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.supports_switching_pixel_tests_per_test):
(Port):
(Port._supports_switching_pixel_tests_per_test):
(Port.should_run_as_pixel_test):

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.cmd_line):
(Driver._command_from_driver_input):

  • Scripts/webkitpy/layout_tests/port/qt.py:

(QtPort._supports_switching_pixel_tests_per_test):

  • Scripts/webkitpy/layout_tests/port/test.py:

(TestPort.supports_switching_pixel_tests_per_test):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::TestController):
(WTR::TestController::initialize):
(WTR::TestController::runTest):

  • WebKitTestRunner/TestController.h:

(TestController):

2:24 AM Changeset in webkit [124318] by Carlos Garcia Campos
  • 5 edits in trunk/Source

Unreviewed. Fix GTK+ build with recent version of GTK+.

Use g_threads_enter/leave instead of the wrapper macros. This
gives a compile warning because they are now deprecated but at
least it builds.

Source/WebCore:

  • plugins/gtk/gtk2xtbin.c:

(xt_event_prepare):
(xt_event_check):
(xt_event_dispatch):

Source/WebKit2:

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewRunAsModal): Fix enter/leave order.

  • UIProcess/gtk/WebPopupMenuProxyGtk.cpp:

(WebKit::WebPopupMenuProxyGtk::showPopupMenu):

2:23 AM Changeset in webkit [124317] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, typo fix.

  • platform/qt/TestExpectations:
2:20 AM Changeset in webkit [124316] by pkasting@chromium.org
  • 2 edits
    16 adds in trunk/LayoutTests

[Chromium] Rebaseline a test.
https://bugs.webkit.org/show_bug.cgi?id=92444

Unreviewed, test expectation updates.

  • platform/chromium-linux-x86/platform/chromium/fast: Added.
  • platform/chromium-linux-x86/platform/chromium/fast/forms: Added.
  • platform/chromium-linux-x86/platform/chromium/fast/forms/color: Added.
  • platform/chromium-linux-x86/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/color: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/color: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-win-xp/platform/chromium/fast/forms: Added.
  • platform/chromium-win-xp/platform/chromium/fast/forms/color: Added.
  • platform/chromium-win-xp/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms: Added.
  • platform/chromium-win/platform/chromium/fast/forms/color: Added.
  • platform/chromium-win/platform/chromium/fast/forms/color/color-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium/TestExpectations:
2:19 AM Changeset in webkit [124315] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: Add native memory used by GlyphCache to the snapshot
https://bugs.webkit.org/show_bug.cgi?id=90615

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-01
Reviewed by Yury Semikhatsky.

Adds interface for reporting memory usage of platform specific
components.
Report memory usage of the font cache allocated by skia in chromium.

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::addPlatformComponentsInfo):
(WebCore):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

  • platform/MemoryUsageSupport.cpp:

(WebCore::MemoryUsageSupport::memoryUsageByComponents):
(WebCore):

  • platform/MemoryUsageSupport.h:

(MemoryUsageSupport):
(ComponentInfo):
(WebCore::MemoryUsageSupport::ComponentInfo::ComponentInfo):

  • platform/chromium/MemoryUsageSupportChromium.cpp:

(WebCore::MemoryUsageSupport::memoryUsageByComponents):
(WebCore):

  • platform/qt/MemoryUsageSupportQt.cpp:

(WebCore::MemoryUsageSupport::memoryUsageByComponents):
(WebCore):

2:17 AM Changeset in webkit [124314] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

[CSS] Add selectors for multiple fields time input UI.
https://bugs.webkit.org/show_bug.cgi?id=92834

Reviewed by Kent Tamura.

This patch adds new selectors and "height" property to spin button
for multiple fields time input UI.

RenderTextControlSingleLine::layout() sets height of spin button for
input type "number" and other input types using RenderTextControlSingleLine
as renderer object. However, multiple fields time input UI doesn't use
it and needs to set height of spin button.

No new tests. This patch doesn't change behavior.

  • css/html.css:

(input::-webkit-datetime-edit): Added.
(input::-webkit-datetime-edit-ampm-field): Added.
(input::-webkit-datetime-edit-hour-field): Added.
(input::-webkit-datetime-edit-millisecond-field): Added.
(input::-webkit-datetime-edit-minute-field): Added.
(input::-webkit-datetime-edit-minute-field[readonly]): Added. This selector
is used for step>=3600 second and time format contains minute field.
(input::-webkit-datetime-edit-second-field): Added.
(input::-webkit-datetime-edit-second-field[readonly]): Added. This selector
is used for step>=60 second and time format contains second field.
(input::-webkit-inner-spin-button): Add "height" property for using
spin button other than RenderTextControlSingleLine.

2:07 AM Changeset in webkit [124313] by kbalazs@webkit.org
  • 26 edits
    1 add in trunk/Tools

All ports should support per test switching of pixel testing
https://bugs.webkit.org/show_bug.cgi?id=92398

Reviewed by Dirk Pranke.

Teach all test drivers to accept a per test control of whether
to dump pixels. Drivers now accept a -p/--pixel-test argument
on the standart input that means that running the current
test as pixel test is allowed (even if the expected hash is
missing). Removed the --pixel-tests command line option since
there is no need for it anymore.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/DumpRenderTree.h:

(TestCommand::TestCommand):
(TestCommand):

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/DumpRenderTreeCommon.cpp: Added.

(CommandTokenizer):
(CommandTokenizer::CommandTokenizer):
(CommandTokenizer::pump):
(CommandTokenizer::next):
(CommandTokenizer::hasNext):
(die):
(parseInputLine):
Common logic to parse the input line from the standard input (or from the command line
in standalone mode). Made it somewhat general so we can easily add more arguments if
there is a need.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(runTest):
(main):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):
(TestShell::runFileTest):
(TestShell::dump):

  • DumpRenderTree/chromium/TestShell.h:

(TestParams::TestParams):
(TestShell):

  • DumpRenderTree/efl/CMakeLists.txt:
  • DumpRenderTree/efl/DumpRenderTree.cpp:

(parseCommandLineOptions):
(runTest):
(shouldDumpPixelsAndCompareWithExpected):
(main):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeGlobalsFromCommandLineOptions):
(dump):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(initializeGlobalsFromCommandLineOptions):
(dumpRenderTree):

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::processLine):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(dump):
(runTest):
(dllLauncherEntryPoint):

  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/wscript:
  • DumpRenderTree/wx/DumpRenderTreeWx.cpp:

(dump):
(runTest):
(MyApp::OnInit):

  • Scripts/old-run-webkit-tests: Pass --pixel-test before the hash.

Changed the separator form ' to : because it don't need to be escaped
when passing manually on the comand line.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.should_run_as_pixel_test): Removed now that all ports supports it.

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.cmd_line): Don't pass --pixel-tests anymore.
(Driver._command_from_driver_input):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::TestController):
(WTR::TestController::initialize):
(WTR::TestCommand::TestCommand):
(TestCommand):
(WTR):
(CommandTokenizer):
(WTR::CommandTokenizer::CommandTokenizer):
(WTR::CommandTokenizer::pump):
(WTR::CommandTokenizer::next):
(WTR::CommandTokenizer::hasNext):
(WTR::die):
(WTR::parseInputLine):
(WTR::TestController::runTest):

  • WebKitTestRunner/TestController.h:

(TestController):
Duplicate the logic for parsing the command line because
unfortunately there is no way to share code between
WebKitTestRunner and DumpRenderTree.

1:53 AM Changeset in webkit [124312] by pkasting@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Mark a couple of flaky tests.
https://bugs.webkit.org/show_bug.cgi?id=92850
https://bugs.webkit.org/show_bug.cgi?id=92852

Unreviewed, test expectation updates.

  • platform/chromium/TestExpectations:
1:11 AM Changeset in webkit [124311] by zandobersek@gmail.com
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening, adding an image failure expectation for a
CSS3 Flexbox test that relies on the subpixel layout to be enabled.

Also adding a missing platform-specific expectation for a CSS2.1 test
that somehow got removed in r124142.

  • platform/gtk/TestExpectations:
  • platform/gtk/css2.1/20110323/block-replaced-width-001-expected.png:
  • platform/gtk/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
1:03 AM Changeset in webkit [124310] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Make HTMLConstructionSite::createHTMLElement(AtomicHTMLToken*) private.
https://bugs.webkit.org/show_bug.cgi?id=92846

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-01
Reviewed by Eric Seidel.

This method is internal to HTMLConstructionSite.

No functional change.

  • html/parser/HTMLConstructionSite.h:

(HTMLConstructionSite):

12:57 AM Changeset in webkit [124309] by kinuko@chromium.org
  • 3 edits
    2 adds in trunk

[Filesystem] Assertion on $0.webkitEntries while on the input field.
https://bugs.webkit.org/show_bug.cgi?id=91954

Reviewed by Kent Tamura.

Accessing .webkitEntries should not crash when input type is not for file.

Source/WebCore:

Tests: fast/filesystem/input-access-entries.html

  • Modules/filesystem/HTMLInputElementFileSystem.cpp:

(WebCore::HTMLInputElementFileSystem::webkitEntries):

LayoutTests:

  • fast/filesystem/input-access-entries.html: Added.
  • fast/filesystem/input-access-entries-expected.txt: Added.
12:53 AM Changeset in webkit [124308] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: Profiles: cleanup HeapSnapshotReceiver interface
https://bugs.webkit.org/show_bug.cgi?id=92390

Patch by Eugene Klyuchnikov <eustas.big@gmail.com> on 2012-08-01
Reviewed by Yury Semikhatsky.

Source/WebCore:

Remove callback parameter and return values from methods startLoading
and finishLoading. All implementations of HeapSnapshotReceiver honestly
override interface methods now.

  • inspector/front-end/HeapSnapshotLoader.js: Adopted new API.
  • inspector/front-end/HeapSnapshotProxy.js: Adopted new API.

(WebInspector.HeapSnapshotLoaderProxy.prototype.isStarted): Added.
(WebInspector.HeapSnapshotLoaderProxy.prototype.addConsumer): Added.
(WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading):
Explicitly finishes loading and build snapshot.

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapSnapshotReceiver.prototype.startLoading):
Removed callback parameter and return value.
(WebInspector.HeapSnapshotReceiver.prototype.finishLoading):
Removed callback parameter.
(WebInspector.HeapSnapshotSaveToFileReceiver): Adopted new API.

LayoutTests:

Fixed test to adopt new API.

  • inspector/profiler/heap-snapshot-loader.html:
12:37 AM QtWebKit edited by hotukdeals.com2@yahoo.co.uk
(diff)
12:32 AM ExportingSymbols edited by Kaustubh Atrawalkar
(diff)
12:30 AM Changeset in webkit [124307] by Martin Robinson
  • 2 edits in trunk/Tools

Add the jhbuild source directory to the builtin object

Reviewed by Philippe Normand.

It seems that the jhbuild script explicitly looks for the SRCDIR builtin when
initializing. This is necessary for loading the jhbuild from the checkout directory.

  • jhbuild/jhbuildutils.py:

(enter_jhbuild_environment_if_available): Set SRCDIR to the source directory.

12:29 AM Changeset in webkit [124306] by loislo@chromium.org
  • 9 edits
    2 adds in trunk/Source/WebCore

Web Inspector: extract MemoryInstrumentationImpl into separate files for future reusing in unit tests
https://bugs.webkit.org/show_bug.cgi?id=92751

Reviewed by Yury Semikhatsky.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore):

  • inspector/MemoryInstrumentationImpl.cpp: Added.

(WebCore):
(WebCore::MemoryInstrumentationImpl::MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::processDeferredInstrumentedPointers):
(WebCore::MemoryInstrumentationImpl::countObjectSize):
(WebCore::MemoryInstrumentationImpl::deferInstrumentedPointer):
(WebCore::MemoryInstrumentationImpl::visited):
(WebCore::MemoryInstrumentationImpl::selfSize):

  • inspector/MemoryInstrumentationImpl.h: Added.

(WebCore):
(MemoryInstrumentationImpl):
(WebCore::MemoryInstrumentationImpl::totalTypeSize):

12:01 AM BuildBot edited by hotukdeals.com2@yahoo.co.uk
(diff)
Note: See TracTimeline for information about the timeline view.