WebKit-https.git
5 years agoMarking test as flaky.
bdakin@apple.com [Thu, 2 Oct 2014 20:50:08 +0000 (20:50 +0000)]
Marking test as flaky.

* TestExpectations:

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

5 years agoDo all closed variable access through the local lexical object
oliver@apple.com [Thu, 2 Oct 2014 20:35:58 +0000 (20:35 +0000)]
Do all closed variable access through the local lexical object
https://bugs.webkit.org/show_bug.cgi?id=136869

Reviewed by Filip Pizlo.

This patch makes all reads and writes from captured registers
go through the lexical record, and by doing so removes the
need for record tearoff.

To keep the patch simple we still number variables as though
they are local stack allocated registers, but ::local() will
fail. When local fails we perform a generic resolve, and in
that resolve we now use a ResolveScopeInfo struct to pass
around information about whether a lookup is a statically
known captured variable, and its location in the activation.
To ensure correct behaviour during codeblock linking we also
add a LocalClosureVariable resolution type.

To ensure correct semantics for the Arguments object, we now
have to eagerly create the Arguments object for any function
that uses both the Arguments object and requires a lexical
record.

* bytecode/BytecodeList.json:
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::initializeCapturedVariable):
  During the entry to a function we are not yet in a position
  to allocate temporaries so we directly use the lexical
  environment register.
(JSC::BytecodeGenerator::resolveCallee):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::local):
(JSC::BytecodeGenerator::constLocal):
(JSC::BytecodeGenerator::emitResolveScope):
(JSC::BytecodeGenerator::emitResolveConstantLocal):
  The two resolve scope operations could technically skip
  the op_resolve_scope, and simply perform
      op_mov dst, recordRegister
  but for now it seemed best to maintain the same basic
  behaviour.
(JSC::BytecodeGenerator::emitGetFromScope):
(JSC::BytecodeGenerator::emitPutToScope):
(JSC::BytecodeGenerator::createArgumentsIfNecessary):
  If we have an environment we've already created Arguments
  so no need to check again.
(JSC::BytecodeGenerator::emitReturn):
  Don't need to emit tearoff_environment
* bytecompiler/BytecodeGenerator.h:
(JSC::Local::Local):
(JSC::Local::operator bool):
(JSC::Local::get):
(JSC::Local::isReadOnly):
(JSC::Local::isSpecial):
(JSC::ResolveScopeInfo::ResolveScopeInfo):
(JSC::ResolveScopeInfo::isLocal):
(JSC::ResolveScopeInfo::localIndex):
(JSC::BytecodeGenerator::shouldCreateArgumentsEagerly):
(JSC::Local::isCaptured): Deleted.
(JSC::Local::captureMode): Deleted.
* bytecompiler/NodesCodegen.cpp:
(JSC::ResolveNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixNode::emitResolve):
(JSC::DeleteResolveNode::emitBytecode):
(JSC::TypeOfResolveNode::emitBytecode):
(JSC::PrefixNode::emitResolve):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::EmptyVarExpression::emitBytecode):
(JSC::ForInNode::tryGetBoundLocal):
(JSC::ForInNode::emitLoopHeader):
(JSC::ForOfNode::emitBytecode):
(JSC::BindingNode::bindValue):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::tryGetRegisters):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_captured_mov): Deleted.
(JSC::JIT::emit_op_tear_off_lexical_environment): Deleted.
(JSC::JIT::emitSlow_op_captured_mov): Deleted.
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_captured_mov): Deleted.
(JSC::JIT::emit_op_tear_off_lexical_environment): Deleted.
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emit_op_get_from_scope):
(JSC::JIT::emitPutClosureVar):
(JSC::JIT::emit_op_put_to_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emit_op_get_from_scope):
(JSC::JIT::emitPutClosureVar):
(JSC::JIT::emit_op_put_to_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
* llint/LLIntData.cpp:
(JSC::LLInt::Data::performAssertions):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LLIntSlowPaths.h:
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/Arguments.cpp:
(JSC::Arguments::tearOff):
* runtime/Arguments.h:
(JSC::Arguments::argument):
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL): Deleted.
* runtime/CommonSlowPaths.h:
* runtime/JSLexicalEnvironment.cpp:
(JSC::JSLexicalEnvironment::visitChildren):
(JSC::JSLexicalEnvironment::symbolTableGet):
(JSC::JSLexicalEnvironment::symbolTablePut):
(JSC::JSLexicalEnvironment::getOwnNonIndexPropertyNames):
(JSC::JSLexicalEnvironment::getOwnPropertySlot):
(JSC::JSLexicalEnvironment::argumentsGetter):
* runtime/JSLexicalEnvironment.h:
(JSC::JSLexicalEnvironment::create):
(JSC::JSLexicalEnvironment::JSLexicalEnvironment):
(JSC::JSLexicalEnvironment::tearOff): Deleted.
(JSC::JSLexicalEnvironment::isTornOff): Deleted.
* runtime/JSScope.cpp:
(JSC::resolveTypeName):
* runtime/JSScope.h:
(JSC::makeType):
(JSC::needsVarInjectionChecks):
* runtime/WriteBarrier.h:
(JSC::WriteBarrier<Unknown>::WriteBarrier):

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

5 years agoHave is<>(T*) function do a null check on the pointer argument
cdumez@apple.com [Thu, 2 Oct 2014 19:39:41 +0000 (19:39 +0000)]
Have is<>(T*) function do a null check on the pointer argument
https://bugs.webkit.org/show_bug.cgi?id=137333

Reviewed by Gavin Barraclough.

Have is<>(T*) function do a null check on the argument instead of a
simple assertion. This makes sense for 2 reasons:
1. It is more consistent with downcast<>(T*), which will succeed even
   if the argument is a nullptr.
2. It simplifies the code a bit as it gets rid of a lot of explicit
   null checks.

Source/WebCore:

No new tests, no behavior change.

* Modules/indexeddb/IDBFactory.cpp:
* Modules/webaudio/OfflineAudioContext.cpp:
(WebCore::OfflineAudioContext::create):
* Modules/websockets/ThreadableWebSocketChannel.cpp:
(WebCore::ThreadableWebSocketChannel::create):
* Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::connect):
* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::clientHandshakeMessage):
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::focusedUIElementForPage):
(WebCore::createFromRenderer):
(WebCore::AXObjectCache::getOrCreate):
(WebCore::AXObjectCache::handleLiveRegionCreated):
(WebCore::AXObjectCache::handleAttributeChanged):
(WebCore::AXObjectCache::labelChanged):
(WebCore::AXObjectCache::rootAXEditableElement):
(WebCore::isNodeAriaVisible):
* accessibility/AccessibilityListBoxOption.cpp:
(WebCore::AccessibilityListBoxOption::isEnabled):
(WebCore::AccessibilityListBoxOption::isSelected):
(WebCore::AccessibilityListBoxOption::canSetSelectedAttribute):
(WebCore::AccessibilityListBoxOption::stringValue):
(WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
* accessibility/AccessibilityMediaControls.cpp:
(WebCore::AccessibilityMediaTimeline::valueDescription):
* accessibility/AccessibilityMenuListPopup.cpp:
(WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
(WebCore::AccessibilityNodeObject::isNativeTextControl):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::isInputImage):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::isReadOnly):
(WebCore::AccessibilityNodeObject::isRequired):
(WebCore::AccessibilityNodeObject::valueForRange):
(WebCore::AccessibilityNodeObject::maxValueForRange):
(WebCore::AccessibilityNodeObject::minValueForRange):
(WebCore::AccessibilityNodeObject::isControl):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::isNodeActionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::titleElementText):
(WebCore::AccessibilityNodeObject::alternativeText):
(WebCore::AccessibilityNodeObject::visibleText):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::colorValue):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
(WebCore::AccessibilityObject::hasTagName):
(WebCore::AccessibilityObject::hasAttribute):
(WebCore::AccessibilityObject::element):
(WebCore::AccessibilityObject::classList):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isFileUploadButton):
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::labelElementContainer):
(WebCore::AccessibilityRenderObject::internalLinkElement):
(WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
(WebCore::AccessibilityRenderObject::titleUIElement):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::accessKey):
(WebCore::AccessibilityRenderObject::url):
(WebCore::AccessibilityRenderObject::setElementAttributeValue):
(WebCore::AccessibilityRenderObject::setFocused):
(WebCore::AccessibilityRenderObject::setValue):
(WebCore::AccessibilityRenderObject::getDocumentLinks):
(WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
(WebCore::AccessibilityRenderObject::accessibilityHitTest):
(WebCore::AccessibilityRenderObject::correspondingLabelForControlElement):
(WebCore::AccessibilityRenderObject::renderObjectIsObservable):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
(WebCore::AccessibilityRenderObject::addTextFieldChildren):
(WebCore::AccessibilityRenderObject::remoteSVGRootElement):
(WebCore::AccessibilityRenderObject::setAccessibleName):
(WebCore::AccessibilityRenderObject::stringValueForMSAA):
(WebCore::AccessibilityRenderObject::isLinked):
(WebCore::AccessibilityRenderObject::stringRoleForMSAA):
(WebCore::AccessibilityRenderObject::isMathElement):
* accessibility/AccessibilitySearchFieldButtons.cpp:
(WebCore::AccessibilitySearchFieldCancelButton::press):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::tableElement):
(WebCore::AccessibilityTable::isDataTable):
(WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
(WebCore::AccessibilityTable::title):
* accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
* accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableGetCaption):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetName):
(webkitAccessibleGetDescription):
(webkitAccessibleGetAttributes):
* bindings/gobject/WebKitDOMPrivate.cpp:
(WebKit::wrap):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::constructJSAudioContext):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::toJSDOMGlobalObject):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::namedItemGetter):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
* bindings/js/JSElementCustom.cpp:
(WebCore::toJSNewlyCreated):
* bindings/js/JSErrorHandler.cpp:
(WebCore::JSErrorHandler::handleEvent):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::nameGetter):
* bindings/js/JSLazyEventListener.cpp:
(WebCore::JSLazyEventListener::initializeJSFunction):
* bindings/js/JSNodeCustom.cpp:
(WebCore::isReachableFromDOM):
(WebCore::createWrapperInline):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/js/ScriptState.cpp:
(WebCore::frameFromExecState):
* bindings/objc/DOM.mm:
(kitClass):
* css/CSSCursorImageValue.cpp:
(WebCore::resourceReferencedByCursorElement):
* css/CSSStyleSheet.cpp:
(WebCore::isAcceptableCSSStyleSheetParent):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* css/SelectorCheckerTestFunctions.h:
(WebCore::isAutofilled):
(WebCore::isDisabled):
(WebCore::isEnabled):
(WebCore::isChecked):
(WebCore::matchesLangPseudoClass):
(WebCore::matchesFutureCuePseudoClass):
(WebCore::matchesPastCuePseudoClass):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::State::initElement):
(WebCore::StyleResolver::locateCousinList):
(WebCore::elementHasDirectionAuto):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::findSiblingForStyleSharing):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::useSVGZoomRulesForLength):
* css/StyleSheetList.cpp:
(WebCore::StyleSheetList::getNamedItem):
* dom/Attr.cpp:
(WebCore::Attr::style):
* dom/CharacterData.cpp:
(WebCore::CharacterData::parserAppendData):
(WebCore::CharacterData::setDataAndUpdate):
* dom/ContainerNode.cpp:
(WebCore::checkAcceptChild):
(WebCore::ContainerNode::notifyChildRemoved):
* dom/ContainerNodeAlgorithms.cpp:
(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoTree):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
* dom/CurrentScriptIncrementer.h:
(WebCore::CurrentScriptIncrementer::CurrentScriptIncrementer):
* dom/DataTransfer.cpp:
(WebCore::DataTransfer::setDragImage):
* dom/Document.cpp:
(WebCore::Document::elementFromPoint):
(WebCore::Document::setTitle):
(WebCore::Document::iconURLs):
(WebCore::eventTargetElementForDocument):
(WebCore::Document::updateHoverActiveState):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
* dom/Element.cpp:
(WebCore::Element::computeInheritedLanguage):
* dom/Element.h:
(WebCore::Node::parentElement):
* dom/ElementTraversal.h:
(WebCore::Traversal<Element>::nextTemplate):
(WebCore::ElementTraversal::previousIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
(WebCore::ElementTraversal::pseudoAwarePreviousSibling):
* dom/EventDispatcher.cpp:
(WebCore::WindowEventContext::WindowEventContext):
(WebCore::EventDispatcher::dispatchEvent):
(WebCore::nodeOrHostIfPseudoElement):
(WebCore::EventPath::EventPath):
* dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
* dom/KeyboardEvent.cpp:
(WebCore::findKeyboardEvent):
* dom/LiveNodeList.cpp:
(WebCore::LiveNodeList::namedItem):
* dom/MessagePort.cpp:
(WebCore::MessagePort::dispatchMessages):
* dom/MouseEvent.cpp:
(WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::setNamedItem):
* dom/Node.cpp:
(WebCore::Node::dumpStatistics):
(WebCore::Node::pseudoAwarePreviousSibling):
(WebCore::Node::pseudoAwareNextSibling):
(WebCore::Node::computedStyle):
(WebCore::Node::parentOrShadowHostElement):
(WebCore::Node::rootEditableElement):
(WebCore::Node::ancestorElement):
(WebCore::Node::compareDocumentPosition):
(WebCore::appendAttributeDesc):
(WebCore::Node::showNodePathForThis):
(WebCore::Node::enclosingLinkEventParentOrSelf):
(WebCore::Node::dispatchEvent):
(WebCore::Node::defaultEventHandler):
* dom/NodeRenderingTraversal.cpp:
(WebCore::NodeRenderingTraversal::nodeCanBeDistributed):
(WebCore::NodeRenderingTraversal::traverseParent):
* dom/NodeTraversal.cpp:
(WebCore::NodeTraversal::previousIncludingPseudo):
(WebCore::NodeTraversal::nextIncludingPseudo):
(WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):
* dom/Position.cpp:
(WebCore::Position::element):
(WebCore::endsOfNodeAreVisuallyDistinctPositions):
(WebCore::Position::isRenderedCharacter):
(WebCore::Position::leadingWhitespacePosition):
* dom/Range.cpp:
(WebCore::Range::insertNode):
(WebCore::Range::getBorderAndTextQuads):
* dom/ScriptElement.cpp:
(WebCore::toScriptElementIfPossible):
* dom/ShadowRoot.h:
(WebCore::Node::parentOrShadowHostNode):
* dom/Text.cpp:
(WebCore::earliestLogicallyAdjacentTextNode):
(WebCore::latestLogicallyAdjacentTextNode):
(WebCore::isSVGShadowText):
* dom/TextNodeTraversal.cpp:
(WebCore::TextNodeTraversal::contentsAsString):
* dom/TextNodeTraversal.h:
(WebCore::TextNodeTraversal::firstTextChildTemplate):
(WebCore::TextNodeTraversal::firstTextWithinTemplate):
(WebCore::TextNodeTraversal::traverseNextTextTemplate):
(WebCore::TextNodeTraversal::nextSibling):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveNodeToNewDocument):
* editing/ApplyBlockElementCommand.cpp:
(WebCore::isNewLineAtPosition):
(WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded):
* editing/ApplyStyleCommand.cpp:
(WebCore::isLegacyAppleStyleSpan):
(WebCore::isStyleSpanOrSpanWithOnlyStyleAttribute):
(WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan):
(WebCore::isEmptyFontTag):
(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::dummySpanAncestorForNode):
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
(WebCore::ApplyStyleCommand::splitTextAtEnd):
(WebCore::ApplyStyleCommand::splitTextElementAtEnd):
(WebCore::ApplyStyleCommand::shouldSplitTextElement):
(WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
(WebCore::ApplyStyleCommand::applyInlineStyleChange):
(WebCore::ApplyStyleCommand::joinChildTextNodes):
* editing/BreakBlockquoteCommand.cpp:
(WebCore::BreakBlockquoteCommand::doApply):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::isRemovableBlock):
(WebCore::CompositeEditCommand::insertNodeAt):
(WebCore::CompositeEditCommand::canRebalance):
(WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
(WebCore::CompositeEditCommand::deleteInsignificantText):
(WebCore::CompositeEditCommand::removePlaceholderAt):
(WebCore::CompositeEditCommand::cleanupAfterDeletion):
(WebCore::CompositeEditCommand::moveParagraphs):
* editing/DeleteButtonController.cpp:
(WebCore::enclosingDeletableElement):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
(WebCore::DeleteSelectionCommand::fixupWhitespace):
(WebCore::DeleteSelectionCommand::doApply):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::wrappingStyleForSerialization):
* editing/Editor.cpp:
(WebCore::imageElementFromImageDocument):
(WebCore::Editor::shouldInsertFragment):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::setComposition):
(WebCore::Editor::isSpellCheckingEnabledFor):
(WebCore::Editor::applyEditingStyleToElement):
* editing/FormatBlockCommand.cpp:
(WebCore::isElementForFormatBlock):
* editing/FrameSelection.cpp:
(WebCore::removingNodeRemovesPosition):
(WebCore::CaretBase::paintCaret):
(WebCore::FrameSelection::debugRenderer):
(WebCore::FrameSelection::selectAll):
(WebCore::scanForForm):
* editing/InsertLineBreakCommand.cpp:
(WebCore::InsertLineBreakCommand::doApply):
* editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::mergeWithNeighboringLists):
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::insertTab):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::haveSameTagName):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
(WebCore::ReplaceSelectionCommand::shouldPerformSmartReplace):
(WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):
(WebCore::ReplaceSelectionCommand::mergeTextNodesAroundPosition):
(WebCore::ReplaceSelectionCommand::insertAsListItems):
(WebCore::ReplaceSelectionCommand::performTrivialReplace):
* editing/SpellChecker.cpp:
(WebCore::SpellChecker::isCheckable):
* editing/SplitTextNodeContainingElementCommand.cpp:
(WebCore::SplitTextNodeContainingElementCommand::doApply):
* editing/TextIterator.cpp:
(WebCore::isRendererReplacedElement):
* editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::isInPasswordField):
* editing/VisibleUnits.cpp:
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):
* editing/cocoa/HTMLConverter.mm:
(HTMLConverter::aggregatedAttributesForAncestors):
(HTMLConverter::aggregatedAttributesForElementAndItsAncestors):
(WebCore::editingAttributedStringFromRange):
* editing/htmlediting.cpp:
(WebCore::enclosingBlock):
(WebCore::enclosingElementWithTag):
(WebCore::enclosingAnchorElement):
(WebCore::enclosingList):
(WebCore::lineBreakExistsAtPosition):
(WebCore::areIdenticalElements):
(WebCore::isNonTableCellHTMLBlockElement):
(WebCore::deprecatedEnclosingBlockFlowElement):
* editing/ios/EditorIOS.mm:
(WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
* editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::appendText):
(WebCore::ancestorToRetainStructureAndAppearanceForBlock):
(WebCore::isPlainTextMarkup):
* fileapi/FileReader.cpp:
(WebCore::FileReader::readAsArrayBuffer):
(WebCore::FileReader::readAsBinaryString):
(WebCore::FileReader::readAsText):
(WebCore::FileReader::readAsDataURL):
* html/BaseChooserOnlyDateAndTimeInputType.cpp:
(WebCore::BaseChooserOnlyDateAndTimeInputType::updateAppearance):
* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
* html/FormAssociatedElement.cpp:
(WebCore::FormAssociatedElement::findAssociatedForm):
* html/HTMLAnchorElement.cpp:
(WebCore::appendServerMapMousePosition):
(WebCore::HTMLAnchorElement::defaultEventHandler):
(WebCore::HTMLAnchorElement::eventType):
(WebCore::isEnterKeyKeydownEvent):
(WebCore::isLinkClick):
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::imageElement):
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::insertedInto):
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::defaultEventHandler):
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNamedElementCache):
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::bgColor):
(WebCore::HTMLDocument::setBgColor):
(WebCore::HTMLDocument::fgColor):
(WebCore::HTMLDocument::setFgColor):
(WebCore::HTMLDocument::alinkColor):
(WebCore::HTMLDocument::setAlinkColor):
(WebCore::HTMLDocument::linkColor):
(WebCore::HTMLDocument::setLinkColor):
(WebCore::HTMLDocument::vlinkColor):
(WebCore::HTMLDocument::setVlinkColor):
(WebCore::HTMLDocument::isFrameSet):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::matchesReadWritePseudoClass):
(WebCore::mergeWithNextTextNode):
(WebCore::HTMLElement::setOuterHTML):
(WebCore::HTMLElement::setOuterText):
(WebCore::HTMLElement::insertAdjacentElement):
(WebCore::contextElementForInsertion):
(WebCore::HTMLElement::directionality):
(WebCore::HTMLElement::dirAttributeChanged):
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::rendererIsNeeded):
* html/HTMLFieldSetElement.cpp:
(WebCore::updateFromControlElementsAncestorDisabledStateUnder):
(WebCore::HTMLFieldSetElement::disabledStateChanged):
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::computeIsDisabledByFieldsetAncestor):
(WebCore::shouldAutofocus):
(WebCore::HTMLFormControlElement::enclosingFormControlElement):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::rendererIsNeeded):
(WebCore::HTMLFormElement::submitImplicitly):
(WebCore::submitElementFromEvent):
(WebCore::HTMLFormElement::validateInteractively):
(WebCore::HTMLFormElement::submit):
(WebCore::HTMLFormElement::reset):
(WebCore::HTMLFormElement::defaultButton):
(WebCore::HTMLFormElement::documentDidResumeFromPageCache):
* html/HTMLFrameOwnerElement.cpp:
(WebCore::HTMLFrameOwnerElement::getSVGDocument):
* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::defaultEventHandler):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::defaultEventHandler):
(WebCore::HTMLInputElement::dataList):
* html/HTMLLabelElement.cpp:
(WebCore::nodeAsSupportedLabelableElement):
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::virtualForm):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::hasFallbackContent):
(WebCore::HTMLObjectElement::updateDocNamedItem):
* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::recalcSelectOptions):
(WebCore::HTMLOptGroupElement::ownerSelectElement):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::setText):
(WebCore::HTMLOptionElement::index):
(WebCore::HTMLOptionElement::ownerDataListElement):
(WebCore::HTMLOptionElement::ownerSelectElement):
(WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
(WebCore::HTMLOptionElement::isDisabledFormControl):
(WebCore::HTMLOptionElement::collectOptionInnerText):
* html/HTMLPlugInImageElement.cpp:
(WebCore::addPlugInsFromNodeListMatchingPlugInOrigin):
(WebCore::HTMLPlugInImageElement::defaultEventHandler):
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::setText):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::nextValidIndex):
(WebCore::HTMLSelectElement::saveLastSelection):
(WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
(WebCore::HTMLSelectElement::updateListBoxSelection):
(WebCore::HTMLSelectElement::listBoxOnChange):
(WebCore::HTMLSelectElement::recalcListItems):
(WebCore::HTMLSelectElement::selectedIndex):
(WebCore::HTMLSelectElement::selectOption):
(WebCore::HTMLSelectElement::optionToListIndex):
(WebCore::HTMLSelectElement::listToOptionIndex):
(WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
(WebCore::HTMLSelectElement::saveFormControlState):
(WebCore::HTMLSelectElement::searchOptionsForValue):
(WebCore::HTMLSelectElement::restoreFormControlState):
(WebCore::HTMLSelectElement::appendFormData):
(WebCore::HTMLSelectElement::reset):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::updateSelectedState):
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
(WebCore::HTMLSelectElement::defaultEventHandler):
(WebCore::HTMLSelectElement::lastSelectedListIndex):
(WebCore::HTMLSelectElement::optionAtIndex):
(WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
(WebCore::HTMLSelectElement::length):
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::insertedInto):
(WebCore::HTMLSourceElement::removedFrom):
* html/HTMLSummaryElement.cpp:
(WebCore::isClickableControl):
(WebCore::HTMLSummaryElement::defaultEventHandler):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::caption):
* html/HTMLTablePartElement.cpp:
(WebCore::HTMLTablePartElement::findParentTable):
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::rowIndex):
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::rowAfter):
(WebCore::HTMLTableRowsCollection::lastRow):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::defaultEventHandler):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::innerTextValue):
(WebCore::positionForIndex):
(WebCore::HTMLTextFormControlElement::indexForPosition):
(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
* html/HTMLTitleElement.cpp:
(WebCore::HTMLTitleElement::setText):
* html/HTMLTrackElement.cpp:
(WebCore::HTMLTrackElement::mediaElement):
* html/ImageDocument.cpp:
(WebCore::ImageEventListener::handleEvent):
* html/InputType.cpp:
(WebCore::InputType::shouldSubmitImplicitly):
* html/MediaDocument.cpp:
(WebCore::ancestorVideoElement):
(WebCore::MediaDocument::defaultEventHandler):
* html/RadioInputType.cpp:
(WebCore::RadioInputType::handleKeydownEvent):
(WebCore::RadioInputType::isKeyboardFocusable):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::shouldSubmitImplicitly):
* html/parser/HTMLConstructionSite.cpp:
(WebCore::hasImpliedEndTag):
(WebCore::HTMLConstructionSite::attachLater):
(WebCore::HTMLConstructionSite::insertHTMLFormElement):
(WebCore::HTMLConstructionSite::insertTextNode):
(WebCore::HTMLConstructionSite::ownerDocumentForCurrentNode):
(WebCore::HTMLConstructionSite::findFosterSite):
* html/parser/HTMLElementStack.cpp:
(WebCore::HTMLNames::isScopeMarker):
(WebCore::HTMLNames::isTableScopeMarker):
(WebCore::HTMLNames::isSelectScopeMarker):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):
* html/shadow/InsertionPoint.h:
(WebCore::isActiveInsertionPoint):
(WebCore::parentNodeForDistribution):
(WebCore::parentElementForDistribution):
* html/shadow/MediaControlElementTypes.cpp:
(WebCore::parentMediaElement):
(WebCore::mediaControlElementType):
(WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::defaultEventHandler):
(WebCore::MediaControlVolumeSliderContainerElement::defaultEventHandler):
(WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler):
(WebCore::MediaControlTimelineElement::defaultEventHandler):
* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::containsRelatedTarget):
* html/shadow/MediaControlsApple.cpp:
(WebCore::MediaControlsAppleEventListener::handleEvent):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::defaultEventHandler):
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::defaultEventHandler):
(WebCore::SpinButtonElement::forwardEvent):
* html/shadow/TextControlInnerElements.cpp:
(WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
(WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
* html/track/VTTCue.cpp:
(WebCore::VTTCue::copyWebVTTNodeToDOMTree):
(WebCore::VTTCue::markFutureAndPastNodes):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::elementForId):
(WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::assertDocument):
(WebCore::InspectorDOMAgent::assertElement):
(WebCore::InspectorDOMAgent::querySelector):
(WebCore::InspectorDOMAgent::querySelectorAll):
(WebCore::InspectorDOMAgent::setNodeName):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
(WebCore::InspectorDOMAgent::innerParentNode):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::dispatchEventAsContextMenuEvent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::frameForScriptExecutionContext):
(WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
* inspector/InspectorNodeFinder.cpp:
(WebCore::InspectorNodeFinder::searchUsingDOMTreeTraversal):
(WebCore::InspectorNodeFinder::searchUsingXPath):
(WebCore::InspectorNodeFinder::searchUsingCSSSelectors):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForElementInfo):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::inlineStyleSheetText):
* loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::handleFallbackContent):
* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadPlugin):
* loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoader::create):
(WebCore::ThreadableLoader::loadResourceSynchronously):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::removeRequestFromCache):
(WebCore::MemoryCache::removeRequestFromSessionCaches):
* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::attributeChanged):
* mathml/MathMLSelectElement.cpp:
(WebCore::MathMLSelectElement::getSelectedSemanticsChild):
* page/Chrome.cpp:
(WebCore::Chrome::setToolTip):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::maybeCreateContextMenu):
(WebCore::ContextMenuController::populate):
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):
* page/DragController.cpp:
(WebCore::elementUnderMouse):
(WebCore::DragController::operationForLoad):
(WebCore::DragController::canProcessDrag):
(WebCore::DragController::draggableElement):
* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::isSubmitImage):
(WebCore::targetIsFrame):
(WebCore::findDropZone):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::handleTextInputEvent):
* page/FocusController.cpp:
(WebCore::FocusNavigationScope::owner):
(WebCore::FocusController::findFocusableElementDescendingDownIntoFrameDocument):
(WebCore::FocusController::findFocusableElementAcrossFocusScope):
(WebCore::FocusController::findElementWithExactTabIndex):
(WebCore::nextElementWithGreaterTabIndex):
(WebCore::previousElementWithLowerTabIndex):
(WebCore::FocusController::nextFocusableElement):
(WebCore::FocusController::previousFocusableElement):
(WebCore::clearSelectionIfNeeded):
(WebCore::FocusController::advanceFocusDirectionally):
* page/Frame.cpp:
(WebCore::Frame::searchForLabelsBeforeElement):
(WebCore::Frame::setPageAndTextZoomFactors):
* page/FrameView.cpp:
(WebCore::FrameView::init):
(WebCore::FrameView::scrollToAnchor):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeFrame):
* page/SpatialNavigation.cpp:
(WebCore::FocusCandidate::FocusCandidate):
(WebCore::scrollInDirection):
(WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDirection):
(WebCore::canScrollInDirection):
(WebCore::nodeRectInAbsoluteCoordinates):
(WebCore::areElementsOnSameLine):
* page/ios/FrameIOS.mm:
(WebCore::ancestorRespondingToClickEvents):
* platform/network/FormData.cpp:
(WebCore::FormData::appendKeyValuePairItems):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::setInnerNode):
(WebCore::HitTestResult::setInnerNonSharedNode):
(WebCore::HitTestResult::title):
(WebCore::HitTestResult::innerTextIfTruncated):
(WebCore::HitTestResult::mediaSupportsFullscreen):
(WebCore::HitTestResult::enterFullscreenForVideo):
(WebCore::HitTestResult::mediaIsVideo):
(WebCore::HitTestResult::innerElement):
(WebCore::HitTestResult::innerNonSharedElement):
* rendering/RenderBlockFlow.cpp:
(WebCore::resizeTextPermitted):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::sizesLogicalWidthToFitContent):
* rendering/RenderCounter.cpp:
(WebCore::planCounter):
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::isOpen):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::uploadButton):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintAreaElementFocusRing):
(WebCore::RenderImage::paintIntoRect):
(WebCore::RenderImage::imageMap):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::resize):
(WebCore::RenderLayer::updateSnapOffsets):
* rendering/RenderLayerBacking.cpp:
(WebCore::isRestartedPlugin):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::updateFromElement):
(WebCore::RenderListBox::addFocusRingRects):
(WebCore::RenderListBox::paintItemForeground):
(WebCore::RenderListBox::paintItemBackground):
* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::marqueeSpeed):
* rendering/RenderMenuList.cpp:
(WebCore::selectedOptionCount):
(RenderMenuList::updateOptionsWidth):
(RenderMenuList::setTextFromOption):
(RenderMenuList::itemText):
(RenderMenuList::itemIsEnabled):
(RenderMenuList::itemIsLabel):
(RenderMenuList::itemIsSelected):
* rendering/RenderMeter.cpp:
(WebCore::RenderMeter::meterElement):
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::isChildAllowed):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addPDFURLRect):
(WebCore::RenderObject::shouldRespectImageOrientation):
(WebCore::RenderObject::updateDragState):
(WebCore::RenderObject::getUncachedPseudoStyle):
(WebCore::RenderObject::getTextDecorationColors):
* rendering/RenderProgress.cpp:
(WebCore::RenderProgress::progressElement):
* rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::handleEvent):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::parseColSpanFromDOM):
(WebCore::RenderTableCell::parseRowSpanFromDOM):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::isEnabled):
(WebCore::RenderTheme::isFocused):
(WebCore::RenderTheme::isPressed):
(WebCore::RenderTheme::isSpinUpButtonPartPressed):
(WebCore::RenderTheme::isReadOnlyControl):
(WebCore::RenderTheme::isHovered):
(WebCore::RenderTheme::isSpinUpButtonPartHovered):
(WebCore::RenderTheme::paintSliderTicks):
* rendering/RenderThemeGtk.cpp:
(WebCore::getMediaElementFromRenderObject):
(WebCore::nodeHasClass):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::updatePressedState):
(WebCore::RenderThemeMac::paintSliderThumb):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
* rendering/RenderTreeAsText.cpp:
(WebCore::isEmptyOrUnstyledAppleStyleSpan):
(WebCore::RenderTreeAsText::writeRenderObject):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::isAutosizingContainer):
(WebCore::TextAutosizer::containerContainsOneOfTags):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::isChildAllowed):
* rendering/svg/RenderSVGGradientStop.cpp:
(WebCore::RenderSVGGradientStop::gradientElement):
* rendering/svg/RenderSVGTransformableContainer.cpp:
(WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
* style/StyleResolveTree.cpp:
(WebCore::Style::invalidateWhitespaceOnlyTextSiblingsAfterAttachIfNeeded):
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::detachDistributedChildren):
(WebCore::Style::detachChildren):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::resolveTree):
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::defaultEventHandler):
* svg/SVGAltGlyphElement.cpp:
(WebCore::SVGAltGlyphElement::hasValidGlyphElements):
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::hasValidAttributeType):
* svg/SVGDocument.cpp:
(WebCore::SVGDocument::rootElement):
* svg/SVGElement.cpp:
(WebCore::SVGElement::isOutermostSVGSVGElement):
(WebCore::SVGElement::ownerSVGElement):
(WebCore::SVGElement::viewportElement):
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::applySVGGlyphSelection):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::associatedFontElement):
(WebCore::SVGFontFaceElement::rebuildFontFace):
* svg/SVGFontFaceSrcElement.cpp:
(WebCore::SVGFontFaceSrcElement::childrenChanged):
* svg/SVGGlyphElement.cpp:
(WebCore::SVGGlyphElement::invalidateGlyphCache):
* svg/SVGHKernElement.cpp:
(WebCore::SVGHKernElement::insertedInto):
(WebCore::SVGHKernElement::removedFrom):
* svg/SVGLengthContext.cpp:
(WebCore::SVGLengthContext::determineViewport):
* svg/SVGLinearGradientElement.cpp:
(WebCore::SVGLinearGradientElement::collectGradientAttributes):
* svg/SVGLocatable.cpp:
(WebCore::isViewportElement):
(WebCore::SVGLocatable::getTransformToElement):
* svg/SVGMPathElement.cpp:
(WebCore::SVGMPathElement::pathElement):
(WebCore::SVGMPathElement::notifyParentOfPathChange):
* svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::invalidateMPathDependencies):
* svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::collectPatternAttributes):
* svg/SVGRadialGradientElement.cpp:
(WebCore::SVGRadialGradientElement::collectGradientAttributes):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::setupInitialView):
* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::elementFromRenderer):
* svg/SVGUseElement.cpp:
(WebCore::dumpInstanceTree):
(WebCore::SVGUseElement::toClipPath):
(WebCore::SVGUseElement::expandUseElementsInShadowTree):
(WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
* svg/SVGVKernElement.cpp:
(WebCore::SVGVKernElement::insertedInto):
(WebCore::SVGVKernElement::removedFrom):
* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::buildPendingResource):
* svg/graphics/SVGImageCache.cpp:
(WebCore::SVGImageCache::imageForRenderer):
* testing/Internals.cpp:
(WebCore::Internals::shadowRootType):
(WebCore::Internals::visiblePlaceholder):
(WebCore::Internals::selectColorInColorChooser):
(WebCore::Internals::wasLastChangeUserEdit):
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):
(WebCore::Internals::isSelectPopupVisible):
* testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::open):
* xml/XPathFunctions.cpp:
(WebCore::XPath::expandedNameLocalPart):
(WebCore::XPath::FunLang::evaluate):
* xml/XPathNodeSet.cpp:
(WebCore::XPath::sortBlock):
(WebCore::XPath::NodeSet::sort):
(WebCore::XPath::findRootNode):
(WebCore::XPath::NodeSet::traversalSort):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):

Source/WebKit/ios:

* WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::focusedElementChanged):

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::focusedElementChanged):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::textFieldDidBeginEditing):
(WebEditorClient::textFieldDidEndEditing):
(WebEditorClient::textDidChangeInTextField):
(WebEditorClient::doTextFieldCommandFromEvent):
(WebEditorClient::textWillBeDeletedInTextField):
(WebEditorClient::textDidChangeInTextArea):
* WebView/WebHTMLRepresentation.mm:
(inputElementFromDOMElement):
(searchForLabelsBeforeElement):
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]):

Source/WebKit/win:

* DOMCoreClasses.cpp:
(DOMElement::createInstance):
* DOMHTMLClasses.cpp:
(DOMHTMLDocument::body):
(DOMHTMLDocument::forms):
(DOMHTMLElement::idName):
(DOMHTMLElement::innerText):
(DOMHTMLElement::setInnerText):
(DOMHTMLFormElement::action):
(DOMHTMLFormElement::method):
(DOMHTMLOptionElement::text):
(DOMHTMLOptionElement::label):
(DOMHTMLInputElement::form):
(DOMHTMLInputElement::disabled):
(DOMHTMLInputElement::readOnly):
(DOMHTMLInputElement::setType):
(DOMHTMLInputElement::value):
(DOMHTMLInputElement::setValue):
(DOMHTMLInputElement::setValueForUser):
(DOMHTMLInputElement::select):
(DOMHTMLInputElement::setSelectionStart):
(DOMHTMLInputElement::selectionStart):
(DOMHTMLInputElement::setSelectionEnd):
(DOMHTMLInputElement::selectionEnd):
(DOMHTMLInputElement::isTextField):
(DOMHTMLInputElement::rectOnScreen):
(DOMHTMLInputElement::replaceCharactersInRange):
(DOMHTMLInputElement::selectedRange):
(DOMHTMLInputElement::setAutofilled):
(DOMHTMLInputElement::isAutofilled):
(DOMHTMLInputElement::isUserEdited):
(DOMHTMLTextAreaElement::form):
(DOMHTMLTextAreaElement::value):
(DOMHTMLTextAreaElement::setValue):
(DOMHTMLTextAreaElement::select):
(DOMHTMLTextAreaElement::isUserEdited):
* WebFrame.cpp:
(formElementFromDOMElement):
(inputElementFromDOMElement):
(WebFrame::elementWithName):

Source/WebKit2:

* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::WebRenderObject):
* WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
(WebKit::InjectedBundleHitTestResult::mediaType):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::handleEvent):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::focusedElementChanged):
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::textFieldDidBeginEditing):
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::containsAnyFormElements):
(WebKit::WebFrame::containsAnyFormControls):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::pdfDocumentForPrintingFrame):
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::blurAssistedNode):
(WebKit::WebPage::setAssistedNodeValue):
(WebKit::WebPage::setAssistedNodeValueAsNumber):
(WebKit::WebPage::setAssistedNodeSelectedIndex):
(WebKit::WebPage::getPositionInformation):
(WebKit::WebPage::performActionOnElement):
(WebKit::isAssistableNode):
(WebKit::WebPage::getAssistedNodeInformation):

Source/WTF:

* wtf/TypeCasts.h:
(WTF::is):

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

5 years agoObject allocation sinking should have a sound story for picking materialization points
fpizlo@apple.com [Thu, 2 Oct 2014 19:38:08 +0000 (19:38 +0000)]
Object allocation sinking should have a sound story for picking materialization points
https://bugs.webkit.org/show_bug.cgi?id=137315

Reviewed by Oliver Hunt.

The only missing piece was having the object allocation sinking phase locate materialization
points that were at CFG edges.

The logic for how and why this "just works" relies on some properties of critical edge
breaking, so I was fairly careful in how I did this. Also, this requires inserting things at
the "first origin node" of a block - that is the first node in a block that has a NodeOrigin
and therefore is allowed to exit. We basically had support for such a notion before, but
didn't close the loop on it; this patch does that.

Also I added the ability to provide a BasicBlock* as context for a DFG_ASSERT().

* dfg/DFGBasicBlock.cpp:
(JSC::DFG::BasicBlock::firstOriginNode):
(JSC::DFG::BasicBlock::firstOrigin):
* dfg/DFGBasicBlock.h:
* dfg/DFGCriticalEdgeBreakingPhase.cpp:
(JSC::DFG::CriticalEdgeBreakingPhase::breakCriticalEdge):
* dfg/DFGGraph.cpp:
(JSC::DFG::crash):
(JSC::DFG::Graph::handleAssertionFailure):
* dfg/DFGGraph.h:
* dfg/DFGLoopPreHeaderCreationPhase.cpp:
(JSC::DFG::createPreHeader):
* dfg/DFGNodeOrigin.h:
(JSC::DFG::NodeOrigin::isSet):
* dfg/DFGObjectAllocationSinkingPhase.cpp:
(JSC::DFG::ObjectAllocationSinkingPhase::determineMaterializationPoints):
(JSC::DFG::ObjectAllocationSinkingPhase::placeMaterializationPoints):
(JSC::DFG::ObjectAllocationSinkingPhase::promoteSunkenFields):
(JSC::DFG::ObjectAllocationSinkingPhase::createMaterialize):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
* runtime/Options.h:

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

5 years agoUnreviewed, rolling out r174120.
commit-queue@webkit.org [Thu, 2 Oct 2014 19:14:57 +0000 (19:14 +0000)]
Unreviewed, rolling out r174120.
https://bugs.webkit.org/show_bug.cgi?id=137350

While number of failures is reasonable with 2 processes, test
results seem to be inconsistent between runs (Requested by
rfong on #webkit).

Reverted changeset:

"[Windows] Back to 2 child processes for NRWT on Windows."
http://trac.webkit.org/changeset/174120

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

5 years agoClean up loops in CSSGradientValue.cpp
cabanier@adobe.com [Thu, 2 Oct 2014 18:35:30 +0000 (18:35 +0000)]
Clean up loops in CSSGradientValue.cpp
https://bugs.webkit.org/show_bug.cgi?id=137332

Reviewed by Andreas Kling.

This patch cleans up a couple of for loops by using C++11 syntax and
fixes some grammar in a comment.

No new tests, no behavior change.

* css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::gradientWithStylesResolved): Move for loops to C++11.
(WebCore::CSSGradientValue::addStops): Update grammar in comment for gradient midpoints.

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

5 years agoDumpRenderTree and WebKitTestRunner should use WebKitystemInterfaceYosemite when...
jeffm@apple.com [Thu, 2 Oct 2014 17:39:01 +0000 (17:39 +0000)]
DumpRenderTree and WebKitTestRunner should use WebKitystemInterfaceYosemite when building on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=137347

Reviewed by Dan Bernstein.

* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
Use WebKitSystemInterfaceYosemite on OS X 10.10.

* WebKitTestRunner/Configurations/DebugRelease.xcconfig:
Ditto.

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

5 years agoClean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
dbates@webkit.org [Thu, 2 Oct 2014 16:24:10 +0000 (16:24 +0000)]
Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
https://bugs.webkit.org/show_bug.cgi?id=137277

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
forward declaring XPC functions.

* inspector/remote/RemoteInspector.mm:
* inspector/remote/RemoteInspectorXPCConnection.h:
* inspector/remote/RemoteInspectorXPCConnection.mm:

Source/WebKit2:

Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
forward declaring XPC functions.

* Platform/IPC/Connection.h:
* Platform/IPC/mac/ConnectionMac.mm:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:

Source/WTF:

Towards centralizing the declarations of XPC functions used in JavaScriptCore
and WebKit2, add a header that wraps these function declarations called XPCSPI.h
and use it instead of including the corresponding XPC API/SPI headers/forward
declaring XPC functions. This will also aid in the effort to make WebKit2 build
for iOS with the public iOS SDK.

* WTF.xcodeproj/project.pbxproj:
* wtf/spi/darwin/XPCSPI.h: Added.

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

5 years agoUse variadic templates for jsMakeNontrivialString
andersca@apple.com [Thu, 2 Oct 2014 16:14:25 +0000 (16:14 +0000)]
Use variadic templates for jsMakeNontrivialString
https://bugs.webkit.org/show_bug.cgi?id=137325

Reviewed by Sam Weinig.

* runtime/JSString.h:
(JSC::jsNontrivialString):
Add an overload that takes an rvalue reference to a String so we can transfer ownership easily.

* runtime/JSStringBuilder.h:
(JSC::jsMakeNontrivialString):
Make this a variadic function template, with a single-parameter version that can steal the string if it's OK to do so.

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

5 years ago[ Windows ] More Windows test gardening to get bots green Part 4.
roger_fong@apple.com [Thu, 2 Oct 2014 15:57:49 +0000 (15:57 +0000)]
[ Windows ] More Windows test gardening to get bots green Part 4.
* platform/win/TestExpectations: Hopefully the last batch of indiscriminate mass skipping.

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

5 years agoAX: Default orientation for aria scrollbars should be vertical
k.czech@samsung.com [Thu, 2 Oct 2014 15:32:01 +0000 (15:32 +0000)]
AX: Default orientation for aria scrollbars should be vertical
https://bugs.webkit.org/show_bug.cgi?id=137341

Reviewed by Chris Fleizach.

Source/WebCore:

Default orientation for aria scrollbars regarding w3c spec should be vertical

No new tests, covering by existing one.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::orientation):

LayoutTests:

Update expectation and test for having new test case.

* accessibility/aria-scrollbar-role-expected.txt:
* accessibility/aria-scrollbar-role.html:

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

5 years agoFixed the Inspector to be able to properly distinguish between scope types.
mark.lam@apple.com [Thu, 2 Oct 2014 15:15:03 +0000 (15:15 +0000)]
Fixed the Inspector to be able to properly distinguish between scope types.
<https://webkit.org/b/137279>

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

The pre-existing code incorrectly labels Catch Scopes and Function Name Scopes
as With Scopes.  This patch will fix this.

* bytecode/BytecodeList.json:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitPushFunctionNameScope):
(JSC::BytecodeGenerator::emitPushCatchScope):
- These now passes stores the desired JSNameScope::Type in a bytecode operand.
* debugger/DebuggerScope.cpp:
(JSC::DebuggerScope::isCatchScope):
(JSC::DebuggerScope::isFunctionNameScope):
- Added queries to be able to explicitly test if the scope is a CatchScope
  or FunctionNameScope.  The FunctionNameScope is the case where the
  NameScope is used to capture the function name of a function expression.
* debugger/DebuggerScope.h:
* inspector/InjectedScriptSource.js:
* inspector/JSJavaScriptCallFrame.cpp:
(Inspector::JSJavaScriptCallFrame::scopeType):
* inspector/JSJavaScriptCallFrame.h:
* inspector/JSJavaScriptCallFramePrototype.cpp:
(Inspector::JSJavaScriptCallFramePrototype::finishCreation):
(Inspector::jsJavaScriptCallFrameConstantFUNCTION_NAME_SCOPE):
* inspector/protocol/Debugger.json:
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArgumentsWithExecState):
* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::callOperation):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_push_name_scope):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_push_name_scope):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
* runtime/JSFunction.cpp:
(JSC::JSFunction::addNameScopeIfNeeded):
* runtime/JSNameScope.h:
(JSC::JSNameScope::create):
(JSC::JSNameScope::isFunctionNameScope):
(JSC::JSNameScope::isCatchScope):
(JSC::JSNameScope::JSNameScope):
- Now stores the JSNameScope::Type in a field.

Source/WebInspectorUI:

Reviewed by Geoffrey Garen and Joseph Pecoraro.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Controllers/DebuggerManager.js:
* UserInterface/Models/ScopeChainNode.js:
* UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
- Added handling of the FunctionNameScope case.

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

5 years ago[GTK] [JHBuild] Switch sourceware.org mirror to http.
clopez@igalia.com [Thu, 2 Oct 2014 12:30:00 +0000 (12:30 +0000)]
[GTK] [JHBuild] Switch sourceware.org mirror to http.

Unreviewed.

The ftp access is recently failing to work as expected, and the
bots fail to download the file.
The same mirror is available via http and seems to work better.

* gtk/jhbuild.modules:

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

5 years ago[EFL][WK2] test_ewk2_view is failed
ryuan.choi@gmail.com [Thu, 2 Oct 2014 11:14:43 +0000 (11:14 +0000)]
[EFL][WK2] test_ewk2_view is failed
https://bugs.webkit.org/show_bug.cgi?id=132983

Reviewed by Gyuyoung Kim.

Enable test_ewk2_view because test cases of test_ewk2_view are passed except
for few tests related to device_pixel_ratio.
This patch adds macro guard for ailed test case to CAIRO_SURFACE_SET_DEVICE_SCALE macro.
In addition, fixed some warnings while building with test_ewk2_view.

* PlatformEfl.cmake: Enables test_ewk2_view.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: Added const keyword for argument to fix the warnings.
(EWK2UnitTest::EWK2UnitTestBase::keyDown):
(EWK2UnitTest::EWK2UnitTestBase::keyUp):
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):

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

5 years agoWeb Inspector: [GTK] Missing icons and enhancing the proportion and visibility of...
agomez@igalia.com [Thu, 2 Oct 2014 10:57:22 +0000 (10:57 +0000)]
Web Inspector: [GTK] Missing icons and enhancing the proportion and visibility of some icons
https://bugs.webkit.org/show_bug.cgi?id=137248

Reviewed by Carlos Garcia Campos.

Add more free icons and removed some unused ones for the Web
Inspector in GTK+.
Also, enhanced the visibility and/or proportion of several of the
icons.

* UserInterface/Images/gtk/AUTHORS:
* UserInterface/Images/gtk/COPYING:
* UserInterface/Images/gtk/Checkers.svg: Added.
* UserInterface/Images/gtk/Circle.svg: Added.
* UserInterface/Images/gtk/CloseLarge.svg: Added.
* UserInterface/Images/gtk/CloseTimeline.png: Removed.
* UserInterface/Images/gtk/CloseTimeline@2x.png: Removed.
* UserInterface/Images/gtk/Crosshair.svg:
* UserInterface/Images/gtk/DOMCharacterData.svg:
* UserInterface/Images/gtk/DOMComment.svg:
* UserInterface/Images/gtk/DOMDocument.svg:
* UserInterface/Images/gtk/DOMDocumentType.svg:
* UserInterface/Images/gtk/DOMElement.svg:
* UserInterface/Images/gtk/DOMNode.svg:
* UserInterface/Images/gtk/DOMTextNode.svg:
* UserInterface/Images/gtk/DOMTree.svg:
* UserInterface/Images/gtk/EventListener.svg:
* UserInterface/Images/gtk/Exception.svg:
* UserInterface/Images/gtk/Function.svg:
* UserInterface/Images/gtk/GradientStop.png: Added.
* UserInterface/Images/gtk/GradientStop@2x.png: Added.
* UserInterface/Images/gtk/GradientStopSelected.png: Added.
* UserInterface/Images/gtk/GradientStopSelected@2x.png: Added.
* UserInterface/Images/gtk/Issues.svg:
* UserInterface/Images/gtk/IssuesEnabled.svg:
* UserInterface/Images/gtk/LessColumns.svg: Removed.
* UserInterface/Images/gtk/Logs.svg:
* UserInterface/Images/gtk/Memory.svg: Removed.
* UserInterface/Images/gtk/MoreColumns.svg: Removed.
* UserInterface/Images/gtk/Native.svg:
* UserInterface/Images/gtk/NavigationItemAngleBrackets.svg:
* UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg:
* UserInterface/Images/gtk/NavigationItemBug.svg:
* UserInterface/Images/gtk/NavigationItemFile.svg:
* UserInterface/Images/gtk/NavigationItemLayers.svg:
* UserInterface/Images/gtk/NavigationItemMagnifyingGlass.svg: Removed.
* UserInterface/Images/gtk/NavigationItemProbes.pdf: Added.
* UserInterface/Images/gtk/NavigationItemStopwatch.svg:
* UserInterface/Images/gtk/NavigationItemTypes.svg: Added.
* UserInterface/Images/gtk/PaintFlashing.svg: Added.
* UserInterface/Images/gtk/PseudoElement.svg:
* UserInterface/Images/gtk/Record.svg: Added.
* UserInterface/Images/gtk/Recording.png: Removed.
* UserInterface/Images/gtk/Recording@2x.png: Removed.
* UserInterface/Images/gtk/RecordingHovered.png: Removed.
* UserInterface/Images/gtk/RecordingHovered@2x.png: Removed.
* UserInterface/Images/gtk/RecordingStopped.png: Removed.
* UserInterface/Images/gtk/RecordingStopped@2x.png: Removed.
* UserInterface/Images/gtk/Reflection.svg:
* UserInterface/Images/gtk/ReplayPauseButton.svg: Added.
* UserInterface/Images/gtk/ReplayPlayButton.svg: Added.
* UserInterface/Images/gtk/ReplayRecordingButton.svg: Added.
* UserInterface/Images/gtk/Request.svg:
* UserInterface/Images/gtk/Resources.svg:
* UserInterface/Images/gtk/Response.svg:
* UserInterface/Images/gtk/ResultLine.svg:
* UserInterface/Images/gtk/SourceCode.svg:
* UserInterface/Images/gtk/Stop.svg: Added.
* UserInterface/Images/gtk/StyleRuleAuthor.svg:
* UserInterface/Images/gtk/StyleRuleInherited.svg:
* UserInterface/Images/gtk/StyleRuleInheritedElement.svg:
* UserInterface/Images/gtk/StyleRuleInspector.svg:
* UserInterface/Images/gtk/StyleRuleUser.svg:
* UserInterface/Images/gtk/StyleRuleUserAgent.svg:
* UserInterface/Images/gtk/Time.svg:
* UserInterface/Images/gtk/TimelineRecordAnimation.svg:
* UserInterface/Images/gtk/TimelineRecordConsoleProfile.svg: Added.
* UserInterface/Images/gtk/TimelineRecordEvent.svg:
* UserInterface/Images/gtk/TimelineRecordLayout.svg:
* UserInterface/Images/gtk/TimelineRecordPaint.svg:
* UserInterface/Images/gtk/TimelineRecordProbeSampled.svg: Added.
* UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg:
* UserInterface/Images/gtk/TimelineRecordStyle.svg:
* UserInterface/Images/gtk/TimelineRecordTimer.svg:
* UserInterface/Images/gtk/Weight.svg:

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

5 years agoFix minimal build warnings
evab.u-szeged@partner.samsung.com [Thu, 2 Oct 2014 09:47:27 +0000 (09:47 +0000)]
Fix minimal build warnings
https://bugs.webkit.org/show_bug.cgi?id=137066

Reviewed by Daniel Bates.

No new tests, no behavior change.

* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::glyphDataForCharacter):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting):

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

5 years ago[EFL] Unreviewed EFL gardening. Rebaseline after r174160.
jinwoo7.song@samsung.com [Thu, 2 Oct 2014 09:05:43 +0000 (09:05 +0000)]
[EFL] Unreviewed EFL gardening. Rebaseline after r174160.

* platform/efl/fast/borders/bidi-002-expected.txt:
* platform/efl/fast/borders/bidi-009a-expected.txt:

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

5 years agoMinor bug in UIClient::exceededDatabaseQuota()
commit-queue@webkit.org [Thu, 2 Oct 2014 08:01:08 +0000 (08:01 +0000)]
Minor bug in UIClient::exceededDatabaseQuota()
https://bugs.webkit.org/show_bug.cgi?id=137213

Patch by JinYoung Hur <hurims@gmail.com> on 2014-10-02
Reviewed by Anders Carlsson.

Make sure not to call the completion handler twice if exceededDatabaseQuota is null.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageUIClient):

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

5 years ago[EFL] Unreviewed EFL gardening. Add expected results after r174002 and r136484.
jinwoo7.song@samsung.com [Thu, 2 Oct 2014 07:58:47 +0000 (07:58 +0000)]
[EFL] Unreviewed EFL gardening. Add expected results after r174002 and r136484.

* platform/efl/fast/css-generated-content/initial-letter-basic-expected.txt: Added.
* platform/efl/fast/css-generated-content/initial-letter-border-padding-expected.txt: Added.
* platform/efl/fast/css-generated-content/initial-letter-clearance-expected.txt: Added.
* platform/efl/fast/css-generated-content/initial-letter-descender-expected.txt: Added.
* platform/efl/fast/css-generated-content/initial-letter-raised-expected.txt: Added.
* platform/efl/fast/css-generated-content/initial-letter-sunken-expected.txt: Added.

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

5 years agoUnreviewed, rolling out r174185.
commit-queue@webkit.org [Thu, 2 Oct 2014 06:25:28 +0000 (06:25 +0000)]
Unreviewed, rolling out r174185.
https://bugs.webkit.org/show_bug.cgi?id=137334

Patch that adds logging causes webkitpy failures (Requested by
rfong on #webkit).

Reverted changeset:

"commitqueuetasks_unittest references a non-existent member
variable"
https://bugs.webkit.org/show_bug.cgi?id=137303
http://trac.webkit.org/changeset/174185

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

5 years agoEWS and Commit Queue should know better than to spew 500 failed
commit-queue@webkit.org [Thu, 2 Oct 2014 06:19:27 +0000 (06:19 +0000)]
EWS and Commit Queue should know better than to spew 500 failed
results in the case of extremely red patches.
https://bugs.webkit.org/show_bug.cgi?id=137324

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-01
Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
Adds a check for did_exceed_test_failure_limit.
(AbstractEarlyWarningSystem._failing_tests_message):
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
Alters the task mock to respond properly to
results_from_patch_test_run(patch)
(AbstractEarlyWarningSystemTest.test_failing_tests_message):
* Scripts/webkitpy/tool/commands/queues.py:
Adds a check for did_exceed_test_failure_limit.
(CommitQueue._failing_tests_message):

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

5 years agoBump version to 2.7.0
commit-queue@webkit.org [Thu, 2 Oct 2014 06:19:00 +0000 (06:19 +0000)]
Bump version to 2.7.0
https://bugs.webkit.org/show_bug.cgi?id=137301

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2014-10-01
Rubber-stamped by Carlos Garcia Campos.

* Source/cmake/OptionsGTK.cmake: Bump version numbers

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

5 years agoClick events offset in webkit-overflow-scrolling iframes
commit-queue@webkit.org [Thu, 2 Oct 2014 06:10:59 +0000 (06:10 +0000)]
Click events offset in webkit-overflow-scrolling iframes
https://bugs.webkit.org/show_bug.cgi?id=134596

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-01
Reviewed by Sam Weinig.

* platform/ScrollView.cpp:
(WebCore::ScrollView::visibleContentRectInternal):
When converting coordinates from the main frame to a subframe's document, the position
is first converted to the subframe's FrameView coordinate system, then offset by the scroll
offset of the subframe itself.

The bug in this case was that the scroll offset used was the global scroll offset of the frame
in the view instead of the scroll offset of the document in its own frameview.

The regression was introduced by the refactoring r162663. On iOS WebKit1, the coordinate system
is different depending on VisibleContentRectIncludesScrollbars. In r162663, the value was set
such that the rect returned is always in absolute coordinate.

The ideal solution would be to refactor ScrollView::platformVisibleContentRect() to always return
the offsets in scroll view coordinates and verify and update all the call sites to use explicit
conversion to the top frame. In this patch I only reverted the coordinate change of r162663 to avoid
large scale impact.

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

5 years agoUnreviewed, rolling out r174192.
dbates@webkit.org [Thu, 2 Oct 2014 05:25:56 +0000 (05:25 +0000)]
Unreviewed, rolling out r174192.

Revert the unit test fix in r174192 since we reverted r174187
in r174194 due to correctness issues. See
<http://webkit.org/b/137329> for more details.

Reverted changeset:

"Test fix after r174187"
http://trac.webkit.org/changeset/174192

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

5 years agoUse is<>() / downcast<>() for File
cdumez@apple.com [Thu, 2 Oct 2014 04:10:35 +0000 (04:10 +0000)]
Use is<>() / downcast<>() for File
https://bugs.webkit.org/show_bug.cgi?id=137318

Reviewed by Gyuyoung Kim.

Use is<>() / downcast<>() for File instead of isFile() / toFile().

No new tests, no behavior change.

* fileapi/Blob.h:
* fileapi/File.h:
(isType):
* fileapi/FileReader.cpp:
(WebCore::FileReader::readAsArrayBuffer):
(WebCore::FileReader::readAsBinaryString):
(WebCore::FileReader::readAsText):
(WebCore::FileReader::readAsDataURL):
* platform/network/FormData.cpp:
(WebCore::FormData::appendKeyValuePairItems):

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

5 years ago<https://webkit.org/b/137308> WebKit should build on OS X Yosemite for external users
mrowe@apple.com [Thu, 2 Oct 2014 02:19:43 +0000 (02:19 +0000)]
<https://webkit.org/b/137308> WebKit should build on OS X Yosemite for external users

Source/WebKit/mac:

Reviewed by Dan Bernstein.

* Configurations/DebugRelease.xcconfig: Use libWebKitSystemInterfaceYosemite.a on Yosemite.

Source/WebKit2:

Reviewed by Dan Bernstein.

* Configurations/DebugRelease.xcconfig: Use libWebKitSystemInterfaceYosemite.a on Yosemite.

Tools:

Reviewed by Dan Bernstein.

* Scripts/copy-webkitlibraries-to-product-directory: Copy libWebKitSystemInterfaceYosemite.a
into the build directory. Use LLVMIncludesYosemite.tar.bz2 and LLVMLibrariesYosemite.tar.bz2
for the LLVM components when on Yosemite.

WebKitLibraries:

Add versions of WebKitSystemInterface and LLVM for Yosemite. The LLVM build is from
LLVM SVN r206312, matching the Mavericks and Mountain Lion builds.

Reviewed by Dan Bernstein.

* LLVMIncludesYosemite.tar.bz2: Added.
* LLVMLibrariesYosemite.tar.bz2: Added.
* WebKitSystemInterface.h:
* libWebKitSystemInterfaceMavericks.a:
* libWebKitSystemInterfaceMountainLion.a:
* libWebKitSystemInterfaceYosemite.a: Added.

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

5 years agoUnreviewed build fix after r174193.
cdumez@apple.com [Thu, 2 Oct 2014 02:11:07 +0000 (02:11 +0000)]
Unreviewed build fix after r174193.

Adding a return statement as that function is returning a boolean.

* wtf/TypeCasts.h:
(WTF::TypeCastTraits::isOfType):

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

5 years agoUnreviewed, rolling out r174187.
commit-queue@webkit.org [Thu, 2 Oct 2014 01:58:43 +0000 (01:58 +0000)]
Unreviewed, rolling out r174187.
https://bugs.webkit.org/show_bug.cgi?id=137329

webkitpy failures, and thorton says the patch is wrong
(Requested by dethbakin on #webkit).

Reverted changeset:

"[Windows] Increase layout test timeout for Windows following
r174162."
http://trac.webkit.org/changeset/174187

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

5 years agoFail better when is<>() / downcast<>() is used for an unsupported type
cdumez@apple.com [Thu, 2 Oct 2014 01:18:46 +0000 (01:18 +0000)]
Fail better when is<>() / downcast<>() is used for an unsupported type
https://bugs.webkit.org/show_bug.cgi?id=137323

Reviewed by Benjamin Poulain.

We should fail better when is<>() / downcast<>() is used for an
unsupported type (i.e. a type that doesn't have the needed
TypeCastTraits template specialization). Previously, we would get an
obscure linking error, which was sub-optimal.

With this patch, you would now hit a static_assert() at build time if
you tried to use is<>() / downcast<>() for a type that did not have the
needed template specialization. There is also a helpful comment above
the assertion letting the developer know how to add the needed template
specialization.

* wtf/TypeCasts.h:
(WTF::TypeCastTraits::isOfType):

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

5 years agoTest fix after r174187
bfulgham@apple.com [Thu, 2 Oct 2014 00:58:35 +0000 (00:58 +0000)]
Test fix after r174187

* Scripts/webkitpy/port/win_unittest.py:
(WinPortTest.test_default_timeout_ms): Expect the new 50000 ms timeout for Windows tests.

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

5 years agoAdd support for midpoint to CSS gradients
cabanier@adobe.com [Thu, 2 Oct 2014 00:49:37 +0000 (00:49 +0000)]
Add support for midpoint to CSS gradients
https://bugs.webkit.org/show_bug.cgi?id=137171

Reviewed by Darin Adler.

Source/WebCore:

This patch adds support for gradient midpoints. It also updates the
gradient tests so they use the feature.
Spec: http://dev.w3.org/csswg/css-images-4/#color-interpolation-hint

Tests: fast/gradients/unprefixed-color-stops2.html
       fast/gradients/unprefixed-gradient-parsing.html
       fast/gradients/unprefixed-linear-angle-gradients2.html
       fast/gradients/unprefixed-radial-gradients.html
       fast/gradients/unprefixed-radial-gradients2.html
       fast/gradients/unprefixed-repeating-linear-gradient.html
       fast/gradients/unprefixed-repeating-radial-gradients.html

* css/CSSGradientValue.cpp:
(WebCore::GradientStop::GradientStop): constructor initializes the midpoint variable
(WebCore::CSSGradientValue::gradientWithStylesResolved): this function checks for midpoint color stops
(WebCore::CSSGradientValue::addStops): this function processes midpoints and converts them to regular color stops
(WebCore::CSSLinearGradientValue::customCSSText): this routine was updated to do correct parsing for midpoints
(WebCore::CSSRadialGradientValue::customCSSText):
* css/CSSGradientValue.h:
(WebCore::CSSGradientColorStop::CSSGradientColorStop): this function stores if a stop is a midpoint
* css/CSSParser.cpp:
(WebCore::CSSParser::parseGradientColorStops): this function now allows color stops with no color

LayoutTests:

Updated the CSS gradient test files so they test the
gradient midpoint feature.

* fast/gradients/unprefixed-color-stops2.html:
* fast/gradients/unprefixed-gradient-parsing.html:
* fast/gradients/unprefixed-linear-angle-gradients2.html:
* fast/gradients/unprefixed-radial-gradients.html:
* fast/gradients/unprefixed-radial-gradients2.html:
* fast/gradients/unprefixed-repeating-linear-gradient.html:
* fast/gradients/unprefixed-repeating-radial-gradients.html:

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

5 years agoAdd basic caching for Document.cookie API
cdumez@apple.com [Thu, 2 Oct 2014 00:22:29 +0000 (00:22 +0000)]
Add basic caching for Document.cookie API
https://bugs.webkit.org/show_bug.cgi?id=137225

Reviewed by Alexey Proskuryakov.

Source/WebCore:

While profiling the load of nytimes.com, I noticed that the site is
accessing ~250 times document.cookie, just during page load. Accessing
document.cookie is currently slow because we:
- Call WebPlatformStrategies::cookiesForDOM() virtual function
- Send a sync IPC message to the Network process to retrieve the
  cookies
    - The Network process gets the list of cookies from CFNetwork then
      serializes the result to send it back to the WebProcess
- We unserialize the cookies into an NSList of cookies
- We filter-out the cookies that are 'httpOnly' and construct a new
  NSList of cookies
- We create a WTF String out of the cookies NSList

In the case of nytimes.com, it turns out that up to 100 calls to
document.cookie() are made in the same event loop iteration. This patch
thus caches / freezes the cookies until we return to the event
loop so that consecutive calls to document.cookie() are extremely fast.
Doing so seems to be sufficient to achieve a ~87% cache hit for
nytimes.com page load.

The cookies cache is invalidated whenever:
- document.cookie is set
- we return to the event loop
- a network resource is loaded synchronously as it may cause cookies to
  be set before we return to the event loop

Test: http/tests/cookies/sync-xhr-set-cookie-invalidates-cache.html

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::open):
(WebCore::Document::cookie):
(WebCore::Document::setCookie):
(WebCore::Document::setCookieURL):
(WebCore::Document::initSecurityContext):
(WebCore::Document::setDOMCookieCache):
(WebCore::Document::invalidateDOMCookieCache):
(WebCore::Document::domCookieCacheExpiryTimerFired):
(WebCore::Document::didLoadResourceSynchronously):
* dom/Document.h:
(WebCore::Document::domCookieCache):
(WebCore::Document::isDOMCookieCacheValid):
(WebCore::Document::setCookieURL): Deleted.
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::didLoadResourceSynchronously):
* dom/ScriptExecutionContext.h:
* loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoader::loadResourceSynchronously):

LayoutTests:

Add a layout test to make sure that document.cookie returns updated
results after cookies are set via a sync XHR.

* http/tests/cookies/sync-xhr-set-cookie-invalidates-cache-expected.txt: Added.
* http/tests/cookies/sync-xhr-set-cookie-invalidates-cache.html: Added.

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

5 years ago[Windows] Mass skip all media tests until bots have audio devices to run them with.
roger_fong@apple.com [Thu, 2 Oct 2014 00:20:32 +0000 (00:20 +0000)]
[Windows] Mass skip all media tests until bots have audio devices to run them with.
* platform/win/TestExpectations:

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

5 years agoUnreviewed, rolling out r174180, r174183, and r174186.
commit-queue@webkit.org [Wed, 1 Oct 2014 23:54:48 +0000 (23:54 +0000)]
Unreviewed, rolling out r174180, r174183, and r174186.
https://bugs.webkit.org/show_bug.cgi?id=137320

Broke the Mac MountainLion build. Will investigate offline.
(Requested by dydz on #webkit).

Reverted changesets:

"Clean up: Move XPC forward declarations in JavaScriptCore to
WTF SPI wrapper header"
https://bugs.webkit.org/show_bug.cgi?id=137277
http://trac.webkit.org/changeset/174180

"Attempt to fix the build after
<https://trac.webkit.org/changeset/174180>"
https://bugs.webkit.org/show_bug.cgi?id=137277
http://trac.webkit.org/changeset/174183

"Another attempt to fix the Mac build after
<https://trac.webkit.org/changeset/174180>"
https://bugs.webkit.org/show_bug.cgi?id=137277
http://trac.webkit.org/changeset/174186

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

5 years ago[Windows] Increase layout test timeout for Windows following r174162.
roger_fong@apple.com [Wed, 1 Oct 2014 23:29:16 +0000 (23:29 +0000)]
[Windows] Increase layout test timeout for Windows following r174162.
* Scripts/webkitpy/port/win.py:
(WinPort.default_timeout_ms):

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

5 years agoAnother attempt to fix the Mac build after <https://trac.webkit.org/changeset/174180>
dbates@webkit.org [Wed, 1 Oct 2014 23:17:59 +0000 (23:17 +0000)]
Another attempt to fix the Mac build after <https://trac.webkit.org/changeset/174180>
(https://bugs.webkit.org/show_bug.cgi?id=137277)

Include header AvailabilityMacros.h instead of Availability.h, which actually defines the
macro __MAC_OS_X_VERSION_MIN_REQUIRED.

* wtf/spi/darwin/XPCSPI.h:

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

5 years ago[Windows] Add some logging to webkitpy to debug timeout issues with running NRWT...
roger_fong@apple.com [Wed, 1 Oct 2014 23:05:54 +0000 (23:05 +0000)]
[Windows] Add some logging to webkitpy to debug timeout issues with running NRWT using multiple child processes.
* Scripts/webkitpy/port/drdiver.py:
(Driver.stop):
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.stop):

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

5 years ago[ Windows ] More Windows test gardening to get bots green Part 3.
roger_fong@apple.com [Wed, 1 Oct 2014 23:00:29 +0000 (23:00 +0000)]
[ Windows ] More Windows test gardening to get bots green Part 3.
* platform/win/TestExpectations: More indiscriminate mass skipping.

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

5 years agoAttempt to fix the build after <https://trac.webkit.org/changeset/174180>
dbates@webkit.org [Wed, 1 Oct 2014 22:59:02 +0000 (22:59 +0000)]
Attempt to fix the build after <https://trac.webkit.org/changeset/174180>
(https://bugs.webkit.org/show_bug.cgi?id=137277)

Include header <Availability.h> for the definition of __MAC_OS_X_VERSION_MIN_REQUIRED.
Also, we want to define CONST_ON_OR_AFTER_MAC_OS_X_VERSION_1090 to be const when building
on iOS.

* wtf/spi/darwin/XPCSPI.h:

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

5 years agocommitqueuetasks_unittest references a non-existent member variable
commit-queue@webkit.org [Wed, 1 Oct 2014 22:46:39 +0000 (22:46 +0000)]
commitqueuetasks_unittest references a non-existent member variable
when mock-reporting flaky tests.
https://bugs.webkit.org/show_bug.cgi?id=137303

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-01
Reviewed by Daniel Bates.

* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
(MockCommitQueue.report_flaky_tests):
Makes the appropriate name change.
(test_simple_flaky_test_failure):
Adds a unit test to make sure that the code is excercised.

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

5 years agoThis expectation should be MoutainLion-only until we find evidence otherwise.
bdakin@apple.com [Wed, 1 Oct 2014 22:43:56 +0000 (22:43 +0000)]
This expectation should be MoutainLion-only until we find evidence otherwise.

* platform/mac/TestExpectations:

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

5 years agoClean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
dbates@webkit.org [Wed, 1 Oct 2014 22:38:18 +0000 (22:38 +0000)]
Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
https://bugs.webkit.org/show_bug.cgi?id=137277

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
forward declaring XPC functions.

* inspector/remote/RemoteInspector.mm:
* inspector/remote/RemoteInspectorXPCConnection.h:
* inspector/remote/RemoteInspectorXPCConnection.mm:

Source/WebKit2:

Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
forward declaring XPC functions.

* Platform/IPC/Connection.h:
* Platform/IPC/mac/ConnectionMac.mm:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:

Source/WTF:

Towards centralizing the declarations of XPC functions used in JavaScriptCore
and WebKit2, add a header that wraps these function declarations called XPCSPI.h
and use it instead of including the corresponding XPC API/SPI headers/forward
declaring XPC functions. This will also aid in the effort to make WebKit2 build
for iOS with the public iOS SDK.

* WTF.xcodeproj/project.pbxproj:
* wtf/spi/darwin/XPCSPI.h: Added.

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

5 years agoAnother flaky-trashy test.
bdakin@apple.com [Wed, 1 Oct 2014 22:35:25 +0000 (22:35 +0000)]
Another flaky-trashy test.

* platform/mac/TestExpectations:

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

5 years agoUse is<>() / downcast<>() for Event classes
cdumez@apple.com [Wed, 1 Oct 2014 22:29:14 +0000 (22:29 +0000)]
Use is<>() / downcast<>() for Event classes
https://bugs.webkit.org/show_bug.cgi?id=137284

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for Event classes.

Source/WebCore:

No new tests, no behavior change.

* bindings/js/JSErrorHandler.cpp:
(WebCore::JSErrorHandler::handleEvent):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* dom/BeforeTextInsertedEvent.h:
* dom/BeforeUnloadEvent.h:
* dom/ErrorEvent.h:
* dom/Event.h:
* dom/EventContext.cpp:
(WebCore::MouseOrFocusEventContext::handleLocalEvents):
* dom/FocusEvent.h:
* dom/KeyboardEvent.cpp:
(WebCore::findKeyboardEvent):
* dom/KeyboardEvent.h:
* dom/MouseEvent.cpp:
(WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
* dom/MouseEvent.h:
* dom/Node.cpp:
(WebCore::Node::defaultEventHandler):
* dom/TextEvent.h:
* dom/UIEvent.h:
* dom/WheelEvent.h:
* html/HTMLAnchorElement.cpp:
(WebCore::appendServerMapMousePosition):
(WebCore::HTMLAnchorElement::defaultEventHandler):
(WebCore::HTMLAnchorElement::eventType):
(WebCore::isEnterKeyKeydownEvent):
(WebCore::isLinkClick):
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::defaultEventHandler):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::submitImplicitly):
* html/HTMLFormElement.h:
* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::defaultEventHandler):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::willDispatchEvent):
(WebCore::HTMLInputElement::defaultEventHandler):
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::defaultEventHandler):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
(WebCore::HTMLSelectElement::defaultEventHandler):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::defaultEventHandler):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::defaultEventHandler):
* html/ImageDocument.cpp:
(WebCore::ImageEventListener::handleEvent):
* html/ImageInputType.cpp:
(WebCore::ImageInputType::handleDOMActivateEvent):
* html/InputType.cpp:
(WebCore::InputType::shouldSubmitImplicitly):
* html/InputType.h:
* html/MediaDocument.cpp:
(WebCore::MediaDocument::defaultEventHandler):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::shouldSubmitImplicitly):
* html/TextFieldInputType.h:
* html/shadow/MediaControlElementTypes.cpp:
(WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::defaultEventHandler):
(WebCore::MediaControlVolumeSliderContainerElement::defaultEventHandler):
(WebCore::MediaControlTimelineElement::defaultEventHandler):
* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::containsRelatedTarget):
* html/shadow/MediaControlsApple.cpp:
(WebCore::MediaControlsAppleEventListener::handleEvent):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::defaultEventHandler):
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::defaultEventHandler):
(WebCore::SpinButtonElement::forwardEvent):
* html/shadow/TextControlInnerElements.cpp:
(WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
(WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::dispatchEventAsContextMenuEvent):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::maybeCreateContextMenu):
* page/EventHandler.cpp:
(WebCore::EventHandler::handleTextInputEvent):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
* rendering/RenderEmbeddedObject.h:
* rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::handleEvent):

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::handleEvent):

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

5 years ago[Win] Unreviewed build gardening.
bfulgham@apple.com [Wed, 1 Oct 2014 22:12:30 +0000 (22:12 +0000)]
[Win] Unreviewed build gardening.

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Show files in the appropriate
folders in Visual Studio.

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

5 years agoYet another crash-flaky test.
bdakin@apple.com [Wed, 1 Oct 2014 22:00:59 +0000 (22:00 +0000)]
Yet another crash-flaky test.

* TestExpectations:

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

5 years agoObject allocation sinking is broken for escaping sites in loops
fpizlo@apple.com [Wed, 1 Oct 2014 21:34:12 +0000 (21:34 +0000)]
Object allocation sinking is broken for escaping sites in loops
https://bugs.webkit.org/show_bug.cgi?id=137310

Reviewed by Michael Saboff.

I tried to do this clever forward-flow based materialization point placement, and I messed up loops. Disabling
the phase for now and landing a test to demonstrate what it going on.

* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThreadImpl):
* runtime/Options.h:
* tests/stress/object-escapes-in-loop.js: Added.
(foo):
(bar):

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

5 years agoMarking this test as CRASHY-flaky since it is.
bdakin@apple.com [Wed, 1 Oct 2014 21:27:43 +0000 (21:27 +0000)]
Marking this test as CRASHY-flaky since it is.

* platform/mac-wk2/TestExpectations:

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

5 years agoEWS is inconclusively spinning forever on a patch that breaks 500+
commit-queue@webkit.org [Wed, 1 Oct 2014 21:08:17 +0000 (21:08 +0000)]
EWS is inconclusively spinning forever on a patch that breaks 500+
tests
https://bugs.webkit.org/show_bug.cgi?id=137223

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-01
Reviewed by Tim Horton.

* Scripts/webkitpy/tool/bot/patchanalysistask.py:
Checks to see whether the tests have exceeded the failure limit, and
only spins off another test if they have not exceeded the limit.
(PatchAnalysisTask._test_patch):

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

5 years agoMarking this test as trashy-flaky since it is.
bdakin@apple.com [Wed, 1 Oct 2014 21:02:08 +0000 (21:02 +0000)]
Marking this test as trashy-flaky since it is.

* platform/mac/TestExpectations:

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

5 years ago[TexMap] Sprinkle range-based for-loops in GraphicsLayerTextureMapper, TextureMapperLayer
zandobersek@gmail.com [Wed, 1 Oct 2014 20:52:59 +0000 (20:52 +0000)]
[TexMap] Sprinkle range-based for-loops in GraphicsLayerTextureMapper, TextureMapperLayer
https://bugs.webkit.org/show_bug.cgi?id=137271

Reviewed by Sergio Villar Senin.

Switch to using C++11 range-based for-loops in the
GraphicsLayerTextureMapper and TextureMapperLayer classes.

The for loops that remained unchanged either do further computation
with the loop index or must iterate over the container in reverse.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::toTextureMapperLayerVector):
(WebCore::GraphicsLayerTextureMapper::flushCompositingState):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeTransformsRecursive):
(WebCore::TextureMapperLayer::paintSelfAndChildren):
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
(WebCore::TextureMapperLayer::~TextureMapperLayer):
(WebCore::TextureMapperLayer::setChildren):
(WebCore::TextureMapperLayer::descendantsOrSelfHaveRunningAnimations):
(WebCore::TextureMapperLayer::applyAnimationsRecursively):

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

5 years agoSupport the type profiler in the DFG
saambarati1@gmail.com [Wed, 1 Oct 2014 20:47:51 +0000 (20:47 +0000)]
Support the type profiler in the DFG
https://bugs.webkit.org/show_bug.cgi?id=136712

Reviewed by Filip Pizlo.

This patch implements op_profile_type inside the DFG as the node: ProfileType.
The DFG will convert the ProfileType node into a Check node in the cases where
passing a type check is equivalent to writing to the TypeProfilerLog. This
gives the DFG the potential to optimize out multiple ProfileType nodes into
a single Check node.

When the DFG doesn't convert ProfileType into a Check node, it will generate
the same inline code as the baseline JIT does for writing an entry to the
TypeProfilerLog.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.h:
(JSC::DFG::Node::typeLocation):
* dfg/DFGNodeType.h:
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* runtime/TypeProfiler.cpp:
(JSC::TypeProfiler::logTypesForTypeLocation):
* runtime/TypeSet.cpp:
(JSC::TypeSet::dumpTypes):
(JSC::TypeSet::doesTypeConformTo):
Make this method public so others can reason about the types a TypeSet has seen.
(JSC::TypeSet::seenTypes): Deleted.
(JSC::TypeSet::dumpSeenTypes): Deleted.
Renamed to dumpTypes so the method seenTypes can be used as a public getter.
* runtime/TypeSet.h:
(JSC::TypeSet::seenTypes):
* tests/typeProfiler/dfg-jit-optimizations.js: Added.
(tierUpToDFG):
(funcs):
(.return):

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

5 years agoUnreviewed, fix 32-bit.
fpizlo@apple.com [Wed, 1 Oct 2014 20:39:02 +0000 (20:39 +0000)]
Unreviewed, fix 32-bit.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

5 years agoDFG SSA should use PutLocal/KillLocal instead of SetLocal to communicate what is...
fpizlo@apple.com [Wed, 1 Oct 2014 20:12:11 +0000 (20:12 +0000)]
DFG SSA should use PutLocal/KillLocal instead of SetLocal to communicate what is flushed to the stack and when
https://bugs.webkit.org/show_bug.cgi?id=137242

Reviewed by Geoffrey Garen.

OSR availability has to do with telling you the various ways that you could go about getting
the value of a bytecode variable. It can give you two options: node availability means that
there is a node in the DFG IR that has the right value, and flush availability tells you
that the value was already stored to the stack. The clients of OSR availability would
typically prefer flush over node availability.

Previously OSR availability was affected thusly by the various local-related nodes: SetLocal
set both the node and flush availability, MovHint set node availability and cleared flush
availability, GetArgument set both, and ZombieHint cleared both.

A MovHint could be turned into a ZombieHint if its source value was DCEd.

The fact that each node affected both node and flush availability caused weirdness. For
example it meant that we could not insert MovHints in areas of the CFG where a SetLocal's
variable was still live, because then those parts of the code would forget that they had an
availability flush. This meant that if a flush was available, we wouldn't insert MovHints,
and so we would forget that a node was in fact available. This kind of "either-or" picking
was not only hackish but it led to interesting problems for IR transformation: for example
if you tried to do any kind of code motion on SetLocals, you had to be super careful because
you might violate the rule that "MovHints must exist for a live local if a flush is
unavailable".

The right thing to do is to have independent nodes for flushing and making nodes available.
They shouldn't interact with each other. This patch accomplishes this:

- PutLocal means that that a value is to be stored to the stack. It makes a flush available.
- KillLocal means that the value stored to the stack is no longer available for the purposes
  of OSR (i.e. it no longer accurately corresponds to what that actual bytecode variable
  would have been, so you have to fall back on node availability).
- MovHint means that a node is available. It has no effect on flush availability.
- ZombieHint means that a node is not available. It has no effect on flush availability.

This means that we will see a lot of KillLocals and MovHints right next to each other. It's
a bit verbose, but at least it's precise.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGAvailability.h:
(JSC::DFG::Availability::setFlush):
(JSC::DFG::Availability::setNode):
(JSC::DFG::Availability::setNodeUnavailable):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.cpp:
(JSC::DFG::Node::hasVariableAccessData):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasUnlinkedLocal):
(JSC::DFG::Node::willHaveCodeGenOrOSR):
* dfg/DFGNodeType.h:
* dfg/DFGOSRAvailabilityAnalysisPhase.cpp:
(JSC::DFG::LocalOSRAvailabilityCalculator::executeNode):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSSAConversionPhase.cpp:
(JSC::DFG::SSAConversionPhase::run):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStackLayoutPhase.cpp:
(JSC::DFG::StackLayoutPhase::run):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compilePutLocal):
(JSC::FTL::LowerDFGToLLVM::compileSetLocal): Deleted.

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

5 years agoUnreviewed, add Katie Madonna as a contributor.
burg@cs.washington.edu [Wed, 1 Oct 2014 18:30:58 +0000 (18:30 +0000)]
Unreviewed, add Katie Madonna as a contributor.

* Scripts/webkitpy/common/config/contributors.json:

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

5 years ago[ Windows ] More Windows test gardening to get bots green Part 2.
roger_fong@apple.com [Wed, 1 Oct 2014 18:26:11 +0000 (18:26 +0000)]
[ Windows ] More Windows test gardening to get bots green Part 2.
* platform/win/TestExpectations: More indiscriminate mass skipping.

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

5 years ago[Win] 32-bit JavaScriptCore should limit itself to the C loop
bfulgham@apple.com [Wed, 1 Oct 2014 18:22:25 +0000 (18:22 +0000)]
[Win] 32-bit JavaScriptCore should limit itself to the C loop
https://bugs.webkit.org/show_bug.cgi?id=137304
<rdar://problem/18375370>

Reviewed by Michael Saboff.

../JavaScriptCore:

* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/build-LLIntAssembly.pl:
Use the C loop for 32-bit builds.

../WTF:

* wtf/Platform.h: Force the C loop when building for 32-bit Windows.

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

5 years agocommitqueuetasks_unittest does not construct FailingTestCommitQueue
commit-queue@webkit.org [Wed, 1 Oct 2014 17:52:06 +0000 (17:52 +0000)]
commitqueuetasks_unittest does not construct FailingTestCommitQueue
objects properly in its test cases.
https://bugs.webkit.org/show_bug.cgi?id=137281

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-01
Reviewed by Daniel Bates.

* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
(FailingTestCommitQueue.test_results):
Adds an assert to make FailingTestCommitQueue harder to mis-use.
(test_double_flaky_test_failure):
Nests the intended test failure strings into one-length lists.
(test_red_test_failure):
Nests the intended test failure strings into one-length lists.

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

5 years agoREGRESSION (r172172): Multiple regression tests fail when primary system language...
ap@apple.com [Wed, 1 Oct 2014 17:35:59 +0000 (17:35 +0000)]
REGRESSION (r172172): Multiple regression tests fail when primary system language is Russian
https://bugs.webkit.org/show_bug.cgi?id=136987

Reviewed by Daniel Bates.

Tools:

* WebKitTestRunner/TestController.cpp: (WTR::TestController::resetPreferencesToConsistentValues):
Specify the default encoding for all WebKit developers to get consistent results.

LayoutTests:

These test changes are not strictly necessary to fix the issue, as I'm also adding
a default to WebKitTestRunner. But it's nice to have tests work identically in WKTR
and in a browser, for which it's necessary to have them specify charset.

* accessibility/table-scope-expected.txt:
* accessibility/table-scope.html:
* fast/borders/bidi-002.html:
* fast/borders/bidi-009a.html:
* fast/frames/sandboxed-iframe-attribute-parsing-03-expected.txt:
* fast/frames/sandboxed-iframe-attribute-parsing-03.html:
* platform/mac/accessibility/table-headers-attribute-expected.txt:
* platform/mac/accessibility/table-headers-attribute.html:
* platform/mac/accessibility/table-with-zebra-rows-expected.txt:
* platform/mac/accessibility/table-with-zebra-rows.html:
* platform/mac/fast/borders/bidi-002-expected.png:
* platform/mac/fast/borders/bidi-002-expected.txt:
* platform/mac/fast/borders/bidi-009a-expected.png:
* platform/mac/fast/borders/bidi-009a-expected.txt:
* plugins/plugin-remove-subframe-expected.txt:
* plugins/plugin-remove-subframe.html:
These tests were actually expected to use UTF-8, so we used to be running them in
an inconsequentially wrong way.

* fast/css/text-transform-select.html:
* fast/encoding/high-bit-latin1.html:
* fast/encoding/parser-tests-10.html:
* fast/encoding/parser-tests-100.html:
* fast/encoding/parser-tests-110.html:
* fast/encoding/parser-tests-120.html:
* fast/encoding/parser-tests-20.html:
* fast/encoding/parser-tests-30.html:
* fast/encoding/parser-tests-50.html:
* fast/encoding/parser-tests-60.html:
* fast/encoding/parser-tests-70.html:
* fast/encoding/parser-tests-80.html:
* fast/encoding/parser-tests-90.html:
* fast/encoding/parser-tests.html:
* fast/url/anchor.html:
* fast/url/file-http-base.html:
* fast/url/file.html:
* fast/url/query.html:
* fast/url/standard-url.html:
* http/tests/misc/char-encoding-in-hidden-charset-field-default.html:
* js/dom/regexp-overflow.html:
* tables/mozilla_expected_failures/bugs/bug47163.html:
Specified the encoding, windows-1252 is what we use for Latin1 and ISO-8859-1 alike.

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

5 years agoEWS is too eager to say that a patch does not apply to trunk of repository
ap@apple.com [Wed, 1 Oct 2014 17:18:10 +0000 (17:18 +0000)]
EWS is too eager to say that a patch does not apply to trunk of repository
https://bugs.webkit.org/show_bug.cgi?id=137290

Reviewed by Ryosuke Niwa.

* QueueStatusServer/app.yaml: Updated app version.

* QueueStatusServer/handlers/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._build_bubbles_for_attachment):
Rewrote to make more sense.

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

5 years agoWindows build fix.
mitz@apple.com [Wed, 1 Oct 2014 16:17:21 +0000 (16:17 +0000)]
Windows build fix.

* platform/network/cf/ResourceResponseCFNet.cpp:

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

5 years agoREGRESSION (r173423): [iOS] Sites with EV certificates appear as normal HTTPS sites
mitz@apple.com [Wed, 1 Oct 2014 14:31:35 +0000 (14:31 +0000)]
REGRESSION (r173423): [iOS] Sites with EV certificates appear as normal HTTPS sites
https://bugs.webkit.org/show_bug.cgi?id=137262

Reviewed by Antti Koivisto.

No new tests, because the API test harness doesn’t run an HTTP server to test against.

* platform/network/cf/ResourceResponseCFNet.cpp:
(WebCore::ResourceResponse::platformCertificateInfo): Return a CertificateInfo initialized
with the certificate array from the response.

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

5 years ago[iOS] <select> with <optgroup> may change initial selected option when assisted
commit-queue@webkit.org [Wed, 1 Oct 2014 08:15:40 +0000 (08:15 +0000)]
[iOS] <select> with <optgroup> may change initial selected option when assisted
https://bugs.webkit.org/show_bug.cgi?id=137261

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-10-01
Reviewed by Enrica Casucci.

The initial assignemnt of _singleSelectionIndex was calculating the
item index (ignoring groups) instead of the row index (affected by
groups!). Thus if there was N groups we would select the row N
before the real selection.

Also avoid this entirely if this is a multiple selection picker.
This logic is only needed for single selection with groups.

* UIProcess/ios/forms/WKFormSelectPicker.mm:
(-[WKMultipleSelectPicker initWithView:]):

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

5 years agoVersioning.
bshafiei@apple.com [Wed, 1 Oct 2014 06:40:33 +0000 (06:40 +0000)]
Versioning.

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

5 years agoCSS JIT: Enable multiple stack references allocation by allocateUninitialized
utatane.tea@gmail.com [Wed, 1 Oct 2014 06:20:00 +0000 (06:20 +0000)]
CSS JIT: Enable multiple stack references allocation by allocateUninitialized
https://bugs.webkit.org/show_bug.cgi?id=135293

Reviewed by Benjamin Poulain.

* cssjit/StackAllocator.h:
(WebCore::StackAllocator::stackTop):
    Add stackTop method to check references are allocated easily.
(WebCore::StackAllocator::allocateUninitialized):

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

5 years agoDrop getPtr() overload taking a Document reference in argument
cdumez@apple.com [Wed, 1 Oct 2014 05:49:11 +0000 (05:49 +0000)]
Drop getPtr() overload taking a Document reference in argument
https://bugs.webkit.org/show_bug.cgi?id=137280

Reviewed by Daniel Bates.

Drop getPtr() overload taking a Document reference in argument. This is
no longer needed as the generic getPtr() function converts references
into pointers just fine after r173765.

No new tests, no behavior change.

* dom/Document.h:
(WTF::getPtr): Deleted.

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

5 years agoWeb Inspector: ErrorString should be passed by reference
burg@cs.washington.edu [Wed, 1 Oct 2014 04:34:19 +0000 (04:34 +0000)]
Web Inspector: ErrorString should be passed by reference
https://bugs.webkit.org/show_bug.cgi?id=137257

Reviewed by Joseph Pecoraro.

Pass the leading ErrorString argument by reference, since it is always an out parameter.
Clean up callsites where the error message is written.

Source/JavaScriptCore:

* inspector/InjectedScript.cpp:
(Inspector::InjectedScript::evaluate):
(Inspector::InjectedScript::callFunctionOn):
(Inspector::InjectedScript::evaluateOnCallFrame):
(Inspector::InjectedScript::getFunctionDetails):
(Inspector::InjectedScript::getProperties):
(Inspector::InjectedScript::getInternalProperties):
* inspector/InjectedScript.h:
* inspector/InjectedScriptBase.cpp:
(Inspector::InjectedScriptBase::makeEvalCall):
* inspector/InjectedScriptBase.h:
* inspector/agents/InspectorAgent.cpp:
(Inspector::InspectorAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorAgent::enable):
(Inspector::InspectorAgent::disable):
(Inspector::InspectorAgent::initialized):
* inspector/agents/InspectorAgent.h:
* inspector/agents/InspectorConsoleAgent.cpp:
(Inspector::InspectorConsoleAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorConsoleAgent::enable):
(Inspector::InspectorConsoleAgent::disable):
(Inspector::InspectorConsoleAgent::clearMessages):
(Inspector::InspectorConsoleAgent::reset):
(Inspector::InspectorConsoleAgent::addMessageToConsole):
* inspector/agents/InspectorConsoleAgent.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::enable):
(Inspector::InspectorDebuggerAgent::disable):
(Inspector::InspectorDebuggerAgent::setBreakpointsActive):
(Inspector::InspectorDebuggerAgent::breakpointActionsFromProtocol):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::parseLocation):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::removeBreakpoint):
(Inspector::InspectorDebuggerAgent::continueToLocation):
(Inspector::InspectorDebuggerAgent::searchInContent):
(Inspector::InspectorDebuggerAgent::getScriptSource):
(Inspector::InspectorDebuggerAgent::getFunctionDetails):
(Inspector::InspectorDebuggerAgent::pause):
(Inspector::InspectorDebuggerAgent::resume):
(Inspector::InspectorDebuggerAgent::stepOver):
(Inspector::InspectorDebuggerAgent::stepInto):
(Inspector::InspectorDebuggerAgent::stepOut):
(Inspector::InspectorDebuggerAgent::setPauseOnExceptions):
(Inspector::InspectorDebuggerAgent::evaluateOnCallFrame):
(Inspector::InspectorDebuggerAgent::setOverlayMessage):
(Inspector::InspectorDebuggerAgent::didParseSource):
(Inspector::InspectorDebuggerAgent::clearInspectorBreakpointState):
(Inspector::InspectorDebuggerAgent::assertPaused):
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::InspectorRuntimeAgent::parse):
(Inspector::InspectorRuntimeAgent::evaluate):
(Inspector::InspectorRuntimeAgent::callFunctionOn):
(Inspector::InspectorRuntimeAgent::getProperties):
(Inspector::InspectorRuntimeAgent::releaseObject):
(Inspector::InspectorRuntimeAgent::releaseObjectGroup):
(Inspector::InspectorRuntimeAgent::run):
(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):
(Inspector::InspectorRuntimeAgent::enableTypeProfiler):
(Inspector::InspectorRuntimeAgent::disableTypeProfiler):
* inspector/agents/InspectorRuntimeAgent.h:
* inspector/agents/JSGlobalObjectConsoleAgent.cpp:
(Inspector::JSGlobalObjectConsoleAgent::setMonitoringXHREnabled):
(Inspector::JSGlobalObjectConsoleAgent::addInspectedNode):
* inspector/agents/JSGlobalObjectConsoleAgent.h:
* inspector/agents/JSGlobalObjectDebuggerAgent.cpp:
(Inspector::JSGlobalObjectDebuggerAgent::injectedScriptForEval):
* inspector/agents/JSGlobalObjectDebuggerAgent.h:
* inspector/agents/JSGlobalObjectRuntimeAgent.cpp:
(Inspector::JSGlobalObjectRuntimeAgent::injectedScriptForEval):
* inspector/agents/JSGlobalObjectRuntimeAgent.h:
* inspector/scripts/codegen/generate_backend_dispatcher_header.py:
(BackendDispatcherHeaderGenerator._generate_handler_declaration_for_command):
(BackendDispatcherHeaderGenerator._generate_async_handler_declaration_for_command):
* inspector/scripts/codegen/generate_backend_dispatcher_implementation.py:
(BackendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_command):
* inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
* inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
* inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result:
* inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:

Source/WebCore:

No new tests, no behavior changed.

* inspector/CommandLineAPIHost.cpp:
(WebCore::CommandLineAPIHost::clearConsoleMessages):
* inspector/DOMEditor.cpp:
(WebCore::populateErrorString):
(WebCore::DOMEditor::insertBefore):
(WebCore::DOMEditor::removeChild):
(WebCore::DOMEditor::setAttribute):
(WebCore::DOMEditor::removeAttribute):
(WebCore::DOMEditor::setOuterHTML):
(WebCore::DOMEditor::replaceWholeText):
* inspector/DOMEditor.h:
* inspector/InspectorApplicationCacheAgent.cpp:
(WebCore::InspectorApplicationCacheAgent::enable):
(WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
(WebCore::InspectorApplicationCacheAgent::assertFrameWithDocumentLoader):
(WebCore::InspectorApplicationCacheAgent::getManifestForFrame):
(WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
* inspector/InspectorApplicationCacheAgent.h:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):
(WebCore::InspectorCSSAgent::didCreateNamedFlow):
(WebCore::InspectorCSSAgent::regionOversetChanged):
(WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
(WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
(WebCore::InspectorCSSAgent::getMatchedStylesForNode):
(WebCore::InspectorCSSAgent::getInlineStylesForNode):
(WebCore::InspectorCSSAgent::getComputedStyleForNode):
(WebCore::InspectorCSSAgent::getAllStyleSheets):
(WebCore::InspectorCSSAgent::getStyleSheet):
(WebCore::InspectorCSSAgent::getStyleSheetText):
(WebCore::InspectorCSSAgent::setStyleSheetText):
(WebCore::InspectorCSSAgent::setStyleText):
(WebCore::InspectorCSSAgent::setPropertyText):
(WebCore::InspectorCSSAgent::toggleProperty):
(WebCore::InspectorCSSAgent::setRuleSelector):
(WebCore::InspectorCSSAgent::addRule):
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
(WebCore::InspectorCSSAgent::forcePseudoState):
(WebCore::InspectorCSSAgent::getNamedFlowCollection):
(WebCore::InspectorCSSAgent::elementForId):
(WebCore::InspectorCSSAgent::assertStyleSheetForId):
(WebCore::InspectorCSSAgent::buildArrayForRegions):
(WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::hideHighlight):
(WebCore::InspectorController::setProfilerEnabled):
(WebCore::InspectorController::resume):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMAgent::assertNode):
(WebCore::InspectorDOMAgent::assertDocument):
(WebCore::InspectorDOMAgent::assertElement):
(WebCore::InspectorDOMAgent::assertEditableNode):
(WebCore::InspectorDOMAgent::assertEditableElement):
(WebCore::InspectorDOMAgent::getDocument):
(WebCore::InspectorDOMAgent::pushNodeToFrontend):
(WebCore::InspectorDOMAgent::requestChildNodes):
(WebCore::InspectorDOMAgent::querySelector):
(WebCore::InspectorDOMAgent::querySelectorAll):
(WebCore::InspectorDOMAgent::releaseBackendNodeIds):
(WebCore::InspectorDOMAgent::setAttributeValue):
(WebCore::InspectorDOMAgent::setAttributesAsText):
(WebCore::InspectorDOMAgent::removeAttribute):
(WebCore::InspectorDOMAgent::removeNode):
(WebCore::InspectorDOMAgent::setNodeName):
(WebCore::InspectorDOMAgent::getOuterHTML):
(WebCore::InspectorDOMAgent::setOuterHTML):
(WebCore::InspectorDOMAgent::setNodeValue):
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::getAccessibilityPropertiesForNode):
(WebCore::InspectorDOMAgent::performSearch):
(WebCore::InspectorDOMAgent::getSearchResults):
(WebCore::InspectorDOMAgent::discardSearchResults):
(WebCore::InspectorDOMAgent::inspect):
(WebCore::InspectorDOMAgent::setSearchingForNode):
(WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
(WebCore::InspectorDOMAgent::setInspectModeEnabled):
(WebCore::InspectorDOMAgent::highlightRect):
(WebCore::InspectorDOMAgent::highlightQuad):
(WebCore::InspectorDOMAgent::highlightNode):
(WebCore::InspectorDOMAgent::highlightFrame):
(WebCore::InspectorDOMAgent::hideHighlight):
(WebCore::InspectorDOMAgent::moveTo):
(WebCore::InspectorDOMAgent::undo):
(WebCore::InspectorDOMAgent::redo):
(WebCore::InspectorDOMAgent::markUndoableState):
(WebCore::InspectorDOMAgent::focus):
(WebCore::InspectorDOMAgent::resolveNode):
(WebCore::InspectorDOMAgent::getAttributes):
(WebCore::InspectorDOMAgent::requestNode):
(WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
(WebCore::InspectorDOMAgent::pushNodeByBackendIdToFrontend):
* inspector/InspectorDOMAgent.h:
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::setEventListenerBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::setInstrumentationBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeEventListenerBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeInstrumentationBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
(WebCore::domTypeForName):
(WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
* inspector/InspectorDOMDebuggerAgent.h:
* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMStorageAgent::enable):
(WebCore::InspectorDOMStorageAgent::disable):
(WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
(WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
(WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
(WebCore::InspectorDOMStorageAgent::findStorageArea):
* inspector/InspectorDOMStorageAgent.h:
* inspector/InspectorDatabaseAgent.cpp:
(WebCore::InspectorDatabaseAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDatabaseAgent::enable):
(WebCore::InspectorDatabaseAgent::disable):
(WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
(WebCore::InspectorDatabaseAgent::executeSQL):
* inspector/InspectorDatabaseAgent.h:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore::InspectorIndexedDBAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorIndexedDBAgent::enable):
(WebCore::InspectorIndexedDBAgent::disable):
(WebCore::assertDocument):
(WebCore::assertIDBFactory):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):
(WebCore::InspectorIndexedDBAgent::clearObjectStore):
* inspector/InspectorIndexedDBAgent.h:
* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorLayerTreeAgent::enable):
(WebCore::InspectorLayerTreeAgent::disable):
(WebCore::InspectorLayerTreeAgent::layersForNode):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
(WebCore::InspectorLayerTreeAgent::idForNode):
(WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
* inspector/InspectorLayerTreeAgent.h:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::cachedResourceContent):
(WebCore::InspectorPageAgent::resourceContent):
(WebCore::InspectorPageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::reload):
(WebCore::InspectorPageAgent::navigate):
(WebCore::InspectorPageAgent::getCookies):
(WebCore::InspectorPageAgent::deleteCookie):
(WebCore::InspectorPageAgent::getResourceTree):
(WebCore::InspectorPageAgent::getResourceContent):
(WebCore::InspectorPageAgent::searchInResource):
(WebCore::InspectorPageAgent::searchInResources):
(WebCore::InspectorPageAgent::setDocumentContent):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::canShowDebugBorders):
(WebCore::InspectorPageAgent::setShowDebugBorders):
(WebCore::InspectorPageAgent::canShowFPSCounter):
(WebCore::InspectorPageAgent::setShowFPSCounter):
(WebCore::InspectorPageAgent::canContinuouslyPaint):
(WebCore::InspectorPageAgent::setContinuousPaintingEnabled):
(WebCore::InspectorPageAgent::getScriptExecutionStatus):
(WebCore::InspectorPageAgent::setScriptExecutionDisabled):
(WebCore::InspectorPageAgent::assertFrame):
(WebCore::InspectorPageAgent::assertDocumentLoader):
(WebCore::InspectorPageAgent::setTouchEmulationEnabled):
(WebCore::InspectorPageAgent::setEmulatedMedia):
(WebCore::InspectorPageAgent::getCompositingBordersVisible):
(WebCore::InspectorPageAgent::setCompositingBordersVisible):
(WebCore::InspectorPageAgent::snapshotNode):
(WebCore::InspectorPageAgent::snapshotRect):
(WebCore::InspectorPageAgent::handleJavaScriptDialog):
(WebCore::InspectorPageAgent::archive):
* inspector/InspectorPageAgent.h:
* inspector/InspectorReplayAgent.cpp:
(WebCore::InspectorReplayAgent::startCapturing):
(WebCore::InspectorReplayAgent::stopCapturing):
(WebCore::InspectorReplayAgent::replayToPosition):
(WebCore::InspectorReplayAgent::replayToCompletion):
(WebCore::InspectorReplayAgent::pausePlayback):
(WebCore::InspectorReplayAgent::cancelPlayback):
(WebCore::InspectorReplayAgent::switchSession):
(WebCore::InspectorReplayAgent::insertSessionSegment):
(WebCore::InspectorReplayAgent::removeSessionSegment):
(WebCore::InspectorReplayAgent::findSession):
(WebCore::InspectorReplayAgent::findSegment):
(WebCore::InspectorReplayAgent::currentReplayState):
(WebCore::InspectorReplayAgent::getAvailableSessions):
(WebCore::InspectorReplayAgent::getSessionData):
(WebCore::InspectorReplayAgent::getSegmentData):
* inspector/InspectorReplayAgent.h:
* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorResourceAgent::~InspectorResourceAgent):
(WebCore::InspectorResourceAgent::enable):
(WebCore::InspectorResourceAgent::disable):
(WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
(WebCore::InspectorResourceAgent::getResponseBody):
(WebCore::InspectorResourceAgent::replayXHR):
(WebCore::InspectorResourceAgent::canClearBrowserCache):
(WebCore::InspectorResourceAgent::clearBrowserCache):
(WebCore::InspectorResourceAgent::canClearBrowserCookies):
(WebCore::InspectorResourceAgent::clearBrowserCookies):
(WebCore::InspectorResourceAgent::setCacheDisabled):
(WebCore::InspectorResourceAgent::loadResource):
* inspector/InspectorResourceAgent.h:
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::resourceStyleSheetText):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
* inspector/InspectorTimelineAgent.h:
* inspector/InspectorWorkerAgent.cpp:
(WebCore::InspectorWorkerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorWorkerAgent::enable):
(WebCore::InspectorWorkerAgent::disable):
(WebCore::InspectorWorkerAgent::canInspectWorkers):
(WebCore::InspectorWorkerAgent::connectToWorker):
(WebCore::InspectorWorkerAgent::disconnectFromWorker):
(WebCore::InspectorWorkerAgent::sendMessageToWorker):
(WebCore::InspectorWorkerAgent::setAutoconnectToWorkers):
* inspector/InspectorWorkerAgent.h:
* inspector/PageConsoleAgent.cpp:
(WebCore::PageConsoleAgent::clearMessages):
(WebCore::PageConsoleAgent::addInspectedNode):
* inspector/PageConsoleAgent.h:
* inspector/PageDebuggerAgent.cpp:
(WebCore::PageDebuggerAgent::injectedScriptForEval):
(WebCore::PageDebuggerAgent::setOverlayMessage):
* inspector/PageDebuggerAgent.h:
* inspector/PageRuntimeAgent.cpp:
(WebCore::PageRuntimeAgent::willDestroyFrontendAndBackend):
(WebCore::PageRuntimeAgent::enable):
(WebCore::PageRuntimeAgent::disable):
(WebCore::PageRuntimeAgent::injectedScriptForEval):
* inspector/PageRuntimeAgent.h:
* inspector/WebConsoleAgent.cpp:
(WebCore::WebConsoleAgent::setMonitoringXHREnabled):
* inspector/WebConsoleAgent.h:
* inspector/WorkerConsoleAgent.cpp:
(WebCore::WorkerConsoleAgent::addInspectedNode):
* inspector/WorkerConsoleAgent.h:
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::injectedScriptForEval):
* inspector/WorkerDebuggerAgent.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::resume):
* inspector/WorkerRuntimeAgent.cpp:
(WebCore::WorkerRuntimeAgent::injectedScriptForEval):
(WebCore::WorkerRuntimeAgent::run):
* inspector/WorkerRuntimeAgent.h:

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

5 years agoUpdate Install.md for Mavericks and fix typos
rniwa@webkit.org [Wed, 1 Oct 2014 01:51:43 +0000 (01:51 +0000)]
Update Install.md for Mavericks and fix typos
https://bugs.webkit.org/show_bug.cgi?id=137276

Reviewed by Benjamin Poulain.

Add the instruction to copy php.ini to enable the Postgres extension in PHP.

Also use perf.webkit.org as the directory name instead of WebKitPerfMonitor.

Finally, init-database.sql is no longer located inside database directory.

* Install.md:

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

5 years ago[ Windows ] More Windows test gardening to get bots green.
roger_fong@apple.com [Wed, 1 Oct 2014 00:17:49 +0000 (00:17 +0000)]
[ Windows ] More Windows test gardening to get bots green.
* platform/win/TestExpectations: More indiscriminate mass skipping.

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

5 years agoSource/WebCore:
commit-queue@webkit.org [Wed, 1 Oct 2014 00:14:03 +0000 (00:14 +0000)]
Source/WebCore:
Stack overflow with enormous SVG filter
https://bugs.webkit.org/show_bug.cgi?id=63290

Prevent building an SVG filter if it has more than 200 FilterEffect nodes in its map
regardless whether they will be connected to its lastEffect or not. Also discard any
filter which has more 100 contributing FilterEffect nodes in its tree.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-09-30
Reviewed by Dean Jackson.

Tests: svg/filters/svg-deeply-nested-crash.html

* platform/graphics/filters/FilterEffect.cpp:
(WebCore::collectEffects):
(WebCore::FilterEffect::totalNumberOfEffectInputs):
* platform/graphics/filters/FilterEffect.h:
-- Add a method to return the total number of input FilterEffect's contributing to a FilterEffect.
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives):
-- Do not build a filter if it has more than 200 FilterEffects in its map.
(WebCore::RenderSVGResourceFilter::applyResource):
-- Discard a filter after it was built if it has more than 100 FilterEffects in its tree.

LayoutTests:
Stack overflow with enormous SVG filter.
https://bugs.webkit.org/show_bug.cgi?id=63290.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-09-30
Reviewed by Dean Jackson.

Test if an SVG filter with deeply nested tree of FilterEffects can be loaded
with no crash. Make sure other valid filters can still be referenced by SVG
drawing elements. An SVG Filter will be ignored if the number of effects in
its map is greater than 200 or the total number of effects connected to its
last effect is greater than 100.

* svg/filters/svg-deeply-nested-crash-expected.txt: Added.
* svg/filters/svg-deeply-nested-crash.html: Added.

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

5 years agoRemove thirdparty/unittest2 from webkitpy
evab.u-szeged@partner.samsung.com [Wed, 1 Oct 2014 00:11:39 +0000 (00:11 +0000)]
Remove thirdparty/unittest2 from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=137251

Reviewed by Brent Fulgham.

Additionally ordered imports in related webkitpy files and
removed unnecessary shebangs from unittest files.

* BuildSlaveSupport/build.webkit.org-config/htdigestparser_unittest.py:
* Scripts/webkitpy/common/checkout/changelog_unittest.py:
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
* Scripts/webkitpy/common/checkout/commitinfo_unittest.py:
* Scripts/webkitpy/common/checkout/diff_parser_unittest.py:
* Scripts/webkitpy/common/checkout/scm/detection_unittest.py:
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
* Scripts/webkitpy/common/config/committers_unittest.py:
* Scripts/webkitpy/common/config/committervalidator_unittest.py:
* Scripts/webkitpy/common/config/contributionareas_unittest.py:
* Scripts/webkitpy/common/config/ports_unittest.py:
* Scripts/webkitpy/common/config/urls_unittest.py:
* Scripts/webkitpy/common/editdistance_unittest.py:
* Scripts/webkitpy/common/find_files_unittest.py:
* Scripts/webkitpy/common/lru_cache_unittest.py:
* Scripts/webkitpy/common/memoized_unittest.py:
* Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
* Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
* Scripts/webkitpy/common/net/credentials_unittest.py:
* Scripts/webkitpy/common/net/failuremap_unittest.py:
* Scripts/webkitpy/common/net/irc/ircproxy_unittest.py:
* Scripts/webkitpy/common/net/layouttestresults_unittest.py:
* Scripts/webkitpy/common/net/networktransaction_unittest.py:
* Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
* Scripts/webkitpy/common/net/statusserver_unittest.py:
* Scripts/webkitpy/common/net/unittestresults_unittest.py:
* Scripts/webkitpy/common/newstringio_unittest.py:
* Scripts/webkitpy/common/prettypatch_unittest.py:
* Scripts/webkitpy/common/read_checksum_from_png_unittest.py:
* Scripts/webkitpy/common/system/crashlogs_unittest.py:
* Scripts/webkitpy/common/system/environment_unittest.py:
* Scripts/webkitpy/common/system/executive.py: Ordered imports.
* Scripts/webkitpy/common/system/executive_mock.py: Ordered imports.
* Scripts/webkitpy/common/system/executive_unittest.py:
* Scripts/webkitpy/common/system/file_lock_integrationtest.py:
* Scripts/webkitpy/common/system/filesystem_mock_unittest.py:
* Scripts/webkitpy/common/system/filesystem_unittest.py:
* Scripts/webkitpy/common/system/logtesting.py:
* Scripts/webkitpy/common/system/logutils_unittest.py:
* Scripts/webkitpy/common/system/outputcapture.py:
* Scripts/webkitpy/common/system/outputcapture_unittest.py:
* Scripts/webkitpy/common/system/outputtee_unittest.py:
* Scripts/webkitpy/common/system/path_unittest.py:
* Scripts/webkitpy/common/system/platforminfo_unittest.py:
* Scripts/webkitpy/common/system/profiler_unittest.py:
* Scripts/webkitpy/common/system/stack_utils_unittest.py:
* Scripts/webkitpy/common/system/user_unittest.py:
* Scripts/webkitpy/common/system/workspace_unittest.py:
* Scripts/webkitpy/common/system/zipfileset_unittest.py:
* Scripts/webkitpy/common/thread/messagepump_unittest.py:
* Scripts/webkitpy/common/thread/threadedmessagequeue_unittest.py:
* Scripts/webkitpy/common/watchlist/amountchangedpattern_unittest.py:
* Scripts/webkitpy/common/watchlist/changedlinepattern_unittest.py:
* Scripts/webkitpy/common/watchlist/filenamepattern_unittest.py:
* Scripts/webkitpy/common/watchlist/watchlist_unittest.py:
* Scripts/webkitpy/common/watchlist/watchlistrule_unittest.py:
* Scripts/webkitpy/common/webkitunittest.py:
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
* Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py:
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
* Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_configuration_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_failures_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_results_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
* Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
* Scripts/webkitpy/layout_tests/servers/http_server_base_unittest.py:
* Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:
* Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
* Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
* Scripts/webkitpy/layout_tests/views/printing_unittest.py:
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
* Scripts/webkitpy/port/base_unittest.py:
* Scripts/webkitpy/port/builders_unittest.py:
* Scripts/webkitpy/port/config_unittest.py:
* Scripts/webkitpy/port/driver_unittest.py:
* Scripts/webkitpy/port/efl_unittest.py:
* Scripts/webkitpy/port/factory_unittest.py:
* Scripts/webkitpy/port/gtk_unittest.py:
* Scripts/webkitpy/port/http_lock_unittest.py:
* Scripts/webkitpy/port/image_diff_unittest.py:
* Scripts/webkitpy/port/leakdetector_unittest.py:
* Scripts/webkitpy/port/leakdetector_valgrind_unittest.py:
* Scripts/webkitpy/port/linux_get_crash_log_unittest.py:
* Scripts/webkitpy/port/mock_drt_unittest.py:
* Scripts/webkitpy/port/port_testcase.py:
* Scripts/webkitpy/port/server_process_unittest.py:
* Scripts/webkitpy/port/westondriver_unittest.py:
* Scripts/webkitpy/port/win_unittest.py:
* Scripts/webkitpy/port/xvfbdriver_unittest.py:
* Scripts/webkitpy/style/checker_unittest.py:
* Scripts/webkitpy/style/checkers/changelog_unittest.py:
* Scripts/webkitpy/style/checkers/cmake_unittest.py:
* Scripts/webkitpy/style/checkers/common_unittest.py:
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
* Scripts/webkitpy/style/checkers/exportfile_unittest.py:
* Scripts/webkitpy/style/checkers/js_unittest.py:
* Scripts/webkitpy/style/checkers/jsonchecker_unittest.py:
* Scripts/webkitpy/style/checkers/messagesin_unittest.py:
* Scripts/webkitpy/style/checkers/png_unittest.py:
* Scripts/webkitpy/style/checkers/python_unittest.py:
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
* Scripts/webkitpy/style/checkers/text_unittest.py:
* Scripts/webkitpy/style/checkers/watchlist_unittest.py:
* Scripts/webkitpy/style/checkers/xcodeproj_unittest.py:
* Scripts/webkitpy/style/checkers/xml_unittest.py:
* Scripts/webkitpy/style/error_handlers_unittest.py:
* Scripts/webkitpy/style/filereader_unittest.py:
* Scripts/webkitpy/style/filter_unittest.py:
* Scripts/webkitpy/style/main_unittest.py:
* Scripts/webkitpy/style/optparser_unittest.py:
* Scripts/webkitpy/style/patchreader_unittest.py:
* Scripts/webkitpy/test/finder_unittest.py:
* Scripts/webkitpy/test/main.py: Ordered imports.
* Scripts/webkitpy/test/main_unittest.py:
* Scripts/webkitpy/test/printer.py: Ordered imports.
(Printer.configure):
* Scripts/webkitpy/test/runner_unittest.py:
* Scripts/webkitpy/test/skip_unittest.py:
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_irc):
(AutoinstallImportHook._install_unittest2): Deleted.
* Scripts/webkitpy/thirdparty/__init___unittest.py:
* Scripts/webkitpy/thirdparty/ordered_dict.py: Removed.
* Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests_unittest.py:
* Scripts/webkitpy/tool/bot/botinfo_unittest.py:
* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
* Scripts/webkitpy/tool/bot/expectedfailures_unittest.py:
* Scripts/webkitpy/tool/bot/feeders_unittest.py:
* Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:
* Scripts/webkitpy/tool/bot/ircbot_unittest.py:
* Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
* Scripts/webkitpy/tool/bot/queueengine_unittest.py:
* Scripts/webkitpy/tool/bot/sheriff_unittest.py:
* Scripts/webkitpy/tool/commands/download_unittest.py:
* Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
* Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
* Scripts/webkitpy/tool/commands/queries_unittest.py:
* Scripts/webkitpy/tool/commands/queuestest.py:
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
* Scripts/webkitpy/tool/grammar_unittest.py:
* Scripts/webkitpy/tool/mocktool_unittest.py:
* Scripts/webkitpy/tool/multicommandtool_unittest.py:
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
* Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
* Scripts/webkitpy/tool/servers/reflectionhandler_unittest.py:
* Scripts/webkitpy/tool/steps/addsvnmimetypeforpng_unittest.py:
* Scripts/webkitpy/tool/steps/applywatchlist_unittest.py:
* Scripts/webkitpy/tool/steps/cleanworkingdirectory_unittest.py:
* Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
* Scripts/webkitpy/tool/steps/commit_unittest.py:
* Scripts/webkitpy/tool/steps/discardlocalchanges_unittest.py:
* Scripts/webkitpy/tool/steps/haslanded_unittest.py:
* Scripts/webkitpy/tool/steps/preparechangelog_unittest.py:
* Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
* Scripts/webkitpy/tool/steps/runtests_unittest.py:
* Scripts/webkitpy/tool/steps/steps_unittest.py:
* Scripts/webkitpy/tool/steps/suggestreviewers_unittest.py:
* Scripts/webkitpy/tool/steps/update_unittest.py:
* Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:
* Scripts/webkitpy/tool/steps/validatechangelogs_unittest.py:
* Scripts/webkitpy/w3c/test_converter_unittest.py:
* Scripts/webkitpy/w3c/test_importer_unittest.py:
* Scripts/webkitpy/w3c/test_parser_unittest.py:

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

5 years ago[ Windows ] More Windows test gardening to get bots green.
roger_fong@apple.com [Tue, 30 Sep 2014 23:42:35 +0000 (23:42 +0000)]
[ Windows ] More Windows test gardening to get bots green.
* platform/win/TestExpectations:
* platform/win/css3/unicode-bidi-isolate-basic-expected.txt:
* platform/win/fast/multicol/vertical-rl/float-multicol-expected.txt:
* platform/win/fast/multicol/vertical-rl/nested-columns-expected.txt:

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

5 years agoAccording to the history, this test has been very flaky. Marking as such.
bdakin@apple.com [Tue, 30 Sep 2014 23:32:37 +0000 (23:32 +0000)]
According to the history, this test has been very flaky. Marking as such.

* platform/mac/TestExpectations:

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

5 years agoUse is<>() / downcast<>() for ContainerNode
cdumez@apple.com [Tue, 30 Sep 2014 23:03:38 +0000 (23:03 +0000)]
Use is<>() / downcast<>() for ContainerNode
https://bugs.webkit.org/show_bug.cgi?id=137270

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for ContainerNode instead of isContainerNode()
/ toContainerNode(). Also kill the NODE_TYPE_CASTS() macro as this was
its last user.

No new tests, no behavior change.

* dom/ContainerNode.cpp:
(WebCore::collectChildrenAndRemoveFromOldParent):
(WebCore::ContainerNode::willRemoveChild):
(WebCore::cloneChildNodesAvoidingDeleteButton):
* dom/ContainerNode.h:
(WebCore::Node::countChildNodes):
(WebCore::Node::traverseToChildAt):
(WebCore::Node::firstChild):
(WebCore::Node::lastChild):
(isType):
(WebCore::isContainerNode): Deleted.
* dom/ContainerNodeAlgorithms.cpp:
(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoTree):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
* dom/ContainerNodeAlgorithms.h:
(WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoDocument):
(WebCore::ChildNodeInsertionNotifier::notify):
(WebCore::ChildNodeRemovalNotifier::notifyNodeRemovedFromDocument):
(WebCore::ChildNodeRemovalNotifier::notify):
* dom/Node.cpp:
(WebCore::Node::childNodes):
(WebCore::Node::insertBefore):
(WebCore::Node::replaceChild):
(WebCore::Node::removeChild):
(WebCore::Node::appendChild):
(WebCore::Node::setTextContent):
* dom/Node.h:
* dom/Range.cpp:
(WebCore::Range::surroundContents):
* dom/TextNodeTraversal.cpp:
(WebCore::TextNodeTraversal::contentsAsString):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyBlockStyle):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::insertNodeAt):
* editing/Editor.cpp:
(WebCore::correctSpellcheckingPreservingTextCheckingParagraph):
* html/MediaDocument.cpp:
(WebCore::MediaDocument::defaultEventHandler):
* html/parser/HTMLConstructionSite.h:
(WebCore::HTMLConstructionSiteTask::oldParent):
* html/track/VTTCue.cpp:
(WebCore::VTTCue::copyWebVTTNodeToDOMTree):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::querySelector):
(WebCore::InspectorDOMAgent::querySelectorAll):
* inspector/InspectorNodeFinder.cpp:
(WebCore::InspectorNodeFinder::searchUsingCSSSelectors):

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

5 years agoLayoutTestResults and ExpectedFailures should know about the
commit-queue@webkit.org [Tue, 30 Sep 2014 22:58:25 +0000 (22:58 +0000)]
LayoutTestResults and ExpectedFailures should know about the
interrupted flag from the json results file
https://bugs.webkit.org/show_bug.cgi?id=137229

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-09-30
Reviewed by Daniel Bates.

Changes LayoutTestResults to use the interrupted flag instead of
counting failures.

* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(BuilderTest._install_fetch_build._mock_fetch_build):
(BuilderTest.test_latest_layout_test_results):
* Scripts/webkitpy/common/net/layouttestresults.py:
Removes notion of failure_limit_count, and adds
did_exceed_test_failure_limit.

(LayoutTestResults.results_from_string):
(LayoutTestResults.__init__):
(LayoutTestResults.did_exceed_test_failure_limit):
(LayoutTestResults): Deleted.
(LayoutTestResults.set_failure_limit_count): Deleted.
(LayoutTestResults.failure_limit_count): Deleted.
* Scripts/webkitpy/common/net/layouttestresults_unittest.py:
Removes unit test for failure_limit_count logic.

(LayoutTestResultsTest.test_set_failure_limit_count): Deleted.
* Scripts/webkitpy/common/net/resultsjsonparser.py:
Instead of providing a class method that returns a list of
TestResults objects, resultsjsonparser now provides a class
ParsedJSONResults that serves as an interface between the results.json
file and the rest of webkitpy.

(ParsedJSONResults):
(ParsedJSONResults.__init__):
(ParsedJSONResults.did_exceed_test_failure_limit):
(ParsedJSONResults.test_results):
(ResultsJSONParser): Deleted.
(ResultsJSONParser.parse_results_json): Deleted.
* Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
Updates the unit test so that it can test the new ResultsJSONParser
class.

(ParsedJSONResultsTest):
(test_basic):
(ResultsJSONParserTest): Deleted.
* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
Updates the unit test to instantiate ResultsJSONParser objects rather
than simple lists of TestResult objects.

(MockCommitQueue.test_results):
(FailingTestCommitQueue.test_results):
(test_flaky_test_failure):
(test_failed_archive):
* Scripts/webkitpy/tool/bot/expectedfailures.py:
Updates ExpectedFailures to use the did_exceed_test_failure_limit
method rather than counting the number of failed tests.

(ExpectedFailures._should_trust):
* Scripts/webkitpy/tool/bot/expectedfailures_unittest.py:
Updates MockResults to more closely resemble the updated
LayoutTestResults class.

(MockResults.__init__):
(MockResults.did_exceed_test_failure_limit):
(ExpectedFailuresTest.test_can_trust_results):
(ExpectedFailuresTest.test_unexpected_failures_observed):
(ExpectedFailuresTest.test_unexpected_failures_observed_when_tree_is_hosed):
(MockResults.failure_limit_count): Deleted.
* Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
Removes a FIXME regarding the use of the
NON_INTERACTIVE_FAILURE_LIMIT_COUNT value.

(LayoutTestResultsReader.results):
* Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
Updates test to not check the now-nonexistant failure_count_limit
method.

(test_missing_unit_test_results_path):
(test_layout_test_results):
* Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
Accounts for name change: ResultsJSONParserTest ->
ParsedJSONParserTest.

(RebaselineTestTest.test_gather_baselines):

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

5 years ago[EFL] Rename TEST_THEME_DIR macro
gyuyoung.kim@samsung.com [Tue, 30 Sep 2014 22:54:23 +0000 (22:54 +0000)]
[EFL] Rename TEST_THEME_DIR macro
https://bugs.webkit.org/show_bug.cgi?id=137244

Reviewed by Csaba Osztrogonác.

.:

* Source/cmake/OptionsEfl.cmake: Rename TEST_THEME_DIR to DEFAULT_THEME_DIR.

Source/WebKit2:

TEST_THEME_DIR is to get a path for default theme though, it has used TEST_ prefix.
DEFAULT_THEME_DIR is better than it.

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
(EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
(EWK2UnitTest::EWK2UnitTestEnvironment::pathForTheme):
* UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):

Tools:

TEST_THEME_DIR is to get a path for default theme though, it has used TEST_ prefix.
DEFAULT_THEME_DIR is better than it.

* MiniBrowser/efl/main.c:
(window_create):
* TestWebKitAPI/efl/PlatformWebView.cpp:
(TestWebKitAPI::PlatformWebView::PlatformWebView):
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::PlatformWebView::PlatformWebView):

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

5 years ago[Windows] Remove an errant WTFLogAlways that makes test output hard to read and gener...
roger_fong@apple.com [Tue, 30 Sep 2014 22:50:33 +0000 (22:50 +0000)]
[Windows] Remove an errant WTFLogAlways that makes test output hard to read and generates stderr output.

* platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:
(WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading):

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

5 years agoRemove a multicolumn ASSERT and replace with a guard.
hyatt@apple.com [Tue, 30 Sep 2014 22:12:26 +0000 (22:12 +0000)]
Remove a multicolumn ASSERT and replace with a guard.
https://bugs.webkit.org/show_bug.cgi?id=137272

Reviewed by Alexey Proskuryakov.

* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::isValidColumnSpanner):
For now remove the assert that is tripping and replace it with a guard
until we can figure out why it's getting hit.

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

5 years agoGeneralize is<>() / downcast<>() support to all types
cdumez@apple.com [Tue, 30 Sep 2014 21:32:55 +0000 (21:32 +0000)]
Generalize is<>() / downcast<>() support to all types
https://bugs.webkit.org/show_bug.cgi?id=137243

Reviewed by Benjamin Poulain.

Generalize is<>() / downcast<>() support to all types, not just Nodes.
Source/WebCore:

To achieve this, the following changes were made:
- Move is<> / downcast<>() and NodeTypeCastTraits from Node.h to a new
  wtf/TypeCasts.h header. Also move them to WTF namespace instead of
  WebCore namespace as they can be used for classes in other namespaces
  (e.g. WebKit namespace).
- Rename NodeTypeCastsTraits to TypeCastTraits as it can be specialized
  for non-Nodes.
- Since C++ does not allow template specializations in different
  namespaces, I had to move all the SPECIALIZE_TYPE_TRAITS_*() uses to
  the global scope and use the WebCore:: namespace explicitly in those.
  This is a bit unfortunate but I couldn't find a better way.

This patch also takes care of supporting is<>() / downcast<>() for
the WorkerGlobalScope class, which does not derive from Node.

No new tests, no behavior change.

* Modules/indexeddb/IDBFactory.cpp:
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
(WebCore::WorkerGlobalScopeIndexedDatabase::from):
* Modules/websockets/ThreadableWebSocketChannel.cpp:
(WebCore::ThreadableWebSocketChannel::create):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::toJSDOMGlobalObject):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* dom/Attr.h:
(isType):
(WebCore::isAttr): Deleted.
* dom/CDATASection.h:
(isType):
(WebCore::isCDATASection): Deleted.
* dom/CharacterData.h:
(isType):
(WebCore::isCharacterData): Deleted.
* dom/Comment.h:
(isType):
(WebCore::isComment): Deleted.
* dom/Document.h:
(isType):
(WebCore::isDocument): Deleted.
* dom/DocumentFragment.h:
(isType):
(WebCore::isDocumentFragment): Deleted.
* dom/DocumentType.h:
(isType):
(WebCore::isDocumentType): Deleted.
* dom/Element.h:
* dom/MessagePort.cpp:
(WebCore::MessagePort::dispatchMessages):
* dom/Node.h:
(WebCore::is): Deleted.
(WebCore::downcast): Deleted.
* dom/ProcessingInstruction.h:
(isType):
(WebCore::isProcessingInstruction): Deleted.
* dom/PseudoElement.h:
(isType):
(WebCore::isPseudoElement): Deleted.
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::createdMessagePort):
(WebCore::ScriptExecutionContext::destroyedMessagePort):
(WebCore::ScriptExecutionContext::vm):
* dom/ScriptExecutionContext.h:
* dom/ShadowRoot.h:
(isType):
(WebCore::isShadowRoot): Deleted.
* dom/StyledElement.h:
(isType):
(WebCore::isStyledElement): Deleted.
* dom/Text.h:
(isType):
(WebCore::isText): Deleted.
* dom/make_names.pl:
(printTypeHelpers):
(printTypeHelpersHeaderFile):
* html/HTMLDocument.h:
(isType):
(WebCore::isHTMLDocument): Deleted.
* html/HTMLElement.h:
(isType):
(WebCore::isHTMLElement): Deleted.
* html/HTMLFormControlElement.h:
(isType):
(WebCore::isHTMLFormControlElement): Deleted.
* html/HTMLFrameElementBase.h:
(isType):
(WebCore::isHTMLFrameElementBase): Deleted.
* html/HTMLFrameOwnerElement.h:
(isType):
(WebCore::isHTMLFrameOwnerElement): Deleted.
* html/HTMLMediaElement.h:
(isType):
(WebCore::isHTMLMediaElement): Deleted.
* html/HTMLPlugInElement.h:
(isType):
(WebCore::isHTMLPlugInElement): Deleted.
* html/HTMLPlugInImageElement.h:
(isType):
(WebCore::isHTMLPlugInImageElement): Deleted.
* html/HTMLTableCellElement.h:
(isType):
(WebCore::isHTMLTableCellElement): Deleted.
* html/HTMLTableSectionElement.h:
(isType):
(WebCore::isHTMLTableSectionElement): Deleted.
* html/HTMLTextFormControlElement.h:
(isType):
(WebCore::isHTMLTextFormControlElement): Deleted.
* html/ImageDocument.h:
(isType):
(WebCore::isImageDocument): Deleted.
* html/LabelableElement.h:
(isType):
(WebCore::isLabelableElement): Deleted.
* html/MediaDocument.h:
(isType):
(WebCore::isMediaDocument): Deleted.
* html/PluginDocument.h:
(isType):
(WebCore::isPluginDocument): Deleted.
* html/shadow/InsertionPoint.h:
(isType):
(WebCore::isInsertionPoint): Deleted.
* html/shadow/TextControlInnerElements.h:
(isType):
(WebCore::isTextControlInnerTextElement): Deleted.
* html/track/WebVTTElement.h:
(isType):
(WebCore::isWebVTTElement): Deleted.
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
* loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoader::create):
(WebCore::ThreadableLoader::loadResourceSynchronously):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::removeRequestFromCache):
(WebCore::MemoryCache::removeRequestFromSessionCaches):
* mathml/MathMLElement.h:
(isType):
(WebCore::isMathMLElement): Deleted.
* svg/SVGAnimateElementBase.h:
(isType):
(WebCore::isSVGAnimateElementBase): Deleted.
* svg/SVGDocument.h:
(isType):
(WebCore::isSVGDocument): Deleted.
* svg/SVGElement.h:
(isType):
(WebCore::isSVGElement): Deleted.
* svg/SVGFilterPrimitiveStandardAttributes.h:
(isType):
(WebCore::isSVGFilterPrimitiveStandardAttributes): Deleted.
* svg/SVGGradientElement.h:
(isType):
(WebCore::isSVGGradientElement): Deleted.
* svg/SVGGraphicsElement.h:
(isType):
(WebCore::isSVGGraphicsElement): Deleted.
* svg/SVGPolyElement.h:
(isType):
(WebCore::isSVGPolyElement): Deleted.
* svg/SVGTextContentElement.h:
(isType):
(WebCore::isSVGTextContentElement): Deleted.
* svg/animation/SVGSMILElement.h:
(isType):
(WebCore::isSVGSMILElement): Deleted.
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerConnectTask::SharedWorkerConnectTask):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::close):
* workers/WorkerGlobalScope.h:
(isType):
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
(WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
(WebCore::WorkerMessagingProxy::connectToInspector):
(WebCore::WorkerMessagingProxy::disconnectFromInspector):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):
* workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::loadSynchronously):
* workers/WorkerThread.cpp:
(WebCore::WorkerThread::stop):

Source/WebKit/win:

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

Source/WebKit2:

* WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
(-[WKDOMDocument createElement:]):
(-[WKDOMDocument createTextNode:]):
(-[WKDOMDocument body]):
* WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
(-[WKDOMText data]):
(-[WKDOMText setData:]):

Source/WTF:

* wtf/Assertions.h:
* wtf/TypeCasts.h: Added.
(WTF::is):
(WTF::downcast):

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

5 years agoWindows EWS went purple when it failed to build
ap@apple.com [Tue, 30 Sep 2014 21:30:22 +0000 (21:30 +0000)]
Windows EWS went purple when it failed to build
https://bugs.webkit.org/show_bug.cgi?id=137267

Reviewed by Ryosuke Niwa.

* QueueStatusServer/app.yaml: Update the version.

* QueueStatusServer/model/attachment.py: (Attachment._calculate_queue_positions):
Make it work for style and win-ews queues.

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

5 years agoIt should be fun and easy to run every possible JavaScript benchmark from the command...
fpizlo@apple.com [Tue, 30 Sep 2014 21:11:57 +0000 (21:11 +0000)]
It should be fun and easy to run every possible JavaScript benchmark from the command line
https://bugs.webkit.org/show_bug.cgi?id=137245

Reviewed by Oliver Hunt.

PerformanceTests:

This adds the scaffolding for running Octane version 2 inside run-jsc-benchmarks.
In the future we should just land Octane2 in this directory, and run-jsc-benchmarks
should be changed to point directly at this directory instead of requiring the
Octane path to be configured as part of the configuration file.

* Octane: Added.
* Octane/wrappers: Added.
* Octane/wrappers/jsc-box2d.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-boyer.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-closure.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-decrypt.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-deltablue.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-earley.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-encrypt.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-gbemu.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-jquery.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-mandreel.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-navier-stokes.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-pdfjs.js: Added.
(jscSetUp.PdfJS_window.console.log):
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-raytrace.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-regexp.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-richards.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-splay.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-typescript.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):
* Octane/wrappers/jsc-zlib.js: Added.
(jscSetUp):
(jscTearDown):
(jscRun):

Tools:

We previously had Tools/Scripts/bencher.  Then we stopped adding things to it because we
weren't sure about the licensing of things like Kraken and Octane.  Various people ended up
having their own private scripts for doing benchmark runs, and didn't share them in the open
source community, because of fears about the shady licensing of the benchmarks suites that
they were running. The dominant version of this was "run-jsc-benchmarks", which has a lot of
excellent power - it can run benchmarks through either jsc, DumpRenferTree, or
WebKitTestRunner; it can run tests on any number of remote machines; and it has inside
knowledge about how to run *a lot* of test suites. Many of those test suites are not public,
but some of them are. The non-public tests are exclusively those that were not made by any
WebKit contributor, but which JSC/WebKit devs found useful for testing.

This fixes this weirdness by releasing run-jsc-benchmarks. The paths to the test suites
whose licenses are incompatible with WebKit's (to the extent that they cannot be safely
checked into WebKit svn at all) can be run by passing the path to them via a configuration
file. The default configuration file is ~/.run-jsc-benchmarks. The most important benchmark
suites are Octane version 2 and Kraken version 1.1. We should probably check Octane 2 into
WebKit eventually because it seems that the license is fine. Kraken, on the other hand, will
probably never be checked in because there is no license text anywhere in that benchmark.
A valid ~/.run-jsc-benchmarks file will just be something like:

    {
        "OctanePath": "/path/to/Octane2",
        "KrakenPath": "/path/to/Kraken-1.1/tests/kraken-1.1"
    }

If your ~/.run-jsc-benchmarks file omits the directory for any particular test suite, then
run-jsc-benchmarks will just gracefully avoid running that test suite.

Finally, a word about policy: it is understood that different organizations that do
development on JSC may find themselves having internal benchmarks that they cannot share
because of weird licensing. It happens - usually because the organization doing JSC
development found some test in the wild that is owned by someone else and therefore cannot
be shared. So, we should consider it acceptable to write patches against run-jsc-benchmarks
that add support for some new kind of benchmark suite even if the suite is not made public
as part of the same patch - so long as the patch isn't too invasive. An example of
non-invasiveness is the DSPJS suite, which is implemented using some new classes (like
DSPJSAmmoJSRegularBenchmark) and some calls to otherwise reusable functions (like
emitSelfContainedBenchRunCode). It is obviously super helpful if a benchmark suite can be
completely open-sourced and committed to the WebKit repo - but the reality is that this
can't always be done safely.

* Scripts/bencher: Removed.
* Scripts/run-jsc-benchmarks: Added.

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

5 years agoLabel some asserts as having security implications.
mark.lam@apple.com [Tue, 30 Sep 2014 21:05:08 +0000 (21:05 +0000)]
Label some asserts as having security implications.
<https://webkit.org/b/137260>

Reviewed by Filip Pizlo.

* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::handleAssertionFailure):
* runtime/JSCell.h:
(JSC::jsCast):
* runtime/StructureIDTable.h:
(JSC::StructureIDTable::get):

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

5 years agoREGRESSION (r174025): Invalid cast in JSC::asString
fpizlo@apple.com [Tue, 30 Sep 2014 21:02:47 +0000 (21:02 +0000)]
REGRESSION (r174025): Invalid cast in JSC::asString
https://bugs.webkit.org/show_bug.cgi?id=137224

Reviewed by Geoffrey Garen.

Store barrier elision in fixup depends on checking the type of the value being stored. It's very important that
when we speak of "the value being stored" we are really referring to the right value.

The bug here was that the PutClosureVar case was assuming that child2 is the value being stored. It's actually
child3. So we were incorrectly removing all barriers from PutClosureVar.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

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

5 years ago[Windows] Back to 2 child processes for NRWT on Windows.
roger_fong@apple.com [Tue, 30 Sep 2014 20:36:54 +0000 (20:36 +0000)]
[Windows] Back to 2 child processes for NRWT on Windows.
* Scripts/webkitpy/port/win.py:
(WinPort.default_child_processes):
Changing the number of processes to 1 did not have an effect on the layout test results.
It does introduce an issue with one of the workers hanging indefinitely and causing the
layout tests to timeout as a whole occasionally, but we should just fix that.

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

5 years ago[ Windows ] More Windows test gardening to get bots green.
roger_fong@apple.com [Tue, 30 Sep 2014 20:32:50 +0000 (20:32 +0000)]
[ Windows ] More Windows test gardening to get bots green.

* platform/win/TestExpectations:
* platform/win/fast/dom/navigator-detached-no-crash-expected.txt:

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

5 years agoRemove an accidentally committed line..
ap@apple.com [Tue, 30 Sep 2014 19:59:54 +0000 (19:59 +0000)]
Remove an accidentally committed line..

* QueueStatusServer/handlers/statusbubble.py:
(StatusBubble._build_bubble):

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

5 years agoUse is<>() / downcast<>() for Element
cdumez@apple.com [Tue, 30 Sep 2014 19:59:49 +0000 (19:59 +0000)]
Use is<>() / downcast<>() for Element
https://bugs.webkit.org/show_bug.cgi?id=137241

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for Element instead of isElementNode() /
toElement().

Source/WebCore:

No new tests, no behavior change.

* accessibility/AXObjectCache.cpp:
(WebCore::nodeHasRole):
(WebCore::createFromRenderer):
(WebCore::AXObjectCache::handleLiveRegionCreated):
(WebCore::AXObjectCache::handleMenuItemSelected):
(WebCore::AXObjectCache::rootAXEditableElement):
(WebCore::isNodeAriaVisible):
* accessibility/AccessibilityMenuList.cpp:
(WebCore::AccessibilityMenuList::canSetFocusAttribute):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::nativeActionElement):
(WebCore::AccessibilityNodeObject::actionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::titleElementText):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::text):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
(WebCore::AccessibilityObject::hasTagName):
(WebCore::AccessibilityObject::hasAttribute):
(WebCore::AccessibilityObject::element):
(WebCore::AccessibilityObject::classList):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
(WebCore::AccessibilityRenderObject::titleUIElement):
(WebCore::AccessibilityRenderObject::accessKey):
(WebCore::AccessibilityRenderObject::setElementAttributeValue):
(WebCore::AccessibilityRenderObject::setFocused):
(WebCore::AccessibilityRenderObject::setValue):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::AccessibilityRenderObject::correspondingLabelForControlElement):
(WebCore::AccessibilityRenderObject::renderObjectIsObservable):
(WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
(WebCore::AccessibilityRenderObject::setAccessibleName):
(WebCore::AccessibilityRenderObject::stringRoleForMSAA):
* accessibility/AccessibilitySearchFieldButtons.cpp:
(WebCore::AccessibilitySearchFieldCancelButton::press):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes):
* bindings/gobject/WebKitDOMPrivate.cpp:
(WebKit::wrap):
* bindings/js/JSNodeCustom.cpp:
(WebCore::isReachableFromDOM):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::styledNode):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::locateCousinList):
* dom/ContainerNode.cpp:
(WebCore::destroyRenderTreeIfNeeded):
(WebCore::ContainerNode::notifyChildRemoved):
* dom/ContainerNodeAlgorithms.cpp:
(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
(WebCore::assertConnectedSubrameCountIsConsistent):
* dom/Document.cpp:
(WebCore::Document::importNode):
(WebCore::Document::elementFromPoint):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
* dom/Element.cpp:
(WebCore::Element::computeInheritedLanguage):
* dom/Element.h:
(WebCore::isElement):
(WebCore::Node::hasAttributes):
(WebCore::Node::attributes):
(WebCore::Node::parentElement):
* dom/ElementTraversal.h:
(WebCore::Traversal<Element>::nextTemplate):
(WebCore::ElementTraversal::previousIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
(WebCore::ElementTraversal::pseudoAwarePreviousSibling):
* dom/LiveNodeList.cpp:
(WebCore::LiveNodeList::namedItem):
* dom/Node.cpp:
(WebCore::Node::dumpStatistics):
(WebCore::Node::normalize):
(WebCore::Node::pseudoAwareFirstChild):
(WebCore::Node::pseudoAwareLastChild):
(WebCore::Node::computedStyle):
(WebCore::Node::parentOrShadowHostElement):
(WebCore::Node::rootEditableElement):
(WebCore::Node::isEqualNode):
(WebCore::Node::isDefaultNamespace):
(WebCore::Node::lookupNamespacePrefix):
(WebCore::Node::ancestorElement):
(WebCore::appendAttributeDesc):
(WebCore::Node::showNodePathForThis):
(WebCore::Node::enclosingLinkEventParentOrSelf):
(WebCore::Node::handleLocalEvents):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToMouseClickEvents):
* dom/NodeRenderingTraversal.cpp:
(WebCore::NodeRenderingTraversal::nodeCanBeDistributed):
* dom/Position.cpp:
(WebCore::Position::element):
* dom/Range.cpp:
(WebCore::Range::getBorderAndTextQuads):
* dom/ShadowRoot.h:
(WebCore::Node::shadowRoot):
* dom/StaticNodeList.cpp:
(WebCore::StaticNodeList::namedItem):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
* editing/ApplyStyleCommand.cpp:
(WebCore::dummySpanAncestorForNode):
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
(WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
(WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
(WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
* editing/BreakBlockquoteCommand.cpp:
(WebCore::BreakBlockquoteCommand::doApply):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::isRemovableBlock):
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
(WebCore::CompositeEditCommand::moveParagraphs):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
* editing/Editor.cpp:
(WebCore::Editor::isSpellCheckingEnabledFor):
(WebCore::Editor::applyEditingStyleToBodyElement):
* editing/FormatBlockCommand.cpp:
(WebCore::isElementForFormatBlock):
(WebCore::FormatBlockCommand::elementForFormatBlockCommand):
* editing/FrameSelection.cpp:
(WebCore::removingNodeRemovesPosition):
(WebCore::CaretBase::paintCaret):
(WebCore::FrameSelection::debugRenderer):
* editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::outdentParagraph):
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):
* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::serializeNodesWithNamespaces):
(WebCore::MarkupAccumulator::appendStartMarkup):
* editing/MarkupAccumulator.h:
(WebCore::MarkupAccumulator::appendEndTag):
* editing/ModifySelectionListLevel.cpp:
(WebCore::IncreaseSelectionListLevelCommand::doApply):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::isMailPasteAsQuotationNode):
(WebCore::haveSameTagName):
(WebCore::handleStyleSpansBeforeInsertion):
(WebCore::ReplaceSelectionCommand::doApply):
* editing/SpellChecker.cpp:
(WebCore::SpellChecker::isCheckable):
* editing/SplitTextNodeContainingElementCommand.cpp:
(WebCore::SplitTextNodeContainingElementCommand::doApply):
* editing/TextIterator.cpp:
(WebCore::isRendererReplacedElement):
* editing/cocoa/HTMLConverter.mm:
(HTMLConverterCaches::propertyValueForNode):
(HTMLConverterCaches::floatPropertyValueForNode):
(HTMLConverterCaches::colorPropertyValueForNode):
(HTMLConverter::aggregatedAttributesForAncestors):
(HTMLConverter::aggregatedAttributesForElementAndItsAncestors):
(HTMLConverter::_traverseNode):
(WebCore::editingAttributedStringFromRange):
* editing/htmlediting.cpp:
(WebCore::unsplittableElementForPosition):
(WebCore::enclosingBlock):
(WebCore::enclosingElementWithTag):
(WebCore::enclosingTableCell):
(WebCore::enclosingAnchorElement):
(WebCore::areIdenticalElements):
(WebCore::isNonTableCellHTMLBlockElement):
(WebCore::deprecatedEnclosingBlockFlowElement):
(WebCore::rendererForCaretPainting):
* editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::wrapWithNode):
(WebCore::createMarkupInternal):
(WebCore::createFragmentFromText):
* html/HTMLDetailsElement.cpp:
(WebCore::DetailsSummaryElement::fallbackSummary):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::insertAdjacentElement):
(WebCore::contextElementForInsertion):
(WebCore::HTMLElement::directionality):
* html/HTMLFormControlElement.h:
(WebCore::isHTMLFormControlElement):
* html/HTMLMediaElement.h:
(WebCore::isHTMLMediaElement):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateDocNamedItem):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::collectOptionInnerText):
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::removedFrom):
* html/HTMLSummaryElement.cpp:
(WebCore::isClickableControl):
* html/HTMLTextFormControlElement.h:
(WebCore::isHTMLTextFormControlElement):
* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::attachLater):
* html/parser/HTMLElementStack.cpp:
(WebCore::HTMLElementStack::htmlElement):
* html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::element):
* html/shadow/InsertionPoint.h:
(WebCore::parentElementForDistribution):
(WebCore::shadowRootOfParentForDistribution):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler):
* html/track/VTTCue.cpp:
(WebCore::VTTCue::markFutureAndPastNodes):
* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::innerPatchNode):
(WebCore::DOMPatchSupport::createDigest):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::elementForId):
(WebCore::InspectorCSSAgent::buildArrayForRegions):
(WebCore::InspectorCSSAgent::resetPseudoStates):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::assertElement):
(WebCore::InspectorDOMAgent::setAttributesAsText):
(WebCore::InspectorDOMAgent::setNodeName):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
(WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
* inspector/InspectorNodeFinder.cpp:
(WebCore::InspectorNodeFinder::searchUsingDOMTreeTraversal):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForElementInfo):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::inlineStyleSheetText):
* page/DragController.cpp:
(WebCore::elementUnderMouse):
* page/EventHandler.cpp:
(WebCore::findDropZone):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::updateMouseEventTargetNode):
* page/FocusController.cpp:
(WebCore::FocusNavigationScope::focusNavigationScopeOwnedByShadowHost):
(WebCore::isFocusableShadowHost):
(WebCore::adjustedTabIndex):
(WebCore::FocusController::findFocusableElementAcrossFocusScope):
(WebCore::FocusController::findElementWithExactTabIndex):
(WebCore::nextElementWithGreaterTabIndex):
(WebCore::previousElementWithLowerTabIndex):
(WebCore::FocusController::nextFocusableElement):
(WebCore::FocusController::previousFocusableElement):
(WebCore::FocusController::advanceFocusDirectionallyInContainer):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeFrame):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::title):
(WebCore::HitTestResult::innerTextIfTruncated):
(WebCore::HitTestResult::absoluteImageURL):
(WebCore::HitTestResult::innerElement):
(WebCore::HitTestResult::innerNonSharedElement):
* rendering/RenderDeprecatedFlexibleBox.h:
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::isOpen):
* rendering/RenderElement.h:
(WebCore::RenderElement::element):
(WebCore::RenderElement::nonPseudoElement):
(WebCore::RenderElement::generatingElement):
* rendering/RenderGrid.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::isRestartedPlugin):
* rendering/RenderListItem.h:
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::isChildAllowed):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addPDFURLRect):
(WebCore::RenderObject::updateDragState):
(WebCore::RenderObject::getUncachedPseudoStyle):
* rendering/RenderRuby.h:
* rendering/RenderRubyText.h:
* rendering/RenderTableCaption.h:
* rendering/RenderTableCol.h:
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::isEnabled):
(WebCore::RenderTheme::isFocused):
(WebCore::RenderTheme::isPressed):
(WebCore::RenderTheme::isSpinUpButtonPartPressed):
(WebCore::RenderTheme::isReadOnlyControl):
(WebCore::RenderTheme::isHovered):
(WebCore::RenderTheme::isSpinUpButtonPartHovered):
* rendering/RenderThemeGtk.cpp:
(WebCore::nodeHasClass):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::updatePressedState):
(WebCore::RenderThemeMac::paintSliderThumb):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
* rendering/RenderTreeAsText.cpp:
(WebCore::RenderTreeAsText::writeRenderObject):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::isAutosizingContainer):
(WebCore::TextAutosizer::containerContainsOneOfTags):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::isChildAllowed):
* style/StyleResolveTree.cpp:
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::detachDistributedChildren):
(WebCore::Style::detachChildren):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::resolveTree):
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::buildPendingResource):
* xml/XPathFunctions.cpp:
(WebCore::XPath::FunLang::evaluate):
* xml/XPathNodeSet.cpp:
(WebCore::XPath::NodeSet::traversalSort):
* xml/XPathStep.cpp:
(WebCore::XPath::nodeMatchesBasicTest):
(WebCore::XPath::Step::nodesInAxis):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::endElementNs):

Source/WebKit/mac:

* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]):

Source/WebKit/win:

* DOMEventsClasses.cpp:
(DOMMouseEvent::toElement):
* DOMEventsClasses.h:

Source/WebKit2:

* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::WebRenderObject):
* WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
(-[WKDOMElement hasAttribute:]):
(-[WKDOMElement getAttribute:]):
(-[WKDOMElement setAttribute:value:]):
(-[WKDOMElement tagName]):
* WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
(WebKit::InjectedBundleNodeHandle::elementBounds):
* WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
(WebKit::InjectedBundleHitTestResult::mediaType):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::sendTapHighlightForNodeIfNecessary):
(WebKit::WebPage::blurAssistedNode):
(WebKit::WebPage::getPositionInformation):
(WebKit::nextFocusableElement):
(WebKit::WebPage::elementDidFocus):

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

5 years agoGet the STRING_STATS codepath compiling again, and add calls to ref/deref
andersca@apple.com [Tue, 30 Sep 2014 19:50:01 +0000 (19:50 +0000)]
Get the STRING_STATS codepath compiling again, and add calls to ref/deref
https://bugs.webkit.org/show_bug.cgi?id=137259

Reviewed by Andreas Kling.

* wtf/text/StringImpl.cpp:
(WTF::StringStats::removeString):
(WTF::StringStats::printStats):
(WTF::StringImpl::~StringImpl):
* wtf/text/StringImpl.h:
(WTF::StringImpl::StringImpl):
(WTF::StringImpl::isSubString):
(WTF::StringImpl::ref):
(WTF::StringImpl::deref):
(WTF::StringStats::addUpconvertedString): Deleted.

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

5 years agobuild.webkit.org/dashboard: Switch EWS view to using actual retry count
ap@apple.com [Tue, 30 Sep 2014 19:48:09 +0000 (19:48 +0000)]
build.webkit.org/dashboard: Switch EWS view to using actual retry count
https://bugs.webkit.org/show_bug.cgi?id=137240

Reviewed by Ryosuke Niwa.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js:
(EWSQueue.prototype.loadDetailedStatus):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js:
(EWSQueueView.prototype._popoverContentForEWSQueue):
Use the new retry_count data member from JSON.

* QueueStatusServer/app.yaml: Updating the version.

* QueueStatusServer/handlers/queuestatusjson.py: (QueueStatusJSON._rows_for_work_items):
Instead of message_count, produce retry_count.

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

5 years agoEWS doesn't need to show all the bubbles when a patch fails to apply
ap@apple.com [Tue, 30 Sep 2014 19:43:58 +0000 (19:43 +0000)]
EWS doesn't need to show all the bubbles when a patch fails to apply
https://bugs.webkit.org/show_bug.cgi?id=137256

Reviewed by Ryosuke Niwa.

* QueueStatusServer/app.yaml: Updated app version.

* QueueStatusServer/handlers/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._build_bubbles_for_attachment):
(StatusBubble.get):
* QueueStatusServer/templates/statusbubble.html:
When some queues fail to apply, and no queues had meaningful output (meaning that
they will almost certainly fail to apply later), we can show a single bubble
telling the user just that.

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

5 years agoWeb Replay: use static Strings instead of AtomicStrings for replay input type tags
burg@cs.washington.edu [Tue, 30 Sep 2014 19:21:25 +0000 (19:21 +0000)]
Web Replay: use static Strings instead of AtomicStrings for replay input type tags
https://bugs.webkit.org/show_bug.cgi?id=137086

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

This pattern doesn't work when we want to define some inputs in WebKit2.
The ReplayInputTypes class was generated from WebCore inputs only. This
patch moves all input traits to use static local Strings as type tags.

* replay/scripts/CodeGeneratorReplayInputs.py: Remove configuration of how
type tags are generated, since all framework targets now generate the same code.

* replay/NondeterministicInput.h:
* replay/scripts/CodeGeneratorReplayInputs.py: Simplify and rebase test results.
(Generator.generate_input_trait_implementation):
* replay/scripts/CodeGeneratorReplayInputsTemplates.py: Simplify templates.

* replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::SavedMouseButton>::type):
* replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::SavedMouseButton>::type):
* replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::HandleWheelEvent>::type):
* replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::FormCombo>::type):
* replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::GetCurrentTime>::type):
(JSC::InputTraits<Test::SetRandomSeed>::type):
* replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::ArrayOfThings>::type):
(JSC::InputTraits<Test::SavedHistory>::type):
* replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::ScalarInput1>::type):
(JSC::InputTraits<Test::ScalarInput2>::type):
* replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h:
* replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp:
(JSC::InputTraits<Test::ScalarInput>::type):
(JSC::InputTraits<Test::MapInput>::type):
* replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h:

Source/WebCore:

This pattern doesn't work when we want to define some inputs in WebKit2,
since the ReplayInputTypes class is generated from WebCore inputs only.

Replace tag-checking uses of ReplayInputTypes with InputTraits<T>::type().
Remove thread-local input types, and switch to using a plain const String instead
of const AtomicString.

No new tests, no behavior changed.

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorReplayAgent.cpp:
(WebCore::SerializeInputToJSONFunctor::operator()):
* platform/ThreadGlobalData.cpp:
(WebCore::ThreadGlobalData::ThreadGlobalData):
(WebCore::ThreadGlobalData::destroy):
* platform/ThreadGlobalData.h:
(WebCore::ThreadGlobalData::inputTypes): Deleted.
* replay/AllReplayInputs.h:
* replay/EventLoopInput.h:
* replay/EventLoopInputDispatcher.cpp:
(WebCore::EventLoopInputDispatcher::dispatchInput):
* replay/MemoizedDOMResult.cpp:
(WebCore::MemoizedDOMResultBase::type):
(JSC::InputTraits<MemoizedDOMResultBase>::type):
* replay/MemoizedDOMResult.h:
* replay/ReplayInputTypes.cpp: Removed.
* replay/ReplayInputTypes.h: Removed.
* replay/ReplayingInputCursor.cpp:
(WebCore::ReplayingInputCursor::loadInput):
* replay/SegmentedInputStorage.cpp:
(WebCore::SegmentedInputStorage::load):
(WebCore::SegmentedInputStorage::store):
* replay/SerializationMethods.cpp:
(JSC::EncodingTraits<NondeterministicInputBase>::encodeValue):
(JSC::EncodingTraits<NondeterministicInputBase>::decodeValue):

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

5 years ago[Mac] Flaky test marked as failing in r174111 also needs to be marked as passing.
roger_fong@apple.com [Tue, 30 Sep 2014 19:11:48 +0000 (19:11 +0000)]
[Mac] Flaky test marked as failing in r174111 also needs to be marked as passing.
* platform/mac/TestExpectations:

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

5 years ago[Mac] Mark a flaky webgl conformance test as failing.
roger_fong@apple.com [Tue, 30 Sep 2014 19:05:55 +0000 (19:05 +0000)]
[Mac] Mark a flaky webgl conformance test as failing.
* platform/mac/TestExpectations:

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

5 years agoREGRESSION (r172532): JSBase.h declares NSMapTable functions that are SPI
dbates@webkit.org [Tue, 30 Sep 2014 18:40:32 +0000 (18:40 +0000)]
REGRESSION (r172532): JSBase.h declares NSMapTable functions that are SPI
https://bugs.webkit.org/show_bug.cgi?id=137170
<rdar://problem/18477384>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Move conditional include of header Foundation/NSMapTablePriv.h and forward declarations
of NSMapTable SPI from file JavaScriptCore/API/JSBase.h to WTF/wtf/spi/cocoa/NSMapTableSPI.h.

* API/JSBase.h:
* API/JSManagedValue.mm: Include header WTF/wtf/spi/cocoa/NSMapTableSPI.h.
* API/JSVirtualMachine.mm: Ditto.
* API/JSVirtualMachineInternal.h: Forward declare class NSMapTable.
* API/JSWrapperMap.mm: Include header WTF/wtf/spi/cocoa/NSMapTableSPI.h. Also, order
#include directives such that they are sorted in alphabetical order.

Source/WTF:

Add SPI wrapper header, NSMapTableSPI.h.

Additionally, define convenience macro EXTERN_C that can be used to specify the C linkage
convention for a declaration. For example, the declaration "EXTERN_C const int x;" will
expand to:

extern const int x;

and

extern "C" const int x;

when used in a C and C++ file, respectively.

* WTF.xcodeproj/project.pbxproj:
* wtf/Compiler.h:
* wtf/spi/cocoa/NSMapTableSPI.h: Added.

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

5 years agobmalloc: cleaned up fast path vs slow path
ggaren@apple.com [Tue, 30 Sep 2014 18:37:45 +0000 (18:37 +0000)]
bmalloc: cleaned up fast path vs slow path
https://bugs.webkit.org/show_bug.cgi?id=137081

Reviewed by Sam Weinig.

Might be a 1% speedup on MallocBench. Also cleans up the code a bit.

* bmalloc/Allocator.cpp:
(bmalloc::Allocator::Allocator): Merged the small and medium range
caches, just like the small and medium allocators. Ranges are abstract
objects that don't really care whether they hold small or medium objects,
so they don't need to be segregated.

(bmalloc::Allocator::scavenge): Ditto.

(bmalloc::Allocator::allocateBumpRangeSlowCase):
(bmalloc::Allocator::allocateBumpRange): Same thing here, except that
we do care a tiny bit, because we need to specify small vs medium when
allocating new ranges from the heap, to ensure that the heap allocates
from the right segment of VM.

(bmalloc::Allocator::allocateLarge):
(bmalloc::Allocator::allocateXLarge): NO_INLINE because this was clouding
up the fast path. Large allocation performance is dominated by allocation
logic and initialization, so inlining it doesn't help.

(bmalloc::Allocator::allocateSlowCase): Slow path got a bit cleaner since
it doesn't need to distinguish small vs medium objects.

(bmalloc::Allocator::allocateSmallBumpRange): Deleted.
(bmalloc::Allocator::allocateMediumBumpRange): Deleted.

* bmalloc/Allocator.h:
* bmalloc/BumpRange.h:

* bmalloc/Cache.cpp:
(bmalloc::Cache::allocateSlowCase): Deleted.
(bmalloc::Cache::deallocateSlowCase): Deleted.
* bmalloc/Cache.h:
(bmalloc::Cache::allocate):
(bmalloc::Cache::deallocate):
(bmalloc::Cache::allocateFastCase): Deleted.
(bmalloc::Cache::deallocateFastCase): Deleted. Removed the Cache slow
paths. The downside to this change is that the fast path branches to two
distinct failure cases instead of one. The upside is that the slow path
doesn't need to re-read the segment register, which is not as cheap as a
normal register, and it doesn't need to do an extra level of function
call. Seems to be worth it.

* bmalloc/Deallocator.h:
* bmalloc/Heap.cpp:
(bmalloc::Heap::refillSmallBumpRangeCache):
(bmalloc::Heap::refillMediumBumpRangeCache):
* bmalloc/Heap.h: Updated for interface changes.

* bmalloc/Sizes.h: The most ranges a cache will hold is the number of
small lines in a page / 2, since any other free lines will coalesce
with their neighbors.

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

5 years agoFix C API header
oliver@apple.com [Tue, 30 Sep 2014 17:27:10 +0000 (17:27 +0000)]
Fix C API header
https://bugs.webkit.org/show_bug.cgi?id=137254
<rdar://problem/18487528>

Build fix

Guard extern "C" behind __cplusplus ifdef

* API/JSBase.h:

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

5 years ago[EFL] Bump EFL version to 1.11.2
commit-queue@webkit.org [Tue, 30 Sep 2014 15:19:16 +0000 (15:19 +0000)]
[EFL] Bump EFL version to 1.11.2
https://bugs.webkit.org/show_bug.cgi?id=137118

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-09-30
Reviewed by Gyuyoung Kim.

Disable NEON for EFL build because the build system doesn't pass the necessary -mfpu=neon flag to the compiler.
Tools/efl/patches/ecore.patch: Removed, because this fix is already in EFL.

* efl/jhbuild.modules:
* efl/patches/ecore.patch: Removed.

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

5 years ago[Mac] MediaPlayerPrivateQTKit should not use FrameView
eric.carlson@apple.com [Tue, 30 Sep 2014 14:30:34 +0000 (14:30 +0000)]
[Mac] MediaPlayerPrivateQTKit should not use FrameView
https://bugs.webkit.org/show_bug.cgi?id=137119

Reviewed by Carlos Garcia Campos.

Remove obsolete QTKit code that would fall back to rendering into an NSView.
Aside from being dead code, it was only used when accelerated compositing
was not enabled and tha hasn't been possible for a long time, it required a
layering violation to get the FrameView.

* platform/graphics/mac/MediaPlayerPrivateQTKit.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::currentRenderingMode):
(WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
(WebCore::MediaPlayerPrivateQTKit::setUpVideoRendering):
(WebCore::MediaPlayerPrivateQTKit::tearDownVideoRendering):
(WebCore::MediaPlayerPrivateQTKit::hasSetUpVideoRendering):
(WebCore::MediaPlayerPrivateQTKit::setSize):
(WebCore::MediaPlayerPrivateQTKit::paint):
(WebCore::mainThreadSetNeedsDisplay): Deleted.
(WebCore::MediaPlayerPrivateQTKit::createQTMovieView): Deleted.
(WebCore::MediaPlayerPrivateQTKit::detachQTMovieView): Deleted.
(-[WebCoreMovieObserver menuForEventDelegate:]): Deleted.
(-[WebCoreMovieObserver setView:]): Deleted.

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

5 years agoREGRESSION(r173929): [GTK] TestInspector fails after r173929
carlosgc@webkit.org [Tue, 30 Sep 2014 13:38:03 +0000 (13:38 +0000)]
REGRESSION(r173929): [GTK] TestInspector fails after r173929
https://bugs.webkit.org/show_bug.cgi?id=137247

Reviewed by Philippe Normand.

Source/WebKit2:

Add WebKitWebInspector:can-attach property to notify when the
inspector attach availability changes.

* UIProcess/API/C/gtk/WKInspectorClientGtk.h:
* UIProcess/API/gtk/WebKitWebInspector.cpp:
(webkit_web_inspector_class_init): Add WebKitWebInspector:can-attach property.
(didChangeAttachAvailability): Emit notify::can-attach.
(webkitWebInspectorCreate): Add implementation for didChangeAttachAvailability.
(webkit_web_inspector_get_can_attach): Return whether the inspector can be attached.
* UIProcess/API/gtk/WebKitWebInspector.h:
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add index of new symbols in 2.8.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
* UIProcess/gtk/WebInspectorClientGtk.cpp:
(WebKit::WebInspectorClientGtk::didChangeAttachAvailability):
* UIProcess/gtk/WebInspectorClientGtk.h:
* UIProcess/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Notify the client.

Tools:

Wait until can-attach property changes before trying to attach the
inspector after resizing the view.

* TestWebKitAPI/Tests/WebKit2Gtk/TestInspector.cpp:
(testInspectorDefault):

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

5 years ago[GTK] The remote web inspector shows the HTML content as plain text
carlosgc@webkit.org [Tue, 30 Sep 2014 13:33:50 +0000 (13:33 +0000)]
[GTK] The remote web inspector shows the HTML content as plain text
https://bugs.webkit.org/show_bug.cgi?id=137250

Reviewed by Gustavo Noronha Silva.

Use GResource API directly to get the resource data, instead of
using the GFile API, and use g_content_type_guess() to get the
MIME Type.

* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::platformResourceForPath):

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