Web Inspector: refactor some reusable functionality from BraceHighlighter
https://bugs.webkit.org/show_bug.cgi?id=109574

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-02-12
Reviewed by Pavel Feldman.

Source/WebCore:

New test: inspector/editor/text-editor-brace-highlighter.html

Extract functionality which, for given line and cursor position, will
return position for a brace that should be highlighted. Add a layout
test to verify brace highlighter funcionality.

* inspector/front-end/DefaultTextEditor.js:
(WebInspector.TextEditorMainPanel.BraceHighlightController.prototype.activeBraceColumnForCursorPosition):
(WebInspector.TextEditorMainPanel.BraceHighlightController.prototype.handleSelectionChange):
* inspector/front-end/TextUtils.js:
(WebInspector.TextUtils.isOpeningBraceChar):
(WebInspector.TextUtils.isClosingBraceChar):
(WebInspector.TextUtils.isBraceChar):

LayoutTests:

Add layout test to verify brace highlighter functionality.

* inspector/editor/text-editor-brace-highlighter-expected.txt: Added.
* inspector/editor/text-editor-brace-highlighter.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Fix Chromium compilation after r142618.

* TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp:
(TestWebKitAPI::HeapGraphReceiver::printNode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142625 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: add initial implementation of native memory graph to Timeline
https://bugs.webkit.org/show_bug.cgi?id=109578

Reviewed by Alexander Pavlov.

This change adds inital implementation of native memory graph UI. The graph
will be shown in the same place as DOM counters graph on the Timeline panel.

Added NativeMemoryGraph.js that reuses parts of DOM counters graph
implementation. MemoryStatistics.js was refactor to allow sharing
more code between DOM counters and native memory graph.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics):
(WebInspector.MemoryStatistics.prototype._createCurrentValuesBar):
(WebInspector.MemoryStatistics.prototype._createCounterUIList):
(WebInspector.MemoryStatistics.prototype._createCounterUIList.getNodeCount):
(WebInspector.MemoryStatistics.prototype._createCounterUIList.getListenerCount):
(WebInspector.MemoryStatistics.prototype._canvasHeight):
(WebInspector.MemoryStatistics.prototype._updateSize):
(WebInspector.MemoryStatistics.prototype._highlightCurrentPositionOnGraphs):
(WebInspector.MemoryStatistics.prototype._drawMarker):
* inspector/front-end/NativeMemoryGraph.js: Added.
(WebInspector.NativeMemoryGraph):
(WebInspector.NativeMemoryCounterUI):
(WebInspector.NativeMemoryCounterUI.prototype._hslToString):
(WebInspector.NativeMemoryCounterUI.prototype.updateCurrentValue):
(WebInspector.NativeMemoryCounterUI.prototype.clearCurrentValueAndMarker):
(WebInspector.NativeMemoryGraph.prototype._createCurrentValuesBar):
(WebInspector.NativeMemoryGraph.prototype._createCounterUIList.getCounterValue):
(WebInspector.NativeMemoryGraph.prototype._createCounterUIList):
(WebInspector.NativeMemoryGraph.prototype._canvasHeight):
(WebInspector.NativeMemoryGraph.prototype._onRecordAdded.addStatistics):
(WebInspector.NativeMemoryGraph.prototype._onRecordAdded):
(WebInspector.NativeMemoryGraph.prototype._draw):
(WebInspector.NativeMemoryGraph.prototype._clearCurrentValueAndMarker):
(WebInspector.NativeMemoryGraph.prototype._updateCurrentValue):
(WebInspector.NativeMemoryGraph.prototype._restoreImageUnderMarker):
(WebInspector.NativeMemoryGraph.prototype._saveImageUnderMarker):
(WebInspector.NativeMemoryGraph.prototype._drawMarker):
(WebInspector.NativeMemoryGraph.prototype._maxCounterValue):
(WebInspector.NativeMemoryGraph.prototype._resetTotalValues):
(WebInspector.NativeMemoryGraph.prototype.valueGetter):
(WebInspector.NativeMemoryGraph.prototype._drawGraph):
(WebInspector.NativeMemoryGraph.prototype._discardImageUnderMarker):
* inspector/front-end/TimelinePanel.js:
* inspector/front-end/WebKit.qrc:
* inspector/front-end/timelinePanel.css:
(#memory-graphs-canvas-container.dom-counters .resources-dividers):
(.memory-category-value):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: for event listener provide handler function value in protocol and in UI
https://bugs.webkit.org/show_bug.cgi?id=109284

Patch by Peter Rybin <prybin@chromium.org> on 2013-02-12
Reviewed by Yury Semikhatsky.

Source/WebCore:

The feature implies that we include a real handler function value into event listener description.
Protocol description, inspector DOM agent (with V8 and JSC backends) and front-end is patched accordingly.

* bindings/js/ScriptEventListener.cpp:
(WebCore::eventListenerHandler):
(WebCore):
(WebCore::eventListenerHandlerScriptState):
* bindings/js/ScriptEventListener.h:
(WebCore):
* bindings/v8/ScriptEventListener.cpp:
(WebCore::eventListenerHandler):
(WebCore):
(WebCore::eventListenerHandlerScriptState):
* bindings/v8/ScriptEventListener.h:
(WebCore):
* inspector/Inspector.json:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
* inspector/InspectorDOMAgent.h:
(InspectorDOMAgent):
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode.prototype.eventListeners):
* inspector/front-end/EventListenersSidebarPane.js:
(WebInspector.EventListenersSidebarPane.prototype.update):
(.):

LayoutTests:

Test is rebased.

* inspector/elements/event-listener-sidebar-expected.txt:
* inspector/elements/event-listeners-about-blank-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        <rdar://problem/13196331> NetworkProcess deny mach-lookup com.apple.PowerManagement.control

        Reviewed by Sam Weinig.

        * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
BUILD FIX (r142576): WK1 build fails when ENABLE(DELETION_UI) is off
<https://bugs.webkit.org/show_bug.cgi?id=109534>

Fixes the following build failure:

    WebEditorClient.mm:243:23: error: out-of-line definition of 'shouldShowDeleteInterface' does not match any declaration in 'WebEditorClient'
    bool WebEditorClient::shouldShowDeleteInterface(HTMLElement* element)
                          ^~~~~~~~~~~~~~~~~~~~~~~~~

* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldShowDeleteInterface): Protect with
ENABLE(DELETION_UI) macro.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make PluginProcessProxy a ChildProcessProxy.
https://bugs.webkit.org/show_bug.cgi?id=109513

Reviewed by Anders Carlsson.

* Shared/ChildProcessProxy.h: Inherit from ThreadSafeRefCounted.
* UIProcess/Network/NetworkProcessProxy.h: Don't inherit from RefCounted.
* UIProcess/WebProcessProxy.h: Don't inherit from ThreadSafeRefCounted
* UIProcess/Plugins/PluginProcessProxy.h: Don't inherit from RefCounted, do inherit from ChildProcessProxy

Rely on ChildProcessProxy for process launcher management and launch options:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::PluginProcessProxy):
(WebKit::PluginProcessProxy::getLaunchOptions):
(WebKit::PluginProcessProxy::getPluginProcessConnection):
(WebKit::PluginProcessProxy::getSitesWithData):
(WebKit::PluginProcessProxy::clearSiteData):
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformGetLaunchOptions):
(WebKit::PluginProcessProxy::getPluginProcessSerialNumber):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ASSERTION FAILED: i < size(), UNKNOWN in WebCore::AccessibilityMenuListPopup::didUpdateActiveOption
https://bugs.webkit.org/show_bug.cgi?id=109452

Reviewed by Chris Fleizach.

Source/WebCore:

Send the accessibility childrenChanged notification in
HTMLSelectElement::setRecalcListItems instead of in childrenChanged
so that all possible codepaths are caught.

Test: accessibility/insert-selected-option-into-select-causes-crash.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::childrenChanged):
(WebCore::HTMLSelectElement::setRecalcListItems):

LayoutTests:

Add test to ensure a crash doesn't happen if a selected option
is added to a select element, which was triggering a code path where
the DOM has added a new child of the select but the accessibility
object never got updated.

* accessibility/insert-selected-option-into-select-causes-crash-expected.txt: Added.
* accessibility/insert-selected-option-into-select-causes-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Build fix after r142540 and r142518

* WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::didReceivePluginProcessConnectionManagerMessageOnConnectionWorkQueue):
This function was added to the header in r142518 but not implemented in that revision.
It wasn't a problem until r142540 started using it.
Add a stub implementation for it.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Remove the enable-debug-feature configuration option
https://bugs.webkit.org/show_bug.cgi?id=109539

Reviewed by Philippe Normand.

Remove the --enable-debug-feature option from configuration. It doesn't
do anything that --enable-debug doesn't.

* Source/autotools/PrintBuildConfiguration.m4: Remove references to --enable-debug-features.
* Source/autotools/ReadCommandLineArguments.m4: Ditto.
* Source/autotools/SetupAutoconfHeader.m4: Ditto.
* Source/autotools/SetupAutomake.m4: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142634 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[HTMLTemplateElement] <template> inside of <head> may not create <body> if EOF is hit
https://bugs.webkit.org/show_bug.cgi?id=109338

Reviewed by Adam Barth.

Source/WebCore:

This patch adds the logic to clear the stack of open elements back to the first <template> when EOF
is hit. This allows a <body> to be generated if the initial <template> was opened inside of <head>.

Tests added to html5lib.

* html/parser/HTMLTreeBuilder.cpp:
(WebCore):
(WebCore::HTMLTreeBuilder::popAllTemplates):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processEndOfFile):
* html/parser/HTMLTreeBuilder.h:
(HTMLTreeBuilder):

LayoutTests:

* html5lib/resources/template.dat:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG CompareEq optimization should be retuned
https://bugs.webkit.org/show_bug.cgi?id=109545

Reviewed by Mark Hahnenberg.
        
- Made the object-to-object equality case work again by hoisting the if statement
  for it. Previously, object-to-object equality would be compiled as
  object-to-object-or-other.
        
- Added AbstractState guards for most of the type checks that the object equality
  code uses.
        
Looks like a hint of a speed-up on all of the things.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::compare):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142636 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rollout r142618, it broke all the Mac builds.

Source/WebCore:

* inspector/HeapGraphSerializer.cpp:
(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::pushUpdate):
(WebCore::HeapGraphSerializer::reportNode):
(WebCore::HeapGraphSerializer::toNodeId):
(WebCore::HeapGraphSerializer::addRootNode):
* inspector/HeapGraphSerializer.h:
(WebCore):
(HeapGraphSerializer):
* inspector/InspectorMemoryAgent.cpp:
(WebCore::InspectorMemoryAgent::getProcessMemoryDistributionImpl):

Tools:

* TestWebKitAPI/TestWebKitAPI.gypi:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp: Removed.
* TestWebKitAPI/win/TestWebKitAPI.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
TransformState::move should not round offset to int
https://bugs.webkit.org/show_bug.cgi?id=108266

Source/WebCore:

Reviewed by Simon Fraser.

Currently TransformState::move rounds the offset to the nearest
integer values, this results in operations using TransformState
to compute a position to misreport the location, specifically
Element:getBoundingClientRect and repaint rects. Sizes are
handled correctly and do not have the same problem.

Tests: fast/sub-pixel/boundingclientrect-subpixel-margin.html
       fast/sub-pixel/clip-rect-box-consistent-rounding.html

* page/FrameView.cpp:
(WebCore::FrameView::convertFromRenderer):
Change to use pixel snapping instead of enclosing box. All other
code paths use pixelSnappedIntRect to align the rects to device
pixels however this used enclosingIntRect (indirectly through
the FloatQuad::enclosingBoundingBox call).
Without the rounding in TransformState this causes repaint rects
for elements on subpixel bounds to be too large by up to one
pixel on each axis. For normal repaints this isn't really a
problem but in scrollContentsSlowPath it can result in moving
too large a rect.

* platform/graphics/transforms/TransformState.cpp:
(WebCore::TransformState::translateTransform):
(WebCore::TransformState::translateMappedCoordinates):
Change to take a LayoutSize instead of an IntSize.

(WebCore::TransformState::move):
(WebCore::TransformState::applyAccumulatedOffset):
* platform/graphics/transforms/TransformState.h:
Remove rounding logic and use original, more precise, value.

* rendering/RenderGeometryMap.cpp:
(WebCore::RenderGeometryMap::mapToContainer):
Remove rounding logic and use original, more precise, value.

LayoutTests:

Reviewed by Simon Fraser.

Add new tests for Element::boundingClientRect and clip rects for
elements on subpixel boundaries.

* fast/dom/Window/webkitConvertPoint.html:
* platform/chromium-linux/fast/dom/Window/webkitConvertPoint-expected.txt:
Update test and expectations to take new rounding into account.

* fast/sub-pixel/boundingclientrect-subpixel-margin-expected.txt: Added.
* fast/sub-pixel/boundingclientrect-subpixel-margin.html: Added.
Add test ensuring that boundingClientRect returns accurate and
precise (as opposed to rounded) metrics.

* fast/sub-pixel/clip-rect-box-consistent-rounding-expected.html: Added.
* fast/sub-pixel/clip-rect-box-consistent-rounding.html: Added.
Add test ensuring that clip rects and elements use consistent rounding.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] guard against NULL languages array
https://bugs.webkit.org/show_bug.cgi?id=109595

Reviewed by Dean Jackson.

No new tests, existing tests won't crash if this is correct.

* page/CaptionUserPreferencesMac.mm:
(WebCore::CaptionUserPreferencesMac::preferredLanguages):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Handle error recovery in @supports
https://bugs.webkit.org/show_bug.cgi?id=103934

Patch by Pablo Flouret <pablof@motorola.com> on 2013-02-12
Reviewed by Antti Koivisto.

Source/WebCore:

Tests 021, 024, 031, and 033 in
http://hg.csswg.org/test/file/5f94e4b03ed9/contributors/opera/submitted/css3-conditional
fail because there's no explicit error recovery in @support's grammar.
Opera and Firefox pass the tests.

No new tests, modified css3/supports{,-cssom}.html

* css/CSSGrammar.y.in:
* css/CSSParser.cpp:
(WebCore::CSSParser::createSupportsRule):
(WebCore::CSSParser::markSupportsRuleHeaderEnd):
(WebCore::CSSParser::popSupportsRuleData):
* css/CSSParser.h:

LayoutTests:

* css3/supports-cssom.html:
* css3/supports-expected.txt:
* css3/supports.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142640 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove HTMLTokenTypes header (and split out AtomicHTMLToken.h from HTMLToken.h)
https://bugs.webkit.org/show_bug.cgi?id=109525

Reviewed by Adam Barth.

We no longer need a separate HTMLTokenTypes class now that NEW_XML is gone.
However, to remove HTMLTokenTypes, I had to split AtomicHTMLToken.h from
HTMLToken.h (to fix a circular dependancy).

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLViewSourceDocument.cpp:
(WebCore::HTMLViewSourceDocument::addSource):
* html/parser/AtomicHTMLToken.h: Added.
(WebCore):
(AtomicHTMLToken):
(WebCore::AtomicHTMLToken::create):
(WebCore::AtomicHTMLToken::forceQuirks):
(WebCore::AtomicHTMLToken::type):
(WebCore::AtomicHTMLToken::name):
(WebCore::AtomicHTMLToken::setName):
(WebCore::AtomicHTMLToken::selfClosing):
(WebCore::AtomicHTMLToken::getAttributeItem):
(WebCore::AtomicHTMLToken::attributes):
(WebCore::AtomicHTMLToken::characters):
(WebCore::AtomicHTMLToken::charactersLength):
(WebCore::AtomicHTMLToken::isAll8BitData):
(WebCore::AtomicHTMLToken::comment):
(WebCore::AtomicHTMLToken::publicIdentifier):
(WebCore::AtomicHTMLToken::systemIdentifier):
(WebCore::AtomicHTMLToken::clearExternalCharacters):
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
(WebCore::AtomicHTMLToken::initializeAttributes):
* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::simulateTreeBuilder):
* html/parser/CompactHTMLToken.cpp:
(WebCore::CompactHTMLToken::CompactHTMLToken):
* html/parser/CompactHTMLToken.h:
(WebCore::CompactHTMLToken::type):
* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::insertDoctype):
(WebCore::HTMLConstructionSite::insertComment):
(WebCore::HTMLConstructionSite::insertCommentOnDocument):
(WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
(WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
(WebCore::HTMLConstructionSite::insertForeignElement):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::constructTreeFromHTMLToken):
* html/parser/HTMLDocumentParser.h:
* html/parser/HTMLMetaCharsetParser.cpp:
(WebCore::HTMLMetaCharsetParser::checkForMetaCharset):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::isStartTag):
(WebCore::isStartOrEndTag):
(WebCore::HTMLPreloadScanner::processToken):
* html/parser/HTMLSourceTracker.cpp:
(WebCore::HTMLSourceTracker::start):
(WebCore::HTMLSourceTracker::sourceForToken):
* html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::HTMLStackItem):
* html/parser/HTMLToken.h:
(WebCore::HTMLToken::clear):
(WebCore::HTMLToken::isUninitialized):
(WebCore::HTMLToken::type):
(WebCore::HTMLToken::makeEndOfFile):
(WebCore::HTMLToken::data):
(WebCore::HTMLToken::name):
(WebCore::HTMLToken::appendToName):
(WebCore::HTMLToken::forceQuirks):
(WebCore::HTMLToken::setForceQuirks):
(WebCore::HTMLToken::beginDOCTYPE):
(WebCore::HTMLToken::publicIdentifier):
(WebCore::HTMLToken::systemIdentifier):
(WebCore::HTMLToken::setPublicIdentifierToEmptyString):
(WebCore::HTMLToken::setSystemIdentifierToEmptyString):
(WebCore::HTMLToken::appendToPublicIdentifier):
(WebCore::HTMLToken::appendToSystemIdentifier):
(WebCore::HTMLToken::selfClosing):
(WebCore::HTMLToken::setSelfClosing):
(WebCore::HTMLToken::beginStartTag):
(WebCore::HTMLToken::beginEndTag):
(WebCore::HTMLToken::addNewAttribute):
(WebCore::HTMLToken::appendToAttributeName):
(WebCore::HTMLToken::appendToAttributeValue):
(WebCore::HTMLToken::attributes):
(WebCore::HTMLToken::eraseValueOfAttribute):
(WebCore::HTMLToken::ensureIsCharacterToken):
(WebCore::HTMLToken::characters):
(WebCore::HTMLToken::appendToCharacter):
(WebCore::HTMLToken::comment):
(WebCore::HTMLToken::beginComment):
(WebCore::HTMLToken::appendToComment):
(WebCore::HTMLToken::eraseCharacters):
(HTMLToken):
* html/parser/HTMLTokenTypes.h: Removed.
* html/parser/HTMLTokenizer.cpp:
(WebCore::AtomicHTMLToken::usesName):
(WebCore::AtomicHTMLToken::usesAttributes):
(WebCore::HTMLTokenizer::flushBufferedEndTag):
(WebCore::HTMLTokenizer::nextToken):
* html/parser/HTMLTokenizer.h:
(WebCore::HTMLTokenizer::saveEndTagNameIfNeeded):
(WebCore::HTMLTokenizer::haveBufferedCharacterToken):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processToken):
(WebCore::HTMLTreeBuilder::processDoctypeToken):
(WebCore::HTMLTreeBuilder::processFakeStartTag):
(WebCore::HTMLTreeBuilder::processFakeEndTag):
(WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope):
(WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
(WebCore):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processStartTagForInTable):
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
(WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
(WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
(WebCore::HTMLTreeBuilder::processEndTagForInRow):
(WebCore::HTMLTreeBuilder::processEndTagForInCell):
(WebCore::HTMLTreeBuilder::processEndTagForInBody):
(WebCore::HTMLTreeBuilder::processEndTagForInTable):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processComment):
(WebCore::HTMLTreeBuilder::processCharacter):
(WebCore::HTMLTreeBuilder::defaultForBeforeHTML):
(WebCore::HTMLTreeBuilder::defaultForBeforeHead):
(WebCore::HTMLTreeBuilder::defaultForInHead):
(WebCore::HTMLTreeBuilder::defaultForInHeadNoscript):
(WebCore::HTMLTreeBuilder::defaultForAfterHead):
(WebCore::HTMLTreeBuilder::processStartTagForInHead):
(WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
(WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
(WebCore::HTMLTreeBuilder::processScriptStartTag):
(WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent):
(WebCore::HTMLTreeBuilder::processTokenInForeignContent):
* html/parser/HTMLViewSourceParser.cpp:
(WebCore::HTMLViewSourceParser::updateTokenizerState):
* html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::insertFakePreElement):
* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::filterScriptToken):
(WebCore::XSSAuditor::filterObjectToken):
(WebCore::XSSAuditor::filterParamToken):
(WebCore::XSSAuditor::filterEmbedToken):
(WebCore::XSSAuditor::filterAppletToken):
(WebCore::XSSAuditor::filterIframeToken):
(WebCore::XSSAuditor::filterMetaToken):
(WebCore::XSSAuditor::filterBaseToken):
(WebCore::XSSAuditor::filterFormToken):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142641 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Heap-use-after-free in WebCore::DeleteButtonController::enable
https://bugs.webkit.org/show_bug.cgi?id=109447

Reviewed by Ryosuke Niwa.

RefPtr frame pointer since it can get deleted due to mutation events
fired inside AppendNodeCommand::doUnapply.

No new tests. Testcase is hard to minimize due to recursive
calls with DOMNodeRemovedFromDocument mutation event.

* editing/CompositeEditCommand.cpp:
(WebCore::EditCommandComposition::unapply):
(WebCore::EditCommandComposition::reapply):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142642 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] move text dump generation to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=109575

Reviewed by Adam Barth.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
(WebKit):
(WebTestRunner::WebTestDelegate::captureHistoryForWindow):
* DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
* DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestCommon.cpp: Copied from Tools/DumpRenderTree/chromium/TestRunner/src/TestCommon.h.
(WebTestRunner::normalizeLayoutTestURL):
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestCommon.h:
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::checkResponseMimeType):
(WebTestRunner):
(WebTestRunner::TestRunner::shouldDumpAsText):
(WebTestRunner::TestRunner::shouldGeneratePixelResults):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebPermissions.cpp:
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner::WebTestProxyBase::captureTree):
(WebTestRunner):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::dump):
(TestShell::captureHistoryForWindow):
* DumpRenderTree/chromium/TestShell.h:
(TestShell):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::captureHistoryForWindow):
* DumpRenderTree/chromium/WebViewHost.h:

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

Add back the files to the Xcode project that were removed in r142580.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Plugins/PluginProcessConnectionManager.cpp:

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