WebKit-https.git
8 years ago[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
commit-queue@webkit.org [Tue, 26 Feb 2013 18:29:27 +0000 (18:29 +0000)]
[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
https://bugs.webkit.org/show_bug.cgi?id=110869

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-02-26
Reviewed by Martin Robinson.

Test was failing because of new media controls needs more space to be
painted than just 10x10 pixels.

* UIProcess/API/gtk/tests/TestContextMenu.cpp:
(testContextMenuDefaultMenu): Modified test in order to give more space
to the media controls.

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

8 years ago[BlackBerry] Use APIEntryShim when making JS call
yoli@rim.com [Tue, 26 Feb 2013 18:04:38 +0000 (18:04 +0000)]
[BlackBerry] Use APIEntryShim when making JS call
https://bugs.webkit.org/show_bug.cgi?id=110787

Reviewed by Rob Buis.

PR# 301451.
Use APIEntryShim to fix an assert and ensure it is thread-safe.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):

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

8 years agoREGRESSION(r143986): fast/files/revoke-blob-url.html asserts
antti@apple.com [Tue, 26 Feb 2013 17:50:46 +0000 (17:50 +0000)]
REGRESSION(r143986): fast/files/revoke-blob-url.html asserts
https://bugs.webkit.org/show_bug.cgi?id=110885

Reviewed by Alexey Proskuryakov.

The ResourceRequest string constructor assumes that the string is a valid URL. Use KURL constructor instead.

* html/DOMURL.cpp:
(WebCore::DOMURL::revokeObjectURL):

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

8 years agoDraw intermediate snapshots if possible
dino@apple.com [Tue, 26 Feb 2013 17:16:35 +0000 (17:16 +0000)]
Draw intermediate snapshots if possible
https://bugs.webkit.org/show_bug.cgi?id=110811

Reviewed by Simon Fraser.

After http://webkit.org/b/110495 we delayed snapshotting until we've
received a nice image, but this made the page look like it is broken.
We should draw any intermediate snapshots that we find, which might
include content such as progress bars/spinners.

Source/WebCore:

* html/HTMLPlugInElement.h:
(WebCore::HTMLPlugInElement::isPlugInImageElement): Expose virtual method
to indicate if this is a HTMLPlugInImageElement or not.
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::updateSnapshot): If we have
a RenderEmbeddedObject renderer, then tell it to repaint.
* html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement::snapshotImage): Expose an
accessor for snapshot images.
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage): New helper
method to render an image directly. This code is similar to
that in RenderSnapshottedPlugIn.
(WebCore::RenderEmbeddedObject::paintContents): The virtual implementation
of this method for use when we have a snapshot to paint. If we are a plugin that is
in the process of being snapshotted, ask our HTMLPlugInImageElement for a
snapshot and paint that instead. In the case where we are not snapshotting,
or we do not yet have a snapshot, this will call back into the RenderWidget code.
* rendering/RenderEmbeddedObject.h:
(RenderEmbeddedObject): New methods paintSnapshotImage and paintContents
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents): New method called in the middle
of paint() that can be overridden by RenderEmbeddedObject. The code here was
simply moved out of the previous paint().
(WebCore::RenderWidget::paint): Call paintContents at the appropriate time.
* rendering/RenderWidget.h:
(RenderWidget): New virtual method paintContents.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit): Reinstate 60 attempts at snapshots before giving up.
(WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
want accelerated compositing enabled when we are trying to capture
snapshots.

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

8 years agoRemove nonexistent StringPairVector.h from Target.pri after r142839
abecsi@webkit.org [Tue, 26 Feb 2013 17:15:38 +0000 (17:15 +0000)]
Remove nonexistent StringPairVector.h from Target.pri after r142839

Unreviewed gardening.

* Target.pri:

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

8 years agoAdd support for 8 bit TextRuns for Chromium/HarfBuzz
leviw@chromium.org [Tue, 26 Feb 2013 17:08:05 +0000 (17:08 +0000)]
Add support for 8 bit TextRuns for Chromium/HarfBuzz
https://bugs.webkit.org/show_bug.cgi?id=99393

Reviewed by Eric Seidel.

Source/WebCore:

Adding support for 8 bit TextRuns for platforms using HarfBuzz. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.

No new tests. No change in behavior.

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

Source/WebKit/chromium:

Enabling 8 bit text runs for Chromium.

* features.gypi:

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

8 years agoMerged Tip and Debug log levels for web console.
commit-queue@webkit.org [Tue, 26 Feb 2013 16:37:50 +0000 (16:37 +0000)]
Merged Tip and Debug log levels for web console.
https://bugs.webkit.org/show_bug.cgi?id=109919

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-02-26
Reviewed by Pavel Feldman.

In every component either TIP or DEBUG level was used for reporting,
but not both. This patch is prerequisite for Web Inspector console log filtering.

Source/WebCore:

* css/MediaList.cpp:
(WebCore::addResolutionWarningMessageToConsole):
* inspector/ConsoleMessage.cpp:
(WebCore::messageLevelValue):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::abort):
* page/Console.cpp:
(WebCore::printMessageSourceAndLevelPrefix):
* page/ConsoleTypes.h:
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::XSLTProcessor::parseErrorFunc):
* xml/XSLTProcessorQt.cpp:
(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/chromium:

* public/WebConsoleMessage.h:
* src/AssertMatchingEnums.cpp:
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::addMessageToConsole):

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.mm:
(stringForMessageLevel):
* WebView/WebUIDelegatePrivate.h:

Source/WebKit/wx:

* WebView.h:

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

8 years ago[BlackBerry] Upstream the datalist support UI
commit-queue@webkit.org [Tue, 26 Feb 2013 16:28:24 +0000 (16:28 +0000)]
[BlackBerry] Upstream the datalist support UI
https://bugs.webkit.org/show_bug.cgi?id=110736

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-26
Reviewed by Rob Buis.

Original code by Otto Derek Cheung <otcheung@rim.com>

Source/WebCore:

* css/themeBlackBerry.css:
(input::-webkit-suggestion-dropdown-box):
(input::-webkit-suggestion-dropdown-box-item):
(input::-webkit-suggestion-prefix-text):
(input::-webkit-suggestion-dropdown-box-item-last):
* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::supportsDataListUI):
(WebCore):
* platform/blackberry/RenderThemeBlackBerry.h:
(RenderThemeBlackBerry):

Source/WebKit:

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

* WebCoreSupport/SuggestionBoxElement.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxElement::SuggestionBoxElement):
(WebCore::SuggestionBoxElement::~SuggestionBoxElement):
(WebCore::SuggestionBoxElement::create):
(WebCore::SuggestionBoxElement::defaultEventHandler):
* WebCoreSupport/SuggestionBoxElement.h: Added.
(WebCore):
(SuggestionBoxElement):
* WebCoreSupport/SuggestionBoxHandler.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxHandler::SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::~SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::create):
(WebCore::SuggestionBoxHandler::setInputElementAndUpdateDisplay):
(WebCore::SuggestionBoxHandler::showDropdownBox):
(WebCore::SuggestionBoxHandler::hideDropdownBox):
(WebCore::SuggestionBoxHandler::changeInputElementInnerTextValue):
(WebCore::SuggestionBoxHandler::parseSuggestions):
(WebCore::SuggestionBoxHandler::insertSuggestionsToDropdownBox):
(WebCore::adjustDropdownBoxPosition):
(WebCore::SuggestionBoxHandler::buildDropdownBoxTree):
* WebCoreSupport/SuggestionBoxHandler.h: Added.
(WebCore):
(SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::focusedElement):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::updateFormState):
* WebKitSupport/InputHandler.h:
(WebCore):
(InputHandler):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

8 years agoSource/WebCore: Web Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 16:22:55 +0000 (16:22 +0000)]
Source/WebCore: Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt: Added TimelineTraceEventProcessor.{h,cpp}.
* GNUmakefile.list.am:  Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* inspector/InspectorAllInOne.cpp: Ditto.
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp: create/destroy trace event processor on start/stop.
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::page):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

Source/WebKit/chromium: Plumbing trace events to Timeline

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agoWeb Inspector: Web Inspector: Specify return type of WebInspector.UIString
eustas@chromium.org [Tue, 26 Feb 2013 16:14:12 +0000 (16:14 +0000)]
Web Inspector: Web Inspector: Specify return type of WebInspector.UIString
https://bugs.webkit.org/show_bug.cgi?id=110095

Reviewed by Pavel Feldman.

Specify return type of WebInspector.UIString.
Fix new js-compiler warnings.

This change will increase type coverage by 0.4% (to 81%)

* inspector/front-end/ObjectPropertiesSection.js: Fix type errors.
* inspector/front-end/UIString.js:
(WebInspector.UIString): Return type specified.

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

8 years agoWeb Inspector: [Resources] Cookies table looks empty.
eustas@chromium.org [Tue, 26 Feb 2013 16:08:33 +0000 (16:08 +0000)]
Web Inspector: [Resources] Cookies table looks empty.
https://bugs.webkit.org/show_bug.cgi?id=110870

Reviewed by Pavel Feldman.

Fixed data-grid selector.

* inspector/front-end/resourcesPanel.css:
(.storage-view .data-grid): Fixed selector.

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

8 years ago[Chromium] New baselines for css3-modsel-15c
schenney@chromium.org [Tue, 26 Feb 2013 16:05:34 +0000 (16:05 +0000)]
[Chromium] New baselines for css3-modsel-15c

Unreviewed test expectations update.

* platform/chromium-linux-x86/css3/selectors3/xml: Removed.
* platform/chromium-linux/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-lion/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.txt: Added.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.png: Removed.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.txt: Removed.

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

8 years agoWeb Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityO...
vsevik@chromium.org [Tue, 26 Feb 2013 15:59:46 +0000 (15:59 +0000)]
Web Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110878

Reviewed by Alexander Pavlov.

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
FileSystemModel. This patch migrates FileSystem inspection support to new events.

* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel):
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype.refreshFileSystemList):

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

8 years agoWeb Inspector: Cannot deep expand an element that has previously been partially expanded
graouts@apple.com [Tue, 26 Feb 2013 15:57:50 +0000 (15:57 +0000)]
Web Inspector: Cannot deep expand an element that has previously been partially expanded
https://bugs.webkit.org/show_bug.cgi?id=110424

In the case where the children from the provided node have already been pushed, traverse children at the depth provided until we find children that have not been pushed yet.

Reviewed by Pavel Feldman.

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

8 years agoUnreviewed, rolling out r144054.
akling@apple.com [Tue, 26 Feb 2013 15:53:23 +0000 (15:53 +0000)]
Unreviewed, rolling out r144054.
http://trac.webkit.org/changeset/144054
https://bugs.webkit.org/show_bug.cgi?id=110854

broke builds

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):
* runtime/PropertyTable.cpp: Removed.
* runtime/Structure.cpp:
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):
* runtime/StructureInlines.h:

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

8 years agoREGRESSION (r143619): Crashes in three layout tests
commit-queue@webkit.org [Tue, 26 Feb 2013 15:43:07 +0000 (15:43 +0000)]
REGRESSION (r143619): Crashes in three layout tests
https://bugs.webkit.org/show_bug.cgi?id=110588

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-26
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Guard against null main resource identifiers. The main resource
identifier can be null at various times during the load. A null
identifier is never equal to the ones we are looking to remove.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFinishLoading): Use the new webkitWebViewRemoveSubresource helper.
(WebKit::FrameLoaderClient::dispatchDidFailLoading): ditto.
* webkit/webkitwebview.cpp:
(webkitWebViewRemoveSubresource): Added this helper which removes a subresource, but
never touches the main resource. This is adapted from the old method, for which the
main resource branch was dead code.
* webkit/webkitwebviewprivate.h: Update the method list.

LayoutTests:

* platform/gtk/TestExpectations: Unskip some tests which are no longer
crashing.

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

8 years agoUnused Structure property tables waste 14MB on Membuster.
akling@apple.com [Tue, 26 Feb 2013 15:32:30 +0000 (15:32 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:

    Added PropertyTable.cpp.

* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

    Moved marking of property table values here from Structure::visitChildren().

* runtime/StructureInlines.h:
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

    Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

* runtime/Structure.cpp:
(JSC::Structure::visitChildren):

    Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
* runtime/Structure.h:
(Structure):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

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

8 years agoUnreviewed, rolling out r144041, r144044, and r144048.
caseq@chromium.org [Tue, 26 Feb 2013 14:22:26 +0000 (14:22 +0000)]
Unreviewed, rolling out r144041, r144044, and r144048.
http://trac.webkit.org/changeset/144041
http://trac.webkit.org/changeset/144044
http://trac.webkit.org/changeset/144048
https://bugs.webkit.org/show_bug.cgi?id=105796

Broke build

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
* inspector/InspectorInstrumentation.h:
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineRecordFactory.cpp:
* inspector/TimelineRecordFactory.h:
* inspector/TimelineTraceEventProcessor.cpp: Removed.
* inspector/TimelineTraceEventProcessor.h: Removed.
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

Source/WebKit/chromium:

* public/WebDevToolsAgentClient.h:
* src/InspectorClientImpl.cpp:
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

LayoutTests:

* inspector/timeline/timeline-enum-stability-expected.txt:

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

8 years agoWeb Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded...
vsevik@chromium.org [Tue, 26 Feb 2013 14:20:26 +0000 (14:20 +0000)]
Web Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110863

Reviewed by Alexander Pavlov.

Source/WebCore:

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
IndexedDBModel. This patch migrates IndexedDB support to new events.

* inspector/Inspector.json:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):
* inspector/InspectorIndexedDBAgent.h:
(InspectorIndexedDBAgent):
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeModel.prototype.securityOrigins):

LayoutTests:

* http/tests/inspector/indexeddb/database-names-expected.txt:
* http/tests/inspector/indexeddb/database-names.html:

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

8 years agoUnreviewed fix after r144032.
ossy@webkit.org [Tue, 26 Feb 2013 13:57:36 +0000 (13:57 +0000)]
Unreviewed fix after r144032.
https://bugs.webkit.org/show_bug.cgi?id=110734

Update expected files due to JSC/V8 differences.

Patch by Csaba Osztrogon√°c <ossy@webkit.org> on 2013-02-26

* TestExpectations: Skip 2 failing tests until proper fix.
* html5lib/generated/run-template-write.html:
* html5lib/generated/run-tests1-data-expected.txt:
* html5lib/generated/run-tests1-write-expected.txt:
* html5lib/generated/run-tests18-data-expected.txt:
* html5lib/generated/run-tests18-write-expected.txt:
* html5lib/generated/run-tests7-data-expected.txt:
* html5lib/generated/run-tests7-write-expected.txt:
* platform/chromium/html5lib/generated/run-tests1-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests1-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-write-expected.txt.

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 13:51:58 +0000 (13:51 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoWeb Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
apavlov@chromium.org [Tue, 26 Feb 2013 13:51:16 +0000 (13:51 +0000)]
Web Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
https://bugs.webkit.org/show_bug.cgi?id=80857

Reviewed by Vsevolod Vlasov.

Frame.securityOrigin has always been set to a valid value, so this change just fixes
the protocol flaw.

* inspector/Inspector.json:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::buildObjectForFrame):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype._navigate):

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

8 years agoUnreviewed build fix following r144041.
caseq@chromium.org [Tue, 26 Feb 2013 13:44:38 +0000 (13:44 +0000)]
Unreviewed build fix following r144041.

* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):

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

8 years agoWeb Inspector: DataGrid should reveal and select next/previous DataGridNode upon...
vivek.vg@samsung.com [Tue, 26 Feb 2013 13:43:03 +0000 (13:43 +0000)]
Web Inspector: DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
https://bugs.webkit.org/show_bug.cgi?id=110862

Reviewed by Alexander Pavlov.

While deleting entries in the DataGrid, deleting of selected node should trigger selection of
next possible (backward/forward) DataGridNode.

* inspector/front-end/DataGrid.js:
(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGridNode.prototype.get leftPadding):
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):

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

8 years ago[Chromium] TestExpectations cleanup.
schenney@chromium.org [Tue, 26 Feb 2013 13:42:18 +0000 (13:42 +0000)]
[Chromium] TestExpectations cleanup.

Unreviewed removal of expectations for tests that are now passing.

* platform/chromium/TestExpectations:

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

8 years agoREGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
commit-queue@webkit.org [Tue, 26 Feb 2013 13:37:27 +0000 (13:37 +0000)]
REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

* http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
* http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.

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

8 years agoSource/WebCore: Web Inspector: show raster tasks on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 13:12:28 +0000 (13:12 +0000)]
Source/WebCore: Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

- add PaintLayer, Paint & RasterTask trace events handling to trace event processor;
- upon begin frame, emit aggregated background event for all raster tasks related to the inspected page.

Reviewed by Pavel Feldman.

* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):
* inspector/InspectorInstrumentation.h:
(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
* inspector/InspectorTimelineAgent.h:
(TimelineRecordType):
(WebCore):
* inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):
* inspector/TimelineRecordFactory.h:
(TimelineRecordFactory):
* inspector/TimelineTraceEventProcessor.cpp:
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(TimelineTraceEventProcessor):
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

LayoutTests: Web Inspector: show deferred paints on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

Reviewed by Pavel Feldman.

* inspector/timeline/timeline-enum-stability-expected.txt: Added "Rasterize" record type.

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

8 years agoImplement JIT on Windows 64 bits
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:04:28 +0000 (13:04 +0000)]
Implement JIT on Windows 64 bits
https://bugs.webkit.org/show_bug.cgi?id=107965

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

1. MSVC doesn't support inline assembly for 64 bits, implements the trampoline in a separate ASM file.

2. Windows 64 bits has a different calling convention than other OSes following the AMD64 ABI.
Differences that we have to handle here:
- Registers passed parameters are RCX, RDX, R8 and R9 instead of RDI, RSI, RDX, RCX, R8 and R9
- RDI and RSI must be preserved by callee
- Only return values <= 8 bytes can be returned by register (RDX can't be used to return a second word)
- There is no red-zone after RIP on the stack, but instead 4 reserved words before it

* Target.pri:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
(JSC):
(JITStackFrame):
(JSC::JITStackFrame::returnAddressSlot):
* jit/JITStubsMSVC64.asm: Added.
* jit/JSInterfaceJIT.h:
(JSInterfaceJIT):
* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
* yarr/YarrJIT.cpp:
(YarrGenerator):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::generateReturn):

Source/WTF:

* wtf/Platform.h:

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

8 years agoWork around a MSVC 2012 Update 1 bug causing a crash on x86
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:01:59 +0000 (13:01 +0000)]
Work around a MSVC 2012 Update 1 bug causing a crash on x86
https://bugs.webkit.org/show_bug.cgi?id=110488

Reviewed by Anders Carlsson.

The crash happens when building with /O2, where TextEncodingNameHash::equal is
incorrectly optimized with the inlined toASCIILower and uses a register already in use.
The function returns false incorrectly, causing a mismatch of text encoding name which
then results in a null pointer access.

Slightly rewording the use of the inline function lets the compiler produce correct code.

The bug has already been reported and should be fixed in the next release of MSVS later this year.
https://connect.microsoft.com/VisualStudio/feedback/details/777533/vs2012-c-optimizing-bug-when-using-inline-and-char-return-type-x86-target-only

* platform/text/TextEncodingRegistry.cpp:

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

8 years agoWeb Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 12:52:33 +0000 (12:52 +0000)]
Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

Source/WebCore:

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/Inspector.json:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
(WebCore::InspectorTimelineAgent::page):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

Source/WebKit/chromium:

Plumb trace events to Inspector.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agonew-commit-bot: Some IRC clients doesn't linkify rollout messages
vivek.vg@samsung.com [Tue, 26 Feb 2013 12:52:32 +0000 (12:52 +0000)]
new-commit-bot: Some IRC clients doesn't linkify rollout messages
https://bugs.webkit.org/show_bug.cgi?id=110861

Reviewed by Ryosuke Niwa.

Adding the space before ':' in order to fix the links shown for the rollout message.

* Scripts/webkitpy/tool/commands/newcommitbot.py:
(NewCommitBot._summarize_commit_log):

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

8 years agoWeb Inspector: display background events on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 12:42:58 +0000 (12:42 +0000)]
Web Inspector: display background events on Timeline
https://bugs.webkit.org/show_bug.cgi?id=108599

Reviewed by Pavel Feldman.

- add optional `thread' field to timeline event;
- if thread field is present, display the event as 'background' (hollow bar / list icon), align to nearest foreground event;
- do not account background events in Frame mode of overview.

* inspector/Inspector.json:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

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

8 years ago[V8] Rename BatchedCallback to BatchedMethod
haraken@chromium.org [Tue, 26 Feb 2013 12:33:03 +0000 (12:33 +0000)]
[V8] Rename BatchedCallback to BatchedMethod
https://bugs.webkit.org/show_bug.cgi?id=110791

Reviewed by Adam Barth.

Now 'Callback' is used to refer to functions that are called back
by V8. DOM methods should be referred to as 'Method's.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
* bindings/scripts/test/V8/V8TestTypedefs.cpp:
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):
* bindings/v8/V8DOMConfiguration.cpp:
(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8DOMConfiguration.h:
(V8DOMConfiguration):

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

8 years agoAdd User-Agent header in opening handshake headers.
toyoshim@chromium.org [Tue, 26 Feb 2013 12:01:24 +0000 (12:01 +0000)]
Add User-Agent header in opening handshake headers.
https://bugs.webkit.org/show_bug.cgi?id=110601

Reviewed by Alexey Proskuryakov.

RFC-6455 doesn't require to send User-Agent header, but allow it.
Many web application developers want to have it, and Firefox already
did it. This patch adds User-Agent header in opening handshake also in
WebKit ports.

Test: http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html

Source/WebCore:

* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

LayoutTests:

* http/tests/websocket/tests/hybi/sendback_ua_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake-expected.txt: Added.
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html: Added.

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

8 years agoXSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
mkwst@chromium.org [Tue, 26 Feb 2013 11:41:23 +0000 (11:41 +0000)]
XSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
https://bugs.webkit.org/show_bug.cgi?id=110859

Reviewed by Jochen Eisinger.

XSSAuditor::init should explicitly make a thread-safe copy of the
document's URL as a String rather than relying on implicit casting from
a copy of the KURL.

This shouldn't change any visible behavior; all existing XSSAuditor
tests should continue to pass. They'll now just be a bit more smug while
doing so.

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::init):

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 26 Feb 2013 11:31:02 +0000 (11:31 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Updating expectations for two inspector tests.
Expanding expectation for media/encrypted-media/encrypted-media-syntax.html to expect timeouts as well.
Adding a flaky failure expectation for svg/custom/animation-currentColor.svg.

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

8 years ago[chromium] add content shell specific TestExpectations
jochen@chromium.org [Tue, 26 Feb 2013 11:22:45 +0000 (11:22 +0000)]
[chromium] add content shell specific TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=110710

Reviewed by Eric Seidel.

For now, add tests that pass on content shell but fail on DRT.
Next, I will file bugs for all the remaining failing tests and skip
them here to ease the transition from DRT.

* platform/chromium/ContentShellTestExpectations: Added.

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

8 years ago[Qt] Unreviewed gardening.
zarvai@inf.u-szeged.hu [Tue, 26 Feb 2013 11:09:16 +0000 (11:09 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-5.0-wk1/http/tests/navigation/forward-and-cancel-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/forward-and-cancel-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-frames-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-frames-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-goback2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-goback2-expected.txt.

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

8 years agoLayout Test Multiple html5lib/ tests are too slow and should be split.
eric@webkit.org [Tue, 26 Feb 2013 11:05:17 +0000 (11:05 +0000)]
Layout Test Multiple html5lib/ tests are too slow and should be split.
https://bugs.webkit.org/show_bug.cgi?id=110734

Reviewed by Adam Barth.

Split all of the html5lib tests into write and data variants
instead of running both in sequence in each test.
I added a script to autogenerate all of the test harness files
from the *.dat files in resources/ (which we sync with the
upstream html5lib tests.

I removed all the old tests and expectations as well as TestExpectation entries.
All of these tests should now be fast enough to avoid timeout on all platforms.
I set the expectations from my chromium-linux (v8) machine, thus someone
from a jsc port will need to rebaseline appropriately from their machine.

* TestExpectations:
* html5lib/generate-test-wrappers.py: Added.
(WrapperGenerator):
(_files_in_directory_with_suffix):
(_last_path_component_removing_suffix):
(_remove_harness_prefix):
(_remove_harness_type):
(_test_name_from_harness_name):
(_remove_stale_tests):
(_input_path):
(_harness_path):
(_harness_content):
(_write_harness):
(main):
* html5lib/generated/run-adoption01-data-expected.txt: Added.
* html5lib/generated/run-adoption01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption01-write-expected.txt: Added.
* html5lib/generated/run-adoption01-write.html: Renamed from LayoutTests/html5lib/generated/run-template.html.
* html5lib/generated/run-adoption02-data-expected.txt: Added.
* html5lib/generated/run-adoption02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption02-write-expected.txt: Added.
* html5lib/generated/run-adoption02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests11.html.
* html5lib/generated/run-comments01-data-expected.txt: Added.
* html5lib/generated/run-comments01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-comments01-write-expected.txt: Added.
* html5lib/generated/run-comments01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-data-expected.txt: Added.
* html5lib/generated/run-doctype01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-write-expected.txt: Added.
* html5lib/generated/run-doctype01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests10.html.
* html5lib/generated/run-domjs-unsafe-data-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-domjs-unsafe-write-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-data-expected.txt: Added.
* html5lib/generated/run-entities01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-write-expected.txt: Added.
* html5lib/generated/run-entities01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-data-expected.txt: Added.
* html5lib/generated/run-entities02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-write-expected.txt: Added.
* html5lib/generated/run-entities02-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-data-expected.txt: Added.
* html5lib/generated/run-html5test-com-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-write-expected.txt: Added.
* html5lib/generated/run-html5test-com-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-data-expected.txt: Added.
* html5lib/generated/run-inbody01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-write-expected.txt: Added.
* html5lib/generated/run-inbody01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-data-expected.txt: Added.
* html5lib/generated/run-isindex-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-write-expected.txt: Added.
* html5lib/generated/run-isindex-write.html: Renamed from LayoutTests/html5lib/generated/run-tests2.html.
* html5lib/generated/run-pending-spec-changes-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data.html: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-data-expected.txt: Added.
* html5lib/generated/run-scriptdata01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-write-expected.txt: Added.
* html5lib/generated/run-scriptdata01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-data-expected.txt: Added.
* html5lib/generated/run-tables01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-write-expected.txt: Added.
* html5lib/generated/run-tables01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests22.html.
* html5lib/generated/run-template-data-expected.txt: Added.
* html5lib/generated/run-template-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-template-expected.txt: Removed.
* html5lib/generated/run-template-write-expected.txt: Added.
* html5lib/generated/run-template-write.html: Renamed from LayoutTests/html5lib/generated/run-tests3.html.
* html5lib/generated/run-tests1-data-expected.txt: Added.
* html5lib/generated/run-tests1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests1-expected.txt: Removed.
* html5lib/generated/run-tests1-write-expected.txt: Added.
* html5lib/generated/run-tests1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-data-expected.txt: Added.
* html5lib/generated/run-tests10-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-expected.txt: Removed.
* html5lib/generated/run-tests10-write-expected.txt: Added.
* html5lib/generated/run-tests10-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-data-expected.txt: Added.
* html5lib/generated/run-tests11-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-expected.txt: Removed.
* html5lib/generated/run-tests11-write-expected.txt: Added.
* html5lib/generated/run-tests11-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-data-expected.txt: Added.
* html5lib/generated/run-tests12-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-expected.txt: Removed.
* html5lib/generated/run-tests12-write-expected.txt: Added.
* html5lib/generated/run-tests12-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12.html: Removed.
* html5lib/generated/run-tests14-data-expected.txt: Added.
* html5lib/generated/run-tests14-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14-expected.txt: Removed.
* html5lib/generated/run-tests14-write-expected.txt: Added.
* html5lib/generated/run-tests14-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14.html: Removed.
* html5lib/generated/run-tests15-data-expected.txt: Added.
* html5lib/generated/run-tests15-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15-expected.txt: Removed.
* html5lib/generated/run-tests15-write-expected.txt: Added.
* html5lib/generated/run-tests15-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15.html: Removed.
* html5lib/generated/run-tests16-data-expected.txt: Added.
* html5lib/generated/run-tests16-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16-expected.txt: Removed.
* html5lib/generated/run-tests16-write-expected.txt: Added.
* html5lib/generated/run-tests16-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16.html: Removed.
* html5lib/generated/run-tests17-data-expected.txt: Added.
* html5lib/generated/run-tests17-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17-expected.txt: Removed.
* html5lib/generated/run-tests17-write-expected.txt: Added.
* html5lib/generated/run-tests17-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17.html: Removed.
* html5lib/generated/run-tests18-data-expected.txt: Added.
* html5lib/generated/run-tests18-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18-expected.txt: Removed.
* html5lib/generated/run-tests18-write-expected.txt: Added.
* html5lib/generated/run-tests18-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18.html: Removed.
* html5lib/generated/run-tests19-data-expected.txt: Added.
* html5lib/generated/run-tests19-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19-expected.txt: Removed.
* html5lib/generated/run-tests19-write-expected.txt: Added.
* html5lib/generated/run-tests19-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19.html: Removed.
* html5lib/generated/run-tests2-data-expected.txt: Added.
* html5lib/generated/run-tests2-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests2-expected.txt: Removed.
* html5lib/generated/run-tests2-write-expected.txt: Added.
* html5lib/generated/run-tests2-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-data-expected.txt: Added.
* html5lib/generated/run-tests20-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-expected.txt: Removed.
* html5lib/generated/run-tests20-write-expected.txt: Added.
* html5lib/generated/run-tests20-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20.html: Removed.
* html5lib/generated/run-tests21-data-expected.txt: Added.
* html5lib/generated/run-tests21-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21-expected.txt: Removed.
* html5lib/generated/run-tests21-write-expected.txt: Added.
* html5lib/generated/run-tests21-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21.html: Removed.
* html5lib/generated/run-tests22-data-expected.txt: Added.
* html5lib/generated/run-tests22-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests22-expected.txt: Removed.
* html5lib/generated/run-tests22-write-expected.txt: Added.
* html5lib/generated/run-tests22-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-data-expected.txt: Added.
* html5lib/generated/run-tests23-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-expected.txt: Removed.
* html5lib/generated/run-tests23-write-expected.txt: Added.
* html5lib/generated/run-tests23-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23.html: Removed.
* html5lib/generated/run-tests24-data-expected.txt: Added.
* html5lib/generated/run-tests24-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24-expected.txt: Removed.
* html5lib/generated/run-tests24-write-expected.txt: Added.
* html5lib/generated/run-tests24-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24.html: Removed.
* html5lib/generated/run-tests25-data-expected.txt: Added.
* html5lib/generated/run-tests25-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25-expected.txt: Removed.
* html5lib/generated/run-tests25-write-expected.txt: Added.
* html5lib/generated/run-tests25-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25.html: Removed.
* html5lib/generated/run-tests26-data-expected.txt: Added.
* html5lib/generated/run-tests26-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26-expected.txt: Removed.
* html5lib/generated/run-tests26-write-expected.txt: Added.
* html5lib/generated/run-tests26-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26.html: Removed.
* html5lib/generated/run-tests3-data-expected.txt: Added.
* html5lib/generated/run-tests3-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests3-expected.txt: Removed.
* html5lib/generated/run-tests3-write-expected.txt: Added.
* html5lib/generated/run-tests3-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-data-expected.txt: Added.
* html5lib/generated/run-tests4-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-expected.txt: Removed.
* html5lib/generated/run-tests4-write-expected.txt: Added.
* html5lib/generated/run-tests4-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4.html: Removed.
* html5lib/generated/run-tests5-data-expected.txt: Added.
* html5lib/generated/run-tests5-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5-expected.txt: Removed.
* html5lib/generated/run-tests5-write-expected.txt: Added.
* html5lib/generated/run-tests5-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5.html: Removed.
* html5lib/generated/run-tests6-data-expected.txt: Added.
* html5lib/generated/run-tests6-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6-expected.txt: Removed.
* html5lib/generated/run-tests6-write-expected.txt: Added.
* html5lib/generated/run-tests6-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6.html: Removed.
* html5lib/generated/run-tests7-data-expected.txt: Added.
* html5lib/generated/run-tests7-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7-expected.txt: Removed.
* html5lib/generated/run-tests7-write-expected.txt: Added.
* html5lib/generated/run-tests7-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7.html: Removed.
* html5lib/generated/run-tests8-data-expected.txt: Added.
* html5lib/generated/run-tests8-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8-expected.txt: Removed.
* html5lib/generated/run-tests8-write-expected.txt: Added.
* html5lib/generated/run-tests8-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8.html: Removed.
* html5lib/generated/run-tests9-data-expected.txt: Added.
* html5lib/generated/run-tests9-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9-expected.txt: Removed.
* html5lib/generated/run-tests9-write-expected.txt: Added.
* html5lib/generated/run-tests9-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9.html: Removed.
* html5lib/generated/run-tests_innerHTML_1-data-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests_innerHTML_1-write-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-data-expected.txt: Added.
* html5lib/generated/run-tricky01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-write-expected.txt: Added.
* html5lib/generated/run-tricky01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-data-expected.txt: Added.
* html5lib/generated/run-webkit01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-write-expected.txt: Added.
* html5lib/generated/run-webkit01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-data-expected.txt: Added.
* html5lib/generated/run-webkit02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-write-expected.txt: Added.
* html5lib/generated/run-webkit02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/resources/runner.js:
(window.onload):
* html5lib/runner-expected.txt: Removed.
* html5lib/runner.html: Removed.
* platform/chromium/TestExpectations:
* platform/chromium/html5lib/generated/run-tests1-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests18-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests7-expected.txt: Removed.

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

8 years agoShadow DOM styles appear to be over-eagerly shared
tasak@google.com [Tue, 26 Feb 2013 10:51:58 +0000 (10:51 +0000)]
Shadow DOM styles appear to be over-eagerly shared
https://bugs.webkit.org/show_bug.cgi?id=110797

Reviewed by Dimitri Glazkov.

Source/WebCore:

A style of a distributed node should not be shared, because the node
might be affected by styles in a shadow dom tree, i.e. :distributed
or something.

Test: fast/dom/shadow/no-style-sharing-with-distributed-nodes.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::locateCousinList):
Skip shadow hosts, because children of shadow hosts are distributed
nodes and cannot share their styles.

LayoutTests:

* fast/dom/shadow/no-style-sharing-with-distributed-nodes-expected.html: Added.
* fast/dom/shadow/no-style-sharing-with-distributed-nodes.html: Added.

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

8 years agoRemove unused conditional includes of {MathML,SVG}Names.h
adamk@chromium.org [Tue, 26 Feb 2013 10:40:12 +0000 (10:40 +0000)]
Remove unused conditional includes of {MathML,SVG}Names.h
https://bugs.webkit.org/show_bug.cgi?id=110809

Reviewed by Eric Seidel.

* html/parser/HTMLConstructionSite.cpp:

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

8 years ago[Qt] Unreviewed gardening. Update platform specific expected file after r143836.
kadam@inf.u-szeged.hu [Tue, 26 Feb 2013 10:30:29 +0000 (10:30 +0000)]
[Qt] Unreviewed gardening. Update platform specific expected file after r143836.

* platform/qt/TestExpectations: Skipped after r143300.
* platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.

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

8 years ago[GTK] Add Clutter to jhbuild
joone.hur@intel.com [Tue, 26 Feb 2013 10:05:47 +0000 (10:05 +0000)]
[GTK] Add Clutter to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=110245

Reviewed by Martin Robinson.

Add clutter, cogl, clutter-gtk, and atk to the optional moduleset.
This allows to build WebKitGtk+ with clutter as an acceleration backend
within the jhbuild environment.

* gtk/jhbuild-optional.modules:

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

8 years agoThreaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter...
eric@webkit.org [Tue, 26 Feb 2013 09:57:33 +0000 (09:57 +0000)]
Threaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter.html
https://bugs.webkit.org/show_bug.cgi?id=110801

Reviewed by Adam Barth.

This causes 6 more tests to pass for the threaded parser,
an solves all of our timeout issues.

These tests which were failing were racy, we just were never
hitting the race due to using file urls.  This change fixes
the threaded parser to emulate one more of the EOF quirks from
the loader/main-thread-parser interaction.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):

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

8 years agoKill another analyzer warning in javascriptcore
oliver@apple.com [Tue, 26 Feb 2013 09:47:57 +0000 (09:47 +0000)]
Kill another analyzer warning in javascriptcore
https://bugs.webkit.org/show_bug.cgi?id=110802

Reviewed by Benjamin Poulain.

Add null checks.

* profiler/LegacyProfiler.cpp:
(JSC::LegacyProfiler::startProfiling):
(JSC::LegacyProfiler::stopProfiling):

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

8 years agoWeb Inspector: CSSAgent.setStyleSheetText crashes on inline styles
apavlov@chromium.org [Tue, 26 Feb 2013 09:15:17 +0000 (09:15 +0000)]
Web Inspector: CSSAgent.setStyleSheetText crashes on inline styles
https://bugs.webkit.org/show_bug.cgi?id=110359

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::undo): Pass ExceptionCode into setText().
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::redo): Ditto.
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::setText): Make use of checkPageStyleSheet().
(WebCore::InspectorStyleSheet::setRuleSelector): Ditto.
(WebCore::InspectorStyleSheet::addRule): Ditto.
(WebCore::InspectorStyleSheet::deleteRule): Ditto.
(WebCore::InspectorStyleSheet::checkPageStyleSheet):
  Return NOT_SUPPORTED_ERR if no m_pageStyleSheet.
(WebCore::InspectorStyleSheet::setStyleText): Check field directly.
* inspector/InspectorStyleSheet.h:

LayoutTests:

* inspector/styles/styles-new-API-expected.txt:
* inspector/styles/styles-new-API.html:

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

8 years agoImplement coordinated scrollbar for subframes and overflow:scroll
commit-queue@webkit.org [Tue, 26 Feb 2013 09:13:32 +0000 (09:13 +0000)]
Implement coordinated scrollbar for subframes and overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=109560

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-26
Reviewed by James Robinson.

Source/WebCore:

This patch obsoletes ScrollingCoordinatorPrivate for the Chromium
implementation. Also removes the concept of a single main scrolling
layer. Should use HashMap to keep track resources for multiple
scrollable objects.

Many of the callbacks are extended to support ScrollableArea instead
of just FrameView. Now ScrollingCoordinatorChromium coordinates
scrollbars for both subframes and overflow:scroll.

Some drive-by change:
1. Remove the GraphicsLayer parameter for layer change callbacks.
   Should be able to get the latest layer from the ScrollableArea anyway.
2. Should start from main frame document when updating touch event target rects.

New chromium test: ScrollingCoordinatorChromiumTest.iframeScrolling

* page/Frame.cpp:
(WebCore::Frame::willDetachPage):
* page/FrameView.cpp:
(WebCore::FrameView::prepareForDetach):
(WebCore::FrameView::layerForScrolling):
(WebCore):
* page/FrameView.h:
(FrameView):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::scrollLayerForScrollableArea):
(WebCore):
(WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea):
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::willDestroyScrollableArea):
(WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
(ScrollingCoordinator):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::scrollingWebLayerForGraphicsLayer):
(WebCore::ScrollingCoordinatorChromium::scrollingWebLayerForScrollableArea):
(WebCore::ScrollingCoordinatorChromium::ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::~ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::touchEventTargetRectsDidChange):
(WebCore::createScrollbarLayer):
(WebCore::detachScrollbarLayer):
(WebCore::setupScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::willDestroyScrollableArea):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollbarLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):
(WebCore::ScrollingCoordinatorChromium::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinatorChromium::setShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinatorChromium::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinatorChromium::setLayerIsFixedToContainerLayer):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::addWebScrollbarLayer):
(WebCore):
(WebCore::ScrollingCoordinatorChromium::getWebScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::removeWebScrollbarLayer):
* page/scrolling/chromium/ScrollingCoordinatorChromium.h:
(WebCore):
(ScrollingCoordinatorChromium):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollingCoordinatorMac):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::scrollableAreaScrollbarLayerDidChange):
* platform/ScrollableArea.h:
(ScrollableArea):
(WebCore::ScrollableArea::layerForScrolling):
* platform/graphics/GraphicsLayer.h:
(GraphicsLayer):
(WebCore::GraphicsLayer::setContentsToPlatformLayer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::layerForScrolling):
(WebCore):
* rendering/RenderLayer.h:
(RenderLayer):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateScrollingLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::scrollingLayerDidChange):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):

Source/WebKit/chromium:

Added ScrollingCoordinatorChromiumTest.iframeScrolling to verify
impl-side scrolling and impl-side scrollbars for frames.

Update ScrollingCoordinatorChromiumTest.overflowScrolling to verify
impl-side scrollbars.

* tests/ScrollingCoordinatorChromiumTest.cpp:
(WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
(WebKit::TEST_F):
(WebKit):
* tests/data/iframe-scrolling-inner.html: Added.
* tests/data/iframe-scrolling.html: Added.

LayoutTests:

Coordinated scrollbars changes drawsContent flag on scrollbar GraphicsLayers,
test expectation are updated.

* platform/chromium-linux/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/iframe-resize-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/resizer-expected.txt: Added.
* platform/chromium-linux/compositing/iframes/scrolling-iframe-expected.txt: Added.
* platform/chromium-linux/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-overlay-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-resize-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/resizer-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/scrolling-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt:
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/chromium/TestExpectations:

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

8 years agoUnreviewed, rolling out r144004.
commit-queue@webkit.org [Tue, 26 Feb 2013 09:07:57 +0000 (09:07 +0000)]
Unreviewed, rolling out r144004.
http://trac.webkit.org/changeset/144004
https://bugs.webkit.org/show_bug.cgi?id=110858

This iOS change is outdated (Requested by notbenjamin on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):
* parser/Parser.cpp:
(JSC::::Parser):
* parser/Parser.h:
(JSC::Parser::canRecurse):
(Parser):

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

8 years ago[V8] Overloaded constructors don't need header declarations
haraken@chromium.org [Tue, 26 Feb 2013 09:06:12 +0000 (09:06 +0000)]
[V8] Overloaded constructors don't need header declarations
https://bugs.webkit.org/show_bug.cgi?id=110799

Reviewed by Adam Barth.

They are implemented as static functions in cpp files.
Header declarations are not needed.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

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

8 years agoUnreviewed, rolling out r144016.
commit-queue@webkit.org [Tue, 26 Feb 2013 09:04:57 +0000 (09:04 +0000)]
Unreviewed, rolling out r144016.
http://trac.webkit.org/changeset/144016
https://bugs.webkit.org/show_bug.cgi?id=110856

Breaks compilation on chromium mac (Requested by vsevik on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/KeyCodeConversionTest.cpp: Removed.

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

8 years agoAppease static analyzer warning about null string passed to strlen
oliver@apple.com [Tue, 26 Feb 2013 08:49:28 +0000 (08:49 +0000)]
Appease static analyzer warning about null string passed to strlen
https://bugs.webkit.org/show_bug.cgi?id=110658

Reviewed by Benjamin Poulain.

Add a null check before calling strlen

* wtf/Threading.cpp:
(WTF::createThread):

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

8 years agoSource/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break...
glenn@skynav.com [Tue, 26 Feb 2013 08:42:14 +0000 (08:42 +0000)]
Source/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

This patch adds semantic support for the CSS3 line-break property (qua -webkit-line-break),
and enables testing on (apple) mac ports. Follow on patches will enable these tests on
other ports as they are incrementally verified.

See also wiki documentation at:
[1] http://trac.webkit.org/wiki/LineBreaking
[2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping

Tests: css3/line-break/line-break-auto-centered.html
       css3/line-break/line-break-auto-half-kana.html
       css3/line-break/line-break-auto-hyphens.html
       css3/line-break/line-break-auto-inseparables.html
       css3/line-break/line-break-auto-iteration-marks.html
       css3/line-break/line-break-auto-postfixes.html
       css3/line-break/line-break-auto-prefixes.html
       css3/line-break/line-break-auto-sound-marks.html
       css3/line-break/line-break-loose-centered.html
       css3/line-break/line-break-loose-half-kana.html
       css3/line-break/line-break-loose-hyphens.html
       css3/line-break/line-break-loose-inseparables.html
       css3/line-break/line-break-loose-iteration-marks.html
       css3/line-break/line-break-loose-postfixes.html
       css3/line-break/line-break-loose-prefixes.html
       css3/line-break/line-break-loose-sound-marks.html
       css3/line-break/line-break-normal-centered.html
       css3/line-break/line-break-normal-half-kana.html
       css3/line-break/line-break-normal-hyphens.html
       css3/line-break/line-break-normal-inseparables.html
       css3/line-break/line-break-normal-iteration-marks.html
       css3/line-break/line-break-normal-postfixes.html
       css3/line-break/line-break-normal-prefixes.html
       css3/line-break/line-break-normal-sound-marks.html
       css3/line-break/line-break-strict-centered.html
       css3/line-break/line-break-strict-half-kana.html
       css3/line-break/line-break-strict-hyphens.html
       css3/line-break/line-break-strict-inseparables.html
       css3/line-break/line-break-strict-iteration-marks.html
       css3/line-break/line-break-strict-postfixes.html
       css3/line-break/line-break-strict-prefixes.html
       css3/line-break/line-break-strict-sound-marks.html

These tests were previously added in http://trac.webkit.org/changeset/143378, but skipped
in generic TestExpectations. In this patch, they are marked as Pass for the (apple) mac ports.

* platform/text/LineBreakIteratorPoolICU.h:
(WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
Add static function to construct ICU locale argument (also used as pool key) with additional
break keyword.
(LineBreakIteratorPool):
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
Remove direct dependency from ICU library (and types), moving that dependency into
new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
Update to take line break mode into account.
Create (and cache) different break iterators depending on line break mode (in addition to locale),
which entails expanding pool entry key format to optionally append "@break=" +
"loose"|"normal"|"strict" keyword to locale string.

* platform/text/TextBreakIterator.h:
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::isLooseCJKMode):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
Add state member to indicate line break mode.

* platform/text/TextBreakIteratorICU.cpp:
(WebCore::acquireLineBreakIterator):
Use new line break mode when making iterator from pool.
Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::releaseLineBreakIterator):
Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore):
(WebCore::isCJKLocale):
New functions for determining if CJK rules apply.
(WebCore::openLineBreakIterator):
New function for abstracting opening of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
This function also takes into account the line break mode.
(WebCore::closeLineBreakIterator):
(WebCore::mapLineIteratorModeToRules):
New function for abstracting closing of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
Pass line break iterator mode flag when reseting LazyLineBreakIterator.
Add looseMode local variable to prevent need for computing under isBreakable().

* rendering/RenderText.cpp:
(WebCore::mapLineBreakToIteratorMode):
Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.
(WebCore):
(WebCore::RenderText::computePreferredLogicalWidths):
Ensure (lazy line) breakIterator is initialized for line break mode.
Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.

* rendering/RenderText.h:
(WebCore):
Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.

* rendering/break_lines.cpp:
(WebCore):
Introduce (local) enum NBSPBehavior for expanding template on nextBreakablePosition.
(WebCore::isBreakableSpace):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation. Use new loose mode flavors off NBP functions.
(WebCore::needsLineBreakIterator):
Use enum NBSP behavior template parameter rather than boolean.
(WebCore::nextBreakablePositionNonLoosely):
Extend name to distinguish from loose flavor of this function.
(WebCore::nextBreakablePositionLoosely):
Add loose flavor of NBP invoked only when loose mode applies, in which case ASCII shortcut
table cannot be used.
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
Use (renamed) non-loose flavor of NBP.
(WebCore::nextBreakablePositionLoose):
(WebCore::nextBreakablePositionIgnoringNBSPLoose):
Introduce loose flavor of NBP template expansions.

* rendering/break_lines.h:
(WebCore):
(WebCore::isBreakable):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation.

LayoutTests: CSS3: line-break property support
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

* platform/mac/TestExpectations: Mark css3/line-break tests as passing.

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

8 years ago[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
kadam@inf.u-szeged.hu [Tue, 26 Feb 2013 08:38:01 +0000 (08:38 +0000)]
[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
https://bugs.webkit.org/show_bug.cgi?id=110756.

Reviewed by Geoffrey Garen.

* platform/qt/TestExpectations:

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

8 years ago[chromium] Fix continuous painting mode
commit-queue@webkit.org [Tue, 26 Feb 2013 08:34:53 +0000 (08:34 +0000)]
[chromium] Fix continuous painting mode
https://bugs.webkit.org/show_bug.cgi?id=110788

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Adrienne Walker.

Recent instrumentation shuffling caused WebViewImpl::didBeginFrame to no longer be called, which
broke continuous painting.  Since continuous painting mode is meant to simply invalidate layers
on each frame, it's a better fit for the animation system. This moves the invalidation calls
into WebViewImpl::updateAnimations along with other animation type things.

Tested manually by enabling continuous painting mode in the inspector. There aren't any automated
tests in WebKit for this feature.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setContinuousPaintingEnabled):
(WebKit::WebViewImpl::didBeginFrame):
(WebKit::WebViewImpl::updateAnimations):
* src/painting/ContinuousPainter.cpp:
(WebKit::ContinuousPainter::setNeedsDisplayRecursive):

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

8 years agokeydown and keyup events have zero keycode for some numeric pad keys under Chromium...
commit-queue@webkit.org [Tue, 26 Feb 2013 08:32:32 +0000 (08:32 +0000)]
keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values
as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

* WebKit.gypi:
* tests/KeyCodeConversionTest.cpp: Added.
(WebCore):
(WebCore::TEST):

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

8 years agoUnreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix
hausmann@webkit.org [Tue, 26 Feb 2013 08:28:52 +0000 (08:28 +0000)]
Unreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix

Add an intermediate pluginName string variable instead of
accessing plugin.info outside the feature #ifdef.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::unavailablePluginButtonClicked):

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

8 years agoAnother fix attempt after r143991 since having \r? after a greedy match doesn't help.
rniwa@webkit.org [Tue, 26 Feb 2013 07:57:27 +0000 (07:57 +0000)]
Another fix attempt after r143991 since having \r? after a greedy match doesn't help.

* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.value_from_svn_info):

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 07:56:40 +0000 (07:56 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoCoordinated Graphics: remove redundant update of non compositing layer.
commit-queue@webkit.org [Tue, 26 Feb 2013 07:47:35 +0000 (07:47 +0000)]
Coordinated Graphics: remove redundant update of non compositing layer.
https://bugs.webkit.org/show_bug.cgi?id=110444

Patch by Huang Dongsung <luxtella@company100.net> on 2013-02-25
Reviewed by Noam Rosenthal.

Currently, we update non compositing layer when the page scrolled. However, it
is not needed, because TiledBackingStore can scroll without tile update.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
(CoordinatedLayerTreeHost):

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

8 years agoREGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
jer.noble@apple.com [Tue, 26 Feb 2013 07:42:59 +0000 (07:42 +0000)]
REGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
https://bugs.webkit.org/show_bug.cgi?id=110848

Reviewed by Ryosuke Niwa.

NULL-check the result of document->documentElement().

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

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

8 years ago6% regression in intl1 page cycler on chromium-mac
abarth@webkit.org [Tue, 26 Feb 2013 07:21:52 +0000 (07:21 +0000)]
6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Unreviewed.

This patch restores the code that I rolled out in
http://trac.webkit.org/changeset/143960 and
http://trac.webkit.org/changeset/143983. Rolling out those patches did
not heal the bot.

* dom/Element.cpp:
(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::UniqueElementData::addAttribute):
(WebCore::UniqueElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):
(WebCore::UniqueElementData::getAttributeItem):
(WebCore):
(WebCore::UniqueElementData::attributeItem):
* dom/Element.h:
(ElementData):
(UniqueElementData):
(WebCore::isShadowHost):
(WebCore::ElementData::length):
(WebCore::ElementData::attributeItem):
* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
* html/parser/CSSPreloadScanner.cpp:
(WebCore):
(WebCore::CSSPreloadScanner::scanCommon):
(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):
* html/parser/CSSPreloadScanner.h:
(CSSPreloadScanner):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::startBackgroundParser):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::tagIdFor):
(WebCore):
(WebCore::TokenPreloadScanner::initiatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(TokenPreloadScanner::StartTagScanner):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::createCheckpoint):
(WebCore::TokenPreloadScanner::rewindTo):
(WebCore::TokenPreloadScanner::scan):
(WebCore::TokenPreloadScanner::scanCommon):
(WebCore::TokenPreloadScanner::updatePredictedBaseURL):
(WebCore::HTMLPreloadScanner::scan):
* html/parser/HTMLPreloadScanner.h:
(TokenPreloadScanner):
(WebCore::TokenPreloadScanner::isSafeToSendToAnotherThread):
(WebCore::TokenPreloadScanner::Checkpoint::Checkpoint):
(Checkpoint):

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 07:01:19 +0000 (07:01 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoGCE EWS bots failing intermittently on HTTP 502 error while updating their status
noel.gordon@gmail.com [Tue, 26 Feb 2013 06:32:09 +0000 (06:32 +0000)]
GCE EWS bots failing intermittently on HTTP 502 error while updating their status
https://bugs.webkit.org/show_bug.cgi?id=110845

Unreviewed EWS bot fix.

Switch the Queue Status Server address the EWS bots use to a more direct URL that
doesn't seem to be having problems from GCE like queues.webkit.org.

Patch by Alan Cutter <alancutter@chromium.org> on 2013-02-25

* Scripts/webkitpy/common/net/statusserver.py:
(StatusServer):

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

8 years agoAudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioD...
crogers@google.com [Tue, 26 Feb 2013 05:53:49 +0000 (05:53 +0000)]
AudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioDevice
https://bugs.webkit.org/show_bug.cgi?id=110796

Reviewed by Kenneth Russell.

* platform/audio/chromium/AudioDestinationChromium.cpp:
(WebCore::AudioDestinationChromium::AudioDestinationChromium):

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

8 years agoNeed a more robust WebSQL disk usage computation.
mark.lam@apple.com [Tue, 26 Feb 2013 05:06:12 +0000 (05:06 +0000)]
Need a more robust WebSQL disk usage computation.
https://bugs.webkit.org/show_bug.cgi?id=110805.

Reviewed by Geoffrey Garen.

- Changed DatabaseTracker::usageForOrigin() to compute the disk usage
  for a specified origin by fetching database sizes from the file system
  instead of using cached file size values.

- The OriginQuotaManager and OriginUsageRecord are no longer needed.
  Updated build files to reflect this.

- Removed getMaxSizeForDatabase() from DatabaseManager, DatabaseServer,
  and AbstractDatabaseServer since it is only needed in the backend.

- DatabaseTracker::getMaxSizeForDatabase() now calls usageForOrigin()
  to get the disk usage for its computation.

- The performance difference for this changes is a 1.6% degradation
  per additional database whose size needs to be fetched. This is a
  worst case estimated based on the disk-stat-speed-test.html benchmark
  (attached to bugzilla). The benchmark writes an average of 16 bytes per
  transaction. Most real-world transactions will likely write more
  content than that. Since disk write IO time will dominate over memory
  read time for fetching the file size, the degradation ratio will only
  reduce with larger workloads.

No layout test, but there is a quota-test.html attached to bugzilla.
The test is a webpage that can be loaded into multiple tabs to
consuming storage space. While the test is running, we can run a
"du -k; du -k *" on the database directory to verify that the total
disk usage does not far exceed the allowed quota (some small error
is expected). Without this change, each database from each tab may
exceed the quota by that same maginitude of error.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/webdatabase/AbstractDatabaseServer.h:
* Modules/webdatabase/Database.cpp:
* Modules/webdatabase/Database.h:
* Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::DatabaseBackendBase::maximumSize):
* Modules/webdatabase/DatabaseManager.cpp:
* Modules/webdatabase/DatabaseManager.h:
* Modules/webdatabase/DatabaseServer.cpp:
* Modules/webdatabase/DatabaseServer.h:
* Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::fullPathForDatabaseNoLock):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::usageForOrigin):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
* Modules/webdatabase/DatabaseTracker.h:
* Modules/webdatabase/OriginQuotaManager.cpp: Removed.
* Modules/webdatabase/OriginQuotaManager.h: Removed.
* Modules/webdatabase/OriginUsageRecord.cpp: Removed.
* Modules/webdatabase/OriginUsageRecord.h: Removed.
* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState):
* Modules/webdatabase/SQLTransactionBackendSync.cpp:
(WebCore::SQLTransactionBackendSync::executeSQL):
* Modules/webdatabase/SQLTransactionClient.cpp:
* Modules/webdatabase/SQLTransactionClient.h:
* Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

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

8 years agoREGRESSION(r143654): some jquery test asserts on 32 bit debug build
fpizlo@apple.com [Tue, 26 Feb 2013 04:25:39 +0000 (04:25 +0000)]
REGRESSION(r143654): some jquery test asserts on 32 bit debug build
https://bugs.webkit.org/show_bug.cgi?id=110756

Reviewed by Geoffrey Garen.

TypeOf does speculations manually, so it should mark its JSValueOperand as doing ManualOperandSpeculation.

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

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

8 years ago[JSC] Upstream iOS Stack bound checking
benjamin@webkit.org [Tue, 26 Feb 2013 04:13:34 +0000 (04:13 +0000)]
[JSC] Upstream iOS Stack bound checking
https://bugs.webkit.org/show_bug.cgi?id=110813

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-25
Reviewed by Filip Pizlo.

On iOS, the StackBounds cannot be cached because the stack
can be in one of two threads (the web thread or the UI thread).

We simply always consider the current stack bound when testing
stack boundaries.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):
* parser/Parser.cpp:
(JSC::::Parser):
* parser/Parser.h:
(JSC::Parser::canRecurse):
(Parser):

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

8 years ago[texmap] Rename TextureMapperGL::ClipStack::init to reset
bruno.abinader@basyskom.com [Tue, 26 Feb 2013 04:04:37 +0000 (04:04 +0000)]
[texmap] Rename TextureMapperGL::ClipStack::init to reset
https://bugs.webkit.org/show_bug.cgi?id=110783

Reviewed by Noam Rosenthal.

Functions named init() are usually called inside ctor's to initialize
member variables that were unable to be assigned on an initialization
list, which is not the case, and also because reset() better reflects
the behavior (clears the clip stack and assigns a value to the initial
clip state).

No behavior changes, thus covered by existing tests.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::initializeDepthBuffer):
* platform/graphics/texmap/TextureMapperGL.h:
(ClipStack):

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

8 years agoAdd expandedToParagraph() method to WebRange
commit-queue@webkit.org [Tue, 26 Feb 2013 03:18:26 +0000 (03:18 +0000)]
Add expandedToParagraph() method to WebRange
https://bugs.webkit.org/show_bug.cgi?id=110618

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-02-25
Reviewed by Adam Barth.

Add a method expandedToParagraph() to WebRange to return a copy of the
range expanded to paragraph boundaries. This method is to be used to
query the spelling context around the misspelled word under cursor.

* public/WebRange.h:
(WebRange): Added expandedToParagraph() method declaration.
* src/WebRange.cpp:
(WebKit::WebRange::expandedToParagraph): Added method to copy range, expand the copied range to paragraph boundaries, and return the resulting range.
(WebKit): Added expandedToParagraph() method definition.

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

8 years agoBuild fix attempt after r143996.
rniwa@webkit.org [Tue, 26 Feb 2013 03:02:47 +0000 (03:02 +0000)]
Build fix attempt after r143996.

* wtf/FastMalloc.cpp:
(WTF):

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

8 years agoThreaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url...
abarth@webkit.org [Tue, 26 Feb 2013 02:36:18 +0000 (02:36 +0000)]
Threaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url.html
https://bugs.webkit.org/show_bug.cgi?id=110637

Reviewed by Eric Seidel.

With the main thread parser, we always parse the first chunk of content
returned as the result of evaluating a JavaScript URL synchronously. In
particular, if the first chunk has an inline script, we'll execute it
synchronously.

Previous to this patch, the threaded parser would always parse this
content asynchronously. It's conceivable that there could be some
content relying on the synchronous behavior, so this patch introduces
the notion of "pinning" a parser to the main thread and uses that
concept to force the result of JavaScript URLs to be parsed on the main
thread (which is probably desirable anyway because they're likely to be
quite short).

This patch fixes fast/parser/iframe-sets-parent-to-javascript-url.html
and fast/dom/javascript-url-crash-function.html with the threaded
parser with --enable-threaded-html-parser.

* dom/DocumentParser.h:
(WebCore::DocumentParser::pinToMainThread):
(DocumentParser):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore):
(WebCore::HTMLDocumentParser::pinToMainThread):
* html/parser/HTMLDocumentParser.h:
(HTMLDocumentParser):
(WebCore::HTMLDocumentParser::shouldUseThreading):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::replaceDocument):

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

8 years agoUpdate the localizable strings file.
jberlin@webkit.org [Tue, 26 Feb 2013 02:33:04 +0000 (02:33 +0000)]
Update the localizable strings file.

Rubber-stamped by Anders Carlsson.

* English.lproj/Localizable.strings:

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

8 years ago[chromium] WebViewImpl::m_client can be null in some unit tests, check it before...
jamesr@google.com [Tue, 26 Feb 2013 02:25:13 +0000 (02:25 +0000)]
[chromium] WebViewImpl::m_client can be null in some unit tests, check it before calling
https://bugs.webkit.org/show_bug.cgi?id=110834

Reviewed by Adrienne Walker.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

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

8 years agoUnreviewed. Fix script to use WEBKIT_SOURCE for VS2010 property sheets instead of...
roger_fong@apple.com [Tue, 26 Feb 2013 02:25:04 +0000 (02:25 +0000)]
Unreviewed. Fix script to use WEBKIT_SOURCE for VS2010 property sheets instead of WEBKIT_LIBRARIES.

* WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:

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

8 years agoAdd cookies to FastMalloc spans
oliver@apple.com [Tue, 26 Feb 2013 02:13:31 +0000 (02:13 +0000)]
Add cookies to FastMalloc spans
https://bugs.webkit.org/show_bug.cgi?id=110827

Reviewed by Michael Saboff.

Add a cookie to spans, and move some of the hardening around so
that it's more useful.

* wtf/FastMalloc.cpp:
(WTF::internalEntropyValue):
(WTF::spanInitializerCookie):
(WTF::Span::initCookie):
(WTF::Span::clearCookie):
(WTF::Span::isValid):
(Span):
(WTF::NewSpan):
(WTF::DeleteSpan):
(WTF::TCMalloc_ThreadCache_FreeList::Validate):
(WTF::TCMalloc_Central_FreeList::Populate):
(WTF::TCMalloc_ThreadCache::Deallocate):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

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

8 years agoForgot to delete a no-longer-needed unit test after r143980.
dpranke@chromium.org [Tue, 26 Feb 2013 02:10:53 +0000 (02:10 +0000)]
Forgot to delete a no-longer-needed unit test after r143980.

Unreviewed, build fix.

* Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
(ChromiumWinTest.test_path_to_image_diff):

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

8 years agoFor JSVALUE32_64, maxOffsetRelativeToPatchedStorage() doesn't compute the maximum...
msaboff@apple.com [Tue, 26 Feb 2013 02:10:02 +0000 (02:10 +0000)]
For JSVALUE32_64, maxOffsetRelativeToPatchedStorage() doesn't compute the maximum negative offset
https://bugs.webkit.org/show_bug.cgi?id=110828

Reviewed by Oliver Hunt.

* runtime/JSObject.h:
(JSC::maxOffsetRelativeToPatchedStorage): Only add the OBJECT_OFFSETOF(tag) for positive offsets.
That way this function will return the offset farthest from 0 needed to access either the payload
or tag.

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

8 years agoFlexbox should ignore firstLetter pseudo element.
commit-queue@webkit.org [Tue, 26 Feb 2013 02:06:12 +0000 (02:06 +0000)]
Flexbox should ignore firstLetter pseudo element.
https://bugs.webkit.org/show_bug.cgi?id=105126

Patch by Xueqing Huang <huangxueqing@baidu.com> on 2013-02-25
Reviewed by Tony Chang.

Source/WebCore:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issue-cr-2012#issue-13

tests:
css3/flexbox/flexbox-ignore-firstLetter.html
css3/flexbox/flexbox-ignore-container-firstLetter.html

* rendering/RenderBlock.cpp:
(WebCore::findFirstLetterBlock):

LayoutTests:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issues-cr-2012#issue-13

* css3/flexbox/flexbox-ignore-container-firstLetter-expected.txt: Added.
* css3/flexbox/flexbox-ignore-container-firstLetter.html: Added.
* css3/flexbox/flexbox-ignore-firstLetter-expected.txt: Added.
* css3/flexbox/flexbox-ignore-firstLetter.html: Added.
* css3/flexbox/inline-flex-crash-expected.txt:
* css3/flexbox/inline-flex-crash2-expected.txt:

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

8 years agoBuild fix. run-perf-tests was reporting with revision numbers ending with \r.
rniwa@webkit.org [Tue, 26 Feb 2013 01:24:02 +0000 (01:24 +0000)]
Build fix. run-perf-tests was reporting with revision numbers ending with \r.
Don't include \r at the end of svn info lines on Windows.

This is similar to r143839.

* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.value_from_svn_info):

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

8 years agoLots of unnecessary DidLayout notifications when scrolling zoomed page with iframes
simon.fraser@apple.com [Tue, 26 Feb 2013 01:22:33 +0000 (01:22 +0000)]
Lots of unnecessary DidLayout notifications when scrolling zoomed page with iframes
https://bugs.webkit.org/show_bug.cgi?id=110824

Reviewed by Tim Horton.

RenderWidget::setWidgetGeometry() compares the old and new frame rects to decide
if the geometry changed. However, it use implicit IntRect->LayoutRect promotion in
the comparison, and then roundedIntRect() in setting. Thus the code would think
that the geometry changed, even when the final assigned frame did not.

Fix by computing the new frame using roundedIntRect(), and using that to determine
whether the geometry changed.

No way to test DidLayout notifications in DRT/WTR.

* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidgetGeometry):

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

8 years ago[Resource Timing] Update test suite so it can be exported to the W3C
simonjam@chromium.org [Tue, 26 Feb 2013 01:13:40 +0000 (01:13 +0000)]
[Resource Timing] Update test suite so it can be exported to the W3C
https://bugs.webkit.org/show_bug.cgi?id=107343

Reviewed by Tony Gentilcore.

Tools:

* Scripts/export-w3c-performance-wg-tests: Clean up output.
* Scripts/import-w3c-performance-wg-tests:

LayoutTests:

* http/tests/w3c/webperf/resources/webperftestharness.js: Removed unneeded functions and moved new ones to extension.
* http/tests/w3c/webperf/resources/webperftestharnessextension.js:
(test_resource_entries):
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting.html.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types-expected.txt.
* http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types.html.
* platform/chromium/TestExpectations: Moved directories...
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:

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

8 years agoSource/WebKit2: Add a new unavailablePluginButtonClicked callback that takes a WKDict...
andersca@apple.com [Tue, 26 Feb 2013 01:06:56 +0000 (01:06 +0000)]
Source/WebKit2: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821

Reviewed by Beth Dakin.

* UIProcess/API/C/WKPage.cpp:
(WKPageGetPluginInformationPluginspageAttributeURLKey):
(WKPageGetPluginInformationPluginURLKey):
Add two new API key getters.

* UIProcess/API/C/WKPage.h:
Add a new callback and deprecate the old callback.

* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
Make the pluginInformationDictionary a static member function of WebPageProxy so it
can be called from WebUIClient as well.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getPluginPath):
Pass the bundle version as well.

(WebKit::WebPageProxy::pluginInformationPluginspageAttributeURLKey):
(WebKit::WebPageProxy::pluginInformationPluginURLKey):
Add two new keys.

(WebKit::WebPageProxy::pluginInformationDictionary):
Handle more keys.

(WebKit::WebPageProxy::unavailablePluginButtonClicked):
Get the plug-in bundle identifier and version.

* UIProcess/WebPageProxy.messages.in:
Pass along more information; the frame and page URLs.

* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::unavailablePluginButtonClicked):
Call the new callback if it's supported.

* UIProcess/WebUIClient.h:
(WebUIClient):
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Update for API changes.

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::unavailablePluginButtonClicked):
Ensure that the pluginspage attribute is a valid URL.

Tools: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821
<rdar://problem/13265303>

Reviewed by Beth Dakin.

Update for WebKit2 changes.

* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController awakeFromNib]):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createOtherPage):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::unavailablePluginButtonClicked):
* WebKitTestRunner/TestController.h:
(TestController):

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

8 years agoRemove browser patching mechanism for handling javascript dialogs in chromium port
commit-queue@webkit.org [Tue, 26 Feb 2013 00:50:41 +0000 (00:50 +0000)]
Remove browser patching mechanism for handling javascript dialogs in chromium port
https://bugs.webkit.org/show_bug.cgi?id=110531

Patch by Ken Kania <kkania@chromium.org> on 2013-02-25
Reviewed by Pavel Feldman.

* public/WebDevToolsAgent.h:
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::handleJavaScriptDialog):
(WebKit::browserHintToString):
(WebKit::browserHintFromString):
(WebKit::WebDevToolsAgent::patchWithBrowserData):

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

8 years agoOptionally partition cache to prevent using cache for tracking
jpfau@apple.com [Tue, 26 Feb 2013 00:49:17 +0000 (00:49 +0000)]
Optionally partition cache to prevent using cache for tracking
https://bugs.webkit.org/show_bug.cgi?id=110269

Reviewed by Maciej Stachowiak.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage

Source/WebCore:

Implement memory cache partitioning by passing the cache name through
resource requests into a new version of resourceForURL.

Test: http/tests/cache/partitioned-cache.html

* Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
* WebCore.exp.in: Export new functions for WKSI and test suite
* WebCore.xcodeproj/project.pbxproj:
* html/DOMURL.cpp:
(WebCore::DOMURL::revokeObjectURL): Retrofit for new resourceForRequest function
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::cachedResource): Retrofit for new resourceForRequest function
* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::replayXHR): Retrofit for new resourceForRequest function
* loader/DocumentLoader.h:
(DocumentLoader):
(WebCore::DocumentLoader::recordMemoryCacheLoadForFutureClientNotification): Retrofit for new resourceForRequest function
(WebCore::DocumentLoader::takeMemoryCacheLoadsForClientNotification): Retrofit for new resourceForRequest function
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadedResourceFromMemoryCache): Retrofit for new resourceForRequest function
(WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Retrofit for new resourceForRequest function
* loader/archive/cf/LegacyWebArchive.cpp:
(WebCore::LegacyWebArchive::create): Retrofit for new resourceForRequest function
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::~CachedResource):
* loader/cache/CachedResource.h: Retrofit for new resourceForRequest function
(CachedResource):
(WebCore::CachedResource::cachePartition):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestUserCSSStyleSheet): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::requestResource): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::loadResource): Retrofit for new resourceForRequest function
* loader/cache/MemoryCache.cpp:
(WebCore):
(WebCore::partitionName): Add function for determining absolute partition name
(WebCore::MemoryCache::add): Retrofit for partition mapping
(WebCore::MemoryCache::revalidationSucceeded): Retrofit for partition mapping
(WebCore::MemoryCache::resourceForURL): Call into new resourceForRequest
(WebCore::MemoryCache::resourceForRequest): Retrofit for partition mapping
(WebCore::MemoryCache::evict): Retrofit for partition mapping
(WebCore::MemoryCache::removeResourcesWithOrigin): Retrofit for partition mapping
(WebCore::MemoryCache::getOriginsWithCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeUrlFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCacheImpl): Retrofit for partition mapping
(WebCore::MemoryCache::crossThreadRemoveRequestFromCache): Add function for calling removeRequestFromCacheImpl that takes a CrossThreadResourceRequestData
(WebCore::MemoryCache::getStatistics): Retrofit for partition mapping
(WebCore::MemoryCache::setDisabled): Retrofit for partition mapping
* loader/cache/MemoryCache.h:
(MemoryCache):
* page/SecurityOrigin.cpp:
(WebCore):
(WebCore::SecurityOrigin::cachePartition): Add function for determining the cache partition name
* page/SecurityOrigin.h:
(SecurityOrigin):
* platform/PublicSuffix.h: Added.
(WebCore):
* platform/mac/PublicSuffixMac.mm: Added.
(WebCore):
(WebCore::isPublicSuffix):
(WebCore::topPrivatelyControlledDomain):
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
* platform/network/cf/ResourceRequest.h:
(ResourceRequest):
(WebCore::ResourceRequest::cachePartition):
(WebCore::ResourceRequest::setCachePartition):
(CrossThreadResourceRequestData):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doPlatformCopyData): Pass through cache partition name
(WebCore):
(WebCore::ResourceRequest::doPlatformAdopt): Pass through cache partition name
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest): Pass through cache partition name
(WebCore::ResourceRequest::doUpdatePlatformRequest): Pass through cache partition name

Source/WebKit/mac:

Update WKSI bindings and add feature defines.

* Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Source/WebKit2:

Update WKSI bindings and add feature defines.

* Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Tools:

Add test suite for public suffix functions on Mac.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/PublicSuffix.mm: Added.
(TestWebKitAPI):
(TestWebKitAPI::TEST_F):

WebKitLibraries:

Update WKSI bindings.

* WebKitSystemInterface.h:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceMountainLion.a:

LayoutTests:

Added tests for ensuring the cache partitioning functions

* http/tests/cache/partitioned-cache-expected.txt: Added.
* http/tests/cache/partitioned-cache.html: Added.
* http/tests/cache/resources/echo-cookie.cgi: Added.
* http/tests/cache/resources/partitioned-cache-loader.html: Added.

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

8 years ago[chromium] Plumb WebViewImpl's compositor scheduling suppression out to WebWidgetClient
commit-queue@webkit.org [Tue, 26 Feb 2013 00:44:28 +0000 (00:44 +0000)]
[chromium] Plumb WebViewImpl's compositor scheduling suppression out to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=110640

Patch by James Robinson <jamesr@chromium.org> on 2013-02-25
Reviewed by Adrienne Walker.

This plumbs the WebViewImpl::m_suppressInvalidations logic out to the WebWidgetClient so
it can be implemented by the embedder. The existing logic is left in place for now,
once the embedder side has landed WebViewImpl will be purely a pass-through.

* public/WebWidgetClient.h:
(WebWidgetClient):
(WebKit::WebWidgetClient::suppressCompositorScheduling):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

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

8 years agoNormalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files.
jer.noble@apple.com [Tue, 26 Feb 2013 00:21:51 +0000 (00:21 +0000)]
Normalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files.
https://bugs.webkit.org/show_bug.cgi?id=110806

Source/WebCore:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

* Configurations/FeatureDefines.xcconfig:

Fix some build errors which occurred when both ENCRYPTED_MEDIA and
ENCRYPTED_MEDIA_V2 were enabled:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::webkitGenerateKeyRequest):
(WebCore::HTMLMediaElement::webkitAddKey):
* page/DOMWindow.idl:

Source/WebKit/mac:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

Reviewed by Alexey Proskuryakov.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

* wtf/FeatureDefines.h:

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

8 years ago6% regression in intl1 page cycler on chromium-mac
abarth@webkit.org [Tue, 26 Feb 2013 00:12:53 +0000 (00:12 +0000)]
6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Reviewed by Eric Seidel.

This patch reverts http://trac.webkit.org/changeset/143014 to see if
that's the cause of the PLT regression. If it's not the cause, I'll
roll it back in.

* dom/Element.cpp:
(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::ElementData::addAttribute):
(WebCore::ElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):
* dom/Element.h:
(ElementData):
(UniqueElementData):
(WebCore::ElementData::mutableAttributeVector):
(WebCore):
(WebCore::ElementData::immutableAttributeArray):
(WebCore::ElementData::length):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::attributeItem):

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

8 years agoFull screen mode should not exit when application resigns active state.
jer.noble@apple.com [Mon, 25 Feb 2013 23:48:24 +0000 (23:48 +0000)]
Full screen mode should not exit when application resigns active state.
https://bugs.webkit.org/show_bug.cgi?id=106129

Reviewed by Darin Adler.

Now that full screen windows get their own full screen space, there is no reason to exit full
screen mode when the application resigns active state. Instead, the windowserver will bring the
space containing the newly active application to the foreground. The user can then swipe back
to the full screen space (or use Mission Control) to get back to the full screen window.

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController windowDidLoad]): Remove the applicationDidResignActive: notification from WKFullScreenWindowController.

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

8 years agoSafari shows empty window and paints webpage in full-screen background
jer.noble@apple.com [Mon, 25 Feb 2013 23:39:02 +0000 (23:39 +0000)]
Safari shows empty window and paints webpage in full-screen background
https://bugs.webkit.org/show_bug.cgi?id=103712

Reviewed by Darin Adler.

When canceling full screen mode due to a provisional load, exit normally instead of closing the
full screen window controller. Additionally, to ensure full screen is cancelled when the enclosing
frame around a full screen iframe is navigated, check to see if the navigating document contains
a full screen element, rather than checking whether the document itself is full screen.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

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

8 years agonrwt: reenable multiple http shards on chromium win
dpranke@chromium.org [Mon, 25 Feb 2013 23:36:52 +0000 (23:36 +0000)]
nrwt: reenable multiple http shards on chromium win
https://bugs.webkit.org/show_bug.cgi?id=110814

Reviewed by Tony Chang.

The underlying bug in DumpRenderTree that was causing us to look for a
pac file and timeout under load was fixed a while ago.

* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort.relative_test_filename):

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

8 years agoPage::m_isInWindow is uninitialized
timothy_horton@apple.com [Mon, 25 Feb 2013 23:32:24 +0000 (23:32 +0000)]
Page::m_isInWindow is uninitialized
https://bugs.webkit.org/show_bug.cgi?id=110807

Reviewed by Simon Fraser.

Ideally m_isInWindow and m_isOnscreen would default to false, and be flipped to true
when the Page is put in-window or on-screen. However, only the Mac port seems to ever
call setIsInWindow/didMoveOnscreen. So, we have to default to true and flip it to false
immediately after construction on Mac.

This is just matching the behaviour of the existing m_isOnscreen.

* page/Page.cpp:
(WebCore::Page::Page): Initialize m_isInWindow to true.

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

8 years agoMake ninja the default w/ build-webkit --chromium on windows.
dpranke@chromium.org [Mon, 25 Feb 2013 23:02:35 +0000 (23:02 +0000)]
Make ninja the default w/ build-webkit --chromium on windows.
https://bugs.webkit.org/show_bug.cgi?id=110731

Unreviewed - TBR'ing thakis :).

* Scripts/update-webkit-chromium:

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

8 years agoFix build.
andersca@apple.com [Mon, 25 Feb 2013 22:58:27 +0000 (22:58 +0000)]
Fix build.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didBlockInsecurePluginVersion):

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

8 years agoAdd a new pluginDidFail callback that takes a WKDictionary of plug-in information
andersca@apple.com [Mon, 25 Feb 2013 22:38:45 +0000 (22:38 +0000)]
Add a new pluginDidFail callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110793
<rdar://problem/13265303>

Reviewed by Sam Weinig.

Source/WebKit2:

Add a new pluginDidFail callback that takes a WKDictionaryRef and also pass in the
frame and page URLs.

* UIProcess/API/C/WKPage.h:
* UIProcess/WebLoaderClient.cpp:
(WebKit::pluginInformationDictionary):
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
* UIProcess/WebLoaderClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFailToInitializePlugin):
(WebKit::WebPageProxy::didBlockInsecurePluginVersion):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::didFailToInitializePlugin):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createJavaAppletWidget):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createPlugin):

Tools:

Update for WebKit2 API changes.

* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController awakeFromNib]):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createWebViewWithOptions):

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

8 years agoMove html5lib/run-test* into html5lib/generated in preparation for generating these...
eric@webkit.org [Mon, 25 Feb 2013 22:27:08 +0000 (22:27 +0000)]
Move html5lib/run-test* into html5lib/generated in preparation for generating these harnesses
https://bugs.webkit.org/show_bug.cgi?id=110795

Reviewed by Ojan Vafai.

* html5lib/generated/run-template-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-template.html: Added.
* html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/html5lib/run-test7-expected.txt.
* html5lib/generated/run-tests1.html: Added.
* html5lib/generated/run-tests10-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests10.html: Added.
* html5lib/generated/run-tests11-expected.txt: Renamed from LayoutTests/html5lib/run-test11-expected.txt.
* html5lib/generated/run-tests11.html: Added.
* html5lib/generated/run-tests12-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests12.html: Added.
* html5lib/generated/run-tests14-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests14.html: Added.
* html5lib/generated/run-tests15-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests15.html: Added.
* html5lib/generated/run-tests16-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests16.html: Added.
* html5lib/generated/run-tests17-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests17.html: Added.
* html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/html5lib/run-test18-expected.txt.
* html5lib/generated/run-tests18.html: Added.
* html5lib/generated/run-tests19-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests19.html: Added.
* html5lib/generated/run-tests2-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests2.html: Added.
* html5lib/generated/run-tests20-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests20.html: Added.
* html5lib/generated/run-tests21-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests21.html: Added.
* html5lib/generated/run-tests22-expected.txt: Renamed from LayoutTests/html5lib/run-test10-expected.txt.
* html5lib/generated/run-tests22.html: Added.
* html5lib/generated/run-tests23-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests23.html: Added.
* html5lib/generated/run-tests24-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests24.html: Added.
* html5lib/generated/run-tests25-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests25.html: Added.
* html5lib/generated/run-tests26-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests26.html: Added.
* html5lib/generated/run-tests3-expected.txt: Renamed from LayoutTests/html5lib/run-test14-expected.txt.
* html5lib/generated/run-tests3.html: Added.
* html5lib/generated/run-tests4-expected.txt: Renamed from LayoutTests/html5lib/run-test12-expected.txt.
* html5lib/generated/run-tests4.html: Added.
* html5lib/generated/run-tests5-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests5.html: Added.
* html5lib/generated/run-tests6-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests6.html: Added.
* html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/html5lib/run-test1-expected.txt.
* html5lib/generated/run-tests7.html: Added.
* html5lib/generated/run-tests8-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests8.html: Added.
* html5lib/generated/run-tests9-expected.txt: Renamed from LayoutTests/html5lib/run-template-expected.txt.
* html5lib/generated/run-tests9.html: Added.
* html5lib/run-template.html: Removed.
* html5lib/run-test1.html: Removed.
* html5lib/run-test10.html: Removed.
* html5lib/run-test11.html: Removed.
* html5lib/run-test12.html: Removed.
* html5lib/run-test14.html: Removed.
* html5lib/run-test15-expected.txt: Removed.
* html5lib/run-test15.html: Removed.
* html5lib/run-test16-expected.txt: Removed.
* html5lib/run-test16.html: Removed.
* html5lib/run-test17-expected.txt: Removed.
* html5lib/run-test17.html: Removed.
* html5lib/run-test18.html: Removed.
* html5lib/run-test19-expected.txt: Removed.
* html5lib/run-test19.html: Removed.
* html5lib/run-test2-expected.txt: Removed.
* html5lib/run-test2.html: Removed.
* html5lib/run-test20-expected.txt: Removed.
* html5lib/run-test20.html: Removed.
* html5lib/run-test21-expected.txt: Removed.
* html5lib/run-test21.html: Removed.
* html5lib/run-test22-expected.txt: Removed.
* html5lib/run-test22.html: Removed.
* html5lib/run-test23-expected.txt: Removed.
* html5lib/run-test23.html: Removed.
* html5lib/run-test24-expected.txt: Removed.
* html5lib/run-test24.html: Removed.
* html5lib/run-test25-expected.txt: Removed.
* html5lib/run-test25.html: Removed.
* html5lib/run-test26-expected.txt: Removed.
* html5lib/run-test26.html: Removed.
* html5lib/run-test3-expected.txt: Removed.
* html5lib/run-test3.html: Removed.
* html5lib/run-test4-expected.txt: Removed.
* html5lib/run-test4.html: Removed.
* html5lib/run-test5-expected.txt: Removed.
* html5lib/run-test5.html: Removed.
* html5lib/run-test6-expected.txt: Removed.
* html5lib/run-test6.html: Removed.
* html5lib/run-test7.html: Removed.
* html5lib/run-test8-expected.txt: Removed.
* html5lib/run-test8.html: Removed.
* html5lib/run-test9-expected.txt: Removed.
* html5lib/run-test9.html: Removed.
* platform/chromium/TestExpectations:
* platform/chromium/html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test7-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test18-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test1-expected.txt.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:

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

8 years agoUnreviewed build fix after r143965.
haraken@chromium.org [Mon, 25 Feb 2013 22:21:52 +0000 (22:21 +0000)]
Unreviewed build fix after r143965.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateOverloadedConstructorCallback):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::TestOverloadedConstructorsV8Internal::constructor):

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

8 years agoBuild fix for gtk2-based library.
kov@webkit.org [Mon, 25 Feb 2013 22:12:41 +0000 (22:12 +0000)]
Build fix for gtk2-based library.

Reviewed by Martin Robinson.

* platform/gtk/WidgetRenderingContext.cpp: move gtk2 check to after the config.h
include, which is the one that includes autotoolsconfig.h, where the gtk2 define
lives.

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

8 years agoUnreviewed, rolling out r143936.
commit-queue@webkit.org [Mon, 25 Feb 2013 22:06:15 +0000 (22:06 +0000)]
Unreviewed, rolling out r143936.
http://trac.webkit.org/changeset/143936
https://bugs.webkit.org/show_bug.cgi?id=110789

Causes webkit_unit_tests failures on android dbg (Requested by
vollick on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-25

Source/WebCore:

* platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::GIFImageDecoder):
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::decodingHalted):
(WebCore):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):
* platform/image-decoders/gif/GIFImageDecoder.h:
(GIFImageDecoder):
* platform/image-decoders/gif/GIFImageReader.cpp:
(GIFImageReader::doLZW):
(GIFImageReader::read):
* platform/image-decoders/gif/GIFImageReader.h:
(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::globalColormapSize):

Source/WebKit/chromium:

* WebKit.gyp:
* WebKit.gypi:
* tests/GIFImageDecoderTest.cpp: Removed.
* tests/data/broken.gif: Removed.

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

8 years agoUnreviewed. VS2010 solution build fix.
roger_fong@apple.com [Mon, 25 Feb 2013 21:47:20 +0000 (21:47 +0000)]
Unreviewed. VS2010 solution build fix.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:

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

8 years ago[V8] Generate a wrapper function for method callbacks
haraken@chromium.org [Mon, 25 Feb 2013 21:31:18 +0000 (21:31 +0000)]
[V8] Generate a wrapper function for method callbacks
https://bugs.webkit.org/show_bug.cgi?id=110769

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for xxxMethod(), like this:

// For non-custom methods
void xxxMethodCallback(...) {
  xxxMethod(...);
}

// For custom methods
void xxxMethodCallback(...) {
  return xxxMethodCustom(...);
}

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateDomainSafeFunctionGetter):
(GenerateOverloadedFunction):
(GenerateFunctionCallback):
(GenerateFunction):
(GenerateNonStandardFunction):
(GenerateImplementation):
(GenerateFunctionCallString):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooMethodCallback):
(Float64ArrayV8Internal):
(WebCore::Float64ArrayV8Internal::setMethodCallback):
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethodCallback):
(TestActiveDOMObjectV8Internal):
(WebCore::TestActiveDOMObjectV8Internal::postMessageMethodCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionMethodCallback):
(TestCustomNamedGetterV8Internal):
(WebCore):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemMethodCallback):
(TestEventTargetV8Internal):
(WebCore::TestEventTargetV8Internal::addEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalMethod1MethodCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalMethod2MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod3MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod4MethodCallback):
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::TestMediaQueryListListenerV8Internal::methodMethodCallback):
(TestMediaQueryListListenerV8Internal):
(WebCore):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::voidMethodMethodCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::voidMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::longMethodMethodCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::objMethodMethod):
(WebCore::TestObjV8Internal::objMethodMethodCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceMethodCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethodCallback):
(WebCore::TestObjV8Internal::serializedValueMethodCallback):
(WebCore::TestObjV8Internal::optionsObjectMethodCallback):
(WebCore::TestObjV8Internal::methodWithExceptionMethodCallback):
(WebCore::TestObjV8Internal::customMethodMethodCallback):
(WebCore::TestObjV8Internal::customMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::addEventListenerMethodCallback):
(WebCore::TestObjV8Internal::removeEventListenerMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesMethodCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod1MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod2MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod3MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodWithOptionalMethodCallback):
(WebCore::TestObjV8Internal::classMethod2MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethod1MethodCallback):
(WebCore::TestObjV8Internal::classMethodWithClampMethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2MethodCallback):
(WebCore::TestObjV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestObjV8Internal::domStringListFunctionMethodCallback):
(WebCore::TestObjV8Internal::getSVGDocumentMethodCallback):
(WebCore::TestObjV8Internal::convert1MethodCallback):
(WebCore::TestObjV8Internal::convert2MethodCallback):
(WebCore::TestObjV8Internal::convert4MethodCallback):
(WebCore::TestObjV8Internal::convert5MethodCallback):
(WebCore::TestObjV8Internal::mutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::orangeMethodCallback):
(WebCore::TestObjV8Internal::strictFunctionMethodCallback):
(WebCore::TestObjV8Internal::variadicStringMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextPrototypeProperties):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethodCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethodCallback):
(WebCore):
* bindings/scripts/test/V8/V8TestTypedefs.cpp:
(WebCore::TestTypedefsV8Internal::funcMethodCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::multiTransferListMethodCallback):
(WebCore::TestTypedefsV8Internal::setShadowMethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestTypedefsV8Internal::nullableArrayArgMethodCallback):
(WebCore::TestTypedefsV8Internal::funcWithClampMethodCallback):
(WebCore::TestTypedefsV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunction2MethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithExceptionMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

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