== Rolled over to ChangeLog-2016-09-26 ==
[WebKit-https.git] / Source / WebCore / ChangeLog
index e70451e..7faca95 100644 (file)
-2016-09-26  Youenn Fablet  <youenn@apple.com>
-
-        ASSERTION FAILED: m_origin || m_type == CachedResource::MainResource
-        https://bugs.webkit.org/show_bug.cgi?id=162472
-        <rdar://problem/28431522>
-
-        Reviewed by Darin Adler.
-
-        No change of behavior.
-
-        Introducing a new CachedResource constructor for already loaded resources.
-        Sharing code with the other constructor in the init method.
-        The main difference with this new constructor is that the resource has no specified origin.
-        The response tainting remains Basic.
-
-        Making some additional code clean-up.
-
-        * loader/cache/CachedImage.cpp:
-        (WebCore::CachedImage::CachedImage): Making use of the new constructor.
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::CachedResource):
-        (WebCore::CachedResource::finishRequestInitialization):
-        * loader/cache/CachedResource.h:
-        (WebCore::CachedResource::type):
-
-2016-09-26  Olivier Blin  <olivier.blin@softathome.com>
-
-        [GStreamer] Support flipY for GPU-to-GPU copy of video textures to WebGL
-        https://bugs.webkit.org/show_bug.cgi?id=162491
-
-        Reviewed by Philippe Normand.
-
-        GPU-GPU copy of video textures to WebGL has been added for
-        GStreamer in bug 159928. It did not handle textures with inverted
-        Y, and thus copy to such textures was not accelerated.
-
-        This occurs with THREE.js which defaults to flipY for textures.
-        It can be tested on http://flimshaw.github.io/Valiant360/
-
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
-        (WebCore::MediaPlayerPrivateGStreamerBase::paintToCairoSurface):
-        (WebCore::MediaPlayerPrivateGStreamerBase::copyVideoTextureToPlatformTexture):
-        (WebCore::MediaPlayerPrivateGStreamerBase::nativeImageForCurrentTime):
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
-
-2016-09-25  Antti Koivisto  <antti@apple.com>
-
-        AuthorStyleSheets shouldn't trigger synchronous style resolutions
-        https://bugs.webkit.org/show_bug.cgi?id=162532
-
-        Reviewed by Darin Adler.
-
-        AuthorStyleSheets::didChange() took four different enum values, two of which triggered
-        a synchronous style resolution. This is almost always unnecessary as any subsequent
-        call that requires up-to-date style or layout will perform it. In the few cases where
-        it is actually needed the client can just do it manually.
-
-        The patch also replaces the remaining two enum values with functions:
-
-            void didChangeCandidatesForActiveSet();
-            void didChangeContentsOrInterpretation();
-
-        The first indicates that the set of active stylesheets might have changed and needs to be recomputed.
-        The seconds one indicates that either the content of some stylesheet has changed or that the environment
-        where we interpret the sheets has somehow changed.
-
-        The existing "AsNeeded" values map to didChangeCandidatesForActiveSet() and the rest map to
-        didChangeContentsOrInterpretation(). This also makes it obvious that some call sites use the wrong value.
-        The patch doesn't address these cases.
-
-        * css/CSSStyleSheet.cpp:
-        (WebCore::CSSStyleSheet::didMutateRules):
-        (WebCore::CSSStyleSheet::didMutate):
-        (WebCore::CSSStyleSheet::clearOwnerNode):
-        * dom/AuthorStyleSheets.cpp:
-        (WebCore::AuthorStyleSheets::AuthorStyleSheets):
-        (WebCore::AuthorStyleSheets::analyzeStyleSheetChange):
-        (WebCore::AuthorStyleSheets::updateActiveStyleSheets):
-        (WebCore::AuthorStyleSheets::flushPendingChanges):
-        (WebCore::AuthorStyleSheets::scheduleActiveSetChange):
-        (WebCore::AuthorStyleSheets::didChange):
-        (WebCore::AuthorStyleSheets::pendingChangeTimerFired):
-        (WebCore::AuthorStyleSheets::flushPendingUpdates): Deleted.
-        (WebCore::AuthorStyleSheets::scheduleOptimizedUpdate): Deleted.
-        (WebCore::AuthorStyleSheets::optimizedUpdateTimerFired): Deleted.
-        * dom/AuthorStyleSheets.h:
-        (WebCore::AuthorStyleSheets::hasPendingUpdate):
-        * dom/Document.cpp:
-        (WebCore::Document::setContentLanguage):
-        (WebCore::Document::recalcStyle):
-        (WebCore::Document::updateStyleIfNeeded):
-        (WebCore::Document::updateLayoutIgnorePendingStylesheets):
-        (WebCore::Document::didRemoveAllPendingStylesheet):
-        (WebCore::Document::usesStyleBasedEditability):
-        (WebCore::Document::processHttpEquiv):
-        (WebCore::Document::setSelectedStylesheetSet):
-        * dom/ExtensionStyleSheets.cpp:
-        (WebCore::ExtensionStyleSheets::clearPageUserSheet):
-        (WebCore::ExtensionStyleSheets::updatePageUserSheet):
-        (WebCore::ExtensionStyleSheets::invalidateInjectedStyleSheetCache):
-        (WebCore::ExtensionStyleSheets::addUserStyleSheet):
-        (WebCore::ExtensionStyleSheets::addAuthorStyleSheetForTesting):
-        (WebCore::ExtensionStyleSheets::styleResolverChangedTimerFired):
-        * dom/InlineStyleSheetOwner.cpp:
-        (WebCore::InlineStyleSheetOwner::removedFromDocument):
-        * dom/ProcessingInstruction.cpp:
-        (WebCore::ProcessingInstruction::removedFrom):
-        * dom/ShadowRoot.cpp:
-        (WebCore::ShadowRoot::updateStyle):
-        * html/HTMLLinkElement.cpp:
-        (WebCore::HTMLLinkElement::setDisabledState):
-        (WebCore::HTMLLinkElement::parseAttribute):
-        (WebCore::HTMLLinkElement::process):
-        (WebCore::HTMLLinkElement::removedFrom):
-        (WebCore::HTMLLinkElement::removePendingSheet):
-        * html/HTMLStyleElement.cpp:
-        (WebCore::HTMLStyleElement::parseAttribute):
-        * inspector/InspectorCSSAgent.cpp:
-        (WebCore::InspectorCSSAgent::forcePseudoState):
-        (WebCore::InspectorCSSAgent::resetPseudoStates):
-        * inspector/InspectorPageAgent.cpp:
-        (WebCore::InspectorPageAgent::setEmulatedMedia):
-        * page/Frame.cpp:
-        (WebCore::Frame::setPrinting):
-        * page/FrameView.cpp:
-        (WebCore::FrameView::layout):
-        (WebCore::FrameView::setPagination):
-        (WebCore::FrameView::setViewportSizeForCSSViewportUnits):
-        * page/Page.cpp:
-        (WebCore::Page::setViewMode):
-        (WebCore::Page::setNeedsRecalcStyleInAllFrames):
-        (WebCore::Page::invalidateInjectedStyleSheetCacheInAllFrames):
-        * svg/SVGFontFaceElement.cpp:
-        (WebCore::SVGFontFaceElement::rebuildFontFace):
-        (WebCore::SVGFontFaceElement::removedFrom):
-        * xml/XMLTreeViewer.cpp:
-        (WebCore::XMLTreeViewer::transformDocumentToTreeView):
-        * xml/parser/XMLDocumentParser.cpp:
-        (WebCore::XMLDocumentParser::end):
-        * xml/parser/XMLDocumentParserLibxml2.cpp:
-        (WebCore::XMLDocumentParser::doEnd):
-
-2016-09-24  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        Unreviewed, update results of DOM binding tests after r206354.
-        https://bugs.webkit.org/show_bug.cgi?id=162503
-
-        Update results of DOM binding tests. After r206354, setDOMException takes
-        ThrowScope as its second argument.
-
-        * bindings/scripts/test/JS/JSTestInterface.cpp:
-        (WebCore::JSTestInterfaceConstructor::construct):
-        (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
-        (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
-        * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
-        (WebCore::JSTestNamedConstructorNamedConstructor::construct):
-        * bindings/scripts/test/JS/JSTestNondeterministic.cpp:
-        (WebCore::jsTestNondeterministicNondeterministicGetterExceptionAttr):
-        (WebCore::setJSTestNondeterministicNondeterministicSetterExceptionAttr):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::jsTestObjAttrWithGetterException):
-        (WebCore::jsTestObjAttrWithGetterExceptionWithMessage):
-        (WebCore::jsTestObjStringAttrWithGetterException):
-        (WebCore::jsTestObjWithScriptStateAttributeRaises):
-        (WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
-        (WebCore::jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
-        (WebCore::jsTestObjNullableStringValue):
-        (WebCore::setJSTestObjAttrWithSetterException):
-        (WebCore::setJSTestObjAttrWithSetterExceptionWithMessage):
-        (WebCore::setJSTestObjStringAttrWithSetterException):
-        (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithException):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithExceptionWithMessage):
-        (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
-        (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
-        (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
-        (WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
-        (WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
-        (WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithExceptionPromise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithExceptionPromise):
-        * bindings/scripts/test/JS/JSTestTypedefs.cpp:
-        (WebCore::jsTestTypedefsAttrWithGetterException):
-        (WebCore::jsTestTypedefsStringAttrWithGetterException):
-        (WebCore::setJSTestTypedefsAttrWithSetterException):
-        (WebCore::setJSTestTypedefsStringAttrWithSetterException):
-        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction):
-        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2):
-        (WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):
-
-2016-09-24  Chris Dumez  <cdumez@apple.com>
-
-        REGRESSION (r206221): [USER] com.apple.WebKit.WebContent.Development at com.apple.JavaScriptCore: vmEntryToJavaScript + 299
-        https://bugs.webkit.org/show_bug.cgi?id=162536
-        <rdar://problem/28415971>
-
-        Reviewed by Gavin Barraclough.
-
-        Stop marking cross-origin Window/Location objects properties as cacheable
-        given that we do not support yet caching of such properties. This is because
-        they are using the new CustomAccesstor PropertySlot type, which is not handled
-        yet by Repatch.cpp. Performance is anyway not critical for cross-origin
-        Window / Location properties.
-
-        Test: http/tests/security/cross-origin-window-property-caching-crash.html
-
-        * bindings/js/JSDOMWindowCustom.cpp:
-        (WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
-        * bindings/js/JSLocationCustom.cpp:
-        (WebCore::JSLocation::getOwnPropertySlotDelegate):
-
-2016-09-24  Chris Dumez  <cdumez@apple.com>
-
-        REGRESSION (r205524): Crash under WTF::numGraphemeClusters()
-        https://bugs.webkit.org/show_bug.cgi?id=162534
-        <rdar://problem/28463828>
-
-        Reviewed by David Kilzer.
-
-        We were constructing a StringView from a temporary String and then passing it to
-        WTF::numGraphemeClusters().
-
-        Test: fast/dom/HTMLInputElement/handleBeforeTextInsertedEvent-crash.html
-
-        * html/TextFieldInputType.cpp:
-        (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
-
-2016-09-24  Chris Dumez  <cdumez@apple.com>
-
-        <a download> does not support Blob URLs
-        https://bugs.webkit.org/show_bug.cgi?id=156099
-        <rdar://problem/25535520>
-
-        Reviewed by Darin Adler.
-
-        Only allow trusted events to trigger downloads for <a download>, as per:
-        - https://html.spec.whatwg.org/#the-a-element:triggered-by-user-activation
-
-        Without this, a script could download a file to the user's disk without
-        any user gesture or consent, simply by calling a.click(). I have confirmed
-        that Firefox also ignores the click for <a download> if it is synthetic.
-        Chrome allows synthetic clicks to trigger downloads but I filed a bug
-        about it.
-
-        Test: fast/dom/HTMLAnchorElement/anchor-download-synthetic-click.html
-
-        * html/HTMLAnchorElement.cpp:
-        (WebCore::HTMLAnchorElement::handleClick):
-
-2016-09-24  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        [Binding] setDOMException should be inlined and fall to the slow path if exception occurs
-        https://bugs.webkit.org/show_bug.cgi?id=162503
-
-        Reviewed by Saam Barati.
-
-        Binding code emits setDOMException in critical paths. However, it is not inlined.
-        Since exception less frequently occurs, we should have inlined setDOMException that
-        early returns if it does not need to raise an exception. And it should call the exception
-        raising code as slow path case. This tiny optimization can offer improvement if
-        the DOM function is tiny and DOM binding occupies large part of it. Combined with r206338,
-        it offers 5% improvement in Dromaeo dom-attr getAttribute / setAttribute tests.
-
-        * bindings/js/JSDOMBinding.cpp:
-        (WebCore::throwDOMException): Extract the actual exception raising code.
-        (WebCore::setDOMExceptionSlow): Call throwDOMException and keep it not inlined.
-        (WebCore::setDOMException):
-        * bindings/js/JSDOMBinding.h:
-        (WebCore::setDOMException): Use ThrowScope& to check `scope.exception()`.
-        And it has a path for normal case that allows early returning.
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateImplementation):
-        (GenerateImplementationFunctionCall):
-        (GenerateConstructorDefinition):
-
-2016-09-23  Antti Koivisto  <antti@apple.com>
-
-        Move stylesheet change logic from Document to AuthorStyleSheets
-        https://bugs.webkit.org/show_bug.cgi?id=162488
-
-        Reviewed by Andreas Kling.
-
-        That's where it belongs.
-
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/CSSStyleSheet.cpp:
-        (WebCore::CSSStyleSheet::didMutateRules):
-        (WebCore::CSSStyleSheet::didMutate):
-        (WebCore::CSSStyleSheet::clearOwnerNode):
-        * dom/AuthorStyleSheets.cpp:
-        (WebCore::AuthorStyleSheets::AuthorStyleSheets):
-        (WebCore::AuthorStyleSheets::flushPendingUpdates):
-        (WebCore::AuthorStyleSheets::scheduleOptimizedUpdate):
-        (WebCore::AuthorStyleSheets::didChange):
-        (WebCore::AuthorStyleSheets::optimizedUpdateTimerFired):
-        * dom/AuthorStyleSheets.h:
-        (WebCore::AuthorStyleSheets::hasPendingUpdate):
-        (WebCore::AuthorStyleSheets::pendingUpdateType): Deleted.
-        (WebCore::AuthorStyleSheets::setPendingUpdateType): Deleted.
-        (WebCore::AuthorStyleSheets::flushPendingUpdates): Deleted.
-        * dom/Document.cpp:
-        (WebCore::Document::Document):
-        (WebCore::Document::setContentLanguage):
-        (WebCore::Document::needsStyleRecalc):
-        (WebCore::Document::updateStyleIfNeeded):
-        (WebCore::Document::updateLayoutIgnorePendingStylesheets):
-        (WebCore::Document::didRemoveAllPendingStylesheet):
-        (WebCore::Document::processHttpEquiv):
-        (WebCore::Document::setSelectedStylesheetSet):
-        (WebCore::Document::updateHoverActiveState):
-
-            Remove StyleResolverUpdateFlag argument that was misused to indicate sync style recalc.
-            Clients can call updateStyleIfNeeded() directly though none of them appears to need it.
-
-        (WebCore::Document::optimizedStyleSheetUpdateTimerFired): Deleted.
-        (WebCore::Document::scheduleOptimizedStyleSheetUpdate): Deleted.
-        (WebCore::Document::styleResolverChanged): Deleted.
-        * dom/Document.h:
-        (WebCore::Document::needsStyleRecalc): Deleted.
-        * dom/ExtensionStyleSheets.cpp:
-        (WebCore::ExtensionStyleSheets::clearPageUserSheet):
-        (WebCore::ExtensionStyleSheets::updatePageUserSheet):
-        (WebCore::ExtensionStyleSheets::invalidateInjectedStyleSheetCache):
-        (WebCore::ExtensionStyleSheets::addUserStyleSheet):
-        (WebCore::ExtensionStyleSheets::addAuthorStyleSheetForTesting):
-        (WebCore::ExtensionStyleSheets::styleResolverChangedTimerFired):
-        * dom/InlineStyleSheetOwner.cpp:
-        (WebCore::InlineStyleSheetOwner::removedFromDocument):
-        * dom/ProcessingInstruction.cpp:
-        (WebCore::ProcessingInstruction::removedFrom):
-
-            Also fix a bug that prevented document from rendering if a loading processing instruction was removed from the tree.
-            This is tested by fast/dom/StyleSheet/detached-style-pi-2.xhtml (after other changes in this patch).
-
-        * dom/ShadowRoot.cpp:
-        (WebCore::ShadowRoot::updateStyle):
-        * html/HTMLLinkElement.cpp:
-        (WebCore::HTMLLinkElement::setDisabledState):
-        (WebCore::HTMLLinkElement::parseAttribute):
-        (WebCore::HTMLLinkElement::process):
-        (WebCore::HTMLLinkElement::removedFrom):
-        (WebCore::HTMLLinkElement::removePendingSheet):
-        * html/HTMLStyleElement.cpp:
-        (WebCore::HTMLStyleElement::parseAttribute):
-        * inspector/InspectorCSSAgent.cpp:
-        (WebCore::InspectorCSSAgent::forcePseudoState):
-        (WebCore::InspectorCSSAgent::resetPseudoStates):
-        * inspector/InspectorPageAgent.cpp:
-        (WebCore::InspectorPageAgent::setEmulatedMedia):
-        * page/Frame.cpp:
-        (WebCore::Frame::setPrinting):
-        * page/FrameView.cpp:
-        (WebCore::FrameView::layout):
-        (WebCore::FrameView::setPagination):
-        (WebCore::FrameView::setViewportSizeForCSSViewportUnits):
-        * page/Page.cpp:
-        (WebCore::Page::setViewMode):
-        (WebCore::Page::setNeedsRecalcStyleInAllFrames):
-        (WebCore::Page::invalidateInjectedStyleSheetCacheInAllFrames):
-        * svg/SVGFontFaceElement.cpp:
-        (WebCore::SVGFontFaceElement::rebuildFontFace):
-        (WebCore::SVGFontFaceElement::removedFrom):
-        * xml/XMLTreeViewer.cpp:
-        (WebCore::XMLTreeViewer::transformDocumentToTreeView):
-        * xml/parser/XMLDocumentParser.cpp:
-        (WebCore::XMLDocumentParser::end):
-        * xml/parser/XMLDocumentParserLibxml2.cpp:
-        (WebCore::XMLDocumentParser::doEnd):
-
-2016-09-23  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        Media controls playhead does not animate smoothly while playing
-        https://bugs.webkit.org/show_bug.cgi?id=162399
-        <rdar://problem/28115680>
-
-        Reviewed by Beth Dakin.
-
-        The media controls playhead currently does not animate smoothly during playback because we don't specify a
-        playback rate when updating the WebPlaybackControlsManager's timing value. However, simply setting this timing
-        value to the current playback rate (as known to the UI process) results in the UI process receiving multiple
-        updates from the web process where the current time is equal (or even less than) the time at which media began
-        to play, which results in the playhead seeking backwards to the start time multiple times when playing or
-        resuming media.
-
-        To address this, in WebCore, we inform the playback session model of the media time when playback begins (i.e.
-        a `playing` or `play` event is fired). This message precedes both the "rate changed" and "current time changed"
-        messages.
-
-        Unit tests to be added in a future patch.
-
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::notifyAboutPlaying):
-        (WebCore::HTMLMediaElement::setReadyState):
-        (WebCore::HTMLMediaElement::playInternal):
-        * html/HTMLMediaElement.h:
-        (WebCore::HTMLMediaElement::playbackStartedTime):
-        * platform/cocoa/WebPlaybackSessionModel.h:
-        (WebCore::WebPlaybackSessionModelClient::playbackStartedTimeChanged):
-        (WebCore::WebPlaybackSessionModelClient::bufferedTimeChanged): Deleted.
-        * platform/cocoa/WebPlaybackSessionModelMediaElement.h:
-        * platform/cocoa/WebPlaybackSessionModelMediaElement.mm:
-        (WebPlaybackSessionModelMediaElement::updateForEventName):
-        (WebPlaybackSessionModelMediaElement::playbackStartedTime):
-        * platform/ios/WebVideoFullscreenControllerAVKit.mm:
-        * platform/mac/WebPlaybackSessionInterfaceMac.h:
-        * platform/mac/WebPlaybackSessionInterfaceMac.mm:
-        (WebCore::WebPlaybackSessionInterfaceMac::currentTimeChanged):
-        (WebCore::WebPlaybackSessionInterfaceMac::rateChanged):
-        (WebCore::WebPlaybackSessionInterfaceMac::beginScrubbing):
-        (WebCore::WebPlaybackSessionInterfaceMac::endScrubbing):
-        (WebCore::WebPlaybackSessionInterfaceMac::updatePlaybackControlsManagerTiming):
-
-2016-09-23  Zalan Bujtas  <zalan@apple.com>
-
-        ASSERTION FAILED: !newRelayoutRoot.container() || is<RenderView>(newRelayoutRoot.container()) || !newRelayoutRoot.container()->needsLayout() while loading sohu.com
-        https://bugs.webkit.org/show_bug.cgi?id=162466
-
-        Reviewed by Simon Fraser.
-
-        When we come across a out-of-flow positioned renderer during layout, we add it to a tracker map with
-        its containing block (calling RenderBlock::insertPositionedObject).
-        It ensures that a containing block can easily access to the out-of-flow positioned descendants during layout/painting/hittesting.
-        We do it even when the containing block - positioned renderer pair is already in this tracker map.
-        RenderBlock::insertPositionedObject() eagerly sets the positioned-child-needs-layout flag on the containing block
-        assuming it needs to layout this descendant later in the layout phase.
-        This patch ensure that we only flag the containing block dirty when the descendant needs layout.
-
-        Test: fast/block/positioning/subtree-assert-when-positioned-element-dirties-containing-block.html
-
-        * rendering/RenderBlock.cpp:
-        (WebCore::RenderBlock::insertPositionedObject):
-
-2016-09-23  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        [Binding] Use unchekcedArgument if argumentCount is already checked
-        https://bugs.webkit.org/show_bug.cgi?id=162502
-
-        Reviewed by Geoffrey Garen.
-
-        It is not necessary to use `exec->argument(n)` after checking the argument exists.
-        This patch changes `argument(n)` to `uncheckedArgument(n)` if we already proved that
-        the argument exists. This change drops branches generated by `exec->argument(n)`.
-        And it is good for small DOM operations in which DOM binding code occupies large
-        part of entire processing. This patch and another small patch[1] offer roughly 5%
-        improvement in Dromaeo dom-attr's getAttribute and setAttribute tests.
-
-        [1]: https://bugs.webkit.org/show_bug.cgi?id=162503
-
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateParametersCheck): GenerateParameterCheck requires GenerateArgumentsCountCheck.
-        As a result, existence of mandatory arguments are already checked. We can use `uncheckedArgument(n)`
-        for mandatory arguments.
-        * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
-        (WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
-        (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
-        * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
-        (WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
-        * bindings/scripts/test/JS/JSTestEventTarget.cpp:
-        (WebCore::jsTestEventTargetPrototypeFunctionItem):
-        * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
-        (WebCore::jsTestGlobalObjectInstanceFunctionRegularOperation):
-        (WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation1):
-        (WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation2):
-        * bindings/scripts/test/JS/JSTestInterface.cpp:
-        (WebCore::JSTestInterfaceConstructor::construct):
-        (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
-        (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
-        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
-        (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
-        * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
-        (WebCore::JSTestNamedConstructorNamedConstructor::construct):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::JSTestObjConstructor::construct):
-        (WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation1):
-        (WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation2):
-        (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
-        (WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
-        (WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
-        (WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
-        (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithArgTreatingNullAsEmptyString):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameter):
-        (WebCore::jsTestObjPrototypeFunctionNullableStringSpecialMethod):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithNullableUSVStringArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgTreatingNullAsEmptyString):
-        (WebCore::jsTestObjPrototypeFunctionSerializedValue):
-        (WebCore::jsTestObjPrototypeFunctionOptionsObject):
-        (WebCore::jsTestObjPrototypeFunctionPrivateMethod):
-        (WebCore::jsTestObjPrototypeFunctionPublicAndPrivateMethod):
-        (WebCore::jsTestObjPrototypeFunctionAddEventListener):
-        (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionArg):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackFunctionArg):
-        (WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter1):
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter2):
-        (WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
-        (WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
-        (WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
-        (WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRange):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
-        (WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
-        (WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
-        (WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence):
-        (WebCore::jsTestObjPrototypeFunctionGetElementById):
-        (WebCore::jsTestObjPrototypeFunctionConvert1):
-        (WebCore::jsTestObjPrototypeFunctionConvert2):
-        (WebCore::jsTestObjPrototypeFunctionConvert3):
-        (WebCore::jsTestObjPrototypeFunctionConvert4):
-        (WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
-        (WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
-        (WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
-        (WebCore::jsTestObjPrototypeFunctionAny):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
-        (WebCore::jsTestObjPrototypeFunctionConditionalOverload1):
-        (WebCore::jsTestObjPrototypeFunctionConditionalOverload2):
-        (WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload1):
-        (WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload2):
-        (WebCore::jsTestObjPrototypeFunctionAttachShadowRoot):
-        * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
-        (WebCore::constructJSTestOverloadedConstructors1):
-        (WebCore::constructJSTestOverloadedConstructors2):
-        (WebCore::constructJSTestOverloadedConstructors3):
-        (WebCore::constructJSTestOverloadedConstructors4):
-        * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
-        (WebCore::constructJSTestOverloadedConstructorsWithSequence2):
-        * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
-        (WebCore::jsTestOverrideBuiltinsPrototypeFunctionNamedItem):
-        * bindings/scripts/test/JS/JSTestTypedefs.cpp:
-        (WebCore::JSTestTypedefsConstructor::construct):
-        (WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
-        (WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
-        (WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceArg):
-        (WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
-        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction):
-        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2):
-        (WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):
-
-2016-09-23  Alex Christensen  <achristensen@webkit.org>
-
-        Refactor URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162518
-
-        Reviewed by Brady Eidson.
-
-        Use a helper function to determine the currentPosition instead of always determining position based on the
-        size of the buffer.  Soon there will be nothing in the buffer in the common case where there are no syntax errors.
-        Also make more static functions into methods.  Give IPv6Addresses and IPv4Addresses names.  Start adding syntaxError stubs.
-
-        No change in behavior.  Covered by API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::incrementIteratorSkippingTabAndNewLine):
-        (WebCore::URLParser::isWindowsDriveLetter):
-        (WebCore::URLParser::appendToASCIIBuffer):
-        (WebCore::URLParser::syntaxError):
-        (WebCore::URLParser::currentPosition):
-        (WebCore::URLParser::URLParser):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::URLParser::appendNumberToASCIIBuffer):
-        (WebCore::URLParser::serializeIPv4):
-        (WebCore::URLParser::serializeIPv6Piece):
-        (WebCore::URLParser::serializeIPv6):
-        (WebCore::URLParser::parseIPv4Host):
-        (WebCore::URLParser::parseIPv6Host):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHostAndPort):
-        (WebCore::append): Deleted.
-        (WebCore::serializeIPv4): Deleted.
-        (WebCore::serializeIPv6Piece): Deleted.
-        (WebCore::serializeIPv6): Deleted.
-        (WebCore::parseIPv4Host): Deleted.
-        (WebCore::parseIPv6Host): Deleted.
-        * platform/URLParser.h:
-
-2016-09-23  Alex Christensen  <achristensen@webkit.org>
-
-        Refactor URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162516
-
-        Reviewed by Brady Eidson.
-
-        Turn more static functions into methods, use a helper function to append characters to a buffer.
-
-        No change in behavior, but I added a new API test to cover an interesting 
-        ipv6 address parsing case that had no coverage.
-
-        * platform/URLParser.cpp:
-        (WebCore::CodePointIterator::codeUnitsSince):
-        (WebCore::URLParser::isWindowsDriveLetter):
-        (WebCore::URLParser::appendToASCIIBuffer):
-        (WebCore::URLParser::checkWindowsDriveLetter):
-        (WebCore::URLParser::percentEncodeByte):
-        (WebCore::URLParser::utf8PercentEncode):
-        (WebCore::URLParser::utf8QueryEncode):
-        (WebCore::URLParser::encodeQuery):
-        (WebCore::URLParser::copyASCIIStringUntil):
-        (WebCore::URLParser::copyURLPartsUntil):
-        (WebCore::URLParser::URLParser):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHostAndPort):
-        (WebCore::utf8PercentEncode): Deleted.
-        (WebCore::utf8QueryEncode): Deleted.
-        (WebCore::encodeQuery): Deleted.
-        (WebCore::copyASCIIStringUntil): Deleted.
-        * platform/URLParser.h:
-        (WebCore::URLParser::appendToASCIIBuffer):
-
-2016-09-23  Caitlin Potter  <caitp@igalia.com>
-
-        [JSC] Implement parsing of Async Functions
-        https://bugs.webkit.org/show_bug.cgi?id=161409
-
-        Reviewed by Yusuke Suzuki.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2016-09-23  Chris Dumez  <cdumez@apple.com>
-
-        Align HTMLLabelElement.prototype.form with the HTML specification
-        https://bugs.webkit.org/show_bug.cgi?id=162369
-
-        Reviewed by Ryosuke Niwa.
-
-        Align HTMLLabelElement.prototype.form with the HTML specification:
-        - https://html.spec.whatwg.org/#dom-label-form
-
-        In particular, the following behavior changes:
-        - We now return null if the label element has no labeled control.
-        - We now return the form element instead of returning null if
-          the label element is outside the form but its labeled control
-          is inside the form.
-
-        Firefox and Chrome match the specification.
-
-        No new tests, rebaselined existing tests.
-
-        * html/HTMLLabelElement.cpp:
-        (WebCore::HTMLLabelElement::form):
-        * html/HTMLLabelElement.h:
-
-2016-09-23  Alex Christensen  <achristensen@webkit.org>
-
-        Refactor URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162511
-
-        Reviewed by Brady Eidson.
-
-        Make the constructor take the parameters instead of URL::parse.
-        Now we don't need to copy the input string on failure.
-        Also, turn some static functions into methods so they will be able to access member variables.
-
-        Covered by existing and new API tests.
-
-        * platform/URL.cpp:
-        (WebCore::URL::URL):
-        (WebCore::URL::setProtocol):
-        (WebCore::URL::setHost):
-        (WebCore::URL::removePort):
-        (WebCore::URL::setPort):
-        (WebCore::URL::setHostAndPort):
-        (WebCore::URL::setUser):
-        (WebCore::URL::setPass):
-        (WebCore::URL::setFragmentIdentifier):
-        (WebCore::URL::removeFragmentIdentifier):
-        (WebCore::URL::setQuery):
-        (WebCore::URL::setPath):
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::incrementIteratorSkippingTabAndNewLine):
-        (WebCore::URLParser::isWindowsDriveLetter):
-        (WebCore::URLParser::checkWindowsDriveLetter):
-        (WebCore::URLParser::shouldCopyFileURL):
-        (WebCore::URLParser::failure):
-        (WebCore::URLParser::URLParser):
-        (WebCore::URLParser::parse):
-        (WebCore::incrementIteratorSkippingTabAndNewLine): Deleted.
-        (WebCore::isWindowsDriveLetter): Deleted.
-        (WebCore::checkWindowsDriveLetter): Deleted.
-        (WebCore::shouldCopyFileURL): Deleted.
-        * platform/URLParser.h:
-        (WebCore::URLParser::URLParser):
-        (WebCore::URLParser::result):
-        (WebCore::URLParser::parse): Deleted.
-        * platform/cf/URLCF.cpp:
-        (WebCore::URL::URL):
-        Drive-by fix: Actually assign the URL to be the result of parsing.
-        * platform/mac/URLMac.mm:
-        (WebCore::URL::URL):
-
-2016-09-23  Alex Christensen  <achristensen@webkit.org>
-
-        Remove URLParser serialized template
-        https://bugs.webkit.org/show_bug.cgi?id=162501
-
-        Reviewed by Brady Eidson.
-
-        No change in behavior.  
-        This optimization conflicts with another optimization I'm doing.
-        We currently have the ParsedURLString tag, where we tell the parser to assume this URL is valid and canonicalized.
-        I'm going to instead make URLParser assume all URLs are valid and canonicalized until it finds that it is not, 
-        in which case it will canonicalize it if possible.
-
-        * platform/URL.cpp:
-        (WebCore::URL::URL):
-        * platform/URLParser.cpp:
-        (WebCore::incrementIteratorSkippingTabAndNewLine):
-        (WebCore::isWindowsDriveLetter):
-        (WebCore::checkWindowsDriveLetter):
-        (WebCore::shouldCopyFileURL):
-        (WebCore::utf8PercentEncode):
-        (WebCore::utf8QueryEncode):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHostAndPort):
-        (WebCore::URLParser::parseSerializedURL): Deleted.
-        * platform/URLParser.h:
-        (WebCore::URLParser::parse):
-
-2016-09-23  Jer Noble  <jer.noble@apple.com>
-
-        Allow Seeking from the now playing controls
-        https://bugs.webkit.org/show_bug.cgi?id=162498
-
-        Reviewed by Beth Dakin.
-
-        We already have a handler for seek commands, we just need to register that handler
-        with MediaRemote.
-
-        * platform/mac/RemoteCommandListenerMac.mm:
-        (WebCore::RemoteCommandListenerMac::updateSupportedCommands):
-
-2016-09-23  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        MediaSessionManagerMac::nowPlayingEligibleSession() needs to honor the main content heuristic
-        https://bugs.webkit.org/show_bug.cgi?id=162480
-        <rdar://problem/28430615>
-
-        Reviewed by Jer Noble.
-
-        Changes the implementation of nowPlayingEligibleSession to use bestMediaElementForShowingPlaybackControlsManager
-        and also early return nullptr if the current tab the web process is hosted in is the active tab, and the window
-        it is hosted in is the main window. This information is derived from the viewState flags in the Page of each
-        tab -- whenever the (visible && active) state changes, the Page tells the global media session manager to update
-        its Now Playing info. Then, when each MediaElementSession tries to determine whether it can show playback
-        controls for the purposes of Now Playing, each session consults its page's visible and active state. If a page
-        is both visible and active, no Now Playing controls are allowed for that media session.
-
-        Also adds some slight adjustments to MediaSessionManagerMac::updateNowPlayingInfo, so we reset the title, rate
-        and duration of the current active session when clearing out the now playing info. Likewise, when vending an
-        active video, if the video information matches that of the current session, we mark m_nowPlayingActive anyways.
-        These tweaks prevent us from getting in a bad state when switching between a tab with media and one without.
-
-        Unit tests to come in a future patch.
-
-        * html/HTMLMediaElement.cpp:
-        (WebCore::mediaElementSessionInfoForSession):
-        (WebCore::mediaSessionMayBeConfusedWithMainContent):
-        (WebCore::HTMLMediaElement::bestMediaElementForShowingPlaybackControlsManager):
-        (WebCore::HTMLMediaElement::updatePlaybackControlsManager):
-        (WebCore::bestMediaSessionForShowingPlaybackControlsManager): Deleted.
-        * html/HTMLMediaElement.h:
-        * html/MediaElementSession.cpp:
-        (WebCore::MediaElementSession::canShowControlsManager):
-        (WebCore::MediaElementSession::pageAllowsNowPlayingControls):
-        * html/MediaElementSession.h:
-        * page/Page.cpp:
-        (WebCore::Page::setViewState):
-        (WebCore::Page::isVisibleAndActive):
-        * page/Page.h:
-        * platform/audio/PlatformMediaSessionManager.cpp:
-        (WebCore::PlatformMediaSessionManager::updateNowPlayingInfoIfNecessary):
-        * platform/audio/PlatformMediaSessionManager.h:
-        * platform/audio/mac/MediaSessionManagerMac.mm:
-        (WebCore::PlatformMediaSessionManager::updateNowPlayingInfoIfNecessary):
-        (WebCore::MediaSessionManagerMac::nowPlayingEligibleSession):
-        (WebCore::MediaSessionManagerMac::updateNowPlayingInfo):
-
-2016-09-23  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r206311.
-        https://bugs.webkit.org/show_bug.cgi?id=162495
-
-        Broke internal iOS build (Requested by anttik on #webkit).
-
-        Reverted changeset:
-
-        "Move stylesheet change logic from Document to
-        AuthorStyleSheets"
-        https://bugs.webkit.org/show_bug.cgi?id=162488
-        http://trac.webkit.org/changeset/206311
-
-2016-09-23  Antti Koivisto  <antti@apple.com>
-
-        Move stylesheet change logic from Document to AuthorStyleSheets
-        https://bugs.webkit.org/show_bug.cgi?id=162488
-
-        Reviewed by Andreas Kling.
-
-        That's where it belongs.
-
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/CSSStyleSheet.cpp:
-        (WebCore::CSSStyleSheet::didMutateRules):
-        (WebCore::CSSStyleSheet::didMutate):
-        (WebCore::CSSStyleSheet::clearOwnerNode):
-        * dom/AuthorStyleSheets.cpp:
-        (WebCore::AuthorStyleSheets::AuthorStyleSheets):
-        (WebCore::AuthorStyleSheets::flushPendingUpdates):
-        (WebCore::AuthorStyleSheets::scheduleOptimizedUpdate):
-        (WebCore::AuthorStyleSheets::didChange):
-        (WebCore::AuthorStyleSheets::optimizedUpdateTimerFired):
-        * dom/AuthorStyleSheets.h:
-        (WebCore::AuthorStyleSheets::hasPendingUpdate):
-        (WebCore::AuthorStyleSheets::pendingUpdateType): Deleted.
-        (WebCore::AuthorStyleSheets::setPendingUpdateType): Deleted.
-        (WebCore::AuthorStyleSheets::flushPendingUpdates): Deleted.
-        * dom/Document.cpp:
-        (WebCore::Document::Document):
-        (WebCore::Document::setContentLanguage):
-        (WebCore::Document::needsStyleRecalc):
-        (WebCore::Document::updateStyleIfNeeded):
-        (WebCore::Document::updateLayoutIgnorePendingStylesheets):
-        (WebCore::Document::didRemoveAllPendingStylesheet):
-        (WebCore::Document::processHttpEquiv):
-        (WebCore::Document::setSelectedStylesheetSet):
-        (WebCore::Document::updateHoverActiveState):
-        (WebCore::Document::optimizedStyleSheetUpdateTimerFired): Deleted.
-        (WebCore::Document::scheduleOptimizedStyleSheetUpdate): Deleted.
-        (WebCore::Document::styleResolverChanged): Deleted.
-        * dom/Document.h:
-        (WebCore::Document::needsStyleRecalc): Deleted.
-        * dom/ExtensionStyleSheets.cpp:
-        (WebCore::ExtensionStyleSheets::clearPageUserSheet):
-        (WebCore::ExtensionStyleSheets::updatePageUserSheet):
-        (WebCore::ExtensionStyleSheets::invalidateInjectedStyleSheetCache):
-        (WebCore::ExtensionStyleSheets::addUserStyleSheet):
-        (WebCore::ExtensionStyleSheets::addAuthorStyleSheetForTesting):
-        (WebCore::ExtensionStyleSheets::styleResolverChangedTimerFired):
-        * dom/InlineStyleSheetOwner.cpp:
-        (WebCore::InlineStyleSheetOwner::removedFromDocument):
-        * dom/ProcessingInstruction.cpp:
-        (WebCore::ProcessingInstruction::removedFrom):
-
-            Also fix a bug that prevented document from rendering if a loading processing instruction was removed from the tree.
-            This is tested by fast/dom/StyleSheet/detached-style-pi-2.xhtml (after other changes in this patch).
-
-        * dom/ShadowRoot.cpp:
-        (WebCore::ShadowRoot::updateStyle):
-        * html/HTMLLinkElement.cpp:
-        (WebCore::HTMLLinkElement::setDisabledState):
-        (WebCore::HTMLLinkElement::parseAttribute):
-        (WebCore::HTMLLinkElement::process):
-        (WebCore::HTMLLinkElement::removedFrom):
-        (WebCore::HTMLLinkElement::removePendingSheet):
-        * html/HTMLStyleElement.cpp:
-        (WebCore::HTMLStyleElement::parseAttribute):
-        * inspector/InspectorCSSAgent.cpp:
-        (WebCore::InspectorCSSAgent::forcePseudoState):
-        (WebCore::InspectorCSSAgent::resetPseudoStates):
-        * inspector/InspectorPageAgent.cpp:
-        (WebCore::InspectorPageAgent::setEmulatedMedia):
-        * page/Frame.cpp:
-        (WebCore::Frame::setPrinting):
-        * page/FrameView.cpp:
-        (WebCore::FrameView::layout):
-        (WebCore::FrameView::setPagination):
-        (WebCore::FrameView::setViewportSizeForCSSViewportUnits):
-        * page/Page.cpp:
-        (WebCore::Page::setViewMode):
-        (WebCore::Page::setNeedsRecalcStyleInAllFrames):
-        (WebCore::Page::invalidateInjectedStyleSheetCacheInAllFrames):
-        * svg/SVGFontFaceElement.cpp:
-        (WebCore::SVGFontFaceElement::rebuildFontFace):
-        (WebCore::SVGFontFaceElement::removedFrom):
-        * xml/XMLTreeViewer.cpp:
-        (WebCore::XMLTreeViewer::transformDocumentToTreeView):
-        * xml/parser/XMLDocumentParser.cpp:
-        (WebCore::XMLDocumentParser::end):
-        * xml/parser/XMLDocumentParserLibxml2.cpp:
-        (WebCore::XMLDocumentParser::doEnd):
-
-2016-09-22  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] ASSERT when sizing tracks with percentages inside calc
-        https://bugs.webkit.org/show_bug.cgi?id=162383
-
-        Reviewed by Darin Adler.
-
-        There is an ASSERT to check that tracks are at least as wide as the initial base size. This
-        was added to verify that we never shrink tracks bellow that value. In order to compute the
-        value used for initialization we need a max size which is the value used to resolve
-        percentages to. The remaining free space was used to compute that value, that's totally
-        wrong because the free space decreases as the track sizing algorithm is run. The available
-        space should be used instead.
-
-        An extra ASSERT was removed too because it was redundant, we do always check the sizes of
-        the tracks after running the track sizing algorithm and that's precisely the unique point
-        were they could be modified.
-
-        Test: fast/css-grid-layout/tracks-wider-min-track-breadth-crash.html
-
-        * rendering/RenderGrid.cpp:
-        (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
-
-2016-09-23  Chris Dumez  <cdumez@apple.com>
-
-        document.title getter does not strip / collapse the right whitespace characters
-        https://bugs.webkit.org/show_bug.cgi?id=162468
-
-        Reviewed by Ryosuke Niwa.
-
-        The document.title getter does not strip / collapse whitespace characters
-        as per:
-        - https://html.spec.whatwg.org/#document.title
-
-        This part of the specification provides more information about which
-        whitespace characters:
-        - https://html.spec.whatwg.org/#strip-and-collapse-whitespace
-        - https://html.spec.whatwg.org/#space-character
-
-        Firefox matches the specification. However, WebKit was stripping / collapsing
-        some characters it should not.
-
-        No new tests, rebaselined existing tests.
-
-        * dom/Document.cpp:
-        (WebCore::canonicalizedTitle):
-
-2016-09-23  Chris Dumez  <cdumez@apple.com>
-
-        Align Element.insertAdjacentHTML() with the specification
-        https://bugs.webkit.org/show_bug.cgi?id=162479
-
-        Reviewed by Sam Weinig.
-
-        Align Element.insertAdjacentHTML() with the specification:
-        - https://w3c.github.io/DOM-Parsing/#dom-element-insertadjacenthtml (steps 1 & 2)
-
-        In particular, the following changes issues are now fixed:
-        - Calling insertAdjacentHTML() on an element whose parent is a
-          DocumentFragment now works insteas of throwing a
-          NO_MODIFICATION_ALLOWED_ERR.
-        - Calling insertAdjacentHTML() on child of the <html> element
-          no longer creates duplicate body / head elements.
-
-        Firefox agrees with the specification.
-
-        Test: fast/dom/insertAdjacentHTML-DocumentFragment-parent.html
-
-        * dom/Element.cpp:
-        (WebCore::contextNodeForInsertion):
-        (WebCore::Element::insertAdjacentHTML):
-
-2016-09-23  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r206165.
-        https://bugs.webkit.org/show_bug.cgi?id=162492
-
-        needs corresponding API change in bug 162475 (Requested by
-        alexchristensen on #webkit).
-
-        Reverted changeset:
-
-        "Non-special URLs should have an opaque origin"
-        https://bugs.webkit.org/show_bug.cgi?id=162254
-        http://trac.webkit.org/changeset/206165
-
-2016-09-23  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Unreviewed. Fix the build after r206300.
-
-        * platform/mock/mediasource/MockSourceBufferPrivate.cpp: Add missing header include.
-
-2016-09-23  Jer Noble  <jer.noble@apple.com>
-
-        Unreviewed build fix; Missed a file in the last checkin.
-
-        * platform/graphics/SourceBufferPrivate.h:
-        (WebCore::SourceBufferPrivate::enqueuedSamplesForTrackID):
-
-2016-09-23  Jer Noble  <jer.noble@apple.com>
-
-        REGRESSION (206001): Scrubbed video on Youtube stops playing
-        https://bugs.webkit.org/show_bug.cgi?id=162481
-        <rdar://problem/28436707>
-
-        Reviewed by Eric Carlson.
-
-        Test: media/media-source/media-source-seek-back.html
-
-        When re-enqueing samples after a seek, modified the algorithm for finding the first sample
-        to re-enqueue. Instead of finding a sample which contained the requested presentation time,
-        we searched for the first sample on-or-after the presentation time. This meant that if the
-        last buffered sample in that range started before the seek time, and ended after, it would
-        get skipped during re-enquing, and a far, far future sample would be enqueued instead. Now
-        revert to the old behavior (find the sample containing the requested time), and only adopt
-        the new behavior (find the next sample on-or-after the requested time) if the first failed.
-        In addition, bail out if the second check resulted in a sample whose presentation time was
-        greater than a "fudge factor" away from the requested time.
-
-        To test this behavior, add a new method onto Internals that returns a list of the enqueued
-        samples from a SourceBuffer.
-
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::reenqueueMediaForTime):
-        (WebCore::SourceBuffer::enqueuedSamplesForTrackID):
-        * Modules/mediasource/SourceBuffer.h:
-        * platform/mock/mediasource/MockMediaSourcePrivate.cpp:
-        (WebCore::MockMediaSourcePrivate::seekToTime):
-        * platform/mock/mediasource/MockSourceBufferPrivate.cpp:
-        (WebCore::MockSourceBufferPrivate::enqueuedSamplesForTrackID):
-        (WebCore::MockSourceBufferPrivate::enqueueSample):
-        * platform/mock/mediasource/MockSourceBufferPrivate.h:
-        * testing/Internals.cpp:
-        (WebCore::Internals::enqueuedSamplesForTrackID):
-        * testing/Internals.h:
-        * testing/Internals.idl:
-
-2016-09-22  Zalan Bujtas  <zalan@apple.com>
-
-        Replace redundant prepareForDestruction() call with RELEASE_ASSERT in Document::removedLastRef.
-        https://bugs.webkit.org/show_bug.cgi?id=162467
-
-        Reviewed by Chris Dumez.
-
-        Since r205786 fixed the root cause of webkit.org/b/159372, we no longer need the workaround.
-        Replace it with a RELEASE_ASSERT to ensure clean state.
-
-        No new tests, covered by existing test.
-
-        * dom/Document.cpp:
-        (WebCore::Document::removedLastRef):
-
-2016-09-23  Antoine Quint  <graouts@apple.com>
-
-        Add a new runtime flag for work on modern media controls (off by default)
-        https://bugs.webkit.org/show_bug.cgi?id=162420
-        <rdar://problem/27989489>
-
-        Reviewed by Eric Carlson.
-
-        * bindings/generic/RuntimeEnabledFeatures.h:
-        (WebCore::RuntimeEnabledFeatures::setModernMediaControlsEnabled):
-        (WebCore::RuntimeEnabledFeatures::modernMediaControlsEnabled):
-
-2016-09-22  Chris Dumez  <cdumez@apple.com>
-
-        [ShadowDOM] Add support for Node.getRootNode(options)
-        https://bugs.webkit.org/show_bug.cgi?id=162457
-
-        Reviewed by Ryosuke Niwa.
-
-        Add support for Node.getRootNode(options):
-        - https://dom.spec.whatwg.org/#dom-node-getrootnode
-
-        No new tests, rebaselined existing tests.
-
-        * dom/EventPath.cpp:
-        (WebCore::RelatedNodeRetargeter::RelatedNodeRetargeter):
-        (WebCore::RelatedNodeRetargeter::checkConsistency):
-        * dom/Node.cpp:
-        (WebCore::Node::rootNode):
-        (WebCore::Node::shadowIncludingRoot):
-        (WebCore::Node::getRootNode):
-        * dom/Node.h:
-        * dom/Node.idl:
-        * editing/Editor.cpp:
-        (WebCore::correctSpellcheckingPreservingTextCheckingParagraph):
-        * xml/XPathPath.cpp:
-        (WebCore::XPath::LocationPath::evaluate):
-
-2016-09-22  Brady Eidson  <beidson@apple.com>
-
-        IDBIndex.openCursor() matches indices on multiple object stores.
-        <rdar://problem/28434463> and https://bugs.webkit.org/show_bug.cgi?id=158833
-
-        Reviewed by Alex Christensen.
-
-        Tests: storage/indexeddb/modern/multiple-objectstore-index-cursor-collision-private.html
-               storage/indexeddb/modern/multiple-objectstore-index-cursor-collision.html
-
-        * Modules/indexeddb/server/SQLiteIDBCursor.cpp:
-        (WebCore::IDBServer::buildIndexStatement): Need to include the object store id in the statement for
-          index cursors, otherwise there will be collisions amongst multiple object stores that happen to
-          share primary keys.
-        (WebCore::IDBServer::SQLiteIDBCursor::bindArguments):
-
-2016-09-22  Zalan Bujtas  <zalan@apple.com>
-
-        ShowRenderTree: Shuffle letters to have better readability.
-        https://bugs.webkit.org/show_bug.cgi?id=162460
-
-        Reviewed by Simon Fraser.
-        old: (B)lock/(I)nline/I(N)line-block, (R)elative/A(B)solute/Fi(X)ed/Stick(Y) positioned, (O)verflow clipping, (A)nonymous, (G)enerated, (F)loating, has(L)ayer, (C)omposited, (D)irty layout, Dirty (S)tyle.
-        new: (B)lock/(I)nline/I(N)line-block, (A)bsolute/Fi(X)ed/(R)elative/Stic(K)y, (F)loating, (O)verflow clip, Anon(Y)mous, (G)enerated, has(L)ayer, (C)omposited, (+)Dirty style, (+)Dirty layout.
-
-        Not testable.
-
-        * rendering/RenderObject.cpp:
-        (WebCore::showRenderTreeLegend):
-        (WebCore::RenderObject::showRenderObject):
-
-2016-09-22  Daniel Bates  <dabates@apple.com>
-
-        [CSP] Violation report may be sent to wrong domain on frame-ancestors violation
-        https://bugs.webkit.org/show_bug.cgi?id=162079
-        <rdar://problem/28321575>
-
-        Reviewed by Andy Estes.
-
-        Fixes an issue where a CSP violation report may be sent to the wrong domain when the
-        frame-ancestors directive is violated. In particular, when the frame-ancestors directive
-        is violated for a page that specifies a report URI that is a relative URL then the
-        report URI would be resolved with respect to the parent frame's document URL and hence
-        be sent to the domain of the parent frame's document.
-
-        * page/csp/ContentSecurityPolicy.cpp:
-        (WebCore::ContentSecurityPolicy::reportViolation): Adjust the report URL with respect
-        to the blocked URL when we do not have a script execution context.
-
-2016-09-22  Daniel Bates  <dabates@apple.com>
-
-        [XSS Auditor] HTML5 entities can bypass XSS Auditor
-        https://bugs.webkit.org/show_bug.cgi?id=161939
-        <rdar://problem/25819815>
-
-        Reviewed by David Kilzer.
-
-        Merged from Blink:
-        <https://chromium.googlesource.com/chromium/src/+/04e44060dccee711842d08652bf1c622a0f43179>
-
-        Truncate a src-like URL at the first & character as it may mark the start of an HTML entity.
-        We will evaluate the effectiveness of this approach and adjust it if necessary if we see an
-        increase in false positives.
-
-        HTML5 defines more named character references, including named character references for common
-        punctuation characters. Characters following some punctuation characters may come from the page
-        itself. We truncate src-like strings at punctuation characters to avoid considering such page
-        content when performing a match.
-
-        Test: http/tests/security/xssAuditor/script-tag-with-source-data-url5.html
-
-        * html/parser/XSSAuditor.cpp:
-        (WebCore::truncateForSrcLikeAttribute):
-
-2016-09-22  Daniel Bates  <dabates@apple.com>
-
-        [XSS Auditor] Truncate data URLs at quotes
-        https://bugs.webkit.org/show_bug.cgi?id=161937
-
-        Reviewed by David Kilzer.
-
-        Merged from Blink: 
-        <https://chromium.googlesource.com/chromium/src/+/c6d6331190dd43f09459e2341c3111e796f9de12/>
-
-        Truncate a data URL at the first single or double quote character to avoid considering
-        characters that may come from the page content following an injected data URL.
-
-        Test: http/tests/security/xssAuditor/script-tag-with-source-data-url4.html
-
-        * html/parser/XSSAuditor.cpp:
-        (WebCore::truncateForSrcLikeAttribute):
-
-2016-09-22  Daniel Bates  <dabates@apple.com>
-
-        Remove more ENABLE(TEXT_AUTOSIZING) code
-        https://bugs.webkit.org/show_bug.cgi?id=162456
-
-        Reviewed by Simon Fraser.
-
-        * page/Settings.in:
-        * rendering/style/StyleVisualData.h:
-        (WebCore::StyleVisualData::operator==):
-
-2016-09-22  Jer Noble  <jer.noble@apple.com>
-
-        Fullscreen controls inoperative in WebKitLegacy web views
-        https://bugs.webkit.org/show_bug.cgi?id=162374
-
-        Reviewed by Eric Carlson.
-
-        After r205365, the WebPlaybackSessionInterfaceAVKit was now created after the
-        WebPlaybackSessionModel which fed it data, so it no longer received the burst of data upon
-        creation. Instead, it should have always asked the model for its cached data as soon as it
-        was connected to set up its inital state.
-
-        * platform/ios/WebPlaybackSessionInterfaceAVKit.mm:
-        (WebCore::WebPlaybackSessionInterfaceAVKit::WebPlaybackSessionInterfaceAVKit):
-
-2016-09-22  Chris Dumez  <cdumez@apple.com>
-
-        Fix serialization of HTML void elements when they have children
-        https://bugs.webkit.org/show_bug.cgi?id=162418
-
-        Reviewed by Darin Adler.
-
-        Fix serialization of HTML void elements when they have children.
-
-        Void elements (such as <hr>) cannot have a closing tag. When
-        encountering them, we would properly not serialize the void
-        element's children (if it had any). However, we would incorrectly
-        append an end tag (because the element technically has children).
-
-        Relevant specification:
-        - https://html.spec.whatwg.org/#html-fragment-serialisation-algorithm
-
-        In particular, this part:
-        ""
-        If current node is an area, base, basefont, bgsound, br, col, embed,
-        frame, hr, img, input, keygen, link, meta, param, source, track or wbr
-        element, then continue on to the next child node at this point.
-        ""
-
-        Firefox matches the specification.
-
-        No new tests, rebaselined existing test.
-
-        * editing/MarkupAccumulator.cpp:
-        (WebCore::MarkupAccumulator::serializeNodesWithNamespaces):
-
-2016-09-22  Don Olmstead  <don.olmstead@am.sony.com>
-
-        [WinCairo] Fix build after r206196
-
-        Reviewed by Alex Christensen.
-
-        * platform/text/win/LocaleWin.cpp:
-        (WebCore::LocaleWin::getLocaleInfoString):
-
-2016-09-22  Jonathan Bedard  <jbedard@apple.com>
-
-        Automatic Text Replacement Testing in WebKit2
-        https://bugs.webkit.org/show_bug.cgi?id=161919
-
-        Reviewed by Ryosuke Niwa.
-
-        Fixing existing tests:
-            editing/inserting/smart-link-when-caret-is-moved-before-URL.html
-            editing/inserting/typing-space-to-trigger-smart-link.html
-
-        Implemented test hooks for text replacement for WebKit2.
-        Note that spell checking has not been implemented, so most tests which use text replacement still fail.
-
-        * testing/Internals.cpp:
-        (WebCore::Internals::Internals): Reset TextChecker.
-        (WebCore::Internals::setContinuousSpellCheckingEnabled): Converted exception to an assert.
-        (WebCore::Internals::setAutomaticQuoteSubstitutionEnabled): Converted exception to an assert.
-        (WebCore::Internals::setAutomaticLinkDetectionEnabled): Converted exception to an assert.
-        (WebCore::Internals::setAutomaticDashSubstitutionEnabled): Converted exception to an assert.
-        (WebCore::Internals::setAutomaticTextReplacementEnabled): Converted exception to an assert.
-        (WebCore::Internals::setAutomaticSpellingCorrectionEnabled): Converted exception to an assert.
-        * testing/Internals.h: Removed exception argument for TextChecker setters.
-        * testing/Internals.idl: Ditto.
-
-2016-09-22  Nan Wang  <n_wang@apple.com>
-
-        AX: aria-pressed state not correctly conveyed to VoiceOver iOS on <button> unless role=button added
-        https://bugs.webkit.org/show_bug.cgi?id=162269
-
-        Reviewed by Chris Fleizach.
-
-        <button> with aria-pressed attribute has a toggle button role, however, we were looking for explicit
-        roles in order to convey the aria-press state. Since there's no spec requiring authors explicitly defining
-        default ARIA semantics in such case, I'm exposing the aria-pressed state for all valid toggle buttons.
-
-        Changes are covered in modified test.
-
-        * accessibility/AccessibilityNodeObject.cpp:
-        (WebCore::AccessibilityNodeObject::isPressed):
-
-2016-09-22  Anders Carlsson  <andersca@apple.com>
-
-        Attempt to fix the open source iOS build.
-
-        * platform/spi/cocoa/PassKitSPI.h:
-
-2016-09-22  Olivier Blin  <olivier.blin@softathome.com>
-
-        [GStreamer] Support a direct GPU-to-GPU copy of video textures to WebGL
-        https://bugs.webkit.org/show_bug.cgi?id=159928
-
-        Reviewed by Carlos Garcia Campos.
-
-        Copy of GStreamer video frames to WebGL textures was not accelerated.
-
-        WebGLRenderingContextBase::texImage2D(HTMLVideoElement) went
-        through a slow software paint() wrapping the video frame into
-        cairo surface (ImageGStreamer), downloading it to draw to the
-        image cache context, copying it again in software, and uploading
-        it back to an OpenGL texture.
-
-        This patch implements copyVideoTextureToPlatformTexture() for
-        the GStreamer media player backend, to do GPU-to-GPU copy, by
-        extracting code from nativeImageForCurrentTime().
-
-        Doing this also fixes bug #159621: red and blue colors were
-        swapped in video rendered through WebGL with GSTREAMER_GL enabled.
-
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
-        (WebCore::MediaPlayerPrivateGStreamerBase::prepareContextForCairoPaint):
-        (WebCore::MediaPlayerPrivateGStreamerBase::paintToCairoSurface):
-        (WebCore::MediaPlayerPrivateGStreamerBase::copyVideoTextureToPlatformTexture):
-        (WebCore::MediaPlayerPrivateGStreamerBase::nativeImageForCurrentTime):
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
-
-2016-09-22  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK] Rename DataObjectGtk as SelectionData
-        https://bugs.webkit.org/show_bug.cgi?id=162380
-
-        Reviewed by Žan Doberšek.
-
-        DataObjectGtk represents the data of a selection, like GtkSelectionData, used for clipboard and drag adn drop
-        operations. Data object is a very generic name, and the Gtk suffix sounds like if this is the GTK implementation
-        of a generic DataObject class.
-
-        * PlatformGTK.cmake:
-        * editing/gtk/EditorGtk.cpp:
-        (WebCore::createFragmentFromPasteboardData):
-        * page/gtk/DragControllerGtk.cpp:
-        * platform/DragData.h:
-        * platform/Pasteboard.h:
-        * platform/PasteboardStrategy.h:
-        (WebCore::PasteboardStrategy::~PasteboardStrategy): Deleted.
-        * platform/PlatformPasteboard.h:
-        * platform/gtk/DragDataGtk.cpp:
-        * platform/gtk/PasteboardGtk.cpp:
-        (WebCore::Pasteboard::createPrivate):
-        (WebCore::Pasteboard::createForDragAndDrop):
-        (WebCore::Pasteboard::Pasteboard):
-        (WebCore::Pasteboard::selectionData):
-        (WebCore::selectionDataTypeFromHTMLClipboardType):
-        (WebCore::Pasteboard::writeToClipboard):
-        (WebCore::Pasteboard::readFromClipboard):
-        (WebCore::Pasteboard::writeString):
-        (WebCore::Pasteboard::writePlainText):
-        (WebCore::Pasteboard::write):
-        (WebCore::Pasteboard::writePasteboard):
-        (WebCore::Pasteboard::clear):
-        (WebCore::Pasteboard::canSmartReplace):
-        (WebCore::Pasteboard::read):
-        (WebCore::Pasteboard::hasData):
-        (WebCore::Pasteboard::types):
-        (WebCore::Pasteboard::readString):
-        (WebCore::Pasteboard::readFilenames):
-        * platform/gtk/PasteboardHelper.cpp:
-        (WebCore::PasteboardHelper::getClipboardContents):
-        (WebCore::PasteboardHelper::targetListForSelectionData):
-        (WebCore::PasteboardHelper::fillSelectionData):
-        (WebCore::ClipboardSetData::ClipboardSetData):
-        (WebCore::getClipboardContentsCallback):
-        (WebCore::PasteboardHelper::writeClipboardContents):
-        (WebCore::clearClipboardContentsCallback): Deleted.
-        * platform/gtk/PasteboardHelper.h:
-        * platform/gtk/PlatformPasteboardGtk.cpp:
-        (WebCore::PlatformPasteboard::writeToClipboard):
-        (WebCore::PlatformPasteboard::readFromClipboard):
-        * platform/gtk/SelectionData.cpp: Renamed from Source/WebCore/platform/gtk/DataObjectGtk.cpp.
-        (WebCore::SelectionData::setText):
-        (WebCore::SelectionData::setURIList):
-        (WebCore::SelectionData::setURL):
-        (WebCore::SelectionData::urlLabel):
-        (WebCore::SelectionData::clearAllExceptFilenames):
-        (WebCore::SelectionData::clearAll):
-        * platform/gtk/SelectionData.h: Renamed from Source/WebCore/platform/gtk/DataObjectGtk.h.
-        (WebCore::SelectionData::create):
-        (WebCore::SelectionData::text):
-        (WebCore::SelectionData::hasText):
-        (WebCore::SelectionData::clearText):
-        (WebCore::SelectionData::setMarkup):
-        (WebCore::SelectionData::markup):
-        (WebCore::SelectionData::hasMarkup):
-        (WebCore::SelectionData::clearMarkup):
-        (WebCore::SelectionData::hasURL):
-        (WebCore::SelectionData::clearURL):
-        (WebCore::SelectionData::filenames):
-        (WebCore::SelectionData::hasURIList):
-        (WebCore::SelectionData::hasFilenames):
-        (WebCore::SelectionData::setImage):
-        (WebCore::SelectionData::image):
-        (WebCore::SelectionData::hasImage):
-        (WebCore::SelectionData::unknownTypeData):
-        (WebCore::SelectionData::unknownTypes):
-        (WebCore::SelectionData::hasUnknownTypeData):
-        (WebCore::SelectionData::canSmartReplace):
-        (WebCore::SelectionData::url): Deleted.
-        (WebCore::SelectionData::uriList): Deleted.
-        (WebCore::SelectionData::clearURIList): Deleted.
-        (WebCore::SelectionData::clearImage): Deleted.
-        (WebCore::SelectionData::setUnknownTypeData): Deleted.
-
-2016-09-22  Youenn Fablet  <youenn@apple.com>
-
-        CachedResourceRequest should store a SecurityOrigin
-        https://bugs.webkit.org/show_bug.cgi?id=162258
-
-        Reviewed by Sam Weinig.
-
-        Test: http/tests/local/script-crossorigin-loads-file-scheme.html
-
-        Passing SecurityOrigin from loader clients to CachedResource through CachedResourceRequest.
-        This ensures that specific origin properties like universal access are well preserved.
-
-        * loader/DocumentThreadableLoader.cpp:
-        (WebCore::DocumentThreadableLoader::loadRequest): Set origin to the request.
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::CachedResource): Setting origin from the request.
-        Computing CORS state based on that origin.
-        (WebCore::CachedResource::load): Removing origin computation.
-        (WebCore::CachedResource::loadFrom): Ditto.
-        (WebCore::CachedResource::computeOrigin): Deleted.
-        * loader/cache/CachedResource.h:
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest):
-        (WebCore::CachedResourceLoader::prepareFetch): Introduced to implement step 1 to 7 of https://fetch.spec.whatwg.org/#fetching.
-        (WebCore::CachedResourceLoader::requestResource):
-        * loader/cache/CachedResourceLoader.h:
-        * loader/cache/CachedResourceRequest.cpp:
-        (WebCore::CachedResourceRequest::setAsPotentiallyCrossOrigin): Storing origin.
-        * loader/cache/CachedResourceRequest.h:
-        (WebCore::CachedResourceRequest::setOrigin):
-        (WebCore::CachedResourceRequest::releaseOrigin):
-        (WebCore::CachedResourceRequest::origin):
-
-2016-09-22  Youenn Fablet  <youenn@apple.com>
-
-        Refactor ContentSecurityPolicy::allow* methods
-        https://bugs.webkit.org/show_bug.cgi?id=162335
-
-        Reviewed by Darin Adler.
-
-        No change of behavior.
-
-        Removing the second parameter of ContentSecurityPolicy::allow* methods.
-        When true, this parameter makes the methods return true.
-        This patch updates the callers of allow* methods to check for the parameter before making the call.
-
-        Made some refactoring to share more code between the various allow* methods.
-
-        * Modules/fetch/FetchLoader.cpp:
-        (WebCore::FetchLoader::start):
-        * Modules/websockets/WebSocket.cpp:
-        (WebCore::WebSocket::connect):
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::isSafeToLoadURL):
-        (WebCore::HTMLMediaElement::outOfBandTrackSources):
-        * html/HTMLPlugInImageElement.cpp:
-        (WebCore::HTMLPlugInImageElement::allowedToLoadPluginContent):
-        * html/HTMLTrackElement.cpp:
-        (WebCore::HTMLTrackElement::canLoadURL):
-        * loader/DocumentThreadableLoader.cpp:
-        (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
-        (WebCore::DocumentThreadableLoader::redirectReceived):
-        (WebCore::DocumentThreadableLoader::loadRequest):
-        (WebCore::DocumentThreadableLoader::isAllowedByContentSecurityPolicy):
-        * loader/DocumentThreadableLoader.h:
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::checkIfFormActionAllowedByCSP):
-        * loader/PolicyChecker.cpp:
-        (WebCore::isAllowedByContentSecurityPolicy):
-        * loader/SubframeLoader.cpp:
-        (WebCore::SubframeLoader::createJavaAppletWidget):
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy):
-        * page/EventSource.cpp:
-        (WebCore::EventSource::create):
-        * page/csp/ContentSecurityPolicy.cpp:
-        (WebCore::ContentSecurityPolicy::allowObjectFromSource):
-        (WebCore::ContentSecurityPolicy::allowChildFrameFromSource):
-        (WebCore::ContentSecurityPolicy::allowResourceFromSource):
-        (WebCore::ContentSecurityPolicy::allowChildContextFromSource):
-        (WebCore::ContentSecurityPolicy::allowScriptFromSource):
-        (WebCore::ContentSecurityPolicy::allowImageFromSource):
-        (WebCore::ContentSecurityPolicy::allowStyleFromSource):
-        (WebCore::ContentSecurityPolicy::allowFontFromSource):
-        (WebCore::ContentSecurityPolicy::allowMediaFromSource):
-        (WebCore::ContentSecurityPolicy::allowConnectToSource):
-        (WebCore::ContentSecurityPolicy::allowFormAction):
-        * page/csp/ContentSecurityPolicy.h:
-        * workers/AbstractWorker.cpp:
-        (WebCore::AbstractWorker::resolveURL):
-        * workers/WorkerGlobalScope.cpp:
-        (WebCore::WorkerGlobalScope::importScripts):
-        * xml/XMLHttpRequest.cpp:
-        (WebCore::XMLHttpRequest::initSend):
-
-2016-09-19  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Remove the x2 computation of row sizes with indefinite heights
-        https://bugs.webkit.org/show_bug.cgi?id=162150
-
-        Reviewed by Darin Adler.
-
-        On r192154, among other things, we added a second pass of the track sizing algorithm for
-        rows in order to properly compute row sizes when the height was indefinite. We did that in
-        order to have a symmetrical implementation for columns and rows, but unfortunatelly that was
-        not correct.
-
-        Apart from issuing incorrect results in some cases it created a huge performance issue in
-        the case of having nested grids because we were exponentially increasing the amount of
-        executions of the track sizing algorithm. The attached performance test shows a 200%
-        improvement with the patch (26 vs 80 runs/s).
-
-        Test: fast/css-grid-layout/nested-grid.html
-
-        * rendering/RenderGrid.cpp:
-        (WebCore::RenderGrid::layoutBlock):
-        (WebCore::RenderGrid::computeIntrinsicLogicalHeight):
-        (WebCore::RenderGrid::layoutGridItems):
-
-2016-09-22  Youenn Fablet  <youenn@apple.com>
-
-        Improve DeferredWrapper code
-        https://bugs.webkit.org/show_bug.cgi?id=161787
-
-        Reviewed by Darin Adler.
-
-        No change of behavior.
-
-        Renaming DeferredWrapper to DeferredPromise.
-        Adding create method that creates the underlying JSC::JSPromiseDeferred in non-worker environments.
-        Updated create method to take references.
-        Introducing domWindow helper accessor into JSDOMObject to ease creation of promise in non-worker environments.
-        Doing some minor clean up (renaming of m_wrapper to m_promiseDeferred, accessor change).
-
-        * Modules/applepay/ApplePaySession.cpp:
-        (WebCore::ApplePaySession::canMakePaymentsWithActiveCard):
-        * Modules/applepay/ApplePaySession.h:
-        * Modules/fetch/DOMWindowFetch.cpp:
-        (WebCore::DOMWindowFetch::fetch):
-        * Modules/fetch/DOMWindowFetch.h: Updated to take a DeferredPromise to make it consistent with WorkerGlobalScopeFetch.
-        * Modules/fetch/FetchBody.cpp:
-        (WebCore::FetchBody::arrayBuffer):
-        (WebCore::FetchBody::blob):
-        (WebCore::FetchBody::json):
-        (WebCore::FetchBody::text):
-        (WebCore::FetchBody::consume):
-        (WebCore::FetchBody::consumeArrayBuffer):
-        (WebCore::FetchBody::consumeArrayBufferView):
-        (WebCore::FetchBody::consumeText):
-        (WebCore::FetchBody::consumeBlob):
-        * Modules/fetch/FetchBody.h:
-        (WebCore::FetchBody::formData):
-        * Modules/fetch/FetchBodyConsumer.cpp:
-        (WebCore::FetchBodyConsumer::resolveWithData):
-        (WebCore::FetchBodyConsumer::resolve):
-        * Modules/fetch/FetchBodyConsumer.h:
-        * Modules/fetch/FetchBodyOwner.cpp:
-        (WebCore::FetchBodyOwner::arrayBuffer):
-        (WebCore::FetchBodyOwner::blob):
-        (WebCore::FetchBodyOwner::formData):
-        (WebCore::FetchBodyOwner::json):
-        (WebCore::FetchBodyOwner::text):
-        * Modules/fetch/FetchBodyOwner.h:
-        * Modules/fetch/FetchResponse.cpp:
-        (WebCore::FetchResponse::consume):
-        (WebCore::FetchResponse::finishConsumingStream):
-        * Modules/fetch/FetchResponse.h:
-        * Modules/fetch/WorkerGlobalScopeFetch.cpp:
-        (WebCore::WorkerGlobalScopeFetch::fetch):
-        * Modules/fetch/WorkerGlobalScopeFetch.h:
-        * bindings/js/JSCustomElementRegistryCustom.cpp:
-        (WebCore::whenDefinedPromise):
-        (WebCore::JSCustomElementRegistry::whenDefined):
-        * bindings/js/JSDOMGlobalObject.cpp:
-        (WebCore::JSDOMGlobalObject::visitChildren):
-        * bindings/js/JSDOMGlobalObject.h:
-        * bindings/js/JSDOMPromise.cpp:
-        (WebCore::DOMDeferredPromise::DOMDeferredPromise):
-        (WebCore::DOMDeferredPromise::~DOMDeferredPromise):
-        (WebCore::DOMDeferredPromise::clear):
-        (WebCore::DOMDeferredPromise::contextDestroyed):
-        (WebCore::DOMDeferredPromise::promise):
-        (WebCore::DOMDeferredPromise::callFunction):
-        (WebCore::DOMDeferredPromise::reject):
-        (WebCore::rejectPromiseWithExceptionIfAny):
-        (WebCore::fulfillPromiseWithJSON):
-        (WebCore::fulfillPromiseWithArrayBuffer):
-        (WebCore::DeferredWrapper::DeferredWrapper): Deleted.
-        (WebCore::DeferredWrapper::~DeferredWrapper): Deleted.
-        (WebCore::DeferredWrapper::clear): Deleted.
-        (WebCore::DeferredWrapper::contextDestroyed): Deleted.
-        (WebCore::DeferredWrapper::promise): Deleted.
-        (WebCore::DeferredWrapper::callFunction): Deleted.
-        (WebCore::DeferredWrapper::reject): Deleted.
-        * bindings/js/JSDOMPromise.h:
-        (WebCore::DOMDeferredPromise::create):
-        (WebCore::callPromiseFunction):
-        (WebCore::DOMPromise::DOMPromise):
-        (WebCore::DOMPromise::deferredPromise):
-        (WebCore::DOMDeferredPromise::resolveWithValue):
-        (WebCore::DOMDeferredPromise::resolveWithNewlyCreated):
-        (WebCore::DOMDeferredPromise::rejectWithValue):
-        (WebCore::DOMDeferredPromise::resolve):
-        (WebCore::DOMDeferredPromise::reject):
-        (WebCore::DeferredWrapper::create): Deleted.
-        (WebCore::DOMPromise::deferredWrapper): Deleted.
-        (WebCore::DeferredWrapper::resolveWithValue): Deleted.
-        (WebCore::DeferredWrapper::resolveWithNewlyCreated): Deleted.
-        (WebCore::DeferredWrapper::rejectWithValue): Deleted.
-        (WebCore::DeferredWrapper::resolve): Deleted.
-        (WebCore::DeferredWrapper::reject): Deleted.
-        * bindings/js/JSDOMWrapper.cpp: Introducing domWindow() accessor.
-        * bindings/js/JSDOMWrapper.h:
-        * bindings/js/JSFontFaceCustom.cpp:
-        (WebCore::JSFontFace::loaded):
-        * bindings/js/JSFontFaceSetCustom.cpp:
-        (WebCore::JSFontFaceSet::ready):
-        * bindings/js/JSMediaDevicesCustom.cpp:
-        (WebCore::JSMediaDevices::getUserMedia):
-        * bindings/js/JSMediaStreamTrackCustom.cpp:
-        (WebCore::JSMediaStreamTrack::applyConstraints):
-        * bindings/js/JSReadableStreamSourceCustom.cpp:
-        (WebCore::JSReadableStreamSource::start):
-        * bindings/js/JSWebKitSubtleCryptoCustom.cpp:
-        (WebCore::JSWebKitSubtleCrypto::encrypt):
-        (WebCore::JSWebKitSubtleCrypto::decrypt):
-        (WebCore::JSWebKitSubtleCrypto::sign):
-        (WebCore::JSWebKitSubtleCrypto::verify):
-        (WebCore::JSWebKitSubtleCrypto::digest):
-        (WebCore::JSWebKitSubtleCrypto::generateKey):
-        (WebCore::JSWebKitSubtleCrypto::importKey):
-        (WebCore::JSWebKitSubtleCrypto::exportKey):
-        (WebCore::JSWebKitSubtleCrypto::wrapKey):
-        (WebCore::JSWebKitSubtleCrypto::unwrapKey):
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateImplementation):
-        (GenerateReturnParameters):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithExceptionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionPromise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithExceptionPromise):
-        * dom/CustomElementRegistry.h:
-        (WebCore::CustomElementRegistry::promiseMap):
-
-2016-09-21  Alexey Proskuryakov  <ap@apple.com>
-
-        Rolling out r206244, as it caused flaky crashes on tests.
-        Was: Correct uses of 'safeCast'
-
-        * loader/cache/MemoryCache.cpp:
-        (WebCore::MemoryCache::adjustSize):
-        * platform/graphics/BitmapImage.cpp:
-        (WebCore::BitmapImage::destroyMetadataAndNotify):
-        (WebCore::BitmapImage::cacheFrame):
-        (WebCore::BitmapImage::didDecodeProperties):
-        (WebCore::BitmapImage::dataChanged):
-        (WebCore::BitmapImage::frameImageAtIndex):
-        * platform/graphics/cg/PDFDocumentImage.cpp:
-        (WebCore::PDFDocumentImage::decodedSizeChanged):
-        (WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
-
-2016-09-21  Chris Dumez  <cdumez@apple.com>
-
-        Fix serialization of bgsound, keygen and track elements
-        https://bugs.webkit.org/show_bug.cgi?id=162353
-
-        Reviewed by Darin Adler.
-
-        Fix serialization of keygen and track elements to match the specification:
-        - https://html.spec.whatwg.org/#serialising-html-fragments
-
-        They are not supposed to have an end tag. Firefox and Chrome agree with
-        the specification.
-
-        No new tests, rebaselined existing tests.
-
-        * editing/MarkupAccumulator.cpp:
-        (WebCore::MarkupAccumulator::elementCannotHaveEndTag):
-
-2016-09-21  Keith Miller  <keith_miller@apple.com>
-
-        Fix build for future versions of Clang.
-        https://bugs.webkit.org/show_bug.cgi?id=162346
-
-        Reviewed by Filip Pizlo.
-
-        This fixes issues with the WebCore build where inline
-        template-class function definitions are marked as exported. This
-        genereates a weak external symobl that our build does not like.
-
-        * Configurations/WebCore.unexp:
-        * dom/Exception.h:
-        * page/Frame.h:
-        * platform/cocoa/WebPlaybackSessionModelMediaElement.h:
-        * platform/cocoa/WebVideoFullscreenModelVideoElement.h:
-        (WebCore::WebVideoFullscreenModelVideoElement::videoElement):
-        * platform/graphics/Color.h:
-        * platform/graphics/transforms/TransformationMatrix.h:
-        (WebCore::TransformationMatrix::rotate):
-        * platform/mac/WebVideoFullscreenInterfaceMac.h:
-        * platform/network/ParsedContentRange.h:
-        (WebCore::ParsedContentRange::ParsedContentRange):
-        (WebCore::ParsedContentRange::isValid):
-        * platform/network/ResourceResponseBase.h:
-        (WebCore::ResourceResponseBase::certificateInfo):
-        * platform/text/TextStream.h:
-        (WebCore::TextStream::increaseIndent):
-        (WebCore::TextStream::decreaseIndent):
-
-2016-09-20  Brent Fulgham  <bfulgham@apple.com>
-
-        Correct uses of 'safeCast'
-        https://bugs.webkit.org/show_bug.cgi?id=162301
-        <rdar://problem/28343658>
-
-        Reviewed by Antti Koivisto.
-
-        A number of integer calculations in BitmapImage and PDFDocumentImage
-        are not properly checked for overflow. Correct this.
-
-        Tested by fast/images/large-size-image-crash.html
-
-        * loader/cache/MemoryCache.cpp:
-        (WebCore::MemoryCache::adjustSize): RELEASE_ASSERT on overflow.
-        * platform/graphics/BitmapImage.cpp:
-        (WebCore::BitmapImage::destroyMetadataAndNotify):
-        (WebCore::BitmapImage::cacheFrame):
-        (WebCore::BitmapImage::didDecodeProperties):
-        (WebCore::BitmapImage::dataChanged):
-        (WebCore::BitmapImage::ensureFrameAtIndexIsCached):
-        (WebCore::BitmapImage::frameImageAtIndex):
-        * platform/graphics/BitmapImage.h:
-        * platform/graphics/cg/PDFDocumentImage.cpp:
-        (WebCore::PDFDocumentImage::decodedSizeChanged):
-        (WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
-
-2016-09-21  Chris Dumez  <cdumez@apple.com>
-
-        Setting HTMLMeterElement's attributes to non-finite values throws wrong exception type
-        https://bugs.webkit.org/show_bug.cgi?id=162364
-
-        Reviewed by Darin Adler.
-
-        Setting HTMLMeterElement's attributes to non-finite values throws wrong exception type.
-        It should throw a TypeError because their type is 'double' but we throw a
-        NOT_SUPPORTED_ERR.
-
-        Specification:
-        - https://html.spec.whatwg.org/#htmlmeterelement
-
-        Firefox and Chrome agree with the specification.
-
-        No new tests, updated existing test.
-
-        * html/HTMLMeterElement.cpp:
-        (WebCore::HTMLMeterElement::setMin):
-        (WebCore::HTMLMeterElement::setMax):
-        (WebCore::HTMLMeterElement::setValue):
-        (WebCore::HTMLMeterElement::setLow):
-        (WebCore::HTMLMeterElement::setHigh):
-        (WebCore::HTMLMeterElement::setOptimum):
-        * html/HTMLMeterElement.h:
-        * html/HTMLMeterElement.idl:
-
-2016-09-21  Anders Carlsson  <andersca@apple.com>
-
-        Fix open source build.
-
-        * platform/spi/cocoa/PassKitSPI.h:
-
-2016-09-21  Chris Dumez  <cdumez@apple.com>
-
-        Fix serialization of HTML Element attributes
-        https://bugs.webkit.org/show_bug.cgi?id=162356
-
-        Reviewed by Alex Christensen.
-
-        Fix serialization of HTML Element attributes to align with:
-        - https://html.spec.whatwg.org/#html-fragment-serialisation-algorithm
-        - https://html.spec.whatwg.org/#escapingString
-
-        In particular, we should not escape '<' and '>'.
-
-        Firefox and Chrome both match the specification.
-
-        Note that we keep escaping '<' and '>' for Element attributes in the
-        context of XML serialization, as per:
-        - https://w3c.github.io/DOM-Parsing/#dfn-serializing-an-attribute-value
-
-        No new tests, rebaselined existing test.
-
-        * editing/MarkupAccumulator.h:
-
-2016-09-21  Anders Carlsson  <andersca@apple.com>
-
-        support openPaymentSetup API on ApplePaySession object
-        https://bugs.webkit.org/show_bug.cgi?id=162357
-        rdar://problem/26776939
-
-        Reviewed by Tim Horton.
-
-        * Modules/applepay/ApplePaySession.cpp:
-        (WebCore::ApplePaySession::openPaymentSetup):
-        Perform security checks and then call into the PaymentCoordinator. In its completion handler, we resolve the promise.
-
-        * Modules/applepay/ApplePaySession.h:
-        Add new members.
-
-        * Modules/applepay/ApplePaySession.idl:
-        Add openPaymentSetup declaration.
-
-        * Modules/applepay/PaymentCoordinator.cpp:
-        (WebCore::PaymentCoordinator::openPaymentSetup):
-        Call through to the clients.
-
-        * Modules/applepay/PaymentCoordinator.h:
-        * Modules/applepay/PaymentCoordinatorClient.h:
-        Add new members.
-
-        * loader/EmptyClients.cpp:
-        Add new stub.
-
-        * platform/spi/cocoa/PassKitSPI.h:
-        Add SPI declaration.
-
-2016-09-21  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r206222 and r206227.
-        https://bugs.webkit.org/show_bug.cgi?id=162361
-
-        "broke the windows build" (Requested by keith_mi_ on #webkit).
-
-        Reverted changesets:
-
-        "Fix build for future versions of Clang."
-        https://bugs.webkit.org/show_bug.cgi?id=162346
-        http://trac.webkit.org/changeset/206222
-
-        "Attempt to fix windows build after r206222."
-        http://trac.webkit.org/changeset/206227
-
-2016-09-21  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should match URL::parse when parsing data urls with slashes in them
-        https://bugs.webkit.org/show_bug.cgi?id=162352
-
-        Reviewed by Darin Adler.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-21  Per Arne Vollan  <pvollan@apple.com>
-
-        [Win] Null pointer crash under WebCore::CACFLayerTreeHost::create().
-        https://bugs.webkit.org/show_bug.cgi?id=162266
-        <rdar://problem/28345073>
-
-        Reviewed by Brent Fulgham.
-
-        Add null pointer check.
-
-        * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
-        (WebCore::CACFLayerTreeHost::create):
-
-2016-09-21  Chris Dumez  <cdumez@apple.com>
-
-        Fix enumeration of properties cross origin
-        https://bugs.webkit.org/show_bug.cgi?id=162328
-
-        Reviewed by Darin Adler.
-
-        All cross origin properties for Window / Location are supposed to be not enumerable:
-        - https://html.spec.whatwg.org/#crossorigingetownpropertyhelper-(-o,-p-)
-
-        Therefore, there should be no properties to iterate on for cross origin Window /
-        Location objects.
-
-        No new tests, rebaselined existing test.
-
-        * bindings/js/JSDOMWindowCustom.cpp:
-        (WebCore::JSDOMWindow::getOwnPropertyNames):
-        * bindings/js/JSLocationCustom.cpp:
-        (WebCore::JSLocation::getOwnPropertyNames):
-
-2016-09-21  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should fail when parsing invalid relative URLs with no schemes
-        https://bugs.webkit.org/show_bug.cgi?id=162355
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::copyASCIIStringUntil):
-        When copying from a null String, is8Bit dereferences a null pointer.  We don't want to do that.
-        (WebCore::URLParser::parse):
-        What the spec calls a "null" URL matches !url.isValid(), not url.isNull().
-        The former reflects whether the parsing succeeded, 
-        the latter whether the contained String (which could be an invalid URL) is null.
-
-2016-09-21  Antti Koivisto  <antti@apple.com>
-
-        Document::styleResolverChanged simplification
-        https://bugs.webkit.org/show_bug.cgi?id=162347
-
-        Reviewed by Anders Carlsson.
-
-        * dom/Document.cpp:
-        (WebCore::Document::implicitClose):
-        (WebCore::Document::setParsing):
-        (WebCore::Document::write):
-        (WebCore::Document::styleResolverChanged):
-
-            - Remove unncessary AnimationUpdateBlock, it is created by recalcStyle.
-            - Remove explicit setNeedsLayoutAndPrefWidthsRecalc/scheduleRelayout calls, style resolution
-              invalidates those as needed.
-            - Remove evaluateMediaQueryList call, that is done on layout as needed.
-            - Remove the ancient INSTRUMENT_LAYOUT_SCHEDULING and the related printfs.
-
-2016-09-21  Keith Miller  <keith_miller@apple.com>
-
-        Attempt to fix windows build after r206222.
-
-        * page/MainFrame.h:
-        (WebCore::Frame::isMainFrame):
-
-2016-09-21  Keith Rollin  <krollin@apple.com>
-
-        New DocumentLoader logging causes crashes
-        https://bugs.webkit.org/show_bug.cgi?id=162348
-        <rdar://problem/28404744>
-
-        Reviewed by Chris Dumez
-
-        Check for NULL m_frame before using it.
-
-        No new tests -- no tests for logging, though this issue was found by
-        contentfiltering/block-after-will-send-request-then-allow-unblock.html
-
-        * loader/DocumentLoader.cpp:
-        (WebCore::DocumentLoader::startLoadingMainResource):
-
-2016-09-21  Alex Christensen  <achristensen@webkit.org>
-
-        Optimize URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162338
-
-        Reviewed by Tim Horton.
-
-        No change in behavior. Just a marginal performance improvement.
-
-        * platform/URLParser.cpp:
-        (WebCore::isValidSchemeCharacter):
-        Added to reduce branches when parsing the scheme of a URL.  Now there is a table lookup instead of many range checks.
-        (WebCore::URLParser::parse):
-        Use appendVector, which uses memcpy.
-        (WebCore::URLParser::parseHostAndPort):
-        If we know that we are parsing the serialized output of a valid URL, 
-        we do not need to convert host characters to lower case.
-        They are already lower case.
-
-2016-09-21  Keith Miller  <keith_miller@apple.com>
-
-        Fix build for future versions of Clang.
-        https://bugs.webkit.org/show_bug.cgi?id=162346
-
-        Reviewed by Filip Pizlo.
-
-        This fixes issues with the WebCore build where inline
-        template-class function definitions are marked as exported. This
-        genereates a weak external symobl that our build does not like.
-
-        * Configurations/WebCore.unexp:
-        * dom/Exception.h:
-        * page/Frame.h:
-        * platform/cocoa/WebPlaybackSessionModelMediaElement.h:
-        * platform/cocoa/WebVideoFullscreenModelVideoElement.h:
-        (WebCore::WebVideoFullscreenModelVideoElement::videoElement):
-        * platform/graphics/Color.h:
-        * platform/graphics/transforms/TransformationMatrix.h:
-        (WebCore::TransformationMatrix::rotate):
-        * platform/mac/WebVideoFullscreenInterfaceMac.h:
-        * platform/network/ParsedContentRange.h:
-        (WebCore::ParsedContentRange::ParsedContentRange):
-        (WebCore::ParsedContentRange::isValid):
-        * platform/network/ResourceResponseBase.h:
-        (WebCore::ResourceResponseBase::certificateInfo):
-        * platform/text/TextStream.h:
-        (WebCore::TextStream::increaseIndent):
-        (WebCore::TextStream::decreaseIndent):
-
-2016-09-21  Chris Dumez  <cdumez@apple.com>
-
-        Object.getOwnPropertyDescriptor() does not work correctly cross origin
-        https://bugs.webkit.org/show_bug.cgi?id=162311
-
-        Reviewed by Gavin Barraclough.
-
-        Object.getOwnPropertyDescriptor() does not work correctly cross origin. In particular:
-        - We return value descriptors for attributes instead of getter/setter descriptors
-        - attributes / operations are wrongly marked as non-configurable
-
-        Corresponding specification:
-        - https://html.spec.whatwg.org/#crossoriginproperties-(-o-)
-        - https://html.spec.whatwg.org/#crossorigingetownpropertyhelper-(-o,-p-)
-
-        Test: http/tests/security/cross-origin-descriptors.html
-
-        * bindings/js/JSDOMWindowCustom.cpp:
-        (WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
-        * bindings/js/JSLocationCustom.cpp:
-        (WebCore::JSLocation::getOwnPropertySlotDelegate):
-
-2016-09-21  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Correctly parse URLs that are just nonspecialscheme:/
-        https://bugs.webkit.org/show_bug.cgi?id=162340
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        r206162 wasn't quite right.  If a url is just nonspecialscheme:/ then the path should indeed be /
-
-2016-09-21  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: correctly parse relative URLs that are just one character
-        https://bugs.webkit.org/show_bug.cgi?id=162344
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-21  Daniel Bates  <dabates@apple.com>
-
-        REGRESSION (r201090): Setting style.webkitTextSizeAdjust does not change text change on iPad
-        https://bugs.webkit.org/show_bug.cgi?id=162227
-        <rdar://problem/27201529>
-
-        Reviewed by Simon Fraser.
-
-        The CSS property -webkit-text-size-adjust should be respected on all iOS devices. Following
-        r201090 we respect it only on iPhone and in iPhone-apps run on iPad.
-
-        Tests: fast/text-autosizing/ios/ipad/programmatic-text-size-adjust.html
-               fast/text-autosizing/ios/ipad/text-size-adjust-inline-style.html
-               fast/text-autosizing/ios/programmatic-text-size-adjust.html
-               fast/text-autosizing/ios/text-size-adjust-inline-style.html
-               fast/text-autosizing/text-size-adjust-inline-style.html
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::isValidKeywordPropertyAndValue): Remove unused code to validate -webkit-text-size-adjust.
-        This code is never used because -webkit-text-size-adjust is a value property (since it accepts a
-        <percentage> as a value and CSSParserFastPaths::isKeywordPropertyID(CSSPropertyWebkitTextSizeAdjust)
-        returns false). That is, it is not a keyword property.
-        (WebCore::CSSParser::parseValue): Always enable the -webkit-text-size-adjust CSS property when
-        building for iOS regardless of whether Settings:textAutosizingEnabled() is enabled.
-
-2016-09-21  Miguel Gomez  <magomez@igalia.com>
-
-        [GTK] Build fails with GSTREAMER_GL enabled
-        https://bugs.webkit.org/show_bug.cgi?id=162337
-
-        Reviewed by Michael Catanzaro.
-
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
-        (WebCore::MediaPlayerPrivateGStreamerBase::ensureGstGLContext): Remove uneeded const.
-
-2016-09-21  Jer Noble  <jer.noble@apple.com>
-
-        REGRESSION(r206127): ASSERTION FAILED: !isClosed() in WebCore::MediaSource::detachFromElement
-        https://bugs.webkit.org/show_bug.cgi?id=162307
-
-        Reviewed by Eric Carlson.
-
-        The test is crashing when the ScriptExecutionContext is calling stop() on the media element before
-        it's attached MediaSource has been open()ed, which is a valid state. Removing this ASSERT().
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::detachFromElement):
-
-2016-09-19  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-activesourcebuffers.html
-        https://bugs.webkit.org/show_bug.cgi?id=162257
-
-        Reviewed by Eric Carlson.
-
-        Some of the conditions in the track changed methods were reversed, and all failed to schedule
-        a change event.
-
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::videoTrackSelectedChanged):
-        (WebCore::SourceBuffer::audioTrackEnabledChanged):
-        (WebCore::SourceBuffer::textTrackModeChanged):
-
-2016-09-20  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/URL-createObjectURL-null.html
-        https://bugs.webkit.org/show_bug.cgi?id=162299
-
-        Reviewed by Eric Carlson.
-
-        URL.createObjectURL() should not take an optional parameter (nor return an optional String). 
-        (Ref: https://w3c.github.io/FileAPI/#dfn-createObjectURL)
-
-        * Modules/mediasource/DOMURLMediaSource.cpp:
-        (WebCore::DOMURLMediaSource::createObjectURL):
-        * Modules/mediasource/DOMURLMediaSource.h:
-        * Modules/mediasource/DOMURLMediaSource.idl:
-        * Modules/mediasource/MediaSourceRegistry.cpp:
-        (WebCore::MediaSourceRegistry::registerURL):
-        * Modules/mediasource/MediaSourceRegistry.h:
-        * Modules/mediastream/DOMURLMediaStream.cpp:
-        (WebCore::DOMURLMediaStream::createObjectURL):
-        * Modules/mediastream/DOMURLMediaStream.h:
-        * Modules/mediastream/DOMURLMediaStream.idl:
-        * Modules/mediastream/MediaStreamRegistry.cpp:
-        (WebCore::MediaStreamRegistry::registerURL):
-        * Modules/mediastream/MediaStreamRegistry.h:
-        * fileapi/Blob.cpp:
-        (WebCore::BlobURLRegistry::registerURL):
-        * html/DOMURL.cpp:
-        (WebCore::DOMURL::createObjectURL):
-        (WebCore::DOMURL::createPublicURL):
-        * html/DOMURL.h:
-        * html/DOMURL.idl:
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::setSrcObject):
-        * html/PublicURLManager.cpp:
-        (WebCore::PublicURLManager::registerURL):
-        * html/PublicURLManager.h:
-        * html/URLRegistry.h:
-
-2016-09-21  Youenn Fablet  <youenn@apple.com>
-
-        [Fetch] Align Accept header default values with fetch spec
-        https://bugs.webkit.org/show_bug.cgi?id=162260
-
-        Reviewed by Sam Weinig.
-
-        Covered by existing and updated tests.
-
-        To start implementing step 1 to 7 of fetch algorithm, this patch updates Accept header handling.
-
-        Default values are set according the spec based on resource type.
-        Some resource types are not defined in the spec and we keep using existing values.
-
-        We check if Accept header is already present in the request. If that is the case, no change is done to that header.
-
-        If the Accept header is not set, the default value '*/*' is used.
-        An Accept header is therefore always set at CachedResourceLoader level.
-
-        * loader/cache/CachedCSSStyleSheet.cpp:
-        (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Removing accept initialization.
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::load): Removing accept header setting.
-        * loader/cache/CachedResource.h:
-        (WebCore::CachedResource::accept): Deleted.
-        (WebCore::CachedResource::setAccept): Deleted.
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::acceptHeaderValueFromType): helper routine merging fetch spec and existing WebKit accept values.
-        (WebCore::CachedResourceLoader::prepareFetch): Should implement step 1 to 7 of https://fetch.spec.whatwg.org/#fetching.
-        (WebCore::CachedResourceLoader::requestResource): Making use of prepareFetch.
-        * loader/cache/CachedResourceLoader.h:
-        * loader/cache/CachedSVGDocument.cpp:
-        (WebCore::CachedSVGDocument::CachedSVGDocument): Removing accept initialization.
-        * loader/cache/CachedScript.cpp:
-        (WebCore::CachedScript::CachedScript): Removing accept initialization.
-        * loader/cache/CachedXSLStyleSheet.cpp:
-        (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet): Removing accept initialization.
-        * platform/network/ResourceRequestBase.cpp:
-        (WebCore::ResourceRequestBase::hasHTTPHeader): Introduced to check for header presence.
-        * platform/network/ResourceRequestBase.h:
-
-2016-09-21  Jeremy Huddleston Sequoia  <jeremyhu@apple.com>
-
-        [GTK] Fix build failure of ScrollbarThemeGtk with libc++
-        https://bugs.webkit.org/show_bug.cgi?id=162302
-
-        Reviewed by Carlos Garcia Campos.
-
-        * platform/gtk/ScrollbarThemeGtk.cpp:
-        (WebCore::ScrollbarThemeGtk::paint): Add missing #include <cstdlib>
-
-2016-09-21  Philippe Normand  <pnormand@igalia.com>
-
-        [OpenWebRTC] Miscellaneous fixes
-        https://bugs.webkit.org/show_bug.cgi?id=162332
-
-        Reviewed by Alejandro G. Castro.
-
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp:
-        (WebCore::MediaPlayerPrivateGStreamerOwr::currentTime): Improved logging.
-        (WebCore::MediaPlayerPrivateGStreamerOwr::load): Ditto.
-        (WebCore::MediaPlayerPrivateGStreamerOwr::loadingFailed): Ditto.
-        (WebCore::MediaPlayerPrivateGStreamerOwr::createGSTAudioSinkBin):
-        Pre-roll the autoaudiosink, fetch the underlying platform audio
-        sink and pass it to the OpenWebRTC renderer.
-        (WebCore::MediaPlayerPrivateGStreamerOwr::maybeHandleChangeMutedState): Improved logging.
-        (WebCore::MediaPlayerPrivateGStreamerOwr::setSize): Don't configure invalid video renderer.
-        * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:
-        (WebCore::RealtimeMediaSourceCenterOwr::createMediaStream): Fix copy-paste error.
-
-2016-09-21  Youenn Fablet  <youenn@apple.com>
-
-        Refactor CachedResourceLoader::canRequest
-        https://bugs.webkit.org/show_bug.cgi?id=162144
-
-        Reviewed by Darin Adler.
-
-        Covered by existing tests.
-
-        Simplifying CachedResourceLoader::canRequest by doing:
-        - CSP checks in another method
-        - Removing Same-Origin type-specific checks by setting FetchOptions::Mode appropriately in resource loader clients
-        - Moving script specific check in ScriptElement
-
-        Note that the last check may affect the loading behavior in the case scripts are enabled when starting the load
-        of a script, but gets disabled before receiving a redirection for the script load.
-
-        * dom/ProcessingInstruction.cpp:
-        (WebCore::ProcessingInstruction::checkStyleSheet): Setting XSLT stylesheet fetch mode to SameOrigin.
-        * dom/ScriptElement.cpp:
-        (WebCore::ScriptElement::requestScriptWithCache): Returning early if scripts are disabled.
-        * loader/CrossOriginPreflightChecker.cpp:
-        (WebCore::CrossOriginPreflightChecker::startPreflight): Bypassing CSP checks.
-        * loader/DocumentLoader.cpp:
-        (WebCore::DocumentLoader::startLoadingMainResource): Bypassing CSP checks as CachedResourceLoader was not
-        checking them for MainResource.
-        * loader/DocumentThreadableLoader.cpp:
-        (WebCore::DocumentThreadableLoader::loadRequest): Ditto.
-        * loader/LinkLoader.cpp:
-        (WebCore::LinkLoader::preloadIfNeeded): Using new CachedResourceRequest constructor to enable moving the ResourceRequest.
-        (WebCore::LinkLoader::loadLink): Skipping CSP checks for link prefetch/subresources as CachedResourceLoader was
-        not checking them for Link Prefetch and Subresource types.
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy): Helper routine to check for CSP.
-        (WebCore::CachedResourceLoader::canRequest): Making use of introduced helper routine.
-        Simplified same origin check as all requests should have their options set.
-        * loader/cache/CachedResourceLoader.h:
-        * loader/cache/CachedResourceRequest.cpp:
-        (WebCore::CachedResourceRequest::CachedResourceRequest): More efficient constructor.
-        * loader/cache/CachedResourceRequest.h:
-        * loader/cache/CachedSVGDocumentReference.cpp:
-        (WebCore::CachedSVGDocumentReference::load): Setting fetch mode to SameOrigin.
-        * svg/SVGUseElement.cpp:
-        (WebCore::SVGUseElement::updateExternalDocument): Ditto.
-        * xml/XSLImportRule.cpp:
-        (WebCore::XSLImportRule::loadSheet): Ditto.
-
-2016-09-21  Miguel Gomez  <magomez@igalia.com>
-
-        Build fails with GSTREAMER_GL when both desktop GL and GLES2 are enabled in gst-plugins-bad
-        https://bugs.webkit.org/show_bug.cgi?id=159562
-
-        Reviewed by Philippe Normand.
-
-        Refactor video orientation code so including TextureMapperGL in MediaPlayerPrivateGStreamerBase.h
-        is not necessary.
-
-        Covered by existent tests.
-
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
-        (WebCore::texMapFlagFromOrientation):
-        (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
-        (WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor):
-        (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper):
-        (WebCore::MediaPlayerPrivateGStreamerBase::setVideoSourceOrientation):
-        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
-
-2016-09-21  Jeremy Huddleston Sequoia  <jeremyhu@apple.com>
-
-        [GTK] Fix build failure in clipboard support
-        https://bugs.webkit.org/show_bug.cgi?id=162261
-
-        Reviewed by Carlos Garcia Campos.
-
-        * platform/PlatformPasteboard.h: Add missing #include <functional>
-        * platform/gtk/PasteboardHelper.h: Add missing #include <functional>
-
-2016-09-20  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
-
-        VariadicHelper::Result should not include constructor to initialize members
-        https://bugs.webkit.org/show_bug.cgi?id=162298
-
-        Reviewed by Darin Adler.
-
-        Remove the constructor since member-wise initialization does the same thing.
-
-        No new tests required.
-
-        * bindings/js/JSDOMBinding.h: Remove useless constructor.
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Optimize URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162105
-
-        Reviewed by Geoffrey Garen.
-
-        Covered by new API tests.
-        This is about a 5% speedup on my URLParser benchmark.
-
-        * platform/URLParser.cpp:
-        (WebCore::percentEncodeByte):
-        (WebCore::utf8PercentEncode):
-        (WebCore::utf8QueryEncode):
-        (WebCore::encodeQuery):
-        (WebCore::URLParser::parse):
-        (WebCore::serializeURLEncodedForm):
-        (WebCore::percentEncode): Deleted.
-        (WebCore::utf8PercentEncodeQuery): Deleted.
-
-2016-09-20  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK] Clean up DataObjectGtk handling
-        https://bugs.webkit.org/show_bug.cgi?id=162267
-
-        Reviewed by Michael Catanzaro.
-
-        * platform/Pasteboard.h: Use Ref instead of RefPtr for DataObjectGtk member.
-        * platform/PasteboardStrategy.h: Pass a const reference to DataObjectGtk in write method and return a Ref from read.
-        * platform/PlatformPasteboard.h: Ditto.
-        * platform/gtk/DataObjectGtk.h:
-        (WebCore::DataObjectGtk::image): Use Image instead of GdkPixbuf.
-        (WebCore::DataObjectGtk::setImage):
-        * platform/gtk/PasteboardGtk.cpp:
-        (WebCore::Pasteboard::createForDragAndDrop): Use a reference instead of a pointer.
-        (WebCore::Pasteboard::Pasteboard): Receives a reference, so we can also remove the ASSERT.
-        (WebCore::Pasteboard::dataObject):
-        (WebCore::Pasteboard::writeToClipboard): Remove the ShouldIncludeSmartPaste parameter, callers should also update
-        canSmartPaste property of DataObjectGtk before calling this.
-        (WebCore::Pasteboard::writePlainText):
-        (WebCore::Pasteboard::write): Do not convert the image the GdkPixbuf, pass the image to the DataObjectGtk instead.
-        * platform/gtk/PasteboardHelper.cpp:
-        (WebCore::PasteboardHelper::fillSelectionData): Convert the DataObjectGtk image to GdkPixbuf right before
-        passing it to gtk_selection_data_set_pixbuf().
-        (WebCore::ClipboardSetData::ClipboardSetData): Use reference instead of pointer.
-        (WebCore::getClipboardContentsCallback):
-        (WebCore::clearClipboardContentsCallback): Never clear the saved DataObjectGtk, that was only needed when we had
-        a global DataObjectGtk associated to a GtkClipboard.
-        (WebCore::PasteboardHelper::writeClipboardContents): Use TemporaryChange to set the settingClipboardDataObject global.
-        * platform/gtk/PlatformPasteboardGtk.cpp:
-        (WebCore::PlatformPasteboard::writeToClipboard):
-        (WebCore::PlatformPasteboard::readFromClipboard):
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Require WTFMove for String::adopt
-        https://bugs.webkit.org/show_bug.cgi?id=162313
-
-        Reviewed by Yusuke Suzuki.
-
-        No change in behavior.  This just makes it more clear what is going on when a String adopts a Vector.
-
-        * bindings/js/SerializedScriptValue.cpp:
-        (WebCore::CloneDeserializer::readString):
-        * css/parser/CSSParser.cpp:
-        (WebCore::quoteCSSStringInternal):
-        * dom/Document.cpp:
-        (WebCore::canonicalizedTitle):
-        * html/canvas/CanvasRenderingContext2D.cpp:
-        (WebCore::normalizeSpaces):
-        * html/parser/HTMLTreeBuilder.cpp:
-        (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
-        * platform/Length.cpp:
-        (WebCore::newCoordsArray):
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::serialize):
-        * platform/graphics/ca/GraphicsLayerCA.cpp:
-        (WebCore::GraphicsLayerCA::ReplicaState::cloneID):
-        * platform/text/TextCodecUTF16.cpp:
-        (WebCore::TextCodecUTF16::decode):
-        * platform/text/TextCodecUTF8.cpp:
-        (WebCore::TextCodecUTF8::decode):
-        * platform/text/mac/TextCodecMac.cpp:
-        (WebCore::TextCodecMac::decode):
-
-2016-09-20  Jer Noble  <jer.noble@apple.com>
-
-        Adopt MRMediaRemoteSetParentApplication.
-        https://bugs.webkit.org/show_bug.cgi?id=162259
-        <rdar://problem/28376161>
-
-        Reviewed by Anders Carlsson.
-
-        Allow MediaSessionManagerMac to retrieve the correct parent application identifier
-        from a PlatformMediaSession so that it can pass that identifier through to MediaRemote
-        via MRMediaRemoteSetParentApplication.
-
-        * Modules/webaudio/AudioContext.cpp:
-        (WebCore::AudioContext::sourceApplicationIdentifier):
-        * Modules/webaudio/AudioContext.h:
-        * platform/audio/PlatformMediaSession.cpp:
-        (WebCore::PlatformMediaSession::sourceApplicationIdentifier):
-        * platform/audio/PlatformMediaSession.h:
-        (WebCore::PlatformMediaSession::resetPlaybackSessionState): Deleted.
-        * platform/audio/mac/MediaSessionManagerMac.mm:
-        (WebCore::MediaSessionManagerMac::updateNowPlayingInfo):
-        * platform/mac/MediaRemoteSoftLink.cpp:
-        * platform/mac/MediaRemoteSoftLink.h:
-
-
-2016-09-20  Nan Wang  <n_wang@apple.com>
-
-        AX: AppleVisUser: VO can't navigate web dialogs iOS10
-        https://bugs.webkit.org/show_bug.cgi?id=162322
-
-        Reviewed by Chris Fleizach.
-
-        When using VoiceOver to navigate a web dialog's children, we were setting focus
-        onto the focusable parent in accessibilityElementDidBecomeFocused. When the focusable
-        parent is the dialog, it will cause the VO cursor jumping back and forward. Fixed it
-        by not setting focus on web dialogs in such case.
-
-        Test: accessibility/ios-simulator/dialog-did-become-focused.html
-
-        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
-        (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]):
-
-2016-09-20  Keith Rollin  <krollin@apple.com>
-
-        Add new logging for network resource loading
-        https://bugs.webkit.org/show_bug.cgi?id=162237
-
-        Reviewed by Antti Koivisto.
-
-        Add new logging along the non-main path for resource loading. This
-        logging should allow us to differentiate between lack-of-logging due
-        execution along a path that doesn't have logging statements and
-        lack-of-logging due to a hung process.
-
-        No new tests -- there are no tests for logging.
-
-        * loader/DocumentLoader.cpp:
-        (WebCore::DocumentLoader::startLoadingMainResource):
-        (WebCore::DocumentLoader::isAlwaysOnLoggingAllowed):
-        * loader/DocumentLoader.h:
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::load):
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::requestResource):
-        (WebCore::CachedResourceLoader::isAlwaysOnLoggingAllowed):
-        * loader/cache/CachedResourceLoader.h:
-        * page/Frame.h:
-
-2016-09-20  Zalan Bujtas  <zalan@apple.com>
-
-        REGRESSION (r204552): Athlete search on Strava gives bad rendering.
-        https://bugs.webkit.org/show_bug.cgi?id=162250
-
-        Reviewed by Simon Fraser.
-
-        Test: fast/layers/blank-content-when-child-layer-is-at-negative-big-number.html
-
-        * platform/graphics/LayoutRect.cpp:
-        (WebCore::LayoutRect::checkedUnite):
-        * platform/graphics/LayoutRect.h:
-        (WebCore::LayoutRect::isMaxXMaxYRepresentable):
-        (WebCore::LayoutRect::maxXMaxYCorner): Deleted.
-        * rendering/RenderLayer.cpp:
-        (WebCore::RenderLayer::calculateClipRects):
-
-2016-09-20  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-appendwindow.html
-        https://bugs.webkit.org/show_bug.cgi?id=162306
-
-        Reviewed by Darin Adler.
-
-        appendWindowStart should be a restricted double, and both it and appendWindowEnd should throw
-        TypeError exceptions when setting them to disallowed values.
-
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::setAppendWindowStart):
-        (WebCore::SourceBuffer::setAppendWindowEnd):
-        * Modules/mediasource/SourceBuffer.idl:
-
-2016-09-20  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-preload.html
-        https://bugs.webkit.org/show_bug.cgi?id=162304
-
-        Reviewed by Darin Adler.
-
-        If an error occurs while loading a URL on behalf of MediaPlayerPrivateAVFObjC, make sure to signal
-        that error to AVFoundation, so that the HTMLMediaElement is notified of the error.
-
-        * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
-        (WebCore::WebCoreAVFResourceLoader::notifyFinished):
-
-2016-09-20  Anders Carlsson  <andersca@apple.com>
-
-        Remove "in-store" from "-apple-pay-button-type"
-        https://bugs.webkit.org/show_bug.cgi?id=162321
-        rdar://problem/28394581
-
-        Reviewed by Beth Dakin.
-
-        * css/CSSPrimitiveValueMappings.h:
-        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
-        (WebCore::CSSPrimitiveValue::operator ApplePayButtonType):
-        * css/CSSValueKeywords.in:
-        * css/parser/CSSParser.cpp:
-        (WebCore::isValidKeywordPropertyAndValue):
-        * css/parser/CSSParserFastPaths.cpp:
-        (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
-        * rendering/RenderThemeCocoa.mm:
-        (WebCore::toPKPaymentButtonType):
-        * rendering/style/RenderStyleConstants.h:
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Fix occasional using uninitialized memory crashes after r206168.
-        https://bugs.webkit.org/show_bug.cgi?id=162247
-
-        This fixes a crash in imported/w3c/web-platform-tests/url/urlsearchparams-constructor.html
-        I could reproduce about 10% of the time.
-
-        * html/URLSearchParams.h:
-        Initialize the pointer to nullptr.
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Reduce allocations in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162241
-
-        Reviewed by Chris Dumez.
-
-        Use Vectors instead of StringBuilders.  This allows us to use the inline capacity on the stack
-        for short URLs (<2KB) and also allows us to skip branches because we know whether the
-        contained type is UChar or LChar at compile time.  It also allows us to use uncheckedAppend.
-
-        Added new API tests for parts that were less tested, but there is
-        no change in behavior except for a performance improvement.
-
-        * platform/URLParser.cpp:
-        (WebCore::appendCodePoint):
-        (WebCore::encodeQuery):
-        (WebCore::URLParser::failure):
-        (WebCore::URLParser::parse):
-        (WebCore::percentDecode):
-        (WebCore::domainToASCII):
-        (WebCore::hasInvalidDomainCharacter):
-        (WebCore::URLParser::parseHost):
-        (WebCore::formURLDecode):
-        (WebCore::isC0Control): Deleted.
-        * platform/URLParser.h:
-
-2016-09-20  Nan Wang  <n_wang@apple.com>
-
-        AX: voiceover does not read contents of input role="spinbutton"
-        https://bugs.webkit.org/show_bug.cgi?id=162137
-
-        Reviewed by Chris Fleizach.
-
-        The aria-valuenow attribute value on the spinbutton is not exposed
-        on iOS. We should expose aria-valuenow attribute for range controls
-        based on https://www.w3.org/TR/wai-aria/states_and_properties#aria-valuenow
-
-        Changes are covered in the modified test.
-
-        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
-        (-[WebAccessibilityObjectWrapper accessibilityValue]):
-
-2016-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        URLParser: uidna_IDNToASCII_56 is deprecated
-        https://bugs.webkit.org/show_bug.cgi?id=161841
-
-        Reviewed by Alex Christensen.
-
-        Add pragmas to silence the warning, plus a FIXME.
-
-        * platform/URLParser.cpp:
-        (WebCore::domainToASCII):
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Make URLSearchParams spec-compliant
-        https://bugs.webkit.org/show_bug.cgi?id=162247
-
-        Reviewed by Chris Dumez and Sam Weinig.
-
-        Covered by newly-passing web platform tests.
-
-        * html/DOMURL.cpp:
-        (WebCore::DOMURL::~DOMURL):
-        (WebCore::DOMURL::setHref):
-        (WebCore::DOMURL::setQuery):
-        Update any associated URLSearchParams object when the query could change.
-        (WebCore::DOMURL::searchParams):
-        The lifetime of the URLSearchParams was wrong.  We were creating a new URLSearchParams each time
-        URL.searchParams was called, and we should have been creating one the first time and returning the
-        same instance for subsequent calls.  This means the DOMURL must own the URLSearchParams if it is associated,
-        but if it is not associated, then a URLSearchParams can live on its own.
-        * html/DOMURL.h:
-        * html/URLSearchParams.h:
-        (WebCore::URLSearchParams::URLDestroyed):
-        (WebCore::URLSearchParams::setContents):
-
-2016-09-20  Antti Koivisto  <antti@apple.com>
-
-        Remove AuthorStyleSheets::m_hadActiveLoadingStylesheet bit
-        https://bugs.webkit.org/show_bug.cgi?id=162312
-
-        Reviewed by Chris Dumez.
-
-        * dom/AuthorStyleSheets.cpp:
-        (WebCore::AuthorStyleSheets::analyzeStyleSheetChange):
-
-            We can handle loading sheets with the normal stylesheet change logic. Remove the special case.
-
-        (WebCore::filterEnabledNonemptyCSSStyleSheets):
-
-            Filter out loading stylesheets.
-
-        * dom/AuthorStyleSheets.h:
-
-2016-09-20  Keith Rollin  <krollin@apple.com>
-
-        Adjust current networking logging
-        https://bugs.webkit.org/show_bug.cgi?id=162235
-
-        Reviewed by Antti Koivisto.
-
-        Update the "always on" network logging in order to better track the
-        loading of a particular resource and to better bind together the
-        resources downloaded for a particular page and frame. Do this by
-        consistently logging pageID, frameID, and resourceID.
-
-        No new tests -- there are no tests for logging.
-
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
-        * loader/ResourceLoader.h:
-        (WebCore::ResourceLoader::frame):
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Non-special URLs should have an opaque origin
-        https://bugs.webkit.org/show_bug.cgi?id=162254
-
-        Reviewed by Sam Weinig.
-
-        Covered by newly passing web platform tests.
-
-        * page/SecurityOrigin.cpp:
-        (WebCore::shouldTreatAsUniqueOrigin):
-        According to https://url.spec.whatwg.org/#origin all URLs with non-special protocols
-        should have a unique SecurityOrigin whose serialization is "null".
-
-2016-09-20  Christopher Reid  <Christopher.Reid@am.sony.com>
-
-        [WinCairo]  Not building since 206044
-        https://bugs.webkit.org/show_bug.cgi?id=162246
-
-        Reviewed by Alex Christensen.
-
-        No new tests. No change in behaviour.
-
-        * bindings/js/JSWebGLRenderingContextCustom.cpp:
-        * platform/network/curl/CookieJarCurl.cpp:
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Align URLParser with web platform tests when parsing non-special relative URLs ending in AuthorityOrHost state
-        https://bugs.webkit.org/show_bug.cgi?id=162251
-
-        Reviewed by Tim Horton.
-
-        Covered by new and updated API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        Fix parsing of non-special URLs that end after scheme:// with no authority.
-        We used to assume that parsing non-special schemes would never end with just scheme:// but a string can indeed end right there.
-        When a non-special relative URL contains just scheme:// we need the resulting URL to be valid to conform with the web platform tests.
-        (WebCore::URLParser::parseHostAndPort):
-        Renamed to reflect what the function actually does.
-        (WebCore::URLParser::internalValuesConsistent):
-        Add utility function for testing.
-        (WebCore::URLParser::parseHost): Deleted.
-        * platform/URLParser.h:
-
-2016-09-20  Javier Fernandez  <jfernandez@igalia.com>
-
-        [css-grid] The 'grid' shorthand has a new syntax.
-        https://bugs.webkit.org/show_bug.cgi?id=161954
-
-        Reviewed by Darin Adler.
-
-        Implementation of the new CSS syntax for the 'grid' shorthand, as
-        defined in the CSS Grid Layout specification:
-        - https://drafts.csswg.org/css-grid/#grid-shorthand
-
-        No new tests, just adapted the ones we already have and added a few additional test cases.
-
-        * css/CSSValueKeywords.in:
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseImplicitAutoFlow): Added. Similar to parseGridAutoFlow, but using the new 'auto-flow' keyword.
-        (WebCore::CSSParser::parseGridShorthand): New syntax of the 'grid' shorthand.
-        * css/parser/CSSParser.h:
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should allow '@' in user
-        https://bugs.webkit.org/show_bug.cgi?id=162272
-
-        Reviewed by Tim Horton.
-
-        Covered by a new API test.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        The spec describes using an "@ flag" and rewinding iterators.  I've implemented the authority parsing
-        and host parsing a little differently, but this makes it equivalent.
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Fix parsing relative URLs with one slash after the scheme:
-        https://bugs.webkit.org/show_bug.cgi?id=162294
-
-        Reviewed by Tim Horton.
-
-        This fixes the relatively-obscure case where a relative URL has the same special scheme as the base,
-        but there is only one slash after the scheme: at the beginning of the relative URL.  According to spec,
-        this should be interpreted the same as if the scheme: were not there.
-        For example, parsing "http:/example.com/" relative to "http://example.org/foo/bar" should be the same as
-        parsing "/example.com/" relative to "http://example.org/foo/bar".
-
-        Covered by a new API test.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-20  Alex Christensen  <achristensen@webkit.org>
-
-        Fix Windows file URL quirks in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162303
-
-        Reviewed by Tim Horton.
-
-        Windows file urls allow c:\ and c|\ to have the same meaning, but when serialized they should both be c:/.
-        This is now standardized to allow cross-platform uniform behavior of URLs.
-
-        Covered by new API tests and progress on web platform tests when URLParser is enabled.
-
-        * platform/URLParser.cpp:
-        (WebCore::incrementIteratorSkippingTabAndNewLine):
-        (WebCore::isWindowsDriveLetter):
-        (WebCore::checkWindowsDriveLetter):
-        (WebCore::shouldCopyFileURL):
-        (WebCore::URLParser::parseSerializedURL):
-        (WebCore::URLParser::parse):
-
-2016-09-20  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        Rename FrameData to ImageFrame, move it to a separate file and use it for all ports
-        https://bugs.webkit.org/show_bug.cgi?id=159819
-
-        Reviewed by Simon Fraser.
-
-        Rename FrameData to ImageFrame and move it to a separate file so caching
-        it can be managed outside the BitmapImage object. Make the data members
-        of FrameData be private and add getters to return their values. Add backing
-        store and disposalMethod members, getter and setters to ImageFrame so it can
-        replace the non-CG ImageFrame class.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        Add ImageFrame class to WebCore project.
-        
-        * platform/graphics/BitmapImage.cpp:
-        (WebCore::BitmapImage::BitmapImage): The metadata for the non-decoder case is now calculated in the ImageFrame::initialize().
-        (WebCore::BitmapImage::haveFrameImageAtIndex): Call ImageFrame's getters instead of access private members.
-        (WebCore::BitmapImage::destroyDecodedData): Pass ImageFrame::Caching::Metadata to ImageFrame::clear() to clear the image only.
-        (WebCore::BitmapImage::destroyDecodedDataIfNecessary): ImageFrame::usedFrameBytes() is now renamed to ImageFrame::frameBytes().
-        (WebCore::BitmapImage::cacheFrame): Call ImageFrame::initialize() to set the image and cache the frame's metadata.
-        (WebCore::BitmapImage::dataChanged): Pass ImageFrame::Caching::Empty to ImageFrame::clear() to clear the frame's image and metadata.
-        (WebCore::BitmapImage::ensureFrameAtIndexIsCached): Call ImageFrame's getters instead of access private members.
-        (WebCore::BitmapImage::frameImageAtIndex): Call ImageFrame's getters instead of access private members.
-        (WebCore::BitmapImage::frameIsCompleteAtIndex): Pass ImageFrame::Caching::Metadata to ensureFrameAtIndexIsCached() to ensure the frame's metadata is cached.
-        (WebCore::BitmapImage::frameDurationAtIndex): Pass ImageFrame::Caching::Metadata to ensureFrameAtIndexIsCached() to ensure the frame's metadata is cached.
-        (WebCore::BitmapImage::frameHasAlphaAtIndex): Pass ImageFrame::Caching::Metadata to ensureFrameAtIndexIsCached() to ensure the frame's metadata is cached.
-        (WebCore::BitmapImage::frameOrientationAtIndex): Pass ImageFrame::Caching::Metadata to ensureFrameAtIndexIsCached() to ensure the frame's metadata is cached.
-        (WebCore::BitmapImage::singlePixelSolidColor): Call ImageFrame's getters instead of access private members.
-        (WebCore::BitmapImage::repetitionCount): Change the return type to be RepetitionCount instead of int.
-        (WebCore::BitmapImage::shouldAnimate): Use a simpler condition since RepetitionCountNone is equal to zero.
-        (WebCore::BitmapImage::startAnimation): Replace the cAnimation* constants by the new RepetitionCount* enum.
-        (WebCore::BitmapImage::internalAdvanceAnimation): Replace the cAnimation* constants by the new RepetitionCount* enum.
-
-        * platform/graphics/BitmapImage.h: FrameData is renamed to ImageFrame and moved to a separate file named ImageFrame.h.
-        (WebCore::FrameData::FrameData): Deleted.
-        (WebCore::FrameData::~FrameData): Deleted.
-        (WebCore::FrameData::clear): Deleted.
-        (WebCore::FrameData::usedFrameBytes): Deleted.
-
-        * platform/graphics/ImageBackingStore.h: 
-        (WebCore::ImageBackingStore::fillRect): Make it efficient to fill a rect in the ImageBackingStore with the same color.
-        (WebCore::ImageBackingStore::pixelAt): Asserts the point is in the bounds of the ImageBackingStore size.
-        (WebCore::ImageBackingStore::setPixel): Use pixelValue().
-        (WebCore::ImageBackingStore::inBounds): Private functions check whether a point or a rect is in the bounds of the ImageBackingStore size.
-        (WebCore::ImageBackingStore::pixelValue): Calculate the RGBA value form red, green, blue and alpha values.
-
-        * platform/graphics/ImageFrame.cpp: Added.
-        (WebCore::ImageFrame::ImageFrame): 
-        (WebCore::ImageFrame::~ImageFrame):
-        (WebCore::ImageFrame::operator=):
-        (WebCore::ImageFrame::fillMetaData): Caches the ImageFrame's metadata.
-        (WebCore::ImageFrame::clearImage): Deletes all the allocated memory by ImageFrame which can be the ImageBackingStore or the NativeImagePtr.
-        (WebCore::ImageFrame::clear): Deletes the allocated memory and may or may not clears the metadata also.
-        (WebCore::ImageFrame::initialize): Sets a new ImageBackingStore or a new NativeImagePtr in the ImageFrame.
-        (WebCore::ImageFrame::size): Returns the size of the ImageFrame which can be the size of ImageBackingStore or the size of NativeImagePtr.
-        (WebCore::ImageFrame::singlePixelSolidColor): Returns whether the ImageFrame can be drawn by filling the image rectangle with a solid color.
-        
-        * platform/graphics/ImageFrame.h: Added.
-        (WebCore::operator++): SubsamplingLevel is strongly typed but RepetitionCount is not since it can be any unsigned value in addition to -1.
-        (WebCore::ImageFrame::ImageFrame):
-        (WebCore::ImageFrame::setDecoding):
-        (WebCore::ImageFrame::decoding):
-        (WebCore::ImageFrame::isEmpty):
-        (WebCore::ImageFrame::isPartial):
-        (WebCore::ImageFrame::isComplete):
-        (WebCore::ImageFrame::sizeRespectingOrientation):
-        (WebCore::ImageFrame::frameBytes):
-        (WebCore::ImageFrame::subsamplingLevel):
-        (WebCore::ImageFrame::setDisposalMethod):
-        (WebCore::ImageFrame::disposalMethod):
-        (WebCore::ImageFrame::image):
-        (WebCore::ImageFrame::setOrientation):
-        (WebCore::ImageFrame::orientation):
-        (WebCore::ImageFrame::setDuration):
-        (WebCore::ImageFrame::duration):
-        (WebCore::ImageFrame::setHasAlpha):
-        (WebCore::ImageFrame::hasAlpha):
-        (WebCore::ImageFrame::hasImage):
-        (WebCore::ImageFrame::hasInvalidImage):
-        (WebCore::ImageFrame::hasMetadata):
-        (WebCore::ImageFrame::backingStore):
-        (WebCore::ImageFrame::hasBackingStore):
-        Setters and getters for the private members.
-
-        * platform/graphics/ImageSource.cpp:
-        (WebCore::ImageSource::calculateMaximumSubsamplingLevel): allowSubsamplingOfFrameAtIndex() is renamed to frameAllowSubsamplingAtIndex().
-        (WebCore::ImageSource::subsamplingLevelForScale): Use the values of the enum class SubsamplingLevel.
-        (WebCore::ImageSource::size): Use the values of the enum class SubsamplingLevel.
-        (WebCore::ImageSource::sizeRespectingOrientation): Use the values of the enum class SubsamplingLevel.
-        (WebCore::ImageSource::repetitionCount): Replace the constants cAnimation* by the enum RepetitionCount*.
-        (WebCore::ImageSource::frameAllowSubsamplingAtIndex): Rename allowSubsamplingOfFrameAtIndex() to frameAllowSubsamplingAtIndex().
-        (WebCore::ImageSource::frameSizeAtIndex): Replace the call to orientationAtIndex() by frameOrientationAtIndex().
-        (WebCore::ImageSource::frameOrientationAtIndex): Rename orientationAtIndex() to frameOrientationAtIndex().
-        (WebCore::ImageSource::dump): Replace the call to orientationAtIndex() by frameOrientationAtIndex().
-        (WebCore::ImageSource::allowSubsamplingOfFrameAtIndex): Deleted.
-        (WebCore::ImageSource::orientationAtIndex): Deleted.
-        
-        * platform/graphics/ImageSource.h:
-        (WebCore::ImageSource::decoder): We need this function temporarily till we move caching the frames outside BitmapImage. 
-
-        * platform/graphics/NativeImage.h: Change SubImages() to Subimages(). See Darin's comment in https://bugs.webkit.org/show_bug.cgi?id=159819#c6.
-        * platform/graphics/cairo/NativeImageCairo.cpp:
-        (WebCore::clearNativeImageSubimages):
-        (WebCore::clearNativeImageSubImages): Deleted.
-
-        * platform/graphics/cg/ImageDecoderCG.cpp:
-        (WebCore::createImageSourceOptions): Use the values of the enum class SubsamplingLevel.
-        (WebCore::imageSourceOptions): Use the values of the enum class SubsamplingLevel.
-        (WebCore::ImageDecoder::repetitionCount): Change the return type to be RepetitionCount instead of int.
-        (WebCore::ImageDecoder::frameOrientationAtIndex): orientationAtIndex() is renamed to frameOrientationAtIndex().
-        (WebCore::ImageDecoder::frameAllowSubsamplingAtIndex): allowSubsamplingOfFrameAtIndex() is renamed to frameAllowSubsamplingAtIndex().
-        (WebCore::ImageDecoder::orientationAtIndex): Deleted.
-        (WebCore::ImageDecoder::allowSubsamplingOfFrameAtIndex): Deleted.
-        * platform/graphics/cg/ImageDecoderCG.h:
-
-        * platform/graphics/cg/NativeImageCG.cpp:
-        (WebCore::clearNativeImageSubimages): Change SubImages() to Subimages().
-        (WebCore::clearNativeImageSubImages): Deleted.
-
-        * platform/image-decoders/ImageDecoder.cpp:
-        (WebCore::ImageDecoder::frameIsCompleteAtIndex): Use ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::ImageDecoder::frameHasAlphaAtIndex): Use ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::ImageDecoder::frameDurationAtIndex): Use ImageFrame::isEmpty() instead of checking the value of the decoding status().
-        (WebCore::ImageDecoder::createFrameImageAtIndex): Access the ImageBackingStore::image() function directly.
-        (WebCore::ImageFrame::ImageFrame): Deleted.
-        (WebCore::ImageFrame::operator=): Deleted.
-        (WebCore::ImageFrame::clearPixelData): Deleted.
-        (WebCore::ImageFrame::zeroFillPixelData): Deleted.
-        (WebCore::ImageFrame::zeroFillFrameRect): Deleted.
-        (WebCore::ImageFrame::initializeBackingStore): Deleted.
-        (WebCore::ImageFrame::hasAlpha): Deleted.
-        (WebCore::ImageFrame::setHasAlpha): Deleted.
-        (WebCore::ImageFrame::setOriginalFrameRect): Deleted.
-        (WebCore::ImageFrame::setStatus): Deleted.
-
-        * platform/image-decoders/ImageDecoder.h:
-        (WebCore::ImageDecoder::repetitionCount): Use the type RepetitionCount and the enum RepetitionCount* values.
-        (WebCore::ImageDecoder::frameOrientationAtIndex): Rename orientationAtIndex() to frameOrientationAtIndex().
-        (WebCore::ImageDecoder::frameAllowSubsamplingAtIndex): Rename allowSubsamplingOfFrameAtIndex() to frameAllowSubsamplingAtIndex().
-        (WebCore::ImageDecoder::subsamplingLevelForScale): Use the enum class SubsamplingLevel value instead of integer values.
-        (WebCore::ImageFrame::ImageFrame): Deleted.
-        (WebCore::ImageFrame::copyRowNTimes): Deleted.
-        (WebCore::ImageFrame::size): Deleted.
-        (WebCore::ImageFrame::asNewNativeImage): Deleted.
-        (WebCore::ImageFrame::backingStore): Deleted.
-        (WebCore::ImageFrame::hasBackingStore): Deleted.
-        (WebCore::ImageFrame::originalFrameRect): Deleted.
-        (WebCore::ImageFrame::status): Deleted.
-        (WebCore::ImageFrame::duration): Deleted.
-        (WebCore::ImageFrame::disposalMethod): Deleted.
-        (WebCore::ImageFrame::setDuration): Deleted.
-        (WebCore::ImageFrame::setDisposalMethod): Deleted.
-        (WebCore::ImageFrame::pixelAt): Deleted.
-        (WebCore::ImageFrame::setPixel): Deleted.
-        (WebCore::ImageFrame::blendPixel): Deleted.
-        (WebCore::ImageDecoder::orientationAtIndex): Deleted.
-        (WebCore::ImageDecoder::allowSubsamplingOfFrameAtIndex): Deleted.
-
-        * platform/image-decoders/bmp/BMPImageDecoder.cpp:
-        (WebCore::BMPImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::BMPImageDecoder::decode): Ditto.
-
-        * platform/image-decoders/bmp/BMPImageReader.cpp:
-        (WebCore::BMPImageReader::decodeBMP): Call ImageFrame::isEmpty(). ImageBuffer::initializeBackingStore() is renamed to initialize().
-        (WebCore::BMPImageReader::processNonRLEData): Replace ImageFrame::zeroFillPixelData() by ImageBackingStore::clear() and ImageFrame::setAlpha().
-
-        * platform/image-decoders/bmp/BMPImageReader.h:
-        (WebCore::BMPImageReader::setPixel): Call ImageBackingStore::setPixel() directly.
-        (WebCore::BMPImageReader::fillRGBA): Replace an efficient loop to call setPixel() by ImageBackingStore::fillRect().
-
-        * platform/image-decoders/gif/GIFImageDecoder.cpp:
-        (WebCore::GIFImageDecoder::GIFImageDecoder): Move the initialization of m_repetitionCount to the header file.
-        (WebCore::GIFImageDecoder::repetitionCount): Change the return type.
-        (WebCore::GIFImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::GIFImageDecoder::clearFrameBufferCache): Use the values of the new enum class ImageFrame::DisposalMethod.
-        (WebCore::GIFImageDecoder::haveDecodedRow): Call the ImageBackingStore API's directly.
-        (WebCore::GIFImageDecoder::frameComplete): Use the values of the new enum class ImageFrame::DisposalMethod.
-        (WebCore::GIFImageDecoder::initFrameBuffer): Move calling ImageBackingStore::setFrameRect() to be after initializing the ImageBackingStore itself.
-
-        * platform/image-decoders/gif/GIFImageDecoder.h: Make repetitionCount() returns RepetitionCount and use the new enum class ImageFrame::DisposalMethod.
-        
-        * platform/image-decoders/gif/GIFImageReader.cpp:
-        (GIFImageReader::parse):
-
-        * platform/image-decoders/gif/GIFImageReader.h:
-        (GIFFrameContext::GIFFrameContext): Use new enum class ImageFrame::DisposalMethod.
-        
-        * platform/image-decoders/ico/ICOImageDecoder.cpp:
-        (WebCore::ICOImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::ICOImageDecoder::decode): Ditto.
-
-        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
-        (WebCore::JPEGImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::setPixel): Call ImageBackingStore::setPixel() directly.
-        (WebCore::JPEGImageDecoder::outputScanlines): ImageFrame::initializeBackingStore() is renamed to initialize().
-        (WebCore::JPEGImageDecoder::jpegComplete): ImageFrame::setStatus() is renamed to ImageFrame::setDecoding().
-        (WebCore::JPEGImageDecoder::decode): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-
-        * platform/image-decoders/png/PNGImageDecoder.cpp:
-        (WebCore::PNGImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::PNGImageDecoder::rowAvailable): Call the ImageBackingStore APIs directly.
-        (WebCore::PNGImageDecoder::pngComplete): ImageFrame::setStatus() is renamed to setDecoding().
-        (WebCore::PNGImageDecoder::readChunks): Use the values of the new enum class ImageFrame::DisposalMethod.
-        (WebCore::PNGImageDecoder::clearFrameBufferCache): Replace the call to ImageFrame::clearPixelData() by  ImageFrame::clear().
-        (WebCore::PNGImageDecoder::initFrameBuffer): Move calling ImageBackingStore::setFrameRect() to be after initializing the ImageBackingStore itself.
-        (WebCore::PNGImageDecoder::frameComplete): Call the ImageBackingStore APIs directly.
-
-        * platform/image-decoders/png/PNGImageDecoder.h: Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-
-        * platform/image-decoders/webp/WEBPImageDecoder.cpp:
-        (WebCore::WEBPImageDecoder::frameBufferAtIndex): Call ImageFrame::isComplete() instead of checking the value of the decoding status().
-        (WebCore::WEBPImageDecoder::decode): ImageFrame::setStatus() is renamed to setDecoding(). And initializeBackingStore() is renamed to initialize().
-
-2016-09-20  Don Olmstead  <don.olmstead@am.sony.com>
-
-        [WinCairo] Use find_package cairo in build
-        https://bugs.webkit.org/show_bug.cgi?id=162239
-
-        Reviewed by Alex Christensen.
-
-        No new tests. No change in behavior.
-
-        * PlatformWinCairo.cmake:
-
-2016-09-20  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Support MediaSource.setLiveSeekableRanges()
-        https://bugs.webkit.org/show_bug.cgi?id=162252
-
-        Reviewed by Sam Weinig.
-
-        Fixes tests: imported/w3c/web-platform-tests/media-source/interfaces.html
-                     imported/w3c/web-platform-tests/media-source/mediasource-liveseekable.html
-
-        Add support for a new part of the Media Source specification, the ability for clients to
-        specify the seekable ranges for a MediaSource-backed HTMLMediaElement.
-
-        Adding the live-seekable methods to MediaSource fixes a large number of the interfaces.html
-        tests, and the rest are fixed by adding on<event> handlers to MediaSource, SourceBuffer,
-        and SourceBufferList.
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::seekable):
-        (WebCore::MediaSource::setLiveSeekableRange):
-        (WebCore::MediaSource::clearLiveSeekableRange):
-        * Modules/mediasource/MediaSource.h:
-        * Modules/mediasource/MediaSource.idl:
-        * Modules/mediasource/SourceBuffer.idl:
-        * Modules/mediasource/SourceBufferList.idl:
-        * Modules/mediasource/VideoPlaybackQuality.idl:
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::seekable):
-
-2016-09-20  Per Arne Vollan  <pvollan@apple.com>
-
-        [Win] Unreviewed warning fix.
-
-        * page/CaptionUserPreferencesMediaAF.cpp:
-
-2016-09-19  Chris Dumez  <cdumez@apple.com>
-
-        Add support for HTMLSourceElement.prototype.sizes / HTMLSourceElement.prototype.srcset
-        https://bugs.webkit.org/show_bug.cgi?id=162244
-
-        Reviewed by Alex Christensen.
-
-        Add support for HTMLPrototype.prototype.sizes / HTMLPrototype.prototype.srcset:
-        - https://html.spec.whatwg.org/#the-source-element
-
-        We already support the corresponding content attributes internally. However, we
-        are missing the corresponding IDL attributes that are supposed to reflect them.
-
-        Chrome and Firefox support them. We already had those IDL attributes on
-        HTMLImageElement.
-
-        No new tests, rebaselined existing test.
-
-        * html/HTMLSourceElement.idl:
-
-2016-09-19  Anders Carlsson  <andersca@apple.com>
-
-        Suppress JavaScript prompts early on in certain cases
-        https://bugs.webkit.org/show_bug.cgi?id=162243
-        rdar://problem/27661602
-
-        Reviewed by Geoffrey Garen.
-
-        Export symbols needed by WebKit2.
-
-        * loader/FrameLoader.h:
-        * loader/FrameLoaderStateMachine.h:
-
-2016-09-19  Chris Dumez  <cdumez@apple.com>
-
-        Align HTMLAppletElement with the specification
-        https://bugs.webkit.org/show_bug.cgi?id=162240
-
-        Reviewed by Alex Christensen.
-
-        Align HTMLAppletElement with the specification:
-        - https://html.spec.whatwg.org/#htmlappletelement
-
-        In particular:
-        - space / vspace should be of type "unsigned long", not DOMString
-        - codeBase and object should reflect as URLs
-
-        Firefox agree with the specification. Chrome does not have
-        HTMLAppletElement anymore.
-
-        No new tests, rebaselined existing test.
-
-        * html/HTMLAppletElement.cpp:
-        (WebCore::HTMLAppletElement::isURLAttribute):
-        * html/HTMLAppletElement.h:
-        * html/HTMLAppletElement.idl:
-
-2016-09-16  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-avtracks.html
-        https://bugs.webkit.org/show_bug.cgi?id=162104
-
-        Reviewed by Eric Carlson.
-
-        Fixes test: imported/w3c/web-platform-tests/media-source/mediasource-avtracks.html
-
-        Multiple overlapping issues are causing this test to fail:
-
-        - When a MediaSource object is not attached from a HTMLMediaElement, it's SourceBuffer
-          objects will return `null` from .videoTracks and .audioTracks, foiling the tests ability
-          to assert that sourceBuffer.videoTracks.length == 0.
-
-        - When a MediaSource object is detached from a HTMLMediaElement, it's tracks are removed
-          but do not generate 'removedtrack' events.
-
-        When these bugs were fixed, a few more popped up:
-
-        - The HTMLMediaElement removes its tracks before it closes the MediaSource, which causes an
-          assertion when the MediaSource tells the HTMLMediaElement to remove its copy of the 
-          source's tracks (which have already been removed).
-
-        - When the HTMLMediaElement is stop()-ed due to its ScriptExecutionContext being destroyed,
-          it tries to close its MediaSource, which has itself already been stop()-ed and thus asserts.
-
-        To eliminate all these bugs and make the code more self explanatory, we will rename the 
-        HTMLMediaElement's closeMediaSource() method to detachMediaSource(), and the MediaSource's
-        close() method to detachFromElement(). The only way to close a MediaSource is now by calling
-        detachMediaSource() from the HTMLMediaElement.  The parts of the "Detaching from a media
-        element" algorithm which were previously spread across setReadyState() and onReadyStateChange()
-        are now unified in the newly renamed detachFromElement() method. The HTMLMediaElement will
-        first detach its MediaSource, and only after that remove all its tracks.
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::setReadyState): Move steps into detachFromElement().
-        (WebCore::MediaSource::onReadyStateChange): Ditto.
-        (WebCore::MediaSource::detachFromElement): Perform the steps as specified.
-        (WebCore::MediaSource::attachToElement): Takes a reference rather than a bare pointer.
-        (WebCore::MediaSource::stop): Ask the media elemnet to detach.
-        (WebCore::MediaSource::close): Renamed to detachFromElement().
-        * Modules/mediasource/MediaSource.h:
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::videoTracks): Always return a valid TrackList object.
-        (WebCore::SourceBuffer::audioTracks): Ditto.
-        (WebCore::SourceBuffer::textTracks): Ditto.
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::~HTMLMediaElement): Renamed closeMediaSource() -> detachMediaSource().
-        (WebCore::HTMLMediaElement::prepareForLoad): Ditto.
-        (WebCore::HTMLMediaElement::loadResource): Ditto.
-        (WebCore::HTMLMediaElement::noneSupported): Ditto.
-        (WebCore::HTMLMediaElement::mediaLoadingFailedFatally): Ditto.
-        (WebCore::HTMLMediaElement::detachMediaSource): Ditto.
-        (WebCore::HTMLMediaElement::userCancelledLoad): Ditto.
-        (WebCore::HTMLMediaElement::createMediaPlayer): Ditto.
-        (WebCore::HTMLMediaElement::clearMediaPlayer): Ditto. Also, detach from the MediaSource before
-            removing tracks.
-        (WebCore::HTMLMediaElement::closeMediaSource): Deleted.
-        * html/HTMLMediaElement.h:
-        * html/track/TrackListBase.cpp:
-        (TrackListBase::remove): Only try to clear the media element from Tracks that have one.
-
-2016-09-19  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser can read memory out of bounds
-        https://bugs.webkit.org/show_bug.cgi?id=162206
-
-        Reviewed by Geoff Garen.
-
-        Covered by new API tests.
-        URLParser is disabled by default still.
-
-        * platform/URLParser.cpp:
-        (WebCore::parseIPv4Host):
-        If there are fewer than two numbers in an ipv4 address, we would subtract two from the Vector's size, 
-        causing us to read memory up to std::numeric_limits<size_t>::max() - 2.  Added a bounds check and many tests.
-
-2016-09-19  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should parse serialized valid URLs faster than unknown input
-        https://bugs.webkit.org/show_bug.cgi?id=162228
-
-        Reviewed by Chris Dumez.
-
-        The URL constructor with ParsedURLStringTag is almost twice as fast as the other URL constructors.
-        Assuming there are no tabs or newlines, and assuming characters are already encoded decreases the URLParser
-        runtime by over 25% and adds infrastructure for more optimizations.
-
-        No new tests. No change in behaviour.
-
-        * platform/URL.cpp:
-        (WebCore::URL::URL):
-        * platform/URLParser.cpp:
-        (WebCore::utf8PercentEncode):
-        (WebCore::utf8PercentEncodeQuery):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseSerializedURL):
-        (WebCore::incrementIterator):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHost):
-        * platform/URLParser.h:
-        (WebCore::URLParser::parse): Deleted.
-
-2016-09-19  Daniel Bates  <dabates@apple.com>
-
-        Cleanup: Remove an extraneous copy of SecurityOrigin
-        https://bugs.webkit.org/show_bug.cgi?id=162118
-
-        Reviewed by Youenn Fablet.
-
-        Share one isolated copy of the SecurityOrigin between the ContentSecurityPolicy and
-        LoaderTaskOptions objects instead of creating two isolated copies of the SecurityOrigin.
-        This is safe because both ContentSecurityPolicy and LoaderTaskOptions are instantiated
-        in WorkerThreadableLoader::MainThreadBridge for use on the main thread only.
-
-        * loader/WorkerThreadableLoader.cpp:
-        (WebCore::LoaderTaskOptions::LoaderTaskOptions):
-        (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
-
-2016-09-19  Antti Koivisto  <antti@apple.com>
-
-        Add size assert for RenderElement
-        https://bugs.webkit.org/show_bug.cgi?id=162096
-
-        Reviewed by Simon Fraser.
-
-        Also remove the unused m_visibleInViewportState field.
-
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::unregisterForVisibleInViewportCallback):
-        * rendering/RenderElement.h:
-
-2016-09-19  Keith Rollin  <krollin@apple.com>
-
-        REGRESSION (r205275): LOG_WITH_STREAM() macros are all compiled in release builds now
-        https://bugs.webkit.org/show_bug.cgi?id=162180
-
-        Reviewed by Simon Fraser.
-
-        Disable LOG_WITH_STREAM in release mode. Along with this, remove a
-        local variable in GraphcsContextCG.cpp in release mode that's no
-        longer referenced. And adjust logFunctionResult so that it gets
-        defined only in debug mode, too, to match its declaration in
-        LogMacros.h.
-
-        No new tests -- there are no tests for logging.
-
-        * platform/LogMacros.h:
-        * platform/Logging.cpp:
-        * platform/graphics/cg/GraphicsContextCG.cpp:
-        (WebCore::GraphicsContext::drawNativeImage):
-
-2016-09-19  Daniel Bates  <dabates@apple.com>
-
-        Remove ENABLE(TEXT_AUTOSIZING) automatic text size adjustment code
-        https://bugs.webkit.org/show_bug.cgi?id=162167
-
-        Reviewed by Simon Fraser.
-
-        Remove the automatic text size adjustment code guarded by ENABLE(TEXT_AUTOSIZING)
-        because it is not used by any port. On Mac and iOS, analogous code guarded by
-        ENABLE(IOS_TEXT_AUTOSIZING) is used.
-
-        * CMakeLists.txt:
-        * Configurations/FeatureDefines.xcconfig:
-        * dom/Document.cpp:
-        (WebCore::Document::Document):
-        * dom/Document.h:
-        (WebCore::Document::textAutosizer): Deleted.
-        * page/FrameView.cpp:
-        (WebCore::FrameView::setFrameRect):
-        (WebCore::FrameView::layout):
-        * page/Settings.cpp:
-        (WebCore::Settings::Settings):
-        (WebCore::Settings::setTextAutosizingFontScaleFactor): Deleted.
-        * page/Settings.h:
-        (WebCore::Settings::textAutosizingFontScaleFactor): Deleted.
-        * page/animation/CSSPropertyAnimation.cpp:
-        (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
-        * rendering/RenderingAllInOne.cpp:
-        * rendering/TextAutosizer.cpp: Removed.
-        * rendering/TextAutosizer.h: Removed.
-        * rendering/style/RenderStyle.cpp:
-        (WebCore::RenderStyle::changeRequiresLayout):
-        (WebCore::RenderStyle::lineHeight):
-        (WebCore::RenderStyle::setFontSize):
-        * rendering/style/RenderStyle.h:
-        (WebCore::RenderStyle::textAutosizingMultiplier): Deleted.
-        (WebCore::RenderStyle::setTextAutosizingMultiplier): Deleted.
-        * rendering/style/StyleVisualData.cpp:
-        (WebCore::StyleVisualData::StyleVisualData):
-        * rendering/style/StyleVisualData.h:
-        * testing/InternalSettings.cpp:
-        (WebCore::InternalSettings::Backup::Backup):
-        (WebCore::InternalSettings::Backup::restoreTo):
-        (WebCore::InternalSettings::setTextAutosizingEnabled):
-        (WebCore::InternalSettings::setTextAutosizingWindowSizeOverride):
-        (WebCore::InternalSettings::setTextAutosizingFontScaleFactor): Deleted.
-        * testing/InternalSettings.h:
-        * testing/InternalSettings.idl:
-
-2016-09-19  Chris Dumez  <cdumez@apple.com>
-
-        Update XHTMLParser to recognize "-//W3C//DTD MathML 2.0//EN" public identifier
-        https://bugs.webkit.org/show_bug.cgi?id=162166
-
-        Reviewed by Alex Christensen.
-
-        Update XHTMLParser to recognize "-//W3C//DTD MathML 2.0//EN" public identifier as
-        per the latest HTML specification.
-        - https://html.spec.whatwg.org/#parsing-xhtml-documents
-
-        Firefox already recognizes it properly.
-
-        Test: imported/w3c/web-platform-tests/html/the-xhtml-syntax/parsing-xhtml-documents/xhtml-mathml-dtd-entity-support.htm
-
-        * xml/parser/XMLDocumentParserLibxml2.cpp:
-        (WebCore::convertUTF16EntityToUTF8):
-        Fix assertion that was causing the new test to crash in debug. The input '\u0026'
-        gets converted to '&' which is only 1 character. However, the assertion wrongly
-        expected WTF::Unicode::convertUTF16ToUTF8() to generate more than 1 character.
-
-        (WebCore::externalSubsetHandler):
-        Add "-//W3C//DTD MathML 2.0//EN" to the list.
-
-2016-09-19  Chris Dumez  <cdumez@apple.com>
-
-        Window's pageXOffset / pageYOffset attributes should be replaceable
-        https://bugs.webkit.org/show_bug.cgi?id=162046
-
-        Reviewed by Darin Adler.
-
-        Window's pageXOffset / pageYOffset attributes should be replaceable as per:
-        - https://drafts.csswg.org/cssom-view/#extensions-to-the-window-interface
-
-        Firefox agrees with the specification.
-
-        No new tests, rebaselined existing test.
-
-        * page/DOMWindow.h:
-        * page/DOMWindow.idl:
-
-2016-09-19  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r206107.
-        https://bugs.webkit.org/show_bug.cgi?id=162229
-
-        still failing on armv7 for some reason (Requested by anttik on
-        #webkit).
-
-        Reverted changeset:
-
-        "Add size assert for RenderElement"
-        https://bugs.webkit.org/show_bug.cgi?id=162096
-        http://trac.webkit.org/changeset/206107
-
-2016-09-19  Antti Koivisto  <antti@apple.com>
-
-        Add size assert for RenderElement
-        https://bugs.webkit.org/show_bug.cgi?id=162096
-
-        Reviewed by Simon Fraser.
-
-        Also remove the unused m_visibleInViewportState field.
-
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::unregisterForVisibleInViewportCallback):
-        * rendering/RenderElement.h:
-
-2016-09-19  Nan Wang  <n_wang@apple.com>
-
-        AX: Add accessibility support for details element on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=162041
-
-        Reviewed by Chris Fleizach.
-
-        The details and summary elements are poorly supported on iOS.
-        Two major issues:
-            1. Assistive technologies taking focus onto details/summary elements will cause unexpected behavior.
-            2. VoiceOver is not speaking the expanded status of the details element.
-        Fixed them by not setting focus onto elements inside details and exposing the details element's expanded
-        status to its summary's accessible children.
-
-        Test: accessibility/ios-simulator/detail-summary-ios.html
-
-        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
-        (matchedParent):
-        (-[WebAccessibilityObjectWrapper _accessibilityListAncestor]):
-        (-[WebAccessibilityObjectWrapper _accessibilityLandmarkAncestor]):
-        (-[WebAccessibilityObjectWrapper _accessibilityTableAncestor]):
-        (-[WebAccessibilityObjectWrapper _accessibilityFieldsetAncestor]):
-        (-[WebAccessibilityObjectWrapper tableCellParent]):
-        (-[WebAccessibilityObjectWrapper tableParent]):
-        (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
-        (-[WebAccessibilityObjectWrapper convertRectToScreenSpace:]):
-        (-[WebAccessibilityObjectWrapper detailParentForSummaryObject:]):
-        (-[WebAccessibilityObjectWrapper detailParentForObject:]):
-        (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]):
-        (-[WebAccessibilityObjectWrapper accessibilitySupportsARIAExpanded]):
-        (-[WebAccessibilityObjectWrapper accessibilityIsExpanded]):
-
-2016-09-19  Zalan Bujtas  <zalan@apple.com>
-
-        ASSERTION FAILED: clipRectsContext.rootLayer == m_clipRectsCache->m_clipRectsRoot[clipRectsType] while loading guardian.co.uk
-        https://bugs.webkit.org/show_bug.cgi?id=162129
-        <rdar://problem/28353350>
-
-        Reviewed by Antti Koivisto.
-
-        Neither ::localClipRect() nor ::selfClipRect() accounts for paginated context while computing the cliprects (See FIXMEs).
-        This patch ensures that we don't end up caching these invalid cliprects.
-
-        Test: fast/multicol/assert-on-cliprect-caching-when-paginated.html
-
-        * rendering/RenderLayer.cpp:
-        (WebCore::RenderLayer::calculateClipRects):
-
-2016-09-19  Youenn Fablet  <youenn@apple.com>
-
-        Clean-up after r206014
-        https://bugs.webkit.org/show_bug.cgi?id=162140
-
-        Reviewed by Sam Weinig.
-
-        Covered by existing tests.
-
-        * platform/network/HTTPHeaderMap.cpp:
-        (WebCore::HTTPHeaderMap::add):
-
-2016-09-19  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
-
-        If a host object is only used as a variadic argument, its bindings header isn't properly included
-        https://bugs.webkit.org/show_bug.cgi?id=150121
-
-        Reviewed by Youenn Fablet.
-
-        Modify JS binding generator to include binding headers of objects passed
-        as variadic argument.
-
-        * Modules/mediastream/RTCPeerConnection.h: Remove workaround.
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (AddVariadicToImplIncludes):
-        (GenerateParametersCheck):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-
-2016-09-19  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: ⇧⌘C should highlight node under cursor without re-moving mouse
-        https://bugs.webkit.org/show_bug.cgi?id=162128
-
-        Reviewed by Brian Burg.
-
-        * inspector/InspectorDOMAgent.h:
-        * inspector/InspectorDOMAgent.cpp:
-        (WebCore::InspectorDOMAgent::willDestroyFrontendAndBackend):
-        (WebCore::InspectorDOMAgent::mouseDidMoveOverElement):
-        (WebCore::InspectorDOMAgent::highlightMousedOverNode):
-        (WebCore::InspectorDOMAgent::setSearchingForNode):
-        When the inspector is connected, remember the last moused over node.
-        This produces far more consistent results of highlighting under
-        the cursor when pressing and releasing the keyboard shortcut keys,
-        without having to move the mouse. Even when using the shortcut to
-        first connect the inspector this produces far more consistent
-        results because releasing the keys for the shortcut produce new
-        mouseDidMoveOverElement events.
-
-2016-09-19  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
-
-        JSDOMBindings' toArguments() should return a more descriptive object
-        https://bugs.webkit.org/show_bug.cgi?id=161793
-
-        Reviewed by Youenn Fablet.
-
-        Replace std::pair with new VariadicHelperResult class with more
-        readable members names.
-
-        No additional tests required.
-
-        * bindings/js/JSDOMBinding.h:
-        (WebCore::VariadicHelper::Result::Result):
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateParametersCheck):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod12):
-        (WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
-        (WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
-        (WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
-
-2016-09-18  Alex Christensen  <achristensen@webkit.org>
-
-        Remove unnecessary String allocations in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162089
-
-        Reviewed by Chris Dumez.
-
-        No change in behavior except a performance improvement.
-
-        * platform/URL.cpp:
-        (WebCore::assertProtocolIsGood):
-        (WebCore::URL::protocolIs):
-        (WebCore::protocolIs):
-        * platform/URL.h:
-        Added a new protocolIs for non-null-terminated strings from user input.
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        Don't make a String to compare protocols.
-
-2016-09-17  Alex Christensen  <achristensen@webkit.org>
-
-        Inline functions in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162106
-
-        Reviewed by Antti Koivisto.
-
-        No change in behavior. Just make URLParser faster.
-
-        * platform/URLParser.cpp:
-        (WebCore::isC0Control):
-        (WebCore::isC0ControlOrSpace):
-        (WebCore::isTabOrNewline):
-        (WebCore::isInSimpleEncodeSet):
-        (WebCore::isInDefaultEncodeSet):
-        (WebCore::isInUserInfoEncodeSet):
-        (WebCore::isInvalidDomainCharacter):
-        (WebCore::isPercentOrNonASCII):
-        (WebCore::isSlashQuestionOrHash):
-        (WebCore::isWindowsDriveLetter):
-        (WebCore::shouldCopyFileURL):
-        (WebCore::percentEncode):
-        (WebCore::utf8PercentEncode):
-        (WebCore::utf8PercentEncodeQuery):
-        (WebCore::encodeQuery):
-        (WebCore::isDefaultPort):
-        (WebCore::isSpecialScheme):
-        (WebCore::copyASCIIStringUntil):
-        (WebCore::isPercentEncodedDot):
-        (WebCore::isSingleDotPathSegment):
-        (WebCore::isDoubleDotPathSegment):
-        (WebCore::consumeSingleDotPathSegment):
-        (WebCore::consumeDoubleDotPathSegment):
-        (WebCore::serializeIPv4):
-        (WebCore::zeroSequenceLength):
-        (WebCore::findLongestZeroSequence):
-        (WebCore::serializeIPv6Piece):
-        (WebCore::serializeIPv6):
-        (WebCore::parseIPv4Number):
-        (WebCore::pow256):
-        (WebCore::parseIPv4Host):
-        (WebCore::parseIPv6Host):
-        (WebCore::percentDecode):
-        (WebCore::containsOnlyASCII):
-        (WebCore::domainToASCII):
-        (WebCore::hasInvalidDomainCharacter):
-        (WebCore::formURLDecode):
-        (WebCore::serializeURLEncodedForm):
-
-2016-09-17  David Kilzer  <ddkilzer@apple.com>
-
-        MainThreadBridge needs an isolatedCopy() of SecurityOrigin
-        <https://webkit.org/b/162116>
-        <rdar://problem/27525870>
-
-        Reviewed by Carlos Garcia Campos.
-
-        Covered by existing tests.
-
-        * loader/WorkerThreadableLoader.cpp:
-        (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
-        Make an isolatedCopy() of SecurityOrigin here since that's the
-        correct idiom to use when the object is passed from a worker
-        thread back to the main thread.  Fix suggested by Daniel Bates.
-
-2016-09-16  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        [DFG] Introduce IsCellWithType node and unify IsJSArray, IsRegExpObject and newly added IsProxyObject
-        https://bugs.webkit.org/show_bug.cgi?id=162000
-
-        Reviewed by Filip Pizlo.
-
-        * bridge/runtime_array.h:
-        (JSC::RuntimeArray::createStructure):
-
-2016-09-16  Chris Dumez  <cdumez@apple.com>
-
-        Cancelling one frame's load cancels load in other frames that have the same URL as well
-        https://bugs.webkit.org/show_bug.cgi?id=162094
-
-        Reviewed by Antti Koivisto.
-
-        Cancelling one frame's load cancels load in other frames that have the same URL as well.
-
-        So if you have several frames that are loading URL X and you navigate one of the frames
-        to Y, then the load of X will be cancelled and this frame will navigate to Y. All other
-        frames will not load URL X even though they should.
-
-        The issue is that all the DocumentLoaders share the same CachedResource because of the
-        memoryCache. When we call DocumentLoader::stopLoading(), it will cancel the
-        CachedResource's load even though there are several clients for this CachedResource
-        and other clients still want the load.
-
-        The approach chosen in this patch is to not reuse CachedResources that are still
-        loading when trying to load a main resource. This is not the most efficient approach.
-        I still chose this approach because:
-        - It is very unlikely to introduce new bugs.
-        - The change is very simple.
-        - This is a corner case (several iframes having the same URL and cancelling the load in
-          one of them).
-
-        Test: http/tests/navigation/frames-same-url-cancel-load.html
-
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::determineRevalidationPolicy):
-
-2016-09-16  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        ASSERTION FAILED: The string being removed is atomic in the string table of an other thread! iterator != atomicStringTable.end() at Source/WTF/wtf/text/AtomicStringImpl.cpp(453)
-        https://bugs.webkit.org/show_bug.cgi?id=161800
-
-        Reviewed by Žan Doberšek.
-
-        Speculative fix. These strings are created as static objects on a secondary thread, but all
-        static objects are destroyed in exit handlers on the main thread, and AtomicStrings must
-        always be destroyed on the same thread they are created.
-
-        * platform/graphics/texmap/TextureMapperShaderProgram.h:
-
-2016-09-16  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r206055.
-        https://bugs.webkit.org/show_bug.cgi?id=162110
-
-        broke 32bit ARM build (Requested by anttik on #webkit).
-
-        Reverted changeset:
-
-        "Add size assert for RenderElement"
-        https://bugs.webkit.org/show_bug.cgi?id=162096
-        http://trac.webkit.org/changeset/206055
-
-2016-09-16  Brent Fulgham  <bfulgham@apple.com>
-
-        [Win][Direct2D] Provide Color support for Direct2D
-        https://bugs.webkit.org/show_bug.cgi?id=162090
-
-        Reviewed by Dean Jackson.
-
-        Add casting operations to the Color class to allow easy interoption with
-        native Direct2D operations.
-
-        No new tests. No change in behavior.
-
-        * PlatformWin.cmake: Add new Windows implementation file.
-        * platform/graphics/Color.h:
-        * platform/graphics/win/ColorDirect2D.cpp: Added.
-        (WebCore::Color::Color):
-        (WebCore::Color::operator D2D1_COLOR_F):
-
-2016-09-16  Antti Koivisto  <antti@apple.com>
-
-        Add size assert for RenderElement
-        https://bugs.webkit.org/show_bug.cgi?id=162096
-
-        Reviewed by Simon Fraser.
-
-        Also remove the unused m_visibleInViewportState field.
-
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::unregisterForVisibleInViewportCallback):
-        * rendering/RenderElement.h:
-
-2016-09-16  Antti Koivisto  <antti@apple.com>
-
-        Tighten region style map to use RenderElement instead of RenderObject
-        https://bugs.webkit.org/show_bug.cgi?id=162064
-
-        Reviewed by Zalan Bujtas.
-
-        RenderTexts don't have styles of their own so the map can operate on RenderElements.
-
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::willBeRemovedFromTree):
-        (WebCore::RenderElement::removeFromRenderFlowThread):
-        (WebCore::RenderElement::removeFromRenderFlowThreadIncludingDescendants):
-        (WebCore::RenderElement::invalidateFlowThreadContainingBlockIncludingDescendants):
-        * rendering/RenderElement.h:
-        * rendering/RenderFlowThread.cpp:
-        (WebCore::RenderFlowThread::removeFlowChildInfo):
-        * rendering/RenderFlowThread.h:
-        * rendering/RenderNamedFlowFragment.cpp:
-        (WebCore::RenderNamedFlowFragment::computeChildrenStyleInRegion):
-        (WebCore::RenderNamedFlowFragment::setRendererStyleInRegion):
-        (WebCore::RenderNamedFlowFragment::clearObjectStyleInRegion):
-        (WebCore::RenderNamedFlowFragment::setRegionObjectsRegionStyle):
-        (WebCore::RenderNamedFlowFragment::restoreRegionObjectsOriginalStyle):
-        (WebCore::RenderNamedFlowFragment::setObjectStyleInRegion): Deleted.
-        * rendering/RenderNamedFlowFragment.h:
-        * rendering/RenderNamedFlowThread.cpp:
-        (WebCore::RenderNamedFlowThread::clearRenderObjectCustomStyle):
-        (WebCore::RenderNamedFlowThread::removeFlowChildInfo):
-        * rendering/RenderNamedFlowThread.h:
-        * rendering/RenderObject.cpp:
-        (WebCore::RenderObject::willBeRemovedFromTree):
-        (WebCore::RenderObject::removeFromRenderFlowThread): Deleted.
-        (WebCore::RenderObject::removeFromRenderFlowThreadIncludingDescendants): Deleted.
-        (WebCore::RenderObject::invalidateFlowThreadContainingBlockIncludingDescendants): Deleted.
-
-            These can now move to RenderElement.
-
-        * rendering/RenderObject.h:
-
-2016-09-16  Brent Fulgham  <bfulgham@apple.com>
-
-        CaptionUserPreferences's use of the PageGroup's page map is incorrect
-        https://bugs.webkit.org/show_bug.cgi?id=122194
-        <rdar://problem/27332004>
-
-        Reviewed by Zalan Bujtas.
-
-        Avoid the possibility of dereferencing an unsafe iterator by checking
-        for an empty HashSet before using the result of 'begin()'.
-
-        No new tests because there is no change in behavior.
-
-        * page/CaptionUserPreferences.cpp:
-        (WebCore::CaptionUserPreferences::CaptionUserPreferences): Use new safer
-        accessor to retrieve the current page.
-        (WebCore::CaptionUserPreferences::setCaptionDisplayMode): Ditto.
-        (WebCore::CaptionUserPreferences::currentPage): Added.
-        (WebCore::CaptionUserPreferences::userPrefersCaptions): Use new safer
-        accessor to retrieve the current page.
-        (WebCore::CaptionUserPreferences::setUserPrefersCaptions): Ditto.
-        (WebCore::CaptionUserPreferences::userPrefersSubtitles): Ditto.
-        (WebCore::CaptionUserPreferences::setUserPrefersSubtitles): Ditto.
-        (WebCore::CaptionUserPreferences::userPrefersTextDescriptions): Ditto.
-        (WebCore::CaptionUserPreferences::setUserPrefersTextDescriptions): Ditto.
-        * page/CaptionUserPreferences.h:
-
-2016-09-16  Alex Christensen  <achristensen@webkit.org>
-
-        Use Vector<LChar> instead of StringBuilder for the ASCII parts of URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162035
-
-        Reviewed by Chris Dumez.
-
-        StringBuilder::append checks to see whether its StringBuffer is 8-bit or 16-bit each time it is called.
-        When parsing URLs, almost all of the parsed URL is guaranteed to be 8-bit ASCII.
-        Using a Vector<LChar> for this allows us to use uncheckedAppend in some places, and it always eliminates the 8-bit check.
-        This is a ~20% speedup in url parsing.
-
-        Covered by existing API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::isWindowsDriveLetter):
-        (WebCore::percentEncode):
-        (WebCore::utf8PercentEncode):
-        (WebCore::utf8PercentEncodeQuery):
-        (WebCore::encodeQuery):
-        (WebCore::URLParser::copyURLPartsUntil):
-        (WebCore::URLParser::popPath):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::appendNumber):
-        (WebCore::serializeIPv4):
-        (WebCore::serializeIPv6Piece):
-        (WebCore::serializeIPv6):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHost):
-        (WebCore::serializeURLEncodedForm):
-        (WebCore::URLParser::serialize):
-        (WebCore::bufferView): Deleted.
-        * platform/URLParser.h:
-
-2016-09-16  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Get CSSPropertyParserHelpers.cpp compiling
-        https://bugs.webkit.org/show_bug.cgi?id=162078
-
-        Reviewed by Dean Jackson.
-
-        * css/CSSCalculationValue.cpp:
-        (WebCore::hasDoubleValue):
-        (WebCore::checkDepthAndIndex):
-        (WebCore::CSSCalcExpressionNodeParser::parseCalc):
-        (WebCore::CSSCalcExpressionNodeParser::operatorValue):
-        (WebCore::CSSCalcExpressionNodeParser::parseValue):
-        (WebCore::CSSCalcExpressionNodeParser::parseValueTerm):
-        (WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression):
-        (WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression):
-        (WebCore::CSSCalcExpressionNodeParser::parseValueExpression):
-        (WebCore::checkDepthAndIndexDeprecated):
-        (WebCore::CSSCalcExpressionNodeParserDeprecated::parseValueTerm):
-        (WebCore::CSSCalcExpressionNodeParserDeprecated::parseValueMultiplicativeExpression):
-        (WebCore::CSSCalcExpressionNodeParserDeprecated::parseAdditiveValueExpression):
-        (WebCore::CSSCalcValue::create):
-        * css/CSSCalculationValue.h:
-        (WebCore::CSSCalcValue::createCalculationValue):
-        (WebCore::CSSCalcValue::setPermittedValueRange):
-        Switch off the permitted calc value range enum, since we can just use the identical ValueRange enum.
-        Deprecate the CSSParserValueList-based parser by renaming it, and add a new parser that operates
-        on tokens.
-
-        * css/CSSPrimitiveValue.cpp:
-        (WebCore::isValidCSSUnitTypeForDoubleConversion):
-        (WebCore::isStringType):
-        (WebCore::CSSPrimitiveValue::cleanup):
-        (WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble):
-        (WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText):
-        (WebCore::CSSPrimitiveValue::cloneForCSSOM):
-        (WebCore::CSSPrimitiveValue::equals):
-        (WebCore::CSSPrimitiveValue::buildParserValue):
-        * css/CSSPrimitiveValue.h:
-        Add support for CSS_QUIRKY_EMS as a unit type. This will let us eliminate the extra m_isQuirkValue boolean
-        eventually.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::validateCalculationUnit):
-        (WebCore::CSSParser::parseCalculation):
-        * css/parser/CSSParser.h:
-        Switch to ValueRange.
-
-        * css/parser/CSSParserIdioms.cpp:
-        (WebCore::completeURL):
-        * css/parser/CSSParserIdioms.h:
-        Make the URL completion function from CSSParser.cpp available to all.
-
-        * css/parser/CSSParserMode.h:
-        (WebCore::isUnitLessValueParsingEnabledForMode):
-        (WebCore::isUnitLessLengthParsingEnabledForMode): Deleted.
-        Rename this to value, since for now we're not supporting Blink's UserUnits. This means we need to support
-        unitless parsing for times and angles in addition to lengths, making the name of the function inappropriate.
-
-        * css/parser/CSSParserToken.cpp:
-        (WebCore::cssPrimitiveValueUnitFromTrie):
-        Turn quirky ems support back on.
-
-        * css/parser/CSSParserValues.cpp:
-        (WebCore::CSSParserValue::createCSSValue):
-        Support quirky ems.
-
-        * css/parser/CSSPropertyParserHelpers.cpp:
-        (WebCore::CSSPropertyParserHelpers::CalcParser::consumeValue):
-        (WebCore::CSSPropertyParserHelpers::CalcParser::consumeNumber):
-        (WebCore::CSSPropertyParserHelpers::consumeInteger):
-        (WebCore::CSSPropertyParserHelpers::consumePositiveInteger):
-        (WebCore::CSSPropertyParserHelpers::consumeNumber):
-        (WebCore::CSSPropertyParserHelpers::shouldAcceptUnitlessValue):
-        (WebCore::CSSPropertyParserHelpers::consumeLength):
-        (WebCore::CSSPropertyParserHelpers::consumePercent):
-        (WebCore::CSSPropertyParserHelpers::canConsumeCalcValue):
-        (WebCore::CSSPropertyParserHelpers::consumeLengthOrPercent):
-        (WebCore::CSSPropertyParserHelpers::consumeAngle):
-        (WebCore::CSSPropertyParserHelpers::consumeTime):
-        (WebCore::CSSPropertyParserHelpers::consumeIdent):
-        (WebCore::CSSPropertyParserHelpers::consumeIdentRange):
-        (WebCore::CSSPropertyParserHelpers::consumeCustomIdent):
-        (WebCore::CSSPropertyParserHelpers::consumeString):
-        (WebCore::CSSPropertyParserHelpers::consumeUrl):
-        (WebCore::CSSPropertyParserHelpers::parseRGBParameters):
-        (WebCore::CSSPropertyParserHelpers::parseHSLParameters):
-        (WebCore::CSSPropertyParserHelpers::consumeColor):
-        (WebCore::CSSPropertyParserHelpers::consumePositionComponent):
-        (WebCore::CSSPropertyParserHelpers::positionFromOneValue):
-        (WebCore::CSSPropertyParserHelpers::positionFromTwoValues):
-        (WebCore::CSSPropertyParserHelpers::createPrimitiveValuePair):
-        (WebCore::CSSPropertyParserHelpers::positionFromThreeOrFourValues):
-        (WebCore::CSSPropertyParserHelpers::consumePosition):
-        (WebCore::CSSPropertyParserHelpers::consumeOneOrTwoValuedPosition):
-        (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradientPoint):
-        (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradientStopColor):
-        (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradientColorStop):
-        (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradient):
-        (WebCore::CSSPropertyParserHelpers::consumeDeprecatedRadialGradient):
-        (WebCore::CSSPropertyParserHelpers::consumeRadialGradient):
-        (WebCore::CSSPropertyParserHelpers::consumeLinearGradient):
-        (WebCore::CSSPropertyParserHelpers::consumeImageOrNone):
-        (WebCore::CSSPropertyParserHelpers::consumeCrossFade):
-        (WebCore::CSSPropertyParserHelpers::consumeGeneratedImage):
-        (WebCore::CSSPropertyParserHelpers::consumeImageSet):
-        (WebCore::CSSPropertyParserHelpers::consumeImage):
-        * css/parser/CSSPropertyParserHelpers.h:
-        (WebCore::CSSPropertyParserHelpers::isCSSWideKeyword):
-        Lots of changes here. The most important is switching over to RefPtrs and Refs where appropriate, with the
-        requisite WTFMoves. Unit types also have to be converted back to our values, and unitless parsing has
-        to work with consumeTime and consumeAngle.
-
-        * platform/CalculationValue.cpp:
-        (WebCore::CalculationValue::create):
-        * platform/CalculationValue.h:
-        (WebCore::CalculationValue::CalculationValue):
-        Use ValueRange.
-
-        * platform/graphics/Color.cpp:
-        (WebCore::Color::parseHexColor):
-        (WebCore::Color::Color):
-        * platform/graphics/Color.h:
-        Add a StringView-based parseHexColor function.
-
-        * rendering/style/BasicShapes.cpp:
-        (WebCore::BasicShapeCenterCoordinate::updateComputedLength):
-        Use ValueRange
-
-2016-09-16  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-av-audio-bitrate.html
-        https://bugs.webkit.org/show_bug.cgi?id=162052
-
-        Reviewed by Brent Fulgham.
-
-        Fixes tests: imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-av-audio-bitrate.html
-                     imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-av-video-bitrate.html
-
-        The above tests would throw an assertion while trying to invert a range with an invalid end time. Check the
-        validity of trackBuffer.lastEnqueuedPresentationTime before comparing it and assigning it to a range.
-
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::removeCodedFrames):
-
-2016-09-16  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should percent encode the user and password according to spec
-        https://bugs.webkit.org/show_bug.cgi?id=162049
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests based on the web platform tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parseAuthority):
-
-2016-09-16  Alex Christensen  <achristensen@webkit.org>
-
-        Fix more edge cases in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162051
-
-        Reviewed by Tim Horton.
-
-        Added new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        Some edge case handling was wrong. Also, some of the terminal states are not possible
-        to reach because we transition to those states without incrementing the iterator.
-
-2016-09-16  Alex Christensen  <achristensen@webkit.org>
-
-        Fix Windows clean build after r205929
-
-        * DerivedSources.cpp:
-
-2016-09-16  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Fix imported/w3c/web-platform-tests/media-source/mediasource-timestamp-offset.html
-        https://bugs.webkit.org/show_bug.cgi?id=162038
-
-        Reviewed by Eric Carlson.
-
-        The timestampOffset property is no longer specified as an 'unrestricted' double.
-
-        * Modules/mediasource/SourceBuffer.idl:
-
-2016-09-16  Per Arne Vollan  <pvollan@apple.com>
-
-        [Win] Compile fix.
-        https://bugs.webkit.org/show_bug.cgi?id=162059
-
-        Reviewed by Alex Christensen.
-
-        If an include file exists in two places in the include paths, we can end up including the file twice,
-        since #pragma once will not protect us against this.
-
-        * PlatformWin.cmake: Put WebCore forwarding folder first in include list.
-
-2016-09-16  Chris Dumez  <cdumez@apple.com>
-
-        Cloning a textarea does not clone the textarea's value
-        https://bugs.webkit.org/show_bug.cgi?id=156637
-
-        Reviewed by Ryosuke Niwa.
-
-        Update WebKit so that cloning a textarea element also clones its value.
-        This matches the HTML specification after:
-        - https://github.com/whatwg/html/pull/1784
-
-        The new behavior also matches Chrome and Edge.
-
-        Test: imported/w3c/web-platform-tests/html/semantics/forms/the-textarea-element/cloning-steps.html
-
-        * html/HTMLInputElement.cpp:
-        (WebCore::HTMLInputElement::copyNonAttributePropertiesFromElement):
-        * html/HTMLTextAreaElement.cpp:
-        (WebCore::HTMLTextAreaElement::copyNonAttributePropertiesFromElement):
-        * html/HTMLTextAreaElement.h:
-
-2016-09-16  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] Only fire 'resize' events when new sized frame is displayed, not parsed.
-        https://bugs.webkit.org/show_bug.cgi?id=162039
-
-        Reviewed by Eric Carlson.
-
-        Fixes tests: imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-av-framesize.html
-                     imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-v-framesize.html
-
-        Currently, the SourceBufferPrivateAVFObjC will signal a size change as soon as the sample is
-        parsed during appendData(). This is incorrect, as the intrinsic size of the video element
-        should be based on when the sample is displayed, and it causes some W3C test cases to fail.
-        Set a boundary time observer on the player's synchronizer at each sample's presentation time
-        where that sample signals a change in intrinsic size. Flush those observers whenever the
-        samples are flushed un-displayed (typically, during a seek). Because the observer callback
-        may have already been issued (but not executed) at a flush, use a separate weak pointer
-        factory, and invalidate all outstanding size change observer weak pointers when flushing.
-
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::reenqueueMediaForTime): When re-enqueing, enqueue the next decodable
-            sample, even if it doesn't include the current time. This handles cases where the current
-            time is 0, and the first video sample starts at 0.033.
-        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
-        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC):
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize):
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeWillChangeAtTime):
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::flushPendingSizeChanges):
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeChanged): Deleted.
-        * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
-        * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
-        (WebCore::SourceBufferPrivateAVFObjC::processCodedFrame):
-        (WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples):
-        (WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
-
-2016-09-16  Alex Christensen  <achristensen@webkit.org>
-
-        Fix Windows clean build after r205929
-
-        * DerivedSources.cpp:
-
-2016-09-16  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] ASAN crash running imported/w3c/web-platform-tests/media-source/mediasource-remove.html
-        https://bugs.webkit.org/show_bug.cgi?id=162050
-
-        Reviewed by Brent Fulgham.
-
-        SampleMap::removeSample() was accessing the passed-in sample after removing it from its own storage. If
-        the SampleMap held the last reference to the sample, it would end up acessing freed memory. Fix the
-        post-removal access, but also ensure that the caller, SourceBuffer::removeCodedFrames(), retains the
-        sample it passes into removeSample().
-
-        * Modules/mediasource/SampleMap.cpp:
-        (WebCore::SampleMap::removeSample):
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::removeCodedFrames):
-
-2016-09-16  Javier Fernandez  <jfernandez@igalia.com>
-
-        [GTK] Unreviewed build fix after r206007.
-        https://bugs.webkit.org/show_bug.cgi?id=162058
-
-        * css/parser/CSSParserFastPaths.cpp:
-        (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
-
-2016-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [TextureMapper] Scrolling through 01.org/dleyna crashes WebKitWebProcess
-        https://bugs.webkit.org/show_bug.cgi?id=162020
-
-        Reviewed by Žan Doberšek.
-
-        The problem is that we are trying to clone a ReferenceFilterOperation, which is not expected to be cloned, from
-        FilterAnimationValue copy constructor, and FilterOperations are never expected to be nullptr, so we end up
-        crashing. We just need to validate the filters before setting then and before creating a TextureMapperAnimation
-        for them.
-
-        * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
-        (WebCore::GraphicsLayerTextureMapper::filtersCanBeComposited): Return false if there are reference filters or no
-        filters at all. I don't know if we really support other filters, but at least we won't crash for the others.
-        (WebCore::GraphicsLayerTextureMapper::addAnimation): Check if filters can be composited before creating a
-        TextureMapperAnimation.
-        (WebCore::GraphicsLayerTextureMapper::setFilters): Check if filters can be composited before setting them.
-        * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
-        * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
-        (WebCore::CoordinatedGraphicsLayer::filtersCanBeComposited): Return false if there are reference filters or no
-        filters at all. I don't know if we really support other filters, but at least we won't crash for the others.
-        (WebCore::CoordinatedGraphicsLayer::setFilters): Check if filters can be composited before setting them.
-        (WebCore::CoordinatedGraphicsLayer::addAnimation): Check if filters can be composited before creating a
-        TextureMapperAnimation.
-        * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        CachedFont do not need to be updated according Origin/Fetch mode
-        https://bugs.webkit.org/show_bug.cgi?id=161909
-
-        Reviewed by Sam Weinig.
-
-        No change of behavior.
-
-        * loader/cache/CachedFont.h: Ensuring CachedFont is not reused.
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest): Doing direct reuse for CachedFont as WebKit is ignoring CORS for all fonts related stuff.
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        CachedResource should efficiently construct its ResourceRequest
-        https://bugs.webkit.org/show_bug.cgi?id=161609
-
-        Reviewed by Sam Weinig.
-
-        Covered by existing tests.
-
-        Making CachedResourceLoader take a CachedResourceRequest&& when being asked to load resources.
-        Making CachedResource et al take a CachedResourceRequest&& as constructor parameter.
-
-        CachedResource now sets its options at construction time instead of load time.
-        This may change some specific behaviors, for instance when loading manually images.
-
-        Made some refactoring when both the resource and request are needed, for ResourceTimingInformation.
-        Made local copies of some CachedResourceRequest fields so that we do not need it after being WTFMoved.
-        Some of these properties may be put outside CachedResourceRequest in a later refactoring step.
-
-        * css/CSSFontFaceSrcValue.cpp:
-        (WebCore::CSSFontFaceSrcValue::cachedFont):
-        * css/CSSImageSetValue.cpp:
-        (WebCore::CSSImageSetValue::loadBestFitImage):
-        * css/CSSImageValue.cpp:
-        (WebCore::CSSImageValue::loadImage):
-        * css/StyleRuleImport.cpp:
-        (WebCore::StyleRuleImport::requestStyleSheet):
-        * dom/ProcessingInstruction.cpp:
-        (WebCore::ProcessingInstruction::checkStyleSheet):
-        * dom/ScriptElement.cpp:
-        (WebCore::ScriptElement::requestScriptWithCache):
-        * html/HTMLLinkElement.cpp:
-        (WebCore::HTMLLinkElement::process):
-        * html/parser/HTMLResourcePreloader.cpp:
-        (WebCore::HTMLResourcePreloader::preload):
-        * loader/CrossOriginPreflightChecker.cpp:
-        (WebCore::CrossOriginPreflightChecker::startPreflight):
-        * loader/DocumentLoader.cpp:
-        (WebCore::DocumentLoader::startLoadingMainResource):
-        * loader/DocumentThreadableLoader.cpp:
-        (WebCore::DocumentThreadableLoader::loadRequest):
-        * loader/ImageLoader.cpp:
-        (WebCore::ImageLoader::updateFromElement):
-        * loader/LinkLoader.cpp:
-        (WebCore::LinkLoader::preloadIfNeeded):
-        (WebCore::LinkLoader::loadLink):
-        * loader/MediaResourceLoader.cpp:
-        (WebCore::MediaResourceLoader::requestResource):
-        * loader/ResourceTimingInformation.cpp:
-        (WebCore::ResourceTimingInformation::storeResourceTimingInitiatorInformation):
-        * loader/ResourceTimingInformation.h:
-        * loader/TextTrackLoader.cpp:
-        (WebCore::TextTrackLoader::load):
-        * loader/cache/CachedCSSStyleSheet.cpp:
-        (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
-        * loader/cache/CachedCSSStyleSheet.h:
-        * loader/cache/CachedFont.cpp:
-        (WebCore::CachedFont::CachedFont):
-        (WebCore::CachedFont::load):
-        (WebCore::CachedFont::beginLoadIfNeeded):
-        * loader/cache/CachedFont.h:
-        * loader/cache/CachedImage.cpp:
-        (WebCore::CachedImage::CachedImage):
-        (WebCore::CachedImage::load):
-        * loader/cache/CachedImage.h:
-        * loader/cache/CachedRawResource.cpp:
-        (WebCore::CachedRawResource::CachedRawResource):
-        * loader/cache/CachedRawResource.h:
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::CachedResource):
-        (WebCore::CachedResource::load):
-        (WebCore::CachedResource::loadFrom):
-        * loader/cache/CachedResource.h:
-        (WebCore::CachedResource::resourceRequest):
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::createResource):
-        (WebCore::CachedResourceLoader::requestImage):
-        (WebCore::CachedResourceLoader::requestFont):
-        (WebCore::CachedResourceLoader::requestTextTrack):
-        (WebCore::CachedResourceLoader::requestCSSStyleSheet):
-        (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
-        (WebCore::CachedResourceLoader::requestScript):
-        (WebCore::CachedResourceLoader::requestXSLStyleSheet):
-        (WebCore::CachedResourceLoader::requestSVGDocument):
-        (WebCore::CachedResourceLoader::requestLinkResource):
-        (WebCore::CachedResourceLoader::requestMedia):
-        (WebCore::CachedResourceLoader::requestRawResource):
-        (WebCore::CachedResourceLoader::requestMainResource):
-        (WebCore::CachedResourceLoader::shouldUpdateCachedResourceWithCurrentRequest):
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest):
-        (WebCore::CachedResourceLoader::requestResource):
-        (WebCore::CachedResourceLoader::revalidateResource):
-        (WebCore::CachedResourceLoader::loadResource):
-        (WebCore::CachedResourceLoader::reloadImagesIfNotDeferred):
-        (WebCore::CachedResourceLoader::preload):
-        (WebCore::CachedResourceLoader::checkForPendingPreloads):
-        (WebCore::CachedResourceLoader::requestPreload):
-        * loader/cache/CachedResourceLoader.h:
-        * loader/cache/CachedSVGDocument.cpp:
-        (WebCore::CachedSVGDocument::CachedSVGDocument):
-        * loader/cache/CachedSVGDocument.h:
-        * loader/cache/CachedSVGDocumentReference.cpp:
-        (WebCore::CachedSVGDocumentReference::load):
-        * loader/cache/CachedSVGFont.cpp:
-        (WebCore::CachedSVGFont::CachedSVGFont):
-        * loader/cache/CachedSVGFont.h:
-        * loader/cache/CachedScript.cpp:
-        (WebCore::CachedScript::CachedScript):
-        * loader/cache/CachedScript.h:
-        * loader/cache/CachedTextTrack.cpp:
-        (WebCore::CachedTextTrack::CachedTextTrack):
-        * loader/cache/CachedTextTrack.h:
-        * loader/cache/CachedXSLStyleSheet.cpp:
-        (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
-        (WebCore::CachedXSLStyleSheet::didAddClient):
-        * loader/cache/CachedXSLStyleSheet.h:
-        * loader/icon/IconLoader.cpp:
-        (WebCore::IconLoader::startLoading):
-        * platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:
-        (WebCore::WebCoreAVCFResourceLoader::startLoading):
-        * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
-        (WebCore::WebCoreAVFResourceLoader::startLoading):
-        * svg/SVGFEImageElement.cpp:
-        (WebCore::SVGFEImageElement::requestImageResource):
-        * svg/SVGFontFaceUriElement.cpp:
-        (WebCore::SVGFontFaceUriElement::loadFont):
-        * svg/SVGUseElement.cpp:
-        (WebCore::SVGUseElement::updateExternalDocument):
-        * xml/XSLImportRule.cpp:
-        (WebCore::XSLImportRule::loadSheet):
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        [Fetch API] Headers should be combine with ',' and not ', '
-        https://bugs.webkit.org/show_bug.cgi?id=161736
-
-        Reviewed by Sam Weinig.
-
-        Covered by updated tests and http/tests/xmlhttprequest/check-combining-headers.html.
-
-        * loader/CrossOriginAccessControl.cpp:
-        (WebCore::createAccessControlPreflightRequest): Combining with ',' for Access-Control-Request-Headers
-        * platform/network/HTTPHeaderMap.cpp:
-        (HTTPHeaderMap::add): Combining with ','
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        Custom promise-returning functions should not throw if callee has not the expected type
-        https://bugs.webkit.org/show_bug.cgi?id=162011
-
-        Reviewed by Sam Weinig.
-
-        Covered by added test.
-
-        Updating code generator to handle this case.
-        Cleaning related getUserMedia implementation.
-
-        * CMakeLists.txt: Removing Modules/mediastream/MediaDevices.js.
-        * DerivedSources.make: Removing Modules/mediastream/MediaDevices.js.
-        * Modules/mediastream/MediaDevices.idl: Cleaning IDL definition
-        * Modules/mediastream/MediaDevices.js: Removing error throwing and so removing file.
-        * Modules/mediastream/NavigatorUserMedia.js: getUsermMediaFromJS to getUserMedia.
-        * WebCore.xcodeproj/project.pbxproj: Removing Modules/mediastream/MediaDevices.js.
-        * bindings/js/JSDOMPromise.cpp:
-        (WebCore::createRejectedPromiseWithTypeError): Helper routine.
-        * bindings/js/JSDOMPromise.h:
-        * bindings/js/WebCoreBuiltinNames.h: getUsermMediaFromJS to getUserMedia.
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateImplementation): Rejecting promise in case of failing castedThis, but only for custom functions since
-        they are handled differently for non custom methods.
-        (GenerateFunctionCastedThis):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        * bindings/scripts/test/JS/JSTestObj.h:
-        * bindings/scripts/test/TestObj.idl: Adding custom promise test.
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        Link loader should use FetchOptions::mode according its crossOrigin attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161859
-
-        Reviewed by Sam Weinig.
-
-        Tests: http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html
-               http/tests/security/cached-cross-origin-preloading-css-stylesheet.html
-
-        Setting fetch mode according crossorigin attribute for link preload elements.
-        This allows calling onerror callback for CORS failures, which was not the case before the patch.
-
-        Making cached CSS stylesheet reusable accross origins and fetch modes.
-
-        * loader/LinkLoader.cpp:
-        (WebCore::LinkLoader::preloadIfNeeded): Using CachedResourceRequest::setAsPotentiallyCrossOrigin to set fetch mode.
-        * loader/cache/CachedCSSStyleSheet.cpp:
-        (WebCore::CachedCSSStyleSheet::sheetText): clean-up.
-        (WebCore::CachedCSSStyleSheet::setBodyDataFrom): Implementing data init for cached css stylesheets.
-        * loader/cache/CachedCSSStyleSheet.h:
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest): Activating update support for stylesheets.
-        (WebCore::CachedResourceLoader::requestResource): Fixing for matching cached resources that need being reloaded due to different origin/fetch mode.
-
-2016-09-16  Youenn Fablet  <youenn@apple.com>
-
-        [Fetch API] Referrer and Origin header should not be considered as safe request headers
-        https://bugs.webkit.org/show_bug.cgi?id=161902
-
-        Reviewed by Sam Weinig.
-
-        Test: http/tests/fetch/fetch-cors-with-referrer.html and updated WPT tests.
-
-        Removing Origin and Referrer from safe request headers.
-        Making referrer header setting after preflight for fetch API code path.
-
-        Ensuring that no ThreadableLoader client sets Origin or Referrer headers of the ResourceRequest, as they should use the proper mechanisms for that.
-
-        Handling no-referrer referrer special value by setting the referrer-policy to NoReferrer in FetchLoader.
-
-        * Modules/fetch/FetchLoader.cpp:
-        (WebCore::FetchLoader::start): Computing referrer value and handling special "client"and "no-referrer" cases.
-        Passing the value directly to ThreadableLoader.
-        * Modules/fetch/FetchRequest.cpp:
-        (WebCore::FetchRequest::internalRequest): Removing setting of ResourceRequest referrer header.
-        (WebCore::FetchRequest::clone): Removing obsolete FIXME.
-        * Modules/fetch/FetchRequest.h:
-        * loader/CrossOriginAccessControl.cpp:
-        (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): Removing Origin and Referrer headers.
-        * loader/DocumentThreadableLoader.cpp:
-        (WebCore::DocumentThreadableLoader::create): Updated to take a referrer as parameter.
-        (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto.
-        * loader/DocumentThreadableLoader.h: Ditto.
-        * loader/ThreadableLoader.cpp: Ditto.
-        (WebCore::ThreadableLoader::create): Ditto.
-        * loader/ThreadableLoader.h: Ditto.
-        * loader/WorkerThreadableLoader.cpp: Ditto.
-        (WebCore::WorkerThreadableLoader::WorkerThreadableLoader): Ditto.
-        (WebCore::WorkerThreadableLoader::loadResourceSynchronously): Ditto.
-        * loader/WorkerThreadableLoader.h: Ditto.
-        (WebCore::WorkerThreadableLoader::create): Ditto.
-        * platform/network/ResourceRequestBase.cpp:
-        (WebCore::ResourceRequestBase::hasHTTPReferrer): Added to enable asserting that no threadable loader client sets the referrer in the request.
-        * platform/network/ResourceRequestBase.h:
-
-2016-09-15  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Get CSSParserFastPaths.cpp compiling
-        https://bugs.webkit.org/show_bug.cgi?id=162033
-
-        Reviewed by Dean Jackson.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        Add new StyleColor.h/.cpp files to the projecty
-
-        * css/CSSFunctionValue.cpp:
-        (WebCore::CSSFunctionValue::CSSFunctionValue):
-        (WebCore::CSSFunctionValue::customCSSText):
-        (WebCore::CSSFunctionValue::append):
-        (WebCore::CSSFunctionValue::buildParserValueSubstitutingVariables):
-        * css/CSSFunctionValue.h:
-        Tweak CSSFunctionValue so that the name can be represented as a keyword ID instead of a String. Eventually we also
-        want to make CSSFunctionValue subclass CSSValueList rather than referencing a separate CSSValueList as a member. For now
-        I left that alone though in order to not change too much in the old parser.
-
-        * css/CSSProperty.cpp:
-        (WebCore::CSSProperty::isDescriptorOnly):
-        Whether or not a property is only a descriptor, e.g., used in viewport and font face stuff.
-
-        * css/CSSProperty.h:
-        * css/CSSValueKeywords.in:
-        Added new keywords for functions that can be used as values. The new parser uses keywords to represent function names.
-
-        * css/StyleColor.cpp: Added.
-        (WebCore::StyleColor::colorFromKeyword):
-        (WebCore::StyleColor::isColorKeyword):
-        (WebCore::StyleColor::isSystemColor):
-        * css/StyleColor.h: Added.
-        (WebCore::StyleColor::StyleColor):
-        (WebCore::StyleColor::currentColor):
-        (WebCore::StyleColor::isCurrentColor):
-        (WebCore::StyleColor::getColor):
-        (WebCore::StyleColor::resolve):
-        (WebCore::operator==):
-        (WebCore::operator!=):
-        New color helper that contains code for checking and looking up colors. This code is similar to some code we already
-        had in the old CSSParser.cpp file, but this way it can be used outside the parser and/or in different files.
-
-        * css/parser/CSSParserFastPaths.cpp:
-        (WebCore::parseSimpleLengthValue):
-        (WebCore::isColorPropertyID):
-        (WebCore::parseColorIntOrPercentage):
-        (WebCore::fastParseColorInternal):
-        (WebCore::CSSParserFastPaths::parseColor):
-        (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
-        (WebCore::isUniversalKeyword):
-        (WebCore::parseKeywordValue):
-        (WebCore::parseTransformTranslateArguments):
-        (WebCore::parseTransformNumberArguments):
-        (WebCore::parseSimpleTransformValue):
-        (WebCore::transformCanLikelyUseFastPath):
-        (WebCore::parseSimpleTransformList):
-        (WebCore::parseSimpleTransform):
-        (WebCore::CSSParserFastPaths::maybeParseValue):
-        * css/parser/CSSParserFastPaths.h:
-        Get everything compiling in this file. Key changes included reverting to our old unit names, making CSSFunctionValue compatible,
-        adding support for StyleColor, adding support for mode checking of keywords, and fixing up the memory management model so that
-        RefPtrs are used on returns from parsing functions.
-
-        * css/parser/CSSParserIdioms.cpp:
-        (WebCore::isValueAllowedInMode):
-        * css/parser/CSSParserIdioms.h:
-        New helper function for restricting keywords to certain modes only. The -webkit-text color quirk has been moved to this function.
-
-2016-09-15  Brady Eidson  <beidson@apple.com>
-
-        WKWebView.hasOnlySecureContent always returns "YES" after going back to a CachedPage (even if it has http resources).
-        <rdar://problem/27681261> and https://bugs.webkit.org/show_bug.cgi?id=162043
-
-        Reviewed by Brent Fulgham. 
-
-        No new tests (Not possible with current testing infrastructure).
-
-        This adds the infrastructure for WebCore to track whether or not a CachedFrame had insecure content at the time
-        it was cached, and then to report that back to the client when a CachedPage is restored.
-
-        Since "has insecure content" is currently only tracked in the WK2 UI process, that is the only client of this code.
-
-        * history/CachedFrame.cpp:
-        (WebCore::CachedFrame::setHasInsecureContent):
-        * history/CachedFrame.h:
-        (WebCore::CachedFrame::hasInsecureContent):
-
-        * loader/EmptyClients.h:
-
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::receivedFirstData):
-        (WebCore::FrameLoader::commitProvisionalLoad):
-        (WebCore::FrameLoader::dispatchDidCommitLoad):
-        * loader/FrameLoader.h:
-
-        * loader/FrameLoaderClient.h:
-
-        * loader/FrameLoaderTypes.h:
-
-2016-09-13  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] web-platform-test/media-source/mediasource-remove.html test failing
-        https://bugs.webkit.org/show_bug.cgi?id=161950
-
-        Reviewed by Eric Carlson.
-
-        Fixes test: web-platform-test/media-source/mediasource-remove.html
-
-        The mediasource-remove.html test was failing in a number of ways:
-
-        - Tests with invalid start or end times were not throwing the correct exception
-          code, or not throwing exception codes at all
-
-        - Tests were showing an incorrect start buffered range at the beginning of each test.
-
-        - Tests which removed samples were not getting the expected buffered values at the end
-          each test.
-
-        For the exception failures, update the implementation of abort() and remove() to throw
-        the correct exceptions at the correct times.
-
-        For the incorrect initial buffered range, update our buffered calculations to store
-        individual PlatformTimeRanges on each TrackBuffer, and coalesce them into a single
-        value when an append operation completes, a remove operation completes, or when the
-        MediaSource's ready state changes.
-
-        For the incorrect buffered ranges after removal, this is caused because the "samples"
-        that make up an audio track are actually a collection of a large number of individual
-        samples.  So when we are asked to remove media data in a given range, break these audio
-        meta-samples into two pieces at the removal points. This allows the removal algorithm
-        to operate on a individual audio sample basis. (We should look into using this technique
-        when audio samples are evicted during an append operation.) This requires adding some
-        methods to MediaSample and it's concrete subclasses to "divide" a sample into two at
-        a given presentation time.
-
-        Fixing these behaviors, however, breaks the media-source-end-of-stream-buffered.html
-        test, which expects the buffered range for the entire element to expand to the maximum
-        buffered time of any of the element's MediaSource's active sourceBuffers. To fix this,
-        update the MediaSource's monitorSourceBuffer() implementation to match the current
-        specification. The new spec no longer queries the individual SourceBuffers, but rather
-        queries the already coalesced buffered ranges. So move the helper methods hasCurrentTime()
-        hasFutureTime(), and canPlayThrough() up into MediaSource from SourceBuffer. Also, update
-        seekToTime, since it has the same problem as monitorSourceBuffer().
-
-        However, this breaks the media-source-monitor-source-buffers.html test, which appends
-        10s of movie data instantaneously, then never appends again. The SourceBuffer's
-        monitorBufferingRate() method only re-evaluates the rate after data has been appended,
-        so the SourceBuffer thinks it's buffered data at a prodigious rate forever. Instead,
-        allow the SourceBuffer to continuously re-evalute it's buffering rate by modifying the
-        exponential moving average so that the co-efficient scales based on how frequently the
-        method is called. Call the method more often, and the moving average changes less quickly,
-        and it means that when media is stalled out at the end of a buffered range, the readyState
-        of a video element will eventually drop to HAVE_CURRENT_DATA when the average buffering
-        rate falls below the level where playback would continue uninterrupted.
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::seekToTime):
-        (WebCore::MediaSource::currentTimeFudgeFactor):
-        (WebCore::MediaSource::hasBufferedTime):
-        (WebCore::MediaSource::hasCurrentTime):
-        (WebCore::MediaSource::hasFutureTime):
-        (WebCore::MediaSource::monitorSourceBuffers):
-        * Modules/mediasource/MediaSource.h:
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::abort):
-        (WebCore::SourceBuffer::remove):
-        (WebCore::SourceBuffer::abortIfUpdating):
-        (WebCore::SourceBuffer::removeCodedFrames):
-        (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
-        (WebCore::SourceBuffer::updateBufferedFromTrackBuffers):
-        (WebCore::SourceBuffer::canPlayThroughRange):
-        (WebCore::SourceBuffer::monitorBufferingRate):
-        (WebCore::currentTimeFudgeFactor): Deleted.
-        (WebCore::SourceBuffer::hasCurrentTime): Deleted.
-        (WebCore::SourceBuffer::hasFutureTime): Deleted.
-        (WebCore::SourceBuffer::canPlayThrough): Deleted.
-        * platform/MediaSample.h:
-        * platform/cf/CoreMediaSoftLink.cpp:
-        * platform/cf/CoreMediaSoftLink.h:
-        * platform/graphics/avfoundation/MediaSampleAVFObjC.h:
-        * platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
-        (WebCore::MediaSampleAVFObjC::isDivisable):
-        (WebCore::MediaSampleAVFObjC::divide):
-        * platform/mock/mediasource/MockSourceBufferPrivate.cpp:
-
-2016-09-15  Zalan Bujtas  <zalan@apple.com>
-
-        ASSERTION FAILED: willBeComposited == needsToBeComposited(layer) in WebCore::RenderLayerCompositor::computeCompositingRequirements
-        https://bugs.webkit.org/show_bug.cgi?id=151097
-        <rdar://problem/27711678>
-
-        Reviewed by Simon Fraser.
-
-        This patch ensures that when will-change property triggers stacking context, we make the associated layer a non-normal flow layer.
-        (This is similar to what any other stacking context-triggering CSS property does.)  
-
-        Test: compositing/assert-on-will-change-transform-with-composited-descendant.html
-
-        * rendering/RenderLayer.cpp:
-        (WebCore::RenderLayer::calculateClipRects):
-
-2016-09-15  Zalan Bujtas  <zalan@apple.com>
-
-        Move RenderObject::shouldRespectImageOrientation to RenderElement.
-        https://bugs.webkit.org/show_bug.cgi?id=162028
-
-        Reviewed by Antti Koivisto.
-
-        Tighten the type for imageSizeForRenderer/canRender so that RenderObject::shouldRespectImageOrientation could
-        be moved to RenderElement.
-
-        No change in functionality.
-
-        * loader/cache/CachedImage.cpp:
-        (WebCore::CachedImage::imageSizeForRenderer):
-        * loader/cache/CachedImage.h:
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::shouldRespectImageOrientation):
-        * rendering/RenderElement.h:
-        * rendering/RenderObject.cpp:
-        (WebCore::RenderObject::shouldRespectImageOrientation): Deleted.
-        * rendering/RenderObject.h:
-        * rendering/style/StyleCachedImage.cpp:
-        (WebCore::StyleCachedImage::canRender):
-        * rendering/style/StyleCachedImage.h:
-        * rendering/style/StyleImage.h:
-        (WebCore::StyleImage::canRender):
-
-2016-09-15  Anders Carlsson  <andersca@apple.com>
-
-        Fix build.
-
-        * platform/spi/cocoa/PassKitSPI.h:
-
-2016-09-15  Alex Christensen  <achristensen@webkit.org>
-
-        Use character class table in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=161997
-
-        Reviewed by Chris Dumez.
-
-        No change in behavior except a performance improvement.
-        
-        Before this change, URLParser took 1.514x as long to run my URL Parsing benchmark as URL::parse
-        with a standard deviation of the ration of the runtimes of 0.063 after 8 runs with each parser.
-        After this change, URLParser took 1.328x as long with a standard deviation of 0.037.
-        This isn't the cleanest data, but it's enough to convince me that this is a significant improvement.
-
-        * platform/URLParser.cpp:
-        (WebCore::isC0Control):
-        (WebCore::isC0ControlOrSpace):
-        (WebCore::isTabOrNewline):
-        (WebCore::isInSimpleEncodeSet):
-        (WebCore::isInDefaultEncodeSet):
-        (WebCore::isInUserInfoEncodeSet):
-        (WebCore::isInvalidDomainCharacter):
-        (WebCore::isSlashQuestionOrHash):
-        (WebCore::shouldPercentEncodeQueryByte):
-        (WebCore::shouldCopyFileURL):
-        (WebCore::isSingleDotPathSegment):
-        (WebCore::URLParser::parse):
-
-2016-09-15  Keith Miller  <keith_miller@apple.com>
-
-        Pragma out undefined-var-template warnings in JSC for JSObjects that are templatized
-        https://bugs.webkit.org/show_bug.cgi?id=161985
-
-        Reviewed by Alex Christensen.
-
-        Delete unneeded using, which broke the build on newer versions of clang.
-
-        * bridge/objc/WebScriptObject.mm:
-
-2016-09-15  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Check for invalid characters in the host
-        https://bugs.webkit.org/show_bug.cgi?id=162023
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::failure):
-        (WebCore::URLParser::parseHost):
-
-2016-09-15  Antti Koivisto  <antti@apple.com>
-
-        Remove some extra spaces.
-
-        * rendering/TextDecorationPainter.cpp:
-        (WebCore::collectStylesForRenderer):
-
-2016-09-15  Alex Christensen  <achristensen@webkit.org>
-
-        Use efficient iterators in URLParser
-        https://bugs.webkit.org/show_bug.cgi?id=162007
-
-        Reviewed by Tim Horton.
-
-        URLParser used to use StringView::CodePoints::Iterator, which needs to check if
-        the StringView is 8-bit or 16-bit every time it does anything.
-        I wrote a new CodePointIterator template which already knows whether it is iterating
-        8-bit or 16-bit characters, so it does not need to do the checks each time it gets a
-        code point or advances to the next code point.
-
-        No change in behavior except a performance increase.
-        Covered by existing tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::CodePointIterator::CodePointIterator):
-        (WebCore::CodePointIterator::operator==):
-        (WebCore::CodePointIterator::operator!=):
-        (WebCore::CodePointIterator::operator=):
-        (WebCore::CodePointIterator::atEnd):
-        (WebCore::CodePointIterator<LChar>::operator):
-        (WebCore::CodePointIterator<UChar>::operator):
-        (WebCore::isWindowsDriveLetter):
-        (WebCore::shouldCopyFileURL):
-        (WebCore::isPercentEncodedDot):
-        (WebCore::isSingleDotPathSegment):
-        (WebCore::isDoubleDotPathSegment):
-        (WebCore::consumeSingleDotPathSegment):
-        (WebCore::consumeDoubleDotPathSegment):
-        (WebCore::URLParser::failure):
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-        (WebCore::parseIPv4Number):
-        (WebCore::parseIPv4Host):
-        (WebCore::parseIPv6Host):
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHost):
-        * platform/URLParser.h:
-
-2016-09-14  Antti Koivisto  <antti@apple.com>
-
-        Move text decoration style computation from RenderObject to TextDecorationPainter
-        https://bugs.webkit.org/show_bug.cgi?id=162004
-
-        Reviewed by Zalan Bujtas.
-
-        It is mostly an implementation detail of TextDecorationPainter.
-
-        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
-        (AXAttributeStringSetStyle):
-        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
-        (AXAttributeStringSetStyle):
-        * rendering/RenderObject.cpp:
-        (WebCore::decorationColor): Deleted.
-        (WebCore::RenderObject::getTextDecorationColorsAndStyles): Deleted.
-        * rendering/RenderObject.h:
-        * rendering/TextDecorationPainter.cpp:
-        (WebCore::TextDecorationPainter::TextDecorationPainter):
-        (WebCore::TextDecorationPainter::paintTextDecoration):
-        (WebCore::decorationColor):
-        * rendering/TextDecorationPainter.h:
-
-2016-09-15  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Make stylesheets parse using the new parser if the setting is enabled
-        https://bugs.webkit.org/show_bug.cgi?id=162018
-
-        Reviewed by Zalan Bujtas.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParserContext::CSSParserContext):
-        (WebCore::CSSParser::parseSheet):
-        * css/parser/CSSParserMode.h:
-
-2016-09-15  Fujii Hironori  <Hironori.Fujii@sony.com>
-
-        [CMake] Refactor GENERATE_BINDINGS
-        https://bugs.webkit.org/show_bug.cgi?id=161854
-
-        Reviewed by Gyuyoung Kim.
-
-        * CMakeLists.txt: Changed the arguments of GENERATE_BINDINGS to
-        new style.  Removed add_custom_command of preprocess-idls.pl which
-        is moved to GENERATE_BINDINGS.  Moved IDL_ATTRIBUTES_FILE into
-        GENERATE_BINDINGS.
-
-2016-09-14  Anders Carlsson  <andersca@apple.com>
-
-        Add CSS -webkit-appearance property for Apple Pay buttons
-        https://bugs.webkit.org/show_bug.cgi?id=161986
-        rdar://problem/27459216
-
-        Reviewed by Dean Jackson.
-
-        Add a new -webkit-appearance property, "-apple-pay-button".
-        Also, add two properties, "-apple-pay-button-type" and "-apple-pay-button-style".
-
-        * WebCore.xcodeproj/project.pbxproj:
-        Add RenderThemeCocoa.h and RenderThemeCocoa.mm.
-
-        * css/CSSComputedStyleDeclaration.cpp:
-        (WebCore::ComputedStyleExtractor::propertyValue):
-        Handle CSSPropertyApplePayButtonStyle and CSSPropertyApplePayButtonType.
-
-        * css/CSSPrimitiveValueMappings.h:
-        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
-        (WebCore::CSSPrimitiveValue::operator ApplePayButtonStyle):
-        (WebCore::CSSPrimitiveValue::operator ApplePayButtonType):
-        Add ApplePayButtonStyle and ApplePayButtonType conversion routines.
-
-        * css/CSSPropertyNames.in:
-        Add -apple-pay-button-style and -apple-pay-button-type.
-
-        * css/CSSValueKeywords.in:
-        Add CSS values.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::isValidKeywordPropertyAndValue):
-        Handle CSSPropertyApplePayButtonStyle and CSSPropertyApplePayButtonType.
-
-        * css/parser/CSSParserFastPaths.cpp:
-        (WebCore::CSSParserFastPaths::isKeywordPropertyID):
-        Handle CSSPropertyApplePayButtonStyle and CSSPropertyApplePayButtonType.
-
-        (WebCore::isAppleLegacyCSSPropertyKeyword):
-        New function that returns whether the CSS property should be rewritten to -webkit-.
-        We want to rewrite -apple- but not -apple-pay-.
-
-        (WebCore::cssPropertyID):
-        Use the newly added isAppleLegacyCSSPropertyKeyword.
-
-        (WebCore::isAppleLegacyCSSValueKeyword):
-        Check for "-apple-pay-" in addition to "-apple-system-".
-
-        * platform/ThemeTypes.h:
-        Add ApplePayButtonPart.
-
-        * platform/spi/cocoa/PassKitSPI.h:
-        Add PKDrawApplePayButton declaration.
-
-        * rendering/RenderTheme.cpp:
-        (WebCore::RenderTheme::adjustStyle):
-        Handle ApplePayButtonPart.
-
-        (WebCore::RenderTheme::paint):
-        Handle ApplePayButtonPart.
-
-        * rendering/RenderTheme.h:
-        (WebCore::RenderTheme::adjustApplePayButtonStyle):
-        (WebCore::RenderTheme::paintApplePayButton):
-        Add new functions.
-
-        * rendering/RenderThemeCocoa.h: Added.
-        * rendering/RenderThemeCocoa.mm: Added.
-        (WebCore::RenderThemeCocoa::adjustApplePayButtonStyle):
-        Adjust the minimum width and minimum height accordingly.
-
-        (WebCore::toPKPaymentButtonStyle):
-        (WebCore::toPKPaymentButtonType):
-        Helper functions that convert our WebCore types to PK types.
-
-        (WebCore::RenderThemeCocoa::paintApplePayButton):
-        Call PKDrawApplePayButton.
-
-        * rendering/RenderThemeIOS.h:
-        * rendering/RenderThemeMac.h:
-        Inherit from RenderThemeCocoa.
-
-        * rendering/style/RenderStyle.h:
-        (WebCore::RenderStyle::applePayButtonStyle):
-        (WebCore::RenderStyle::applePayButtonType):
-        (WebCore::RenderStyle::setApplePayButtonStyle):
-        (WebCore::RenderStyle::setApplePayButtonType):
-        (WebCore::RenderStyle::initialApplePayButtonStyle):
-        (WebCore::RenderStyle::initialApplePayButtonType):
-        * rendering/style/RenderStyleConstants.h:
-        * rendering/style/StyleRareInheritedData.cpp:
-        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
-        (WebCore::StyleRareInheritedData::operator==):
-        * rendering/style/StyleRareInheritedData.h:
-        Add new style members for the button style and button type properties.
-
-2016-09-15  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Implement fit-content track size
-        https://bugs.webkit.org/show_bug.cgi?id=161379
-
-        Reviewed by Manuel Rego Casasnovas.
-
-        This implements the new <fit-content> track size which is defined as follows: "Represents
-        the formula min(max-content, max(auto, argument)), which is calculated similar to auto
-        (i.e. minmax(auto, max-content)), except that the track size is clamped at argument if it is
-        greater than the auto minimum."
-
-        From the parsing POV fit-content was implemented as a new type of function which only takes
-        one argument. That forced us to refactor some code because minmax() was the only allowed
-        function for <track-size>s so far.
-
-        The implementation key is a new attribute in GridTrack called growthLimitCap which is
-        precisely the single attribute of fit-content(). Some parts of the track sizing algorithm
-        were adapted to this change like for example the sorting of tracks by growth potential (we
-        need to consider the caps).
-
-        Tests: fast/css-grid-layout/fit-content-columns.html
-        fast/css-grid-layout/fit-content-rows.html
-
-        * css/CSSComputedStyleDeclaration.cpp:
-        (WebCore::specifiedValueForGridTrackSize): Added support for fit-content sizes.
-        * css/StyleBuilderConverter.h:
-        (WebCore::StyleBuilderConverter::createGridTrackSize): Added support for fit-content sizes.
-        * css/parser/CSSParser.cpp:
-        (WebCore::isGridTrackFixedSized): Added support for fit-content sizes.
-        (WebCore::CSSParser::parseGridTrackSize): Added support for parsing fit-content() functions.
-        * css/parser/CSSPropertyParser.cpp: Added support for parsing fit-content() functions so
-        it'll be available once we switch to the new parser.
-        * rendering/RenderGrid.cpp:
-        (WebCore::GridTrack::baseSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::growthLimit): Ditto.
-        (WebCore::GridTrack::setGrowthLimit): Added an ASSERT to check that the growth limit is
-        never higher than the cap.
-        (WebCore::GridTrack::infiniteGrowthPotential):
-        (WebCore::GridTrack::plannedSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::tempSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::setTempSize): Added as we no longer return a reference in tempSize().
-        (WebCore::GridTrack::growTempSize): New utility function which increases the tempSize.
-        (WebCore::GridTrack::setInfinitelyGrowable):
-        (WebCore::GridTrack::setGrowthLimitCap): Added.
-        (WebCore::GridTrack::growthLimitCap): Ditto.
-        (WebCore::GridTrack::growthLimitIsInfinite): Made private.
-        (WebCore::RenderGrid::GridSizingData::freeSpace): Renamed from freeSpaceForDirection.
-        (WebCore::RenderGrid::GridSizingData::availableSpace): We now cache the available space as
-        it is used to compute relative (percentage) sizes.
-        (WebCore::RenderGrid::GridSizingData::setAvailableSpace): Ditto.
-        (WebCore::RenderGrid::GridSizingData::setFreeSpace): Renamed from setFreeSpaceForDirection.
-        (WebCore::RenderGrid::computeTrackSizesForDirection): Receives the available space instead
-        of the free space.
-        (WebCore::RenderGrid::computeIntrinsicLogicalWidths): Properly initialize free and available
-        spaces.
-        (WebCore::RenderGrid::computeIntrinsicLogicalHeight): Ditto.
-        (WebCore::RenderGrid::computeUsedBreadthOfGridTracks): Use available space to initialize the
-        track sizes. Also use sizingOperation to decide whether or not sizes are indefinite. Last
-        but not least, added support for fit-content tracks.
-        (WebCore::RenderGrid::computeUsedBreadthOfMinLength): Pass a GridTrackSize instead of a GridLength.
-        (WebCore::RenderGrid::computeUsedBreadthOfMaxLength): Ditto.
-        (WebCore::RenderGrid::gridTrackSize): Added support for fit-content.
-        (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions): Ditto.
-        (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForNonSpanningItems): Ditto.
-        (WebCore::trackSizeForTrackSizeComputationPhase):
-        (WebCore::sortByGridTrackGrowthPotential): Reworked the function so it properly sorts tracks
-        with growth limit caps to support fit-content().
-        (WebCore::clampGrowthShareIfNeeded): Clamps the given growthShare passed as argument to the
-        track growth limit cap.
-        (WebCore::RenderGrid::distributeSpaceToTracks): Use the new setTempSize() method. Also sort
-        the selected tracks to grow over growth limits in order to respect the track caps eventually
-        set by fit-content (otherwise those tracks could indefinitely grow over the specified value).
-        (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth): Use the new defined functions.
-        (WebCore::RenderGrid::applyStretchAlignmentToTracksIfNeeded): Use freeSpace().
-        (WebCore::RenderGrid::populateGridPositionsForDirection): Ditto.
-        (WebCore::GridTrack::infinitelyGrowable): Deleted.
-        (WebCore::RenderGrid::GridSizingData::freeSpaceForDirection): Deleted.
-        (WebCore::RenderGrid::GridSizingData::setFreeSpaceForDirection): Deleted.
-        (WebCore::RenderGrid::trackSizeForTrackSizeComputationPhase): Deleted.
-        * rendering/RenderGrid.h: Changed the signature of some methods. Moved
-        TrackSizeComputationPhase out of the RenderGrid class.
-        * rendering/style/GridTrackSize.h:
-        (WebCore::GridTrackSize::GridTrackSize): Added some extra documentation. Added a new
-        attribute to the constructor to support fit-content GridTrackSizes.
-        (WebCore::GridTrackSize::fitContentTrackBreadth): New method which returns the growth limit
-        cap set by fit-content().
-        (WebCore::GridTrackSize::minTrackBreadth):
-        (WebCore::GridTrackSize::isFitContent): Added.
-        (WebCore::GridTrackSize::length): Deleted.
-        (WebCore::GridTrackSize::isPercentage): Deleted.
-
-2016-09-15  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Fix a dangling reference
-        https://bugs.webkit.org/show_bug.cgi?id=161739
-
-        Reviewed by Alexey Proskuryakov.
-
-        The code was trying to get a reference to a private attribute of a temporary object returned
-        by gridTrackSize().
-
-        * rendering/RenderGrid.cpp:
-        (WebCore::RenderGrid::assumedRowsSizeForOrthogonalChild):
-
-2016-09-15  Sergio Villar Senin  <svillar@igalia.com>
-
-        Unreviewed, rolling out r205966.
-
-        Triggered some assertions
-
-        Reverted changeset:
-
-        "[css-grid] Implement fit-content track size"
-        https://bugs.webkit.org/show_bug.cgi?id=161379
-        http://trac.webkit.org/changeset/205966
-
-2016-09-15  Zalan Bujtas  <zalan@apple.com>
-
-        Cleanup RenderLayer::shouldBeNormalFlowOnly
-        https://bugs.webkit.org/show_bug.cgi?id=161981
-
-        Reviewed by Simon Fraser.
-
-        This patch changes the logic of figuring about if a particular layer is normal flow only by simply checking
-        if the layer creates a stacking context. If it does, we assume that it can't be a normal flow layer anymore.
-        This patch slightly changes behaviour by making layers with isolation and reflection to be non normal flow layers anymore.    
-
-        Covered by existing testcases.
-
-        * rendering/RenderLayer.cpp:
-        (WebCore::RenderLayer::calculateClipRects):
-
-2016-09-07  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Implement fit-content track size
-        https://bugs.webkit.org/show_bug.cgi?id=161379
-
-        Reviewed by Manuel Rego Casasnovas.
-
-        This implements the new <fit-content> track size which is defined as follows: "Represents
-        the formula min(max-content, max(auto, argument)), which is calculated similar to auto
-        (i.e. minmax(auto, max-content)), except that the track size is clamped at argument if it is
-        greater than the auto minimum."
-
-        From the parsing POV fit-content was implemented as a new type of function which only takes
-        one argument. That forced us to refactor some code because minmax() was the only allowed
-        function for <track-size>s so far.
-
-        The implementation key is a new attribute in GridTrack called growthLimitCap which is
-        precisely the single attribute of fit-content(). Some parts of the track sizing algorithm
-        were adapted to this change like for example the sorting of tracks by growth potential (we
-        need to consider the caps).
-
-        Tests: fast/css-grid-layout/fit-content-columns.html
-        fast/css-grid-layout/fit-content-rows.html
-
-        * css/CSSComputedStyleDeclaration.cpp:
-        (WebCore::specifiedValueForGridTrackSize): Added support for fit-content sizes.
-        * css/StyleBuilderConverter.h:
-        (WebCore::StyleBuilderConverter::createGridTrackSize): Added support for fit-content sizes.
-        * css/parser/CSSParser.cpp:
-        (WebCore::isGridTrackFixedSized): Added support for fit-content sizes.
-        (WebCore::CSSParser::parseGridTrackSize): Added support for parsing fit-content() functions.
-        * css/parser/CSSPropertyParser.cpp: Added support for parsing fit-content() functions so
-        it'll be available once we switch to the new parser.
-        * rendering/RenderGrid.cpp:
-        (WebCore::GridTrack::baseSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::growthLimit): Ditto.
-        (WebCore::GridTrack::setGrowthLimit): Added an ASSERT to check that the growth limit is
-        never higher than the cap.
-        (WebCore::GridTrack::infiniteGrowthPotential):
-        (WebCore::GridTrack::plannedSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::tempSize): Just return a LayoutUnit, the return value optimization will
-        keep it fast in any case.
-        (WebCore::GridTrack::setTempSize): Added as we no longer return a reference in tempSize().
-        (WebCore::GridTrack::growTempSize): New utility function which increases the tempSize.
-        (WebCore::GridTrack::setInfinitelyGrowable):
-        (WebCore::GridTrack::setGrowthLimitCap): Added.
-        (WebCore::GridTrack::growthLimitCap): Ditto.
-        (WebCore::GridTrack::growthLimitIsInfinite): Made private.
-        (WebCore::RenderGrid::GridSizingData::freeSpace): Renamed from freeSpaceForDirection.
-        (WebCore::RenderGrid::GridSizingData::availableSpace): We now cache the available space as
-        it is used to compute relative (percentage) sizes.
-        (WebCore::RenderGrid::GridSizingData::setAvailableSpace): Ditto.
-        (WebCore::RenderGrid::GridSizingData::setFreeSpace): Renamed from setFreeSpaceForDirection.
-        (WebCore::RenderGrid::computeTrackSizesForDirection): Receives the available space instead
-        of the free space.
-        (WebCore::RenderGrid::computeIntrinsicLogicalWidths): Properly initialize free and available
-        spaces.
-        (WebCore::RenderGrid::computeIntrinsicLogicalHeight): Ditto.
-        (WebCore::RenderGrid::computeUsedBreadthOfGridTracks): Use available space to initialize the
-        track sizes. Also use sizingOperation to decide whether or not sizes are indefinite. Last
-        but not least, added support for fit-content tracks.
-        (WebCore::RenderGrid::computeUsedBreadthOfMinLength): Pass a GridTrackSize instead of a GridLength.
-        (WebCore::RenderGrid::computeUsedBreadthOfMaxLength): Ditto.
-        (WebCore::RenderGrid::gridTrackSize): Added support for fit-content.
-        (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions): Ditto.
-        (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForNonSpanningItems): Ditto.
-        (WebCore::trackSizeForTrackSizeComputationPhase):
-        (WebCore::sortByGridTrackGrowthPotential): Reworked the function so it properly sorts tracks
-        with growth limit caps to support fit-content().
-        (WebCore::clampGrowthShareIfNeeded): Clamps the given growthShare passed as argument to the
-        track growth limit cap.
-        (WebCore::RenderGrid::distributeSpaceToTracks): Use the new setTempSize() method. Also sort
-        the selected tracks to grow over growth limits in order to respect the track caps eventually
-        set by fit-content (otherwise those tracks could indefinitely grow over the specified value).
-        (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth): Use the new defined functions.
-        (WebCore::RenderGrid::applyStretchAlignmentToTracksIfNeeded): Use freeSpace().
-        (WebCore::RenderGrid::populateGridPositionsForDirection): Ditto.
-        (WebCore::GridTrack::infinitelyGrowable): Deleted.
-        (WebCore::RenderGrid::GridSizingData::freeSpaceForDirection): Deleted.
-        (WebCore::RenderGrid::GridSizingData::setFreeSpaceForDirection): Deleted.
-        (WebCore::RenderGrid::trackSizeForTrackSizeComputationPhase): Deleted.
-        * rendering/RenderGrid.h: Changed the signature of some methods. Moved
-        TrackSizeComputationPhase out of the RenderGrid class.
-        * rendering/style/GridTrackSize.h:
-        (WebCore::GridTrackSize::GridTrackSize): Added some extra documentation. Added a new
-        attribute to the constructor to support fit-content GridTrackSizes.
-        (WebCore::GridTrackSize::fitContentTrackBreadth): New method which returns the growth limit
-        cap set by fit-content().
-        (WebCore::GridTrackSize::minTrackBreadth):
-        (WebCore::GridTrackSize::isFitContent): Added.
-        (WebCore::GridTrackSize::length): Deleted.
-        (WebCore::GridTrackSize::isPercentage): Deleted.
-
-2016-09-15  Alejandro G. Castro  <alex@igalia.com>
-
-        Fix build warnings in the mediastream code
-        https://bugs.webkit.org/show_bug.cgi?id=161957
-
-        Reviewed by Philippe Normand.
-
-        * platform/mediastream/MediaConstraints.cpp:
-        (WebCore::MediaConstraint::create): Added assertion and mock return.
-        * platform/mediastream/RealtimeMediaSourceSupportedConstraints.cpp:
-        (WebCore::RealtimeMediaSourceSupportedConstraints::nameForConstraint):
-        Added assertion and mock return.
-        (WebCore::RealtimeMediaSourceSupportedConstraints::supportsConstraint):
-        Added assertion and mock return.
-
-2016-09-15  Youenn Fablet  <youenn@apple.com>
-
-        Rebase binding tests after r205953
-        https://bugs.webkit.org/show_bug.cgi?id=162012
-
-        Unreviewed.
-
-        * bindings/scripts/test/JS/JSTestNode.cpp:
-        (WebCore::jsTestNodePrototypeFunctionTestWorkerPromise):
-        (WebCore::jsTestNodePrototypeFunctionTestWorkerPromisePromise):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunction):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgument):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithException):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithExceptionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgument):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunction):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionPromise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithException):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithExceptionPromise):
-
-2016-09-15  Alejandro G. Castro  <alex@igalia.com>
-
-        [WebRTC][OpenWebRTC] crash in maybeHandleChangeMutedState
-        https://bugs.webkit.org/show_bug.cgi?id=161619
-
-        Added OpenWebRTC support to the RealtimeMediaSource mock class.
-
-        Reviewed by Eric Carlson.
-
-        Fixed tests.
-
-        * platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h:
-        (WebCore::RealtimeMediaSourceOwr::RealtimeMediaSourceOwr): Allowed
-        inheritance of the class, required to use it when creating the
-        mock class. Added a new constructor to create the class with null
-        mediastream.
-        * platform/mock/MockRealtimeMediaSource.cpp:
-        (WebCore::MockRealtimeMediaSource::MockRealtimeMediaSource): Use
-        the new BaseRealtimeMediaSourceClass in the constructor.
-        * platform/mock/MockRealtimeMediaSource.h: Added a new
-        BaseRealtimeMediaSourceClass defined using the
-        RealtimeMediaSourceOwr class for OpenWebRTC platform.
-
-2016-09-15  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Fix intrinsic size computation with flexible sized tracks
-        https://bugs.webkit.org/show_bug.cgi?id=161903
-
-        Reviewed by Manuel Rego Casasnovas.
-
-        This is fixing a regression added in r192154. When computing the min content size of a grid
-        container (min preferred logical width) we should not take into account the fr tracks. As
-        stated in the early versions of the spec that size is the sum of the tracks' base sizes
-        before running the maximize tracks step.
-
-        That regression was causing sizing issues in grids with fr tracks both when under
-        min|max-content constrains and also when used as grid items (in nested grids).
-
-        * rendering/RenderGrid.cpp:
-        (WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
-
-2016-09-13  Sergio Villar Senin  <svillar@igalia.com>
-
-        [css-grid] Too many gaps with trailing collapsing tracks
-        https://bugs.webkit.org/show_bug.cgi?id=161905
-
-        Reviewed by Darin Adler.
-
-        The total number and size of gaps were incorrectly computed whenever there were trailing
-        collapsed tracks (with collapsed gaps). The problem was that we were trying to optimize too
-        much the amount of hash table queries required to know the gaps between two lines. We were
-        considering that a gap always exist between 2 consecutive tracks if the first one is not
-        empty. That's generally true (for both NOTEMPTY|NOTEMPTY and NOTEMPTY|EMPTY+|NOTEMPTY
-        sequences) but not for all the cases (NOTEMPTY|EMPTY+).
-
-        * rendering/RenderGrid.cpp:
-        (WebCore::RenderGrid::guttersSize):
-
-2016-09-15  Youenn Fablet  <youenn@apple.com>
-
-        callPromiseFunction should be made usable for custom binding code
-        https://bugs.webkit.org/show_bug.cgi?id=161961
-
-        Reviewed by Darin Adler.
-
-        Covered by updated test.
-
-        * bindings/js/JSDOMBinding.h:
-        (WebCore::castThisValue): Utility function to cast this value to a specific type.
-        * bindings/js/JSDOMPromise.h:
-        (WebCore::callPromiseFunction): Updated to take real promise function as a template parameter
-        for improved efficiency. Added workerMode template parameter.
-        (WebCore::bindingPromiseFunctionAdapter): Function signature adaptor.
-        * bindings/js/JSMediaDevicesCustom.cpp:
-        (WebCore::JSMediaDevicesGetUserMediaPromiseFunction):
-        (WebCore::JSMediaDevices::getUserMedia): Making use of callPromiseFunction to properly handle exceptions.
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateImplementation): Updated to use template parameter.
-        * bindings/scripts/test/JS/JSTestNode.cpp:
-        (WebCore::jsTestNodePrototypeFunctionTestWorkerPromise):
-        (WebCore::jsTestNodePrototypeFunctionTestWorkerPromisePromise):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunction):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgument):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithException):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgument):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunction):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithException):
-        * bindings/scripts/test/TestNode.idl: Adding Worker promise binding test.
-
-2016-09-14  Jiewen Tan  <jiewen_tan@apple.com>
-
-        WebCrypto algorithms should be exposed via KeyAlgorithm dictionary
-        https://bugs.webkit.org/show_bug.cgi?id=128748
-        <rdar://problem/27359438>
-
-        Reviewed by Brent Fulgham and Chris Dumez.
-
-        Replace custom CryptoAlgorithmBuilder/buildAlgorithmDescription with KeyAlgorithm dictionary which is
-        defined by the spec: https://www.w3.org/TR/WebCryptoAPI/#key-algorithm-dictionary. Moreover, mark
-        CryptoKey.usages as CachedAttribute.
-
-        Tests: crypto/subtle/crypto-key-algorithm-gc.html
-               crypto/subtle/crypto-key-usages-gc.html
-
-        * PlatformEfl.cmake:
-        * PlatformGTK.cmake:
-        * PlatformMac.cmake:
-        Remove CryptoAlgorithmDescriptionBuilder.cpp.
-        * WebCore.xcodeproj/project.pbxproj:
-        * bindings/js/JSCryptoAlgorithmBuilder.cpp:
-        (WebCore::JSCryptoAlgorithmBuilder::add):
-        (WebCore::JSCryptoAlgorithmBuilder::createEmptyClone): Deleted.
-        * bindings/js/JSCryptoAlgorithmBuilder.h:
-        * bindings/js/JSCryptoKeyCustom.cpp:
-        (WebCore::JSCryptoKey::algorithm):
-        Get rid of dependency on CryptoAlgorithmDescriptionBuilder.
-        * crypto/CryptoAlgorithmDescriptionBuilder.cpp: Removed.
-        * crypto/CryptoAlgorithmDescriptionBuilder.h: Removed.
-        Replace it with KeyAlgorithm.
-        * crypto/CryptoKey.cpp:
-        (WebCore::CryptoKey::CryptoKey):
-        (WebCore::CryptoKey::buildAlgorithmDescription): Deleted.
-        * crypto/CryptoKey.h:
-        (WebCore::KeyAlgorithm::KeyAlgorithm):
-        (WebCore::KeyAlgorithm::~KeyAlgorithm):
-        (WebCore::CryptoKey::algorithmIdentifier):
-        * crypto/CryptoKey.idl:
-        Add KeyAlgorithm dictionary which is returned via CryptoKey.buildAlgorithm() method,
-        and rename m_algorithm to m_algorithmIdentifier to distingush it with newly
-        added KeyAlgorithm dictionary.
-        * crypto/gnutls/CryptoKeyRSAGnuTLS.cpp:
-        (WebCore::buildAlgorithm):
-        (WebCore::CryptoKeyRSA::buildAlgorithmDescription): Deleted.
-        * crypto/keys/CryptoKeyAES.cpp:
-        (WebCore::CryptoKeyAES::buildAlgorithm):
-        (WebCore::CryptoKeyAES::buildAlgorithmDescription): Deleted.
-        * crypto/keys/CryptoKeyAES.h:
-        (WebCore::AesKeyAlgorithm::AesKeyAlgorithm):
-        (WebCore::AesKeyAlgorithm::~AesKeyAlgorithm):
-        * crypto/keys/CryptoKeyHMAC.cpp:
-        (WebCore::CryptoKeyHMAC::buildAlgorithm):
-        (WebCore::CryptoKeyHMAC::buildAlgorithmDescription): Deleted.
-        * crypto/keys/CryptoKeyHMAC.h:
-        (WebCore::HmacKeyAlgorithm::HmacKeyAlgorithm):
-        (WebCore::HmacKeyAlgorithm::~HmacKeyAlgorithm):
-        * crypto/keys/CryptoKeyRSA.h:
-        (WebCore::RsaKeyAlgorithm::RsaKeyAlgorithm):
-        (WebCore::RsaKeyAlgorithm::~RsaKeyAlgorithm):
-        (WebCore::RsaHashedKeyAlgorithm::RsaHashedKeyAlgorithm):
-        (WebCore::RsaHashedKeyAlgorithm::~RsaHashedKeyAlgorithm):
-        * crypto/mac/CryptoKeyRSAMac.cpp:
-        (WebCore::CryptoKeyRSA::buildAlgorithm):
-        (WebCore::CryptoKeyRSA::buildAlgorithmDescription): Deleted.
-
-2016-09-14  Chris Dumez  <cdumez@apple.com>
-
-        REGRESSION (r205670): ASSERTION FAILED: methodTable(vm)->toThis(this, exec, NotStrictMode) == this
-        https://bugs.webkit.org/show_bug.cgi?id=161982
-
-        Reviewed by Saam Barati.
-
-        We no longer need a custom [[SetPrototypeOf]] anymore as JSProxy::setPrototypeOf()
-        no longer forwards the call to its target.
-
-        No new layout tests because the behavior only changes in the context of the JSC
-        tests (which were updated in this patch).
-
-        * bindings/js/JSDOMWindowCustom.cpp:
-        (WebCore::JSDOMWindow::setPrototype): Deleted.
-        * page/DOMWindow.idl:
-
-2016-09-14  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        Media controls behave strangely when changing media sources
-        https://bugs.webkit.org/show_bug.cgi?id=161914
-        <rdar://problem/28227805>
-
-        Reviewed by Tim Horton.
-
-        Addresses media controls flickering while changing the source of a media element. To accomplish this, we make
-        the following changes to the media controls main content heuristic:
-
-        - Prevent elements that are not mostly within the mainframe rect (or elements with empty rects) from showing
-          media controls. Many websites that rely on same document navigation will move videos offscreen when navigating
-          to a section of their site that does not play media. Without this check, we would not know to hide a video
-          element on certain popular websites that use this technique, since the video has been interacted with in the
-          past.
-
-        - Rather than check whether a media element currently has video/audio sources, check whether it has ever had
-          audio. Many websites will use the same media element across different videos and change only the source, and
-          we should not prevent a media element from having media controls on grounds of having no audio or video in
-          this case.
-
-        - Rather than add user gesture and playback behavior restrictions before dispatching an ended event, add only
-          the gesture restriction immediately, and add the playback restriction after waiting for a grace period only if
-          the user has not interacted with the video since ending, and the video is not currently playing or about to
-          play. This gives the user a chance to interact with the controls when a video ends, but also allows the page
-          to load or begin playing a new video with the same media element without thrashing media control state.
-
-        Adds 3 new API tests.
-
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::HTMLMediaElement):
-        (WebCore::HTMLMediaElement::~HTMLMediaElement):
-        (WebCore::HTMLMediaElement::mediaPlayerActiveSourceBuffersChanged):
-        (WebCore::HTMLMediaElement::seekWithTolerance):
-        (WebCore::HTMLMediaElement::beginScrubbing):
-        (WebCore::HTMLMediaElement::addBehaviorRestrictionsOnEndIfNecessary):
-        (WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged):
-        (WebCore::HTMLMediaElement::playbackControlsManagerBehaviorRestrictionsTimerFired):
-        * html/HTMLMediaElement.h:
-        (WebCore::HTMLMediaElement::hasEverHadAudio):
-        (WebCore::HTMLMediaElement::hasEverHadVideo):
-        * html/MediaElementSession.cpp:
-        (WebCore::MediaElementSession::canShowControlsManager):
-        (WebCore::isElementRectMostlyInMainFrame):
-        * platform/graphics/MediaPlayer.h:
-        (WebCore::MediaPlayerClient::mediaPlayerActiveSourceBuffersChanged):
-        * platform/graphics/MediaPlayerPrivate.h:
-        (WebCore::MediaPlayerPrivateInterface::notifyActiveSourceBuffersChanged):
-        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
-        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
-        (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::notifyActiveSourceBuffersChanged):
-        * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
-        (WebCore::MediaSourcePrivateAVFObjC::removeSourceBuffer):
-        (WebCore::MediaSourcePrivateAVFObjC::sourceBufferPrivateDidChangeActiveState):
-
-2016-09-14  Eric Carlson  <eric.carlson@apple.com>
-
-        [MediaStream] Minor cleanup
-        https://bugs.webkit.org/show_bug.cgi?id=161976
-
-        Reviewed by Youenn Fablet and Dean Jackson.
-
-        No new tests, no behavior change.
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * Modules/mediastream/CaptureDeviceInfo.h: Removed.
-        * Modules/mediastream/CaptureDeviceManager.cpp: Removed.
-        * Modules/mediastream/CaptureDeviceManager.h: Removed.
-        * Modules/mediastream/MediaDevicesRequest.cpp:
-        (WebCore::MediaDevicesRequest::didCompletePermissionCheck):
-        (WebCore::MediaDevicesRequest::didCompleteTrackSourceInfoRequest): Deleted.
-        (WebCore::MediaDevicesRequest::requestOrigin): Deleted.
-        * Modules/mediastream/MediaDevicesRequest.h:
-        * Modules/mediastream/MediaStreamTrackSourcesCallback.h: Removed.
-        * Modules/mediastream/MediaStreamTrackSourcesCallback.idl: Removed.
-        * Modules/mediastream/SourceInfo.cpp: Removed.
-        * Modules/mediastream/SourceInfo.h: Removed.
-        * Modules/mediastream/SourceInfo.idl: Removed.
-        * WebCore.xcodeproj/project.pbxproj:
-        * platform/mediastream/CaptureDevice.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceInfo.h.
-        (WebCore::CaptureDevice::CaptureDevice):
-        (WebCore::CaptureDevice::persistentId):
-        (WebCore::CaptureDevice::label):
-        (WebCore::CaptureDevice::groupId):
-        (WebCore::CaptureDevice::kind):
-        (WebCore::CaptureSessionInfo::~CaptureSessionInfo): Deleted.
-        (WebCore::CaptureSessionInfo::supportsVideoSize): Deleted.
-        (WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions): Deleted.
-        * platform/mediastream/CaptureDeviceManager.cpp: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.cpp.
-        (CaptureDeviceManager::getSourcesInfo):
-        * platform/mediastream/CaptureDeviceManager.h: Copied from Source/WebCore/Modules/mediastream/CaptureDeviceManager.h.
-        (WebCore::CaptureSessionInfo::~CaptureSessionInfo):
-        (WebCore::CaptureSessionInfo::supportsVideoSize):
-        (WebCore::CaptureSessionInfo::bestSessionPresetForVideoDimensions):
-        * platform/mediastream/MediaStreamTrackSourcesRequestClient.h: Removed.
-        * platform/mediastream/RealtimeMediaSourceCenter.h:
-        * platform/mediastream/mac/AVCaptureDeviceManager.h:
-        * platform/mediastream/mac/AVCaptureDeviceManager.mm:
-        (WebCore::AVCaptureDeviceManager::getSourcesInfo):
-        * platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp:
-        (WebCore::RealtimeMediaSourceCenterMac::getMediaStreamDevices):
-        (WebCore::RealtimeMediaSourceCenterMac::getMediaStreamTrackSources): Deleted.
-        (WebCore::RealtimeMediaSourceCenterMac::sourceWithUID): Deleted.
-        * platform/mediastream/mac/RealtimeMediaSourceCenterMac.h:
-        * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:
-        (WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamDevices):
-        (WebCore::RealtimeMediaSourceCenterOwr::getMediaStreamTrackSources): Deleted.
-        (WebCore::RealtimeMediaSourceCenterOwr::sourceWithUID): Deleted.
-        * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.h:
-        * platform/mock/MockRealtimeMediaSource.cpp:
-        (WebCore::MockRealtimeMediaSource::audioDeviceInfo):
-        (WebCore::MockRealtimeMediaSource::videoDeviceInfo):
-        (WebCore::MockRealtimeMediaSource::trackSourceWithUID): Deleted.
-        * platform/mock/MockRealtimeMediaSource.h:
-        * platform/mock/MockRealtimeMediaSourceCenter.cpp:
-        (WebCore::MockRealtimeMediaSourceCenter::getMediaStreamDevices):
-        (WebCore::MockRealtimeMediaSourceCenter::getMediaStreamTrackSources): Deleted.
-        (WebCore::MockRealtimeMediaSourceCenter::sourceWithUID): Deleted.
-        * platform/mock/MockRealtimeMediaSourceCenter.h:
-
-2016-09-14  Antti Koivisto  <antti@apple.com>
-
-        Move more code out from RenderObject
-        https://bugs.webkit.org/show_bug.cgi?id=161980
-
-        Reviewed by Zalan Bujtas.
-
-        Move some functions that are only needed for RenderElement there.
-        Move collapsing anonymous table rows to RenderTableRow.
-
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::hasOutlineAnnotation):
-        (WebCore::RenderElement::hasSelfPaintingLayer):
-        (WebCore::RenderElement::checkForRepaintDuringLayout):
-        * rendering/RenderElement.h:
-        (WebCore::RenderElement::hasOutline):
-        (WebCore::RenderElement::hasHiddenBackface): Deleted.
-        * rendering/RenderLayerCompositor.cpp:
-        (WebCore::RenderLayerCompositor::rootOrBodyStyleChanged):
-        * rendering/RenderObject.cpp:
-        (WebCore::RenderObject::pixelSnappedAbsoluteClippedOverflowRect):
-        (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
-        (WebCore::RenderObject::hasSelfPaintingLayer): Deleted.
-        (WebCore::RenderObject::checkForRepaintDuringLayout): Deleted.
-        (WebCore::RenderObject::hasOutlineAnnotation): Deleted.
-        (WebCore::RenderObject::hasEntirelyFixedBackground): Deleted.
-        (WebCore::collapseAnonymousTableRowsIfNeeded): Deleted.
-        * rendering/RenderObject.h:
-        (WebCore::RenderObject::hasLayer):
-        (WebCore::RenderObject::canBeSelectionLeaf):
-        (WebCore::RenderObject::hasOutline): Deleted.
-        (WebCore::RenderObject::hasSelectedChildren): Deleted.
-        * rendering/RenderTableRow.cpp:
-        (WebCore::RenderTableRow::destroyAndCollapseAnonymousSiblingRows):
-        * rendering/RenderTableRow.h:
-        * rendering/RenderView.cpp:
-        (WebCore::RenderView::rootBackgroundIsEntirelyFixed):
-
-2016-09-14  Daniel Bates  <dabates@apple.com>
-
-        Switch CSSParser to use CSSParserFastPaths::isKeywordPropertyID()
-        https://bugs.webkit.org/show_bug.cgi?id=161983
-
-        Reviewed by David Hyatt.
-
-        Towards switching to the new CSS parser keyword properties validation logic,
-        switch over the old CSS parser logic for determining a keyword property to
-        use the analogous logic in the new CSS parser.
-
-        A side benefit of this change is that it is a step towards unifying CSS- and
-        SVG CSS- keyword properties. The new CSS parser does not make a distinction
-        between these kinds of properties and will allow us to have a shared code path
-        for validating a keyword property.
-
-        No functionality was changed. So, no new tests.
-
-        * css/parser/CSSParser.cpp: Include header CSSParserFastPaths.h.
-        (WebCore::isValidKeywordPropertyAndValue): Validate SVG CSS keyword properties. This
-        logic was moved from CSSParser::parseSVGValue(). In subsequent patches we will switch
-        the old CSS parser from this function to CSSParserFastPaths::isValidKeywordPropertyAndValue().
-        (WebCore::parseKeywordValue): Modified to call CSSParserFastPaths::isKeywordPropertyID().
-        (WebCore::CSSParser::parseValue): Ditto.
-        (WebCore::isKeywordPropertyID): Deleted. Incorporated its functionality into
-        CSSParserFastPaths::isKeywordPropertyID().
-        * css/parser/CSSParserFastPaths.cpp:
-        (WebCore::CSSParserFastPaths::isKeywordPropertyID): Incorporates the functionality
-        of WebCore::isKeywordPropertyID().
-        * css/parser/SVGCSSParser.cpp:
-        (WebCore::CSSParser::parseSVGValue): Move properties that can be processed as
-        keyword properties from here to WebCore::isValidKeywordPropertyAndValue().
-
-2016-09-13  Dean Jackson  <dino@apple.com>
-
-        Rename parseColorParameters and clean up conditional
-        https://bugs.webkit.org/show_bug.cgi?id=161941
-        <rdar://problem/28292750>
-
-        Reviewed by Dan Bates.
-
-        In preparation for adding color() support, rename the existing
-        parseColorParameters to parseRGBParameters.
-
-        Also clean up the logic in the parseColorFromValue function.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseRGBParameters):
-        (WebCore::CSSParser::parseColorFromValue):
-        (WebCore::CSSParser::parseColorParameters): Deleted.
-        * css/parser/CSSParser.h:
-
-2016-09-14  Chris Dumez  <cdumez@apple.com>
-
-        Add support hr.color IDL attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161977
-
-        Reviewed by Darin Adler.
-
-        Add support hr.color IDL attribute as per:
-        - https://html.spec.whatwg.org/#HTMLHRElement-partial
-
-        Even though this is a legacy attribute, it is still part of the HTML specification
-        and it is still supported by Firefox and Chrome.
-
-        Also note that even though WebKit does not currently support the 'color' IDL
-        attribute on <hr>, it does support the 'color' content attribute on <hr>.
-        Therefore, we only need to reflect the 'color' content attribute.
-
-        No new tests, rebaselined existing test.
-
-        * html/HTMLHRElement.idl:
-
-2016-09-14  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Add fast path for hosts containing no non-ASCII or percent characters
-        https://bugs.webkit.org/show_bug.cgi?id=161970
-
-        Reviewed by Daniel Bates.
-
-        Covered by existing tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseHost):
-        * platform/URLParser.h:
-        When parsing the host of a URL, if it contains non-ASCII characters or percent-encoded values,
-        we need to do additional encoding.  Many URLs, including all already-parsed URLs, do not have
-        such characters in their host, and therefore do not need the additional encoding.  Skipping
-        the additional encoding significantly speeds up my URL parsing benchmark.
-
-2016-09-14  Zalan Bujtas  <zalan@apple.com>
-
-        ShowRenderTree should take position offset into account when printing inflow positioned renderers.
-        https://bugs.webkit.org/show_bug.cgi?id=161978
-
-        Reviewed by Simon Fraser.
-
-        Adjust (x, y) with the inflow positioned renderer's offset.  
-
-        Not testable.
-
-        * rendering/RenderObject.cpp:
-        (WebCore::RenderObject::showRenderObject):
-
-2016-09-14  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Add fast path for utf8 encoding queries
-        https://bugs.webkit.org/show_bug.cgi?id=161968
-
-        Reviewed by Daniel Bates.
-
-        No change in behavior.  Covered by existing tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::utf8PercentEncodeQuery):
-        (WebCore::URLParser::parse):
-        If the text encoding is UTF-8 (which is quite common), then we can encode the query
-        as we iterate its code points. This reduces memory allocation and significantly speeds
-        up my URL parsing benchmark.
-
-2016-09-14  Chris Dumez  <cdumez@apple.com>
-
-        Regression(r152725): generate-bindings.pl --write-dependencies does not work
-        https://bugs.webkit.org/show_bug.cgi?id=161897
-
-        Reviewed by Darin Adler.
-
-        r152725 inadvertently dropped the code generating the JS*.dep files when
-        --write-dependencies is passed to the bindings generator. As a result,
-        our dependency tracking was broken. This patch restores the code that
-        was dropped in r152725.
-
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (new):
-        (GenerateHeader):
-
-2016-09-14  Chris Dumez  <cdumez@apple.com>
-
-        input.type cannot be set to "file" after being set to another type
-        https://bugs.webkit.org/show_bug.cgi?id=161943
-
-        Reviewed by Daniel Bates.
-
-        input.type cannot be set to "file" after being set to another type.
-        This behavior does not match the HTML specification or the behavior
-        of Firefox and Chrome. This patch drops this restriction and aligns
-        our behavior with other browsers.
-
-        Test: fast/dom/HTMLInputElement/input-type-change-to-file.html
-
-        * html/FileInputType.cpp:
-        (WebCore::FileInputType::canChangeFromAnotherType): Deleted.
-        * html/FileInputType.h:
-        * html/HTMLInputElement.cpp:
-        (WebCore::HTMLInputElement::updateType):
-        * html/InputType.cpp:
-        (WebCore::InputType::canChangeFromAnotherType): Deleted.
-        * html/InputType.h:
-
-2016-09-14  Carlos Garnacho <carlosg@gnome.org>
-
-        [GTK][Wayland] Implement clipboard support
-        https://bugs.webkit.org/show_bug.cgi?id=146574
-
-        Reviewed by Carlos Garcia Campos.
-
-        Implement PlatformPasteboard in the GTK+ platform, and move Pasteboard
-        to using PasteboardStrategy so clipboard management is left to the
-        UIProcess.
-
-        DataObjectGtk is still used in the Pasteboard GTK implementation, it's
-        now just never backed by a GtkClipboard, this object is instead
-        serialized through PasteboardStrategy, so the UIProcess side can mirror
-        the content in a GtkClipboard-backed DataObjectGtk, which is then
-        exposed to the windowing through PlatformPasteboard/PasteboardHelper.
-
-        When requesting clipboard content, it works similarly, the UIProcess
-        side first updates its DataObjectGtk, which is then mirrored by the
-        WebProcess through the PasteboardStrategy requests.
-
-        * PlatformGTK.cmake: Added PlatformPasteboardGtk.cpp
-        * editing/gtk/EditorGtk.cpp:
-        (WebCore::Editor::writeSelectionToPasteboard): Eliminate usage of
-        PasteboardWebContent callback argument. This is done differently as
-        we have to signal back the WebProcess.
-        * platform/Pasteboard.h: Cleaned up of direct GTK+ dependency.
-        * platform/PasteboardStrategy.h: Added plumbing towards the pasteboard
-        proxy.
-        * platform/PlatformPasteboard.h:
-        * platform/gtk/DataObjectGtk.cpp:
-        (WebCore::DataObjectGtk::clearAllExceptFilenames): Clear the "smart
-        paste" flag if set, now that this is DataObjectGtk data.
-        * platform/gtk/DataObjectGtk.h:
-        (WebCore::DataObjectGtk::canSmartReplace):
-        (WebCore::DataObjectGtk::setCanSmartReplace): Added functions, in order
-        to flag whether a DataObjectGtk has the "smart paste" feature enabled
-        or not.
-        * platform/gtk/PasteboardGtk.cpp:
-        (WebCore::Pasteboard::createForCopyAndPaste):
-        (WebCore::Pasteboard::createForGlobalSelection):
-        (WebCore::Pasteboard::Pasteboard):
-        (WebCore::Pasteboard::writeToClipboard):
-        (WebCore::Pasteboard::readFromClipboard):
-        (WebCore::Pasteboard::writePlainText):
-        (WebCore::Pasteboard::write):
-        (WebCore::Pasteboard::writePasteboard):
-        (WebCore::Pasteboard::clear):
-        (WebCore::Pasteboard::canSmartReplace):
-        (WebCore::Pasteboard::read):
-        (WebCore::Pasteboard::hasData):
-        (WebCore::Pasteboard::types):
-        (WebCore::Pasteboard::readString):
-        (WebCore::Pasteboard::readFilenames): Made to use the
-        PasteboardStrategy instead of PasteboardHelper/GTK+ API.
-        * platform/gtk/PasteboardHelper.cpp:
-        (WebCore::PasteboardHelper::~PasteboardHelper):
-        (WebCore::ClipboardSetData::ClipboardSetData):
-        (WebCore::clearClipboardContentsCallback):
-        (WebCore::PasteboardHelper::writeClipboardContents): Remove the GClosure
-        to notify whether the global selection has been replaced. Use std:function
-        instead. Remove SmartPasteInclusion argument, now figured out through
-        DataObjectGtk canSmartPaste() member.
-        * platform/gtk/PasteboardHelper.h:
-        * platform/gtk/PlatformPasteboardGtk.cpp: Added.
-        (WebCore::PlatformPasteboard::PlatformPasteboard):
-        (WebCore::PlatformPasteboard::writeToClipboard):
-        (WebCore::PlatformPasteboard::readFromClipboard): Implemented
-        PlatformPasteboard using PasteboardHelper/GTK+ API.
-
-2016-09-13  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Enable the new sizes parser by default
-        https://bugs.webkit.org/show_bug.cgi?id=161931
-
-        Reviewed by Zalan Bujtas.
-
-        Added new tests in fast/dom/HTMLImageElement/sizes.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/CSSGrammar.y.in:
-        Remove the old code that parsed source size lists.
-
-        * css/MediaQueryEvaluator.cpp:
-        (WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
-        * css/MediaQueryEvaluator.h:
-        Change to take a const Document&, since the Document is not modified.
-
-        * css/SourceSizeList.cpp: Removed.
-        * css/SourceSizeList.h: Removed.
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseSizesAttribute): Deleted.
-        (WebCore::CSSParser::SourceSize::SourceSize): Deleted.
-        (WebCore::CSSParser::sourceSize): Deleted.
-        * css/parser/CSSParser.h:
-        Remove the old sizes processing code.
-
-        * css/parser/MediaQueryParser.cpp:
-        (WebCore::MediaQueryParser::skipUntilComma):
-        (WebCore::MediaQueryParser::parseInternal):
-        Fix a bug I introduced when modifying this code from Blink. The Nones should have been Nots.
-
-        * css/parser/SizesAttributeParser.cpp:
-        (WebCore::SizesAttributeParser::computeLength):
-        (WebCore::SizesAttributeParser::SizesAttributeParser):
-        (WebCore::SizesAttributeParser::calculateLengthInPixels):
-        (WebCore::SizesAttributeParser::mediaConditionMatches):
-        (WebCore::SizesAttributeParser::effectiveSizeDefaultValue):
-        * css/parser/SizesAttributeParser.h:
-        * css/parser/SizesCalcParser.cpp:
-        (WebCore::SizesCalcParser::SizesCalcParser):
-        (WebCore::SizesCalcParser::appendLength):
-        * css/parser/SizesCalcParser.h:
-        Make the sizes parsers take a Document, since having separate style and view arguments made
-        no sense, given that the style used is always the view's.
-
-        * html/HTMLImageElement.cpp:
-        (WebCore::HTMLImageElement::bestFitSourceFromPictureElement):
-        (WebCore::HTMLImageElement::selectImageSource):
-        * html/parser/HTMLPreloadScanner.cpp:
-        (WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
-        Switch image elements and the preload scanner over to the new code.
-
-2016-09-13  Chris Dumez  <cdumez@apple.com>
-
-        Unreviewed, rolling out r205887.
-
-        Broke the Windows build
-
-        Reverted changeset:
-
-        "Merge Element::ScrollToOptions and
-        DOMWindow::ScrollToOptions"
-        https://bugs.webkit.org/show_bug.cgi?id=161932
-        http://trac.webkit.org/changeset/205887
-
-2016-09-13  Dean Jackson  <dino@apple.com>
-
-        Remove a .rej file.
-
-        * animation/DocumentTimeline.h.rej: Removed.
-
-2016-09-13  Alex Christensen  <achristensen@webkit.org>
-
-        Implement URLSearchParams
-        https://bugs.webkit.org/show_bug.cgi?id=161920
-
-        Reviewed by Chris Dumez.
-
-        Covered by newly passing web platform tests.
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * WebCore.xcodeproj/project.pbxproj:
-        * html/DOMURL.cpp:
-        (WebCore::DOMURL::setQuery):
-        (WebCore::DOMURL::searchParams):
-        * html/DOMURL.h:
-        * html/URLSearchParams.cpp: Added.
-        (WebCore::URLSearchParams::URLSearchParams):
-        (WebCore::URLSearchParams::get):
-        (WebCore::URLSearchParams::has):
-        (WebCore::URLSearchParams::set):
-        (WebCore::URLSearchParams::append):
-        (WebCore::URLSearchParams::getAll):
-        (WebCore::URLSearchParams::remove):
-        (WebCore::URLSearchParams::toString):
-        (WebCore::URLSearchParams::updateURL):
-        (WebCore::URLSearchParams::Iterator::Iterator):
-        * html/URLSearchParams.h: Added.
-        (WebCore::URLSearchParams::create):
-        (WebCore::URLSearchParams::createIterator):
-        * html/URLSearchParams.idl: Added.
-        * html/URLUtils.idl:
-        * platform/URLParser.cpp:
-        (WebCore::percentDecode):
-        (WebCore::URLParser::parseHost):
-        (WebCore::formURLDecode):
-        (WebCore::serializeURLEncodedForm):
-        (WebCore::URLParser::serialize):
-        * platform/URLParser.h:
-
-2016-09-12  Dean Jackson  <dino@apple.com>
-
-        Replace RGBA32 with Color in member variables
-        https://bugs.webkit.org/show_bug.cgi?id=161856
-        <rdar://problem/28254324>
-
-        Reviewed by Simon Fraser.
-
-        In preparation for the Color class to become more than
-        just a 4-byte RGBA value, I went through a few places
-        that were using the RGBA32 type directly, and replaced
-        them with Color. This will make some objects a little
-        bigger e.g. BorderValue and its friends.
-
-        I mostly looked at the places that were using RGBA32 as
-        a member variable. There is still a lot of RGBA32 use
-        around the project, in particular the CSS parser.
-
-        There should be no behaviour change.
-
-        * html/canvas/CanvasRenderingContext2D.cpp: Shadows now use Color.
-        (WebCore::CanvasRenderingContext2D::setShadow):
-        (WebCore::CanvasRenderingContext2D::shouldDrawShadows):
-        (WebCore::CanvasRenderingContext2D::didDraw):
-        * html/canvas/CanvasRenderingContext2D.h:
-        * html/canvas/CanvasStyle.cpp: Canvas style uses Color for fills and strokes.
-        (WebCore::CanvasStyle::CanvasStyle):
-        (WebCore::CanvasStyle::isEquivalentColor):
-        (WebCore::CanvasStyle::isEquivalentRGBA):
-        (WebCore::CanvasStyle::applyStrokeColor):
-        (WebCore::CanvasStyle::applyFillColor):
-        * html/canvas/CanvasStyle.h:
-        (WebCore::CanvasStyle::CMYKAValues::CMYKAValues):
-        (WebCore::CanvasStyle::color):
-
-        * html/track/TextTrackCueGeneric.h: Foreground, background and
-        highlight colors.
-        * platform/graphics/InbandTextTrackPrivateClient.h:
-        (WebCore::GenericCueData::setForegroundColor):
-        (WebCore::GenericCueData::setBackgroundColor):
-        (WebCore::GenericCueData::setHighlightColor):
-
-        * page/PageOverlay.cpp: Background color.
-        (WebCore::PageOverlay::setBackgroundColor):
-        * page/PageOverlay.h:
-
-        * platform/graphics/mac/ColorMac.h: Random function that returned RGBA32.
-        * platform/graphics/mac/ColorMac.mm:
-        (WebCore::oldAquaFocusRingColor):
-
-        * rendering/RenderTableCell.cpp: Update the size of CollapsedBorderValue.
-
-        * rendering/RenderTheme.h: Use a NeverDestroyed Color rather than a static RGBA32.
-
-        * rendering/style/BorderValue.h: Use a Color.
-        (WebCore::BorderValue::BorderValue):
-        (WebCore::BorderValue::isTransparent):
-        (WebCore::BorderValue::operator==):
-        (WebCore::BorderValue::setColor):
-        (WebCore::BorderValue::color):
-        * rendering/style/CollapsedBorderValue.h:
-        (WebCore::CollapsedBorderValue::CollapsedBorderValue):
-        (WebCore::CollapsedBorderValue::color):
-        * rendering/style/OutlineValue.h:
-        (WebCore::OutlineValue::operator==):
-
-        * rendering/style/RenderStyle.cpp: Update to match new BorderValue.
-
-2016-09-13  Jer Noble  <jer.noble@apple.com>
-
-        [media-source] MediaSource.addSourceBuffer(null) should throw an exception
-        https://bugs.webkit.org/show_bug.cgi?id=161884
-
-        Reviewed by Eric Carlson.
-
-        Fixes test: imported/w3c/web-platform-tests/media-source/mediasource-addsourcebuffer.html
-
-        * Modules/mediasource/MediaSource.idl: The addSourceBuffer() parameter is not optional
-            and not nullable.
-
-2016-09-13  Daniel Bates  <dabates@apple.com>
-
-        Remove Chrome app-specific CSS property -webkit-app-region
-        https://bugs.webkit.org/show_bug.cgi?id=161935
-
-        Reviewed by Simon Fraser.
-
-        * css/parser/CSSParserFastPaths.cpp:
-
-2016-09-13  Daniel Bates  <dabates@apple.com>
-
-        Treat some CSS properties as keyword properties
-        https://bugs.webkit.org/show_bug.cgi?id=161934
-
-        Reviewed by Simon Fraser.
-
-        Move validation of the following CSS keyword properties from CSSParser::parseValue() to
-        WebCore::isValidKeywordPropertyAndValue():
-
-        CSSPropertyColumnProgression
-        CSSPropertyFontStretch
-        CSSPropertyTextAlign
-        CSSPropertyUnicodeBidi
-        CSSPropertyWebkitColumnAxis
-        CSSPropertyWebkitCursorVisibility
-        CSSPropertyWebkitTextDecorationStyle
-        CSSPropertyWebkitTextOrientation
-        CSSPropertyWebkitTextZoom
-        CSSPropertyWebkitTouchCallout
-
-        Among other benefits, this will make it more straightforward to migrate from CSSParser::is{KeywordPropertyID, ValidKeywordPropertyAndValue}()
-        to CSSParserFastPaths::is{KeywordPropertyID, ValidKeywordPropertyAndValue}(), respectively.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::isValidKeywordPropertyAndValue):
-        (WebCore::isKeywordPropertyID):
-        (WebCore::CSSParser::parseValue):
-
-2016-09-13  Chris Dumez  <cdumez@apple.com>
-
-        Merge Element::ScrollToOptions and DOMWindow::ScrollToOptions
-        https://bugs.webkit.org/show_bug.cgi?id=161932
-
-        Reviewed by Simon Fraser.
-
-        Merge Element::ScrollToOptions and DOMWindow::ScrollToOptions.
-        Ideally we would merge them on IDL side as well but this is for
-        another patch.
-
-        * WebCore.xcodeproj/project.pbxproj:
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateDictionaryImplementationContent):
-        * bindings/scripts/test/JS/JSTestObj.cpp:
-        (WebCore::convertDictionary<TestObj::Dictionary>):
-        (WebCore::convertDictionary<TestObj::DictionaryThatShouldNotTolerateNull>):
-        (WebCore::convertDictionary<TestObj::DictionaryThatShouldTolerateNull>):
-        (WebCore::convertDictionary<AlternateDictionaryName>):
-        * dom/Element.h:
-        * dom/Element.idl:
-        * dom/ScrollToOptions.h: Added.
-        * html/HTMLBodyElement.cpp:
-        (WebCore::HTMLBodyElement::scrollTo):
-        * page/DOMWindow.h:
-        * page/DOMWindow.idl:
-
-2016-09-13  Myles C. Maxfield  <mmaxfield@apple.com>
-
-        [Cocoa] Unify font's ascent, descent, and x-height between macOS and iOS
-        https://bugs.webkit.org/show_bug.cgi?id=161877
-
-        Reviewed by Simon Fraser.
-
-        macOS and iOS have slightly different handling of ascent, descent, and x-height.
-        This patch migrates them to have the same handling of them.
-
-        There are slight behavior changes here because our previous code converted between
-        floats and doubles in unnecessary places, and does not handle rounding in
-        consistent ways. The differences are all miniscule, but nevertheless lead to test
-        results needing to be updated.
-
-        Coincidentally, by performing this unification, there are no longer any places
-        on macOS Sierra which are using the CGFontRef member of PlatformFontData. This
-        patch removes the member on that operating system for memory savings as well as
-        clarity.
-
-        Covered by existing tests.
-
-        * platform/graphics/FontPlatformData.cpp:
-        * platform/graphics/FontPlatformData.h:
-        * platform/graphics/cocoa/FontCocoa.mm:
-        (WebCore::Font::platformInit):
-        * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
-        (WebCore::FontPlatformData::FontPlatformData):
-        (WebCore::FontPlatformData::platformIsEqual):
-        (WebCore::FontPlatformData::ctFont):
-
-2016-09-13  Brent Fulgham  <bfulgham@apple.com>
-
-        [Win] Unreviewed build fix.
-
-        Based on a suggestion by Simon Fraser, I have corrected the
-        headers to avoid including <d2d1.h> directly, relying instead
-        on forward declarations.
-
-        * platform/graphics/FloatPoint.h:
-        * platform/graphics/FloatRect.h:
-        * platform/graphics/FloatSize.h:
-        * platform/graphics/IntPoint.h:
-        * platform/graphics/IntRect.h:
-        * platform/graphics/IntSize.h:
-        * platform/graphics/transforms/AffineTransform.h:
-        * platform/graphics/transforms/TransformationMatrix.h:
-
-2016-09-13  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        Get rid of the m_premultiplyAlpha flag of the ImageFrame class
-        https://bugs.webkit.org/show_bug.cgi?id=159721
-
-        Reviewed by Simon Fraser.
-
-        This flag was only needed when calling ImageBackingStore::create() in 
-        ImageFrame::setSize(). Instead we can pass ImageDecoder::m_premultiplyAlpha 
-        to ImageFrame::setSize(), which is renamed ImageFrame::initializeBackingStore().
-        The passed premultiplyAlpha can then be passed to ImageBackingStore::create().
-
-        * platform/image-decoders/ImageDecoder.cpp:
-        (WebCore::ImageFrame::ImageFrame):
-        (WebCore::ImageFrame::operator=):
-        (WebCore::ImageFrame::initializeBackingStore):
-        (WebCore::ImageFrame::copyBitmapData): Deleted.
-        (WebCore::ImageFrame::setSize): Deleted.
-        * platform/image-decoders/ImageDecoder.h:
-        (WebCore::ImageFrame::disposalMethod):
-        (WebCore::ImageFrame::setDisposalMethod):
-        (WebCore::ImageDecoder::premultiplyAlpha):
-        (WebCore::ImageFrame::premultiplyAlpha): Deleted.
-        (WebCore::ImageFrame::setPremultiplyAlpha): Deleted.
-        * platform/image-decoders/bmp/BMPImageDecoder.cpp:
-        (WebCore::BMPImageDecoder::frameBufferAtIndex):
-        * platform/image-decoders/bmp/BMPImageReader.cpp:
-        (WebCore::BMPImageReader::decodeBMP):
-        * platform/image-decoders/gif/GIFImageDecoder.cpp:
-        (WebCore::GIFImageDecoder::decode):
-        (WebCore::GIFImageDecoder::initFrameBuffer):
-        * platform/image-decoders/ico/ICOImageDecoder.cpp:
-        (WebCore::ICOImageDecoder::frameCount):
-        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
-        (WebCore::JPEGImageDecoder::frameBufferAtIndex):
-        (WebCore::JPEGImageDecoder::outputScanlines):
-        * platform/image-decoders/png/PNGImageDecoder.cpp:
-        (WebCore::PNGImageDecoder::frameBufferAtIndex):
-        (WebCore::PNGImageDecoder::rowAvailable):
-        (WebCore::PNGImageDecoder::readChunks):
-        (WebCore::PNGImageDecoder::initFrameBuffer):
-        (WebCore::setPixelRGB): Deleted.
-        (WebCore::setPixelRGBA): Deleted.
-        (WebCore::setPixelPremultipliedRGBA): Deleted.
-        * platform/image-decoders/webp/WEBPImageDecoder.cpp:
-        (WebCore::WEBPImageDecoder::frameBufferAtIndex):
-        (WebCore::WEBPImageDecoder::decode):
-
-2016-09-12  Brent Fulgham  <bfulgham@apple.com>
-
-        [Win][Direct2D] Provide Direct2D-based geometry and transform cast operations
-        https://bugs.webkit.org/show_bug.cgi?id=161818
-
-        Reviewed by Dean Jackson.
-
-        Tested by new TestWebKitAPI tests.
-
-        Add new casting operators to and from various Direct2D data types.
-
-        * PlatformWin.cmake:
-        * platform/graphics/FloatPoint.h:
-        (WebCore::FloatPoint::FloatPoint):
-        * platform/graphics/FloatRect.h:
-        * platform/graphics/FloatSize.h:
-        (WebCore::FloatSize::FloatSize):
-        * platform/graphics/IntPoint.h:
-        * platform/graphics/IntRect.h:
-        * platform/graphics/IntSize.h:
-        * platform/graphics/transforms/AffineTransform.h:
-        * platform/graphics/transforms/TransformationMatrix.h:
-        * platform/graphics/win/FloatPointDirect2D.cpp:
-        * platform/graphics/win/FloatRectDirect2D.cpp:
-        * platform/graphics/win/FloatSizeDirect2D.cpp:
-        * platform/graphics/win/IntPointWin.cpp:
-        (WebCore::IntPoint::IntPoint):
-        (WebCore::IntPoint::operator D2D1_POINT_2F):
-        (WebCore::IntPoint::operator D2D1_POINT_2U):
-        * platform/graphics/win/IntRectWin.cpp:
-        (WebCore::IntRect::IntRect):
-        (WebCore::IntRect::operator D2D1_RECT_F):
-        (WebCore::IntRect::operator D2D1_RECT_U):
-        * platform/graphics/win/IntSizeWin.cpp:
-        (WebCore::IntSize::IntSize):
-        (WebCore::IntSize::operator D2D1_SIZE_U):
-        (WebCore::IntSize::operator D2D1_SIZE_F):
-        * platform/graphics/win/TransformationMatrixDirect2D.cpp: Added.
-        (WebCore::TransformationMatrix::TransformationMatrix):
-        (WebCore::TransformationMatrix::operator D2D1_MATRIX_3X2_F):
-        (WebCore::AffineTransform::AffineTransform):
-        (WebCore::AffineTransform::operator D2D1_MATRIX_3X2_F):
-
-2016-09-13  Tim Horton  <timothy_horton@apple.com>
-
-        Undoing a candidate insertion results in the replaced text being selected
-        https://bugs.webkit.org/show_bug.cgi?id=161894
-        <rdar://problem/28225774>
-
-        Reviewed by Simon Fraser.
-
-        Test: editing/mac/spelling/accept-candidate-undo-does-not-select.html
-
-        * WebCore.xcodeproj/project.pbxproj:
-        * editing/ReplaceRangeWithTextCommand.cpp: Added.
-        (WebCore::ReplaceRangeWithTextCommand::ReplaceRangeWithTextCommand):
-        (WebCore::ReplaceRangeWithTextCommand::doApply):
-        * editing/ReplaceRangeWithTextCommand.h: Added.
-        (WebCore::ReplaceRangeWithTextCommand::create):
-        Add a editor command that replaces a range with the given text.
-
-        * editing/Editor.cpp:
-        (WebCore::Editor::rangeForTextCheckingResult):
-        (WebCore::Editor::handleAcceptedCandidate):
-        (WebCore::Editor::selectTextCheckingResult): Deleted.
-        * editing/Editor.h:
-        Make use of the new editor command to do candidate insertion as a single
-        composite operation, so that it is undone as a unit. Otherwise, undo ends up
-        undoing the insertion, but not the selection, and we are left with the old
-        text, selected, which is undesirable.
-
-2016-09-13  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Add CSS Variable Parsing support
-        https://bugs.webkit.org/show_bug.cgi?id=161916
-
-        Reviewed by Dean Jackson.
-
-        This patch not only adds the parser for CSS variables (from Blink), but it also brings in
-        all of the data structures used to store variables and custom property declarations. We
-        will be abandoning our old data structures eventually in favor of these new ones. They
-        are not significantly different other than operating on the CSSParserTokenRanges rather
-        than the soon-to-be-removed parser value lists.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/CSSCustomIdentValue.cpp: Added.
-        (WebCore::CSSCustomIdentValue::CSSCustomIdentValue):
-        (WebCore::CSSCustomIdentValue::customCSSText):
-        * css/CSSCustomIdentValue.h: Added.
-        (WebCore::CSSCustomIdentValue::create):
-        (WebCore::CSSCustomIdentValue::value):
-        (WebCore::CSSCustomIdentValue::isKnownPropertyID):
-        (WebCore::CSSCustomIdentValue::valueAsPropertyID):
-        (WebCore::CSSCustomIdentValue::equals):
-        * css/CSSCustomPropertyDeclaration.cpp: Added.
-        (WebCore::CSSCustomPropertyDeclaration::customCSSText):
-        * css/CSSCustomPropertyDeclaration.h: Added.
-        (WebCore::CSSCustomPropertyDeclaration::create):
-        (WebCore::CSSCustomPropertyDeclaration::name):
-        (WebCore::CSSCustomPropertyDeclaration::value):
-        (WebCore::CSSCustomPropertyDeclaration::id):
-        (WebCore::CSSCustomPropertyDeclaration::equals):
-        (WebCore::CSSCustomPropertyDeclaration::CSSCustomPropertyDeclaration):
-        * css/CSSCustomPropertyValue.h:
-        * css/CSSValue.cpp:
-        (WebCore::CSSValue::cssText):
-        (WebCore::CSSValue::destroy):
-        * css/CSSValue.h:
-        (WebCore::CSSValue::isCustomPropertyDeclaration):
-        (WebCore::CSSValue::isCustomIdentValue):
-        (WebCore::CSSValue::isVariableReferenceValue):
-        * css/CSSValueKeywords.in:
-        * css/CSSVariableData.cpp: Added.
-        (WebCore::CSSVariableData::updateTokens):
-        (WebCore::CSSVariableData::operator==):
-        (WebCore::CSSVariableData::consumeAndUpdateTokens):
-        (WebCore::CSSVariableData::CSSVariableData):
-        * css/CSSVariableData.h: Added.
-        (WebCore::CSSVariableData::create):
-        (WebCore::CSSVariableData::createResolved):
-        (WebCore::CSSVariableData::tokenRange):
-        (WebCore::CSSVariableData::tokens):
-        (WebCore::CSSVariableData::needsVariableResolution):
-        (WebCore::CSSVariableData::CSSVariableData):
-        * css/CSSVariableDependentValue.h:
-        * css/CSSVariableReferenceValue.cpp: Added.
-        (WebCore::CSSVariableReferenceValue::customCSSText):
-        * css/CSSVariableReferenceValue.h: Added.
-        (WebCore::CSSVariableReferenceValue::create):
-        (WebCore::CSSVariableReferenceValue::variableDataValue):
-        (WebCore::CSSVariableReferenceValue::equals):
-        (WebCore::CSSVariableReferenceValue::CSSVariableReferenceValue):
-        * css/CSSVariableValue.h:
-        * css/parser/CSSParserImpl.cpp:
-        (WebCore::filterProperties):
-        (WebCore::CSSParserImpl::consumeDeclaration):
-        (WebCore::CSSParserImpl::consumeVariableValue):
-        * css/parser/CSSVariableParser.cpp: Added.
-        (WebCore::CSSVariableParser::isValidVariableName):
-        (WebCore::classifyBlock):
-        (WebCore::isValidVariableReference):
-        (WebCore::classifyVariableRange):
-        (WebCore::CSSVariableParser::containsValidVariableReferences):
-        (WebCore::CSSVariableParser::parseDeclarationValue):
-        * css/parser/CSSVariableParser.h: Added.
-
-2016-09-13  Daniel Bates  <dabates@apple.com>
-
-        Remove CSS keyword properties from CSSParser::parseValue(CSSPropertyID, bool)
-        https://bugs.webkit.org/show_bug.cgi?id=161918
-
-        Reviewed by Simon Fraser.
-
-        CSSParser::parseValue(CSSPropertyID, bool) calls ASSERT_NOT_REACHED() when processing a CSS property
-        that is known to accept only keyword values as a means to guide a person to add such a CSS property
-        to the switch block in WebCore::isValidKeywordPropertyAndValue(). In theory this sounds good, but
-        in practice it does not work out and the list of such properties is stale. We should remove the
-        case statements for such properties and the maintenance burden they required, which was manual and
-        error prone. We should think about a better way to enforce that all CSS properties are parsed/validated.
-
-        The approach of calling ASSERT_NOT_REACHED is not beneficial to catching coding mistakes because
-        CSSParser::parseValue() has a default case statement to parse/validate SVG CSS properties and hence
-        does not allow the C++ compiler to validate that the switch block covers all CSSPropertyIDs.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseValue):
-
-2016-09-13  Daniel Bates  <dabates@apple.com>
-
-        Organize CSS keyword properties in WebCore::isKeywordPropertyID()
-        https://bugs.webkit.org/show_bug.cgi?id=161917
-
-        Reviewed by Simon Fraser.
-
-        Group and sort compile-time feature keywords and move them to the end of the switch block
-        to avoid the distraction of preprocessor statements scattered throughout the list. Sort
-        all the other keyword properties to make it straightforward to find a property by name.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::isKeywordPropertyID):
-
-2016-09-13  Nan Wang  <n_wang@apple.com>
-
-        AX: Crash at AccessibilityRenderObject::computeAccessibilityIsIgnored const  + 552
-        https://bugs.webkit.org/show_bug.cgi?id=161276
-
-        Reviewed by Chris Fleizach.
-
-        Sometimes when calling JavaScript removeChild or setAttribute on a node, it seems like
-        the renderer is deallocated during the process of computeAccessibilityIsIgnored. It's 
-        causing a crash when we are accessing the renderer after that. Since RenderObject is not ref
-        counted and we cannot hold onto it for the duration of the function, fixed it by adding
-        more nil checks.
-
-        Despite my best efforts, I couldn't make a layout test that destroys the renderer within
-        the computeAccessibilityIsIgnored function. 
-
-        * accessibility/AccessibilityRenderObject.cpp:
-        (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
-
-2016-09-12  Jer Noble  <jer.noble@apple.com>
-
-        Media-source backed elements block load event; cause web-platform-test flakiness
-        https://bugs.webkit.org/show_bug.cgi?id=161881
-
-        Reviewed by Eric Carlson.
-
-        Test: media/media-source/media-source-delaying-load-event.html
-
-        The MSE specification has added an explicit step to their "attaching to media element"
-        algorithm which tells the media element to stop delaying the load event. And indeed,
-        the HTMLMediaElement blocks the load event when a MediaSource is attached but its data
-        is never loaded.
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::setPrivateAndOpen):
-        * html/HTMLMediaElement.h:
-
-2016-09-12  Zalan Bujtas  <zalan@apple.com>
-
-        Input type object and the associated render can go out of sync.
-        https://bugs.webkit.org/show_bug.cgi?id=161871
-        <rdar://problem/28178094>
-
-        Reviewed by Antti Koivisto.
-
-        Bail out when we've got a mismatched renderer.
-
-        Test: fast/forms/assert-on-input-type-change.html
-
-        * html/ImageInputType.cpp:
-        (WebCore::ImageInputType::altAttributeChanged):
-
-2016-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK] Get rid of DataObjectGtk::forClipboard and cleanup pasteboard code
-        https://bugs.webkit.org/show_bug.cgi?id=161907
-
-        Reviewed by Michael Catanzaro.
-
-        We don't really need to keep a DataObjectGtk for every clipboard, we could simply pass the DataObjectGtk to read
-        and write methods of PasteboardHelper.
-
-        * editing/gtk/EditorGtk.cpp:
-        (WebCore::createFragmentFromPasteboardData): Update for DataObjectGtk API changes.
-        * platform/Pasteboard.h:
-        * platform/gtk/DataObjectGtk.cpp: Remove forClipboard() static method.
-        * platform/gtk/DataObjectGtk.h: Ditto.
-        * platform/gtk/PasteboardGtk.cpp:
-        (WebCore::Pasteboard::Pasteboard): Always create a new DataObjectGtk.
-        (WebCore::Pasteboard::dataObject): Return a const reference instead of a pointer.
-        (WebCore::Pasteboard::writePlainText): Pass the DataObjectGtk to PasteboardHelper.
-        (WebCore::Pasteboard::write): Ditto.
-        (WebCore::Pasteboard::writePasteboard): Ditto.
-        (WebCore::Pasteboard::clear): Ditto.
-        (WebCore::Pasteboard::read): Ditto.
-        (WebCore::Pasteboard::hasData): Ditto.
-        (WebCore::Pasteboard::types): Ditto.
-        (WebCore::Pasteboard::readString): Ditto.
-        (WebCore::Pasteboard::readFilenames): Ditto.
-        * platform/gtk/PasteboardHelper.cpp:
-        (WebCore::PasteboardHelper::getClipboardContents): Update the given DataObjectGtk.
-        (WebCore::PasteboardHelper::fillSelectionData): Use a const reference to DataObjectGtk instead of a pointer.
-        (WebCore::PasteboardHelper::targetListForDataObject): Ditto.
-        (WebCore::PasteboardHelper::fillDataObjectFromDropData): Use a reference to DataObjectGtk instead of a pointer.
-        (WebCore::ClipboardSetData::ClipboardSetData): Helper struct to pass DataObjectGtk and callback to clipboard callbacks.
-        (WebCore::ClipboardSetData::~ClipboardSetData):
-        (WebCore::getClipboardContentsCallback): Get the DataObjectGtk from ClipboardSetData struct passed as user data.
-        (WebCore::clearClipboardContentsCallback): Get the DataObjectGtk and callback from ClipboardSetData struct
-        passed as user data.
-        (WebCore::PasteboardHelper::writeClipboardContents): Write the given DataObjectGtk.
-        * platform/gtk/PasteboardHelper.h:
-
-2016-09-13  Chris Dumez  <cdumez@apple.com>
-
-        Drop support for <isindex>
-        https://bugs.webkit.org/show_bug.cgi?id=7139
-
-        Reviewed by Ryosuke Niwa.
-
-        Drop support for <isindex> and <input name=isindex>. Those are no longer
-        in the HTML specification and Chrome / Edge have already dropped their
-        support. Firefox is also planning on dropping this.
-
-        Test: imported/w3c/web-platform-tests/html/semantics/forms/historical.html
-
-        * css/StyleResolver.cpp:
-        (WebCore::elementTypeHasAppearanceFromUAStyle):
-        * css/html.css:
-        (input, textarea, keygen, select, button, meter, progress):
-        (input, textarea, keygen, select, button):
-        (#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS):
-        (input::placeholder):
-        (input:focus, textarea:focus, keygen:focus, select:focus):
-        * dom/Element.cpp:
-        (WebCore::Element::ieForbidsInsertHTML):
-        * html/HTMLInputElement.cpp:
-        (WebCore::HTMLInputElement::HTMLInputElement):
-        * html/HTMLTagNames.in:
-        * html/parser/HTMLStackItem.h:
-        (WebCore::isSpecialNode):
-        * html/parser/HTMLTreeBuilder.cpp:
-        (WebCore::HTMLTreeBuilder::processStartTagForInBody):
-        (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): Deleted.
-        (WebCore::createCaseMap): Deleted.
-        * html/parser/HTMLTreeBuilder.h:
-        * platform/network/FormData.cpp:
-        (WebCore::FormData::appendKeyValuePairItems):
-
-2016-09-12  Per Arne Vollan  <pvollan@apple.com>
-
-        [Win] Warning fix.
-        https://bugs.webkit.org/show_bug.cgi?id=161858
-
-        Reviewed by Brent Fulgham.
-
-        Use exported constants from CoreText.dll, instead of creating copies.
-
-        * PlatformAppleWin.cmake:
-        * platform/spi/win/CoreTextSPIWin.cpp: Removed.
-        * platform/spi/win/CoreTextSPIWin.h:
-
-2016-09-12  Youenn Fablet  <youenn@apple.com>
-
-        ScriptElement should use FetchOptions::mode according its crossOrigin attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161686
-
-        Reviewed by Darin Adler.
-
-        Setting ScriptElement fetch mode according its crossOrigin attribute.
-        Removing LoadableClassicScriptchecking of CORS since this is now done at ResourceLoader/CachedResource level.
-
-        Updating CachedResourceLoader to ensure that a resource that matches an on-going resource load but with different fetch mode/origin,
-        always gets its loading started if the resource state is not Cached.
-
-        Tests: fast/dom/script-crossorigin-loads-fail-origin.html
-               http/tests/security/cross-origin-cached-images-parallel.html
-               http/tests/security/cross-origin-cached-images.html
-               http/tests/security/cross-origin-cached-scripts-parallel.html
-               http/tests/security/cross-origin-cached-scripts.html
-               http/tests/security/script-crossorigin-loads-correctly-credentials.html
-               http/tests/security/script-with-dataurl.html
-
-        * dom/LoadableClassicScript.cpp:
-        (WebCore::LoadableClassicScript::create):
-        (WebCore::LoadableClassicScript::notifyFinished): Checking CORS failures using the resource state.
-        (WebCore::LoadableClassicScript::~LoadableClassicScript): Deleted.
-        (WebCore::LoadableClassicScript::isLoaded): Deleted.
-        * dom/LoadableClassicScript.h:
-        * dom/ScriptElement.cpp:
-        (WebCore::ScriptElement::requestClassicScript):
-        (WebCore::ScriptElement::requestScriptWithCache): Using CachedResourceRequest::setAsPotentiallyCrossOrigin to set fetch mode according crossOrigin attribute.
-        * dom/ScriptElement.h:
-        * loader/cache/CachedImage.cpp:
-        (WebCore::CachedImage::setBodyDataFrom):
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest): Adding support for script resources.
-        (WebCore::CachedResourceLoader::requestResource): Ensuring that 'updated' resources gets actually loaded.
-        * loader/cache/CachedScript.cpp:
-        (WebCore::CachedScript::setBodyDataFrom): Implementing specific data copy from another CachedScript.
-        * loader/cache/CachedScript.h:
-
-2016-09-12  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK] Scrollbar  too large
-        https://bugs.webkit.org/show_bug.cgi?id=161735
-
-        Reviewed by Michael Catanzaro.
-
-        We were not calculating the total scrollbar size correctly when the theme defines a minimum width/height. In
-        that case we need to take the extra size into account (border, margin, padding), but not adding the minimum
-        size. We were also adjusting the thumb position when rendering in indicator mode, but we really need to adjust
-        the whole rectangle. This worked in Adwaita because it uses a transparent track when in indicator mode. We are
-        also now taking into account the text direction when doing this adjustment for the indicator mode.
-
-        * platform/gtk/ScrollbarThemeGtk.cpp:
-        (WebCore::ScrollbarThemeGtk::paint):
-        (WebCore::ScrollbarThemeGtk::scrollbarThickness):
-
-2016-09-12  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK] Crash of WebProcess on the last WebView disconnect (take two)
-        https://bugs.webkit.org/show_bug.cgi?id=161842
-
-        Reviewed by Michael Catanzaro.
-
-        The problem is that when PlatformDisplayX11 is destroyed, the sharing GL context is deleted and its destructor
-        makes a downcast of PlatformDisplay to get the native X11 display. We could simply keep a pointer to the native
-        X11 display in GLContextGLX, got at construction time from the PlatformDisplay, and ensure the sharing GL
-        context is deleted before the native X11 display is closed.
-
-        * platform/graphics/PlatformDisplay.h: Make m_sharingGLContext protected.
-        * platform/graphics/glx/GLContextGLX.cpp:
-        (WebCore::GLContextGLX::GLContextGLX): Initialize m_x11Display.
-        (WebCore::GLContextGLX::~GLContextGLX): Use m_x11Display and remove confusing comment about possible crash with
-        nviedia closed drivers.
-        (WebCore::GLContextGLX::defaultFrameBufferSize): Use m_x11Display.
-        (WebCore::GLContextGLX::makeContextCurrent): Ditto.
-        (WebCore::GLContextGLX::swapBuffers): Ditto.
-        (WebCore::GLContextGLX::swapInterval): Ditto.
-        (WebCore::GLContextGLX::cairoDevice): Ditto.
-        * platform/graphics/glx/GLContextGLX.h:
-        * platform/graphics/x11/PlatformDisplayX11.cpp:
-        (WebCore::PlatformDisplayX11::~PlatformDisplayX11): Delete the sharing GL context before closing the display.
-
-2016-09-12  Chris Dumez  <cdumez@apple.com>
-
-        Fix post-landing review comments after r205787
-        https://bugs.webkit.org/show_bug.cgi?id=161885
-
-        Reviewed by Darin Adler.
-
-        Leverage new StringBuilder::append(CFStringRef) overload.
-
-        * html/parser/HTMLParserIdioms.cpp:
-        (WebCore::parseHTTPRefreshInternal):
-        * page/CaptionUserPreferencesMediaAF.cpp:
-        (WebCore::CaptionUserPreferencesMediaAF::captionsDefaultFontCSS):
-        (WebCore::buildDisplayStringForTrackBase):
-        * platform/network/mac/CookieJarMac.mm:
-        (WebCore::cookiesForSession):
-        * rendering/RenderThemeIOS.mm:
-        (WebCore::RenderThemeIOS::mediaControlsStyleSheet):
-        (WebCore::RenderThemeIOS::mediaControlsScript):
-        * rendering/RenderThemeMac.mm:
-        (WebCore::RenderThemeMac::mediaControlsStyleSheet):
-        (WebCore::RenderThemeMac::mediaControlsScript):
-
-2016-09-12  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Correctly ignore spaces before relative URLs with no scheme
-        https://bugs.webkit.org/show_bug.cgi?id=161889
-
-        Reviewed by Daniel Bates.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-12  Nan Wang  <n_wang@apple.com>
-
-        AX: Crash at WebCore::Range::compareBoundaryPoints(WebCore::Range::CompareHow, WebCore::Range const&, int&) const + 23
-        https://bugs.webkit.org/show_bug.cgi?id=161878
-
-        Reviewed by Chris Fleizach.
-
-        In function characterOffsetsInOrder(const CharacterOffset&, const CharacterOffset&), we are creating two
-        ranges based on the nodes that are associated to the passed in CharacterOffsets. When the first node is a doctype
-        node, the first range will be a nullptr, and dereferencing it leads to a crash. Fixed this by adding a 
-        NULL check.
-
-        Test: accessibility/mac/doctype-node-in-text-marker-crash.html
-
-        * accessibility/AXObjectCache.cpp:
-        (WebCore::characterOffsetsInOrder):
-        (WebCore::resetNodeAndOffsetForReplacedNode):
-
-2016-09-12  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        Move the pixel data of ImageFrame to a separate class named ImageBackingStore
-        https://bugs.webkit.org/show_bug.cgi?id=159679
-
-        Reviewed by Simon Fraser.
-
-        Move the pixel data manipulation part in ImageFrame into a separate class
-        and allocate it on demand.
-
-        * PlatformEfl.cmake:
-        * PlatformGTK.cmake:
-        * PlatformWinCairo.cmake:
-        * WebCore.xcodeproj/project.pbxproj:
-        Add ImageBackingStoreCairo.cpp and remove ImageDecoderCairo.cpp from the
-        WebKit projects.
-
-        * platform/graphics/Color.cpp:
-        (WebCore::premultipliedChannel): channel = channel * alpha / 255.
-        (WebCore::unpremultipliedChannel): channel = channel * 255 / alpha.
-        (WebCore::makePremultipliedRGBA): Un-premultiplied channels to premultiplied RGBA32.
-        (WebCore::makeUnPremultipliedRGBA): Premultiplied channels to un-premultiplied RGBA32.
-        (WebCore::colorFromPremultipliedARGB): Use makeUnPremultipliedRGBA.
-        (WebCore::premultipliedARGBFromColor): Use makePremultipliedRGBA.
-        * platform/graphics/Color.h:
-        (WebCore::fastMultiplyBy255): x * 255 = x * 256 - x = x << 8 - x.
-
-        * platform/graphics/ImageBackingStore.h: Added.
-        (WebCore::ImageBackingStore::create): Creates a new ImageBackingStore.
-        (WebCore::ImageBackingStore::setSize): Changes the pixels size.
-        (WebCore::ImageBackingStore::setFrameRect): This will always just be the entire buffer except for GIF and PNG frames.
-        (WebCore::ImageBackingStore::size): Returns the pixels size.
-        (WebCore::ImageBackingStore::frameRect): Returns the pixels frame rectangle.
-        (WebCore::ImageBackingStore::clear): Clears the entire image.
-        (WebCore::ImageBackingStore::clearRect): Clears a rectangle in the image.
-        (WebCore::ImageBackingStore::repeatFirstRow): Repeats the first row in a rectangle in the image.
-        (WebCore::ImageBackingStore::pixelAt): Returns a pointer to a pixel data.
-        (WebCore::ImageBackingStore::setPixel): Sets the color of a pixel in the image.
-        (WebCore::ImageBackingStore::blendPixel): Blend a color with a pixel in the image.
-        (WebCore::ImageBackingStore::inBounds): Checks if a rectangle is in the bounds of the image.
-        (WebCore::ImageBackingStore::isOverSize): Checks whether a size could not be allocated for an image.
-        (WebCore::ImageBackingStore::ImageBackingStore):
-
-        * platform/graphics/cg/NativeImageCG.cpp:
-        (WebCore::nativeImageHasAlpha): Implement this function. See comments in https://bugs.webkit.org/show_bug.cgi?id=158684.
-
-        * platform/image-decoders/ImageDecoder.cpp:
-        (WebCore::ImageFrame::operator=): copyBitmapData() now copies the frameRect of the ImageBackingStore.
-        (WebCore::ImageFrame::clearPixelData): The pixels data and the pointer to these pixels are now included in the ImageBackingStore.
-        (WebCore::ImageFrame::zeroFillPixelData): Clearing the image pixels are now in ImageBackingStore::clear().
-        (WebCore::ImageFrame::zeroFillFrameRect): Clearing the image pixels are now in ImageBackingStore::clearRect().
-        (WebCore::ImageFrame::copyBitmapData): We either need to create a new ImageBackingStore or nullify the current one.
-        (WebCore::ImageFrame::setSize): ImageFrame::setSize() is supposed to be called once and to create the ImageBackingStore.
-        (WebCore::ImageFrame::setOriginalFrameRect): Delegate this call to ImageBackingStore::setFrameRect().
-        (WebCore::ImageDecoder::frameBytesAtIndex): ImageFrame::PixelData can be replaced by RGBA32.
-
-        * platform/image-decoders/ImageDecoder.h:
-        (WebCore::ImageFrame::copyRowNTimes): The implementation was moved to ImageBackingStore::repeatFirstRow().
-        (WebCore::ImageFrame::size): Gets the size of an image from its ImageBackingStore.
-        (WebCore::ImageFrame::asNewNativeImage): Gets a NtaiveImagePtr from the ImageBackingStore.
-        (WebCore::ImageFrame::backingStore): Returns a raw pointer to the ImageBackingStore.
-        (WebCore::ImageFrame::hasBackingStore): Returns whether the ImageFrame has an ImageBackingStore.
-        (WebCore::ImageFrame::originalFrameRect): Returns the frameRect of the image from its ImageBackingStore.
-        (WebCore::ImageFrame::pixelAt): Delegates the call to the ImageBackingStore.
-        (WebCore::ImageFrame::setPixel): Delegates the call to the ImageBackingStore.
-        (WebCore::ImageFrame::blendPixel): Delegates the call to the ImageBackingStore.
-        
-        (WebCore::ImageDecoder::setSize): setSize() now takes an IntSize.
-        (WebCore::ImageFrame::setOriginalFrameRect): Deleted. Moved to ImageDecoder.cpp.
-        (WebCore::ImageFrame::setRGBA): Deleted. Renamed to ImageFrame::setPixel().
-        (WebCore::ImageFrame::getAddr): Deleted. Renamed to ImageFrame::pixelAt().
-        (WebCore::ImageFrame::hasPixelData): Deleted. Renamed to ImageFrame::hasBackingStore().
-        (WebCore::ImageFrame::fixPointUnsignedMultiply): Deleted.
-        (WebCore::ImageFrame::divide255): Deleted. Replaced by fastDivideBy255() from Color.h.
-        (WebCore::ImageFrame::overRGBA): Deleted. Renamed to ImageFrame::blendPixel().
-        (WebCore::ImageFrame::width): Deleted.
-        (WebCore::ImageFrame::height): Deleted.
-        (WebCore::ImageDecoder::isOverSize): Deleted. Moved to ImageBackingStore::isOverSize().
-
-        * platform/image-decoders/bmp/BMPImageReader.cpp:
-        (WebCore::BMPImageReader::decodeBMP):
-        (WebCore::BMPImageReader::processInfoHeader):
-        (WebCore::BMPImageReader::processNonRLEData):
-        * platform/image-decoders/bmp/BMPImageReader.h:
-        (WebCore::BMPImageReader::setI):
-        (WebCore::BMPImageReader::setPixel):
-        (WebCore::BMPImageReader::fillRGBA):
-        (WebCore::BMPImageReader::setRGBA): Deleted.
-        * platform/image-decoders/cairo/ImageBackingStoreCairo.cpp: Added.
-        (WebCore::ImageBackingStore::image):
-        * platform/image-decoders/cairo/ImageDecoderCairo.cpp: Removed.
-        * platform/image-decoders/gif/GIFImageDecoder.cpp:
-        (WebCore::GIFImageDecoder::setSize):
-        (WebCore::GIFImageDecoder::haveDecodedRow):
-        (WebCore::GIFImageDecoder::initFrameBuffer):
-        * platform/image-decoders/gif/GIFImageDecoder.h:
-        * platform/image-decoders/gif/GIFImageReader.cpp:
-        (GIFImageReader::parse):
-        * platform/image-decoders/ico/ICOImageDecoder.cpp:
-        (WebCore::ICOImageDecoder::setSize):
-        (WebCore::ICOImageDecoder::processDirectoryEntries):
-        * platform/image-decoders/ico/ICOImageDecoder.h:
-        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
-        (WebCore::JPEGImageReader::decode):
-        (WebCore::JPEGImageDecoder::setSize):
-        (WebCore::setPixel):
-        (WebCore::JPEGImageDecoder::outputScanlines):
-        * platform/image-decoders/jpeg/JPEGImageDecoder.h:
-        * platform/image-decoders/png/PNGImageDecoder.cpp:
-        (WebCore::PNGImageDecoder::setSize):
-        (WebCore::PNGImageDecoder::headerAvailable):
-        (WebCore::setPixelRGB):
-        (WebCore::setPixelRGBA):
-        (WebCore::setPixelPremultipliedRGBA):
-        (WebCore::PNGImageDecoder::rowAvailable):
-        (WebCore::PNGImageDecoder::initFrameBuffer):
-        (WebCore::PNGImageDecoder::frameComplete):
-        * platform/image-decoders/png/PNGImageDecoder.h:
-        * platform/image-decoders/webp/WEBPImageDecoder.cpp:
-        (WebCore::WEBPImageDecoder::decode):
-        - Send an IntSize to ImageFrame::setSize() and ImageDecoder::setSize().
-        - Replace ImageFrame::PixelData by RGBA32.
-        - No need to call ImageFrame::setOriginalFrameRect() if this sets the
-          frameRect to the entire image rectangle since this is done by default
-          in ImageBackingStore::setSize().
-        - ImageBackingStore::image() now replaces ImageFrame::asNewNativeImage().
-        - ImageFrame::setPixel() now replaces ImageFrame::setRGBA().
-        - ImageFrame::blendPixel() now replaces ImageFrame::overRGBA().
-        - ImageFrame::pixelAt() now replaces ImageFrame::getAddr().
-
-2016-09-12  Joseph Pecoraro  <pecoraro@apple.com>
-
-        HTMLButtonElement.prototype.click should be HTMLElement.prototype.click
-        https://bugs.webkit.org/show_bug.cgi?id=161874
-
-        Reviewed by Chris Dumez.
-
-        Test: fast/dom/HTMLButtonElement/click.html
-
-        * html/HTMLButtonElement.idl:
-        Remove the unnecessary 'click' definition. It already exists in HTMLElement.
-        If this was needed for ObjC code generation on DOMHTMLButtonElement, then
-        the extra definition is no longer needed now that ObjC bindings have moved.
-
-2016-09-12  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Fix relative URLs containing only fragments
-        https://bugs.webkit.org/show_bug.cgi?id=161882
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-12  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Correctly handle relative URLs that are just a scheme and a colon
-        https://bugs.webkit.org/show_bug.cgi?id=161876
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-12  Dean Jackson  <dino@apple.com>
-
-        Remove OptionalColor
-        https://bugs.webkit.org/show_bug.cgi?id=161853
-        <rdar://problem/28252385>
-
-        Reviewed by Alex Christensen.
-
-        OptionalColor isn't used. The concept will be implemented
-        in a different manner.
-
-        * platform/graphics/Color.h:
-
-2016-09-12  Simon Fraser  <simon.fraser@apple.com>
-
-        Add Intersection Observer to the features.json file.
-
-        * features.json:
-
-2016-09-12  Myles C. Maxfield  <mmaxfield@apple.com>
-
-        [Cocoa] Reduce uses of CGFonts in favor of CTFonts
-        https://bugs.webkit.org/show_bug.cgi?id=161809
-
-        Reviewed by Daniel Bates.
-
-        Eventually, we want to remove the cgFont() member of PlatformFontData for both memory
-        savings and conceptual clarity. Because there is no performance loss from moving from
-        CGFontGetGlyphsForUnichars() to CTFontGetGlyphsForCharacters(), making this switch
-        gets us closer to reducing the uses of cgFont().
-
-        No new tests because there is no behavior change.
-
-        * platform/graphics/Font.cpp:
-        (WebCore::createAndFillGlyphPage):
-        * platform/graphics/GlyphPage.h:
-        (WebCore::GlyphData::GlyphData):
-        * platform/graphics/mac/GlyphPageMac.cpp:
-        (WebCore::shouldFillWithVerticalGlyphs):
-        (WebCore::GlyphPage::fill):
-        (WebCore::shouldUseCoreText): Deleted.
-
-2016-09-12  Alex Christensen  <achristensen@webkit.org>
-
-        Remove trailing control characters and spaces before parsing a URL
-        https://bugs.webkit.org/show_bug.cgi?id=161870
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::bufferView):
-        (WebCore::URLParser::parse):
-
-2016-09-12  Chris Dumez  <cdumez@apple.com>
-
-        window.performance object resets script-applied properties
-        https://bugs.webkit.org/show_bug.cgi?id=137407
-
-        Reviewed by Darin Adler.
-
-        Make sure the window.performance wrapper stays alive for as long as the
-        associated frame, similarly to what we do for window.screen.
-
-        Test: fast/performance/performance-object-gc.html
-
-        * page/Performance.idl:
-
-2016-09-12  Saam Barati  <sbarati@apple.com>
-
-        Add WebKit support for an option in Safari's debug menu similar to "Get Bytecode Profile" but for the Sampling Profiler's data
-        https://bugs.webkit.org/show_bug.cgi?id=161785
-
-        Reviewed by Tim Horton.
-
-        * ForwardingHeaders/runtime/SamplingProfiler.h: Added.
-
-2016-09-12  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Add support for the parsing of the HTML sizes attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161868
-
-        Reviewed by Dean Jackson.
-
-        This patch adds the parsers for the sizes attribute. This code is heavily modified
-        from Blink, and it really only makes use of the tokenization/parsing code. What is done
-        with the results involves the same original code that we used over in SourceSizeList.cpp.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/parser/SizesAttributeParser.cpp: Added.
-        (WebCore::SizesAttributeParser::computeLength):
-        (WebCore::SizesAttributeParser::SizesAttributeParser):
-        (WebCore::SizesAttributeParser::length):
-        (WebCore::SizesAttributeParser::calculateLengthInPixels):
-        (WebCore::SizesAttributeParser::mediaConditionMatches):
-        (WebCore::SizesAttributeParser::parse):
-        (WebCore::SizesAttributeParser::effectiveSize):
-        (WebCore::SizesAttributeParser::effectiveSizeDefaultValue):
-        * css/parser/SizesAttributeParser.h: Added.
-        * css/parser/SizesCalcParser.cpp: Added.
-        (WebCore::SizesCalcParser::SizesCalcParser):
-        (WebCore::SizesCalcParser::result):
-        (WebCore::operatorPriority):
-        (WebCore::SizesCalcParser::handleOperator):
-        (WebCore::SizesCalcParser::appendNumber):
-        (WebCore::SizesCalcParser::appendLength):
-        (WebCore::SizesCalcParser::appendOperator):
-        (WebCore::SizesCalcParser::calcToReversePolishNotation):
-        (WebCore::operateOnStack):
-        (WebCore::SizesCalcParser::calculate):
-        * css/parser/SizesCalcParser.h: Added.
-        (WebCore::SizesCalcValue::SizesCalcValue):
-        (WebCore::SizesCalcParser::isValid):
-
-2016-09-12  Jer Noble  <jer.noble@apple.com>
-
-        Fix failing mediasource-play.html and mediasource-config-change-mp4-v-bitrate.html tests
-        https://bugs.webkit.org/show_bug.cgi?id=161819
-
-        Reviewed by Eric Carlson.
-
-        Fixes tests: imported/w3c/web-platform-tests/media-source/mediasource-play.html
-                     imported/w3c/web-platform-tests/media-source/mediasource-sourcebuffer-mode.html
-
-        The newest revision of the web-platform-test suite for Media Source tests new behavior
-        added to the MSE specification. Specifically, setting a MediaSource's duration will no
-        longer implicitly truncate the source's active SourceBuffer objects.
-
-        * Modules/mediasource/MediaSource.cpp:
-        (WebCore::MediaSource::setDuration): Return exception if issued by setDurationInternal.
-        (WebCore::MediaSource::setDurationInternal): Bring "duration change" algorithm up to spec.
-        * Modules/mediasource/MediaSource.h:
-        * Modules/mediasource/SampleMap.h:
-        (WebCore::PresentationOrderSampleMap::begin): Add const accessor.
-        (WebCore::PresentationOrderSampleMap::end): Ditto.
-        (WebCore::PresentationOrderSampleMap::rbegin): Ditto.
-        (WebCore::PresentationOrderSampleMap::rend): DItto.
-        (WebCore::DecodeOrderSampleMap::begin): Ditto.
-        (WebCore::DecodeOrderSampleMap::end): Ditto.
-        (WebCore::DecodeOrderSampleMap::rbegin): Ditto.
-        (WebCore::DecodeOrderSampleMap::rend): Ditto.
-        * Modules/mediasource/SourceBuffer.cpp:
-        (WebCore::SourceBuffer::highestPresentationTimestamp): Added convenience method.
-        (WebCore::SourceBuffer::removeCodedFrames): Drive-by fix; use .values() rather than
-            pulling the value out of each HashMap iterator.
-        * Modules/mediasource/SourceBuffer.h:
-
-2016-09-12  Chris Dumez  <cdumez@apple.com>
-
-        Switch remaining users of Document::inPageCache() to pageCacheState()
-        https://bugs.webkit.org/show_bug.cgi?id=161865
-
-        Reviewed by Darin Adler.
-
-        Switch remaining users of Document::inPageCache() to pageCacheState() as
-        the former one is confusing (given that it returns true while the
-        pagehide event is being fired).
-
-        * dom/Document.cpp:
-        (WebCore::Document::scheduleStyleRecalc):
-        (WebCore::Document::fontsNeedUpdate):
-        (WebCore::Document::removeFocusedNodeOfSubtree):
-        (WebCore::Document::setFocusedElement):
-        (WebCore::Document::takeDOMWindowFrom):
-        (WebCore::Document::topDocument):
-        (WebCore::Document::webkitWillEnterFullScreenForElement):
-        (WebCore::Document::webkitDidEnterFullScreenForElement):
-        (WebCore::Document::webkitWillExitFullScreenForElement):
-        (WebCore::Document::webkitDidExitFullScreenForElement):
-        * dom/Document.h:
-        (WebCore::Document::needsStyleRecalc):
-        (WebCore::Document::inPageCache): Deleted.
-        * history/CachedFrame.cpp:
-        (WebCore::CachedFrame::CachedFrame):
-        (WebCore::CachedFrame::clear):
-        (WebCore::CachedFrame::destroy):
-        * html/HTMLMediaElement.cpp:
-        (WebCore::mediaElementIsAllowedToAutoplay):
-        * html/HTMLPlugInImageElement.cpp:
-        (WebCore::HTMLPlugInImageElement::createElementRenderer):
-        * loader/DocumentLoader.cpp:
-        (WebCore::DocumentLoader::addSubresourceLoader):
-        * loader/HistoryController.cpp:
-        (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
-        * page/DOMWindow.cpp:
-        (WebCore::DOMWindow::decrementScrollEventListenersCount):
-        * page/FrameView.cpp:
-        (WebCore::FrameView::layout):
-        * page/animation/AnimationBase.cpp:
-        (WebCore::AnimationBase::setNeedsStyleRecalc):
-        * page/animation/AnimationController.cpp:
-        (WebCore::AnimationControllerPrivate::updateAnimations):
-        (WebCore::AnimationControllerPrivate::addElementChangeToDispatch):
-        (WebCore::AnimationController::cancelAnimations):
-        (WebCore::AnimationController::updateAnimations):
-        * page/animation/ImplicitAnimation.cpp:
-        (WebCore::ImplicitAnimation::sendTransitionEvent):
-        * page/animation/KeyframeAnimation.cpp:
-        (WebCore::KeyframeAnimation::sendAnimationEvent):
-        * page/scrolling/AsyncScrollingCoordinator.cpp:
-        (WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
-        * rendering/RenderElement.cpp:
-        (WebCore::shouldRepaintForImageAnimation):
-        (WebCore::RenderElement::newImageAnimationFrameAvailable):
-        * rendering/RenderImage.cpp:
-        (WebCore::RenderImage::imageChanged):
-        * rendering/RenderLayerCompositor.cpp:
-        (WebCore::RenderLayerCompositor::updateCompositingLayers):
-        (WebCore::RenderLayerCompositor::willRemoveScrollingLayerWithBacking):
-        (WebCore::RenderLayerCompositor::didAddScrollingLayer):
-        * rendering/RenderObject.cpp:
-        (WebCore::printRenderTreeForLiveDocuments):
-        (WebCore::printLayerTreeForLiveDocuments):
-        * rendering/RenderView.cpp:
-        (WebCore::RenderView::lazyRepaintTimerFired):
-        * rendering/SimpleLineLayout.cpp:
-        (WebCore::SimpleLineLayout::collectNonEmptyLeafRenderBlockFlowsForCurrentPage):
-
-2016-09-12  Keith Rollin  <krollin@apple.com>
-
-        Enhance Network logging
-        https://bugs.webkit.org/show_bug.cgi?id=161771
-
-        Reviewed by Antti Koivisto.
-
-        Modify current logging statements to follow a consistent pattern in
-        order to enhance readability and parsing.
-
-        No new tests -- there are no tests for logging.
-
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::prepareForLoadStart):
-        (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
-
-2016-09-12  Brady Eidson  <beidson@apple.com>
-
-        Crash in com.apple.WebCore: WebCore::NavigatorGamepad::gamepadFromPlatformGamepad.
-        <rdar://problem/28018073> and https://bugs.webkit.org/show_bug.cgi?id=161694
-
-        Reviewed by Alex Christensen.
-
-        No new tests (Caught by existing tests in some configurations).
-
-        * Modules/gamepad/GamepadManager.cpp:
-        (WebCore::GamepadManager::platformGamepadInputActivity): Null check.
-
-2016-09-12  Alex Christensen  <achristensen@webkit.org>
-
-        Fix more URLParser quirks
-        https://bugs.webkit.org/show_bug.cgi?id=161834
-
-        Reviewed by Brady Eidson.
-
-        Added new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        Skip some tabs and newlines.  The spec says to remove them before processing the String,
-        but to reduce allocations I am skipping them whenever we increment an iterator.
-        Fix a few other quirks to be more web platform conformant.
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        Optimize URLParser performance
-        https://bugs.webkit.org/show_bug.cgi?id=161837
-
-        Reviewed by Brady Eidson.
-
-        No change in behavior.  Existing behavior covered by API tests and added a new API test.
-
-        * platform/URLParser.cpp:
-        (WebCore::isDefaultPort):
-        Use switch statements instead of HashMap lookups.
-        (WebCore::isSpecialScheme):
-        Use switch statements instead of repeated String comparisons.
-        (WebCore::URLParser::parsePort):
-        Reduce String allocation.
-
-2016-09-12  Simon Fraser  <simon.fraser@apple.com>
-
-        Make -webkit-transition-* and -webkit-animation-* properties be pure aliases of the unprefixed ones
-        https://bugs.webkit.org/show_bug.cgi?id=160478
-
-        Reviewed by Dean Jackson.
-        
-        Remove the custom -webkit prefixed transition and animation properties, and just make
-        them aliases of the unprefixed ones, as we do for transforms.
-        
-        -webkit-animation-trigger remains as the only prefixed-only animation property.
-        
-        This is mostly code deletion.
-
-        Test: fast/css/longhand-overrides-shorthand-prefixing.html
-
-        * css/CSSComputedStyleDeclaration.cpp:
-        (WebCore::ComputedStyleExtractor::propertyValue):
-        * css/CSSProperty.h:
-        (WebCore::prefixingVariantForPropertyId): Deleted.
-        * css/CSSPropertyNames.in:
-        * css/CSSToStyleMap.cpp:
-        (WebCore::CSSToStyleMap::mapAnimationDelay):
-        (WebCore::CSSToStyleMap::mapAnimationDirection):
-        (WebCore::CSSToStyleMap::mapAnimationDuration):
-        (WebCore::CSSToStyleMap::mapAnimationFillMode):
-        (WebCore::CSSToStyleMap::mapAnimationIterationCount):
-        (WebCore::CSSToStyleMap::mapAnimationName):
-        (WebCore::CSSToStyleMap::mapAnimationPlayState):
-        (WebCore::CSSToStyleMap::mapAnimationProperty):
-        (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
-        * css/PropertySetCSSStyleDeclaration.cpp:
-        (WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
-        (WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
-        * css/StyleProperties.cpp:
-        (WebCore::StyleProperties::getPropertyValue):
-        (WebCore::MutableStyleProperties::removeShorthandProperty):
-        (WebCore::StyleProperties::asText):
-        * css/StylePropertyShorthand.cpp:
-        (WebCore::animationShorthandForParsing):
-        * css/StylePropertyShorthand.h:
-        * css/StyleResolver.cpp:
-        (WebCore::StyleResolver::styleForKeyframe):
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseValue):
-        (WebCore::CSSParser::parseAnimationShorthand):
-        (WebCore::CSSParser::parseTransitionShorthand):
-        (WebCore::CSSParser::parseAnimationProperty):
-        (WebCore::CSSParser::addPropertyWithPrefixingVariant): Deleted.
-        * css/parser/CSSParser.h:
-        * html/shadow/MediaControlElements.cpp:
-        (WebCore::MediaControlPanelElement::makeOpaque):
-        (WebCore::MediaControlPanelElement::makeTransparent):
-
-2016-09-12  Per Arne Vollan  <pvollan@apple.com>
-
-        Unreviewed build fix after r205090.
-
-        * platform/cf/MediaAccessibilitySoftLink.cpp:
-
-2016-09-12  Javier Fernandez  <jfernandez@igalia.com>
-
-        [css-align] Initial values are parsed as invalid for some Alignment properties
-        https://bugs.webkit.org/show_bug.cgi?id=161303
-
-        Reviewed by Darin Adler.
-
-        Due to the implementation of the new CSS Box Alignment specification,
-        some properties have now new values allowed, which are not valid
-        according to the Flexible Box Layout specification.
-
-        In r205102 we have get back the keywordID parsing, originally implemented for
-        the Flexbible Box Layout specification. Even though the new valued would be
-        parsed as invalid when they are set, the 'initial' values will be assigned
-        in any case.
-
-        This patch verifies that the 'initial' values depend on whether the Grid
-        Layout is enabled or not and verifying such values are parsed as valid.
-
-        Additionally, it gets back as well they keywordID parsing for the Content
-        Alignment properties (align-content and justify-content). This required to
-        touch a bit the StyleBuilderConverter logic, since we will have to deal with
-        either the complex CSSContentDistributionValue complex or the  simpler
-        CSSPrimitiveValue.
-
-        Test: fast/css/ensure-flexbox-compatibility-with-initial-values.html
-
-        * css/StyleBuilderConverter.h:
-        (WebCore::StyleBuilderConverter::convertContentAlignmentData): Handling a primitive value if Grid Layout is not enabled.
-        * css/parser/CSSParser.cpp:
-        (WebCore::isValidKeywordPropertyAndValue): Simpler parsing of alignment properties if Grid Layout is not enabled.
-        (WebCore::isKeywordPropertyID): Alignment properties are defined as keyword if Grid Layout is no enabled.
-        (WebCore::CSSParser::parseValue): Assert Grid Layout is enabled when using the complex parsing.
-        * rendering/style/RenderStyle.cpp:
-        (WebCore::RenderStyle::isCSSGridLayoutEnabled): Checking out the Grid Layout runtime flags.
-        * rendering/style/RenderStyle.h:
-        (WebCore::RenderStyle::initialDefaultAlignment): Initial value will depend on whether Grid Layout is enabled or not.
-        (WebCore::RenderStyle::initialContentAlignment): Initial value will depend on whether Grid Layout is enabled or not.
-
-2016-09-12  Chris Dumez  <cdumez@apple.com>
-
-        ol.start may return incorrect value for reversed lists when not explicitly set
-        https://bugs.webkit.org/show_bug.cgi?id=161713
-
-        Reviewed by Ryosuke Niwa.
-
-        Fix style nit after r205689.
-
-        * html/HTMLOListElement.cpp:
-        (WebCore::HTMLOListElement::itemCount):
-        (WebCore::HTMLOListElement::itemCountAfterLayout):
-        * html/HTMLOListElement.h:
-
-2016-09-12  Chris Dumez  <cdumez@apple.com>
-
-        Start using Document::pageCacheState() instead of Document::inPageCache()
-        https://bugs.webkit.org/show_bug.cgi?id=161851
-
-        Reviewed by Ryosuke Niwa.
-
-        Start using Document::pageCacheState() instead of Document::inPageCache()
-        as the latter one is confusing (given that it is true when firing the
-        pagehide event, when the document is about to enter page cache).
-
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::closeURL):
-        (WebCore::FrameLoader::clear):
-        (WebCore::FrameLoader::dispatchUnloadEvents):
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::load):
-        * page/Page.cpp:
-        (WebCore::incrementFrame): Deleted.
-        * page/Page.h:
-
-2016-09-11  Chris Dumez  <cdumez@apple.com>
-
-        HTMLTrackElement.kind's invalid value default should be the metadata state
-        https://bugs.webkit.org/show_bug.cgi?id=161840
-
-        Reviewed by Eric Carlson.
-
-        HTMLTrackElement.kind's invalid value default should be the metadata state,
-        not the subtitles state:
-        - https://html.spec.whatwg.org/#attr-track-kind
-
-        Chrome agrees with the specification.
-
-        No new tests, rebaselined existing tests.
-
-        * html/track/TextTrack.cpp:
-        (WebCore::TextTrack::setKindKeywordIgnoringASCIICase):
-
-2016-09-11  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Add the main parser implementation
-        https://bugs.webkit.org/show_bug.cgi?id=161813
-
-        Reviewed by Dean Jackson.
-
-        This patch adds the main CSSParserImpl that handles stylesheet and rule parsing. All parsing starts with this
-        class (it will eventually be invoked from the CSSParser). This patch also adds @supports parsing.
-
-        * WebCore.xcodeproj/project.pbxproj:
-        * css/CSSKeyframeRule.cpp:
-        (WebCore::StyleKeyframe::StyleKeyframe):
-        * css/CSSKeyframeRule.h:
-        * css/StyleRule.cpp:
-        (WebCore::StyleRuleBase::destroy):
-        (WebCore::StyleRuleBase::copy):
-        (WebCore::StyleRuleBase::createCSSOMWrapper):
-        (WebCore::StyleRuleCharset::StyleRuleCharset):
-        (WebCore::StyleRuleCharset::~StyleRuleCharset):
-        (WebCore::StyleRuleNamespace::StyleRuleNamespace):
-        (WebCore::StyleRuleNamespace::~StyleRuleNamespace):
-        * css/StyleRule.h:
-        (WebCore::StyleRuleBase::isNamespaceRule):
-        (isType):
-        (WebCore::StyleRuleBase::isKeyframesRule): Deleted.
-        * css/StyleSheetContents.cpp:
-        (WebCore::traverseSubresourcesInRules):
-        * css/parser/CSSParserImpl.cpp: Added.
-        (WebCore::CSSParserImpl::CSSParserImpl):
-        (WebCore::CSSParserImpl::parseValue):
-        (WebCore::CSSParserImpl::parseVariableValue):
-        (WebCore::filterProperties):
-        (WebCore::createStyleProperties):
-        (WebCore::CSSParserImpl::parseInlineStyleDeclaration):
-        (WebCore::CSSParserImpl::parseDeclarationList):
-        (WebCore::CSSParserImpl::parseRule):
-        (WebCore::CSSParserImpl::parseStyleSheet):
-        (WebCore::CSSParserImpl::parsePageSelector):
-        (WebCore::CSSParserImpl::parseCustomPropertySet):
-        (WebCore::CSSParserImpl::parseKeyframeKeyList):
-        (WebCore::CSSParserImpl::supportsDeclaration):
-        (WebCore::CSSParserImpl::parseDeclarationListForInspector):
-        (WebCore::CSSParserImpl::parseStyleSheetForInspector):
-        (WebCore::computeNewAllowedRules):
-        (WebCore::CSSParserImpl::consumeRuleList):
-        (WebCore::CSSParserImpl::consumeAtRule):
-        (WebCore::CSSParserImpl::consumeQualifiedRule):
-        (WebCore::consumeStringOrURI):
-        (WebCore::CSSParserImpl::consumeCharsetRule):
-        (WebCore::CSSParserImpl::consumeImportRule):
-        (WebCore::CSSParserImpl::consumeNamespaceRule):
-        (WebCore::CSSParserImpl::consumeMediaRule):
-        (WebCore::CSSParserImpl::consumeSupportsRule):
-        (WebCore::CSSParserImpl::consumeViewportRule):
-        (WebCore::CSSParserImpl::consumeFontFaceRule):
-        (WebCore::CSSParserImpl::consumeKeyframesRule):
-        (WebCore::CSSParserImpl::consumePageRule):
-        (WebCore::CSSParserImpl::consumeKeyframeStyleRule):
-        (WebCore::observeSelectors):
-        (WebCore::CSSParserImpl::consumeStyleRule):
-        (WebCore::CSSParserImpl::consumeDeclarationList):
-        (WebCore::CSSParserImpl::consumeDeclaration):
-        (WebCore::CSSParserImpl::consumeVariableValue):
-        (WebCore::CSSParserImpl::consumeDeclarationValue):
-        (WebCore::CSSParserImpl::consumeKeyframeKeyList):
-        * css/parser/CSSParserImpl.h: Added.
-        * css/parser/CSSParserValues.cpp:
-        (WebCore::CSSParserSelector::parsePagePseudoSelector):
-        * css/parser/CSSParserValues.h:
-        * css/parser/CSSPropertyParser.cpp:
-        (WebCore::CSSPropertyParser::parseValue):
-        * css/parser/CSSSupportsParser.cpp: Added.
-        (WebCore::CSSSupportsParser::supportsCondition):
-        (WebCore::CSSSupportsParser::consumeCondition):
-        (WebCore::CSSSupportsParser::consumeNegation):
-        (WebCore::CSSSupportsParser::consumeConditionInParenthesis):
-        * css/parser/CSSSupportsParser.h: Added.
-        (WebCore::CSSSupportsParser::CSSSupportsParser):
-
-2016-09-11  Tim Horton  <timothy_horton@apple.com>
-
-        Candidates that don't end in spaces shouldn't have spaces arbitrarily appended to them
-        https://bugs.webkit.org/show_bug.cgi?id=161846
-        <rdar://problem/28245097>
-
-        Reviewed by Beth Dakin.
-
-        Tests: editing/mac/spelling/accept-candidate-without-adding-space.html,
-               editing/mac/spelling/accept-candidate-allows-autocorrect-on-next-word.html
-
-        * editing/Editor.cpp:
-        (WebCore::Editor::handleAcceptedCandidate):
-        Stop appending a space just because the candidate doesn't end in a space.
-        There are languages where that doesn't make sense, and the platform
-        guarantees that candidates will always have spaces if they need them.
-
-        Also, adjust the way we compute the AcceptedCandidate document marker range.
-        There were two problems with the existing code: it expanded outward from
-        the post-insertion cursor in *both* directions, instead of just backwards,
-        and it used the length of the replaced text, not the length of the newly
-        inserted text (more of the confusion mentioned in r205765).
-
-2016-09-10  Chris Dumez  <cdumez@apple.com>
-
-        parseHTMLInteger() should take a StringView in parameter
-        https://bugs.webkit.org/show_bug.cgi?id=161669
-
-        Reviewed by Ryosuke Niwa.
-
-        parseHTMLInteger() should take a StringView in parameter instead of a
-        const String&.
-
-        * css/parser/CSSParser.cpp:
-        (WebCore::CSSParser::parseFontFaceSrcLocal):
-        * css/parser/CSSParserValues.h:
-        (WebCore::CSSParserString::toStringView):
-        Add toStringView() to avoid unnecessarily constructing a String for
-        calling StringBuilder::append().
-
-        * html/parser/HTMLParserIdioms.cpp:
-        (WebCore::parseHTMLInteger):
-        (WebCore::parseHTMLNonNegativeInteger):
-        (WebCore::parseHTTPRefreshInternal):
-        * html/parser/HTMLParserIdioms.h:
-        (WebCore::limitToOnlyHTMLNonNegativeNumbersGreaterThanZero):
-        (WebCore::limitToOnlyHTMLNonNegative):
-        Take a StringView in parameter instead of a const String&.
-
-        * platform/sql/SQLiteStatement.cpp:
-        (WebCore::SQLiteStatement::isColumnDeclaredAsBlob):
-        Avoid unnecessarily constructing a String to call equalLettersIgnoringASCIICase()
-        by leveraging the StringView constructor taking a 'const char*' in parameter.
-
-        * rendering/RenderBlock.cpp:
-        (WebCore::RenderBlock::constructTextRun):
-        * rendering/RenderBlock.h:
-        Add constructTextRun() overload taking an AtomicString. It was otherwise ambiguous
-        because both a String or a StringView could be constructed from an AtomicString.
-
-        * page/CaptionUserPreferencesMediaAF.cpp:
-        (WebCore::CaptionUserPreferencesMediaAF::captionsDefaultFontCSS):
-        (WebCore::buildDisplayStringForTrackBase):
-        * rendering/RenderThemeMac.mm:
-        (WebCore::RenderThemeMac::mediaControlsStyleSheet):
-        (WebCore::RenderThemeMac::mediaControlsScript):
-        Explicitly construct a String from NSString / CFStringRef types as such calls are
-        now ambiguous.
-
-2016-09-10  Chris Dumez  <cdumez@apple.com>
-
-        It is possible for Document::m_frame pointer to become stale
-        https://bugs.webkit.org/show_bug.cgi?id=161812
-        <rdar://problem/27745023>
-
-        Reviewed by Ryosuke Niwa.
-
-        Document::m_frame is supposed to get cleared by Document::prepareForDestruction().
-        The Frame destructor calls Frame::setView(nullptr) which is supposed to call the
-        prepareForDestruction() on the Frame's associated document. However,
-        Frame::setView(nullptr) was calling prepareForDestruction() only if
-        Document::inPageCache() returned true. This is because, we allow Documents to
-        stay alive in the PageCache even though they don't have a frame.
-
-        The issue is that Document::m_inPageCache flag was set to true right before
-        firing the pagehide event, so technically before really entering PageCache.
-        Therefore, we can run into problems if a Frame gets destroyed by a pagehide
-        EventHandler because ~Frame() will not call Document::prepareForDestruction()
-        due to Document::m_inPageCache being true. After the frame is destroyed,
-        Document::m_frame becomes stale and any action on the document will likely
-        lead to crashes (such as the one in the layout test and the radar which
-        happens when trying to unregister event listeners from the document).
-
-        The solution adopted in this patch is to replace the m_inPageCache boolean
-        with a m_pageCacheState enumeration that has 3 states:
-        - NotInPageCache
-        - AboutToEnterPageCache
-        - InPageCache
-
-        Frame::setView() / Frame::setDocument() were then updated to call
-        Document::prepareForDestruction() on the associated document whenever
-        the document's pageCacheState is not InPageCache. This means that we
-        will now call Document::prepareForDestruction() when the document is
-        being detached from its frame while firing the pagehide event.
-
-        Note that I tried to keep this patch minimal. Therefore, I kept
-        the Document::inPageCache() getter for now. I plan to switch all its
-        calls sites to the new Document::pageCacheState() getter in a follow-up
-        patch so that we can finally drop the confusing Document::inPageCache().
-
-        Test: fast/history/pagehide-remove-iframe-crash.html
-
-        * dom/Document.cpp:
-        (WebCore::Document::Document):
-        (WebCore::Document::~Document):
-        (WebCore::Document::createRenderTree):
-        (WebCore::Document::destroyRenderTree):
-        (WebCore::Document::setFocusedElement):
-        (WebCore::Document::setPageCacheState):
-        (WebCore::Document::topDocument):
-        * dom/Document.h:
-        (WebCore::Document::pageCacheState):
-        (WebCore::Document::inPageCache):
-        * history/CachedFrame.cpp:
-        (WebCore::CachedFrame::destroy):
-        * history/PageCache.cpp:
-        (WebCore::setPageCacheState):
-        (WebCore::PageCache::addIfCacheable):
-        * loader/FrameLoader.cpp:
-        (WebCore::FrameLoader::stopAllLoaders):
-        (WebCore::FrameLoader::open):
-        * loader/HistoryController.cpp:
-        (WebCore::HistoryController::invalidateCurrentItemCachedPage):
-        * page/Frame.cpp:
-        (WebCore::Frame::setView):
-
-2016-09-10  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        Apple.com keynote does not display media controls
-        https://bugs.webkit.org/show_bug.cgi?id=161833
-        <rdar://problem/28230123>
-
-        Reviewed by Tim Horton.
-
-        Tweaks the main content check so that we can distinguish between main content for the purposes of determining
-        autoplay policy vs. main content for the purposes of showing media controls. Namely, we make the latter less
-        restrictive than the former in terms of the maximum aspect ratio a video can have to be considered the right
-        size for main content.
-
-        New unit test in TestWebKitAPI.
-
-        * html/HTMLMediaElement.cpp:
-        (WebCore::mediaElementSessionInfoForSession):
-        * html/MediaElementSession.cpp:
-        (WebCore::MediaElementSession::canShowControlsManager):
-        (WebCore::MediaElementSession::isLargeEnoughForMainContent):
-        (WebCore::MediaElementSession::wantsToObserveViewportVisibilityForMediaControls):
-        (WebCore::isMainContentForPurposesOfAutoplay):
-        (WebCore::isElementLargeEnoughForMainContent):
-        (WebCore::MediaElementSession::updateIsMainContent):
-        (WebCore::isMainContent): Deleted.
-        * html/MediaElementSession.h:
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Keep track of cannot-be-a-base-url according to spec
-        https://bugs.webkit.org/show_bug.cgi?id=161830
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URL.cpp:
-        (WebCore::URL::invalidate):
-        * platform/URL.h:
-        Add a boolean required by the spec.
-        This will not add to sizeof(URL) because we already have some bit fields.
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::allValuesEqual):
-
-2016-09-09  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r205771.
-        https://bugs.webkit.org/show_bug.cgi?id=161823
-
-        Broke Windows build (Requested by litherum on #webkit).
-
-        Reverted changeset:
-
-        "Remove unused member of GlyphBuffer"
-        https://bugs.webkit.org/show_bug.cgi?id=161814
-        http://trac.webkit.org/changeset/205771
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should convert ASCII hosts to lowercase
-        https://bugs.webkit.org/show_bug.cgi?id=161820
-
-        Reviewed by Geoffrey Garen.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::domainToASCII):
-        The fast path for domains that are already ASCII and do not need punycode encoding
-        should convert the domain to lowercase.
-        This matches behavior in URL::parse if isCanonicalHostnameLowercaseForScheme is true,
-        and RFC 5890.
-
-2016-09-09  Myles C. Maxfield  <mmaxfield@apple.com>
-
-        Remove unused member of GlyphBuffer
-        https://bugs.webkit.org/show_bug.cgi?id=161814
-
-        Reviewed by Simon Fraser.
-
-        This m_offsets member never actually affected anything. It just made
-        FontCascade::drawGlyphBuffer() slower.
-
-        No new tests because there is no behavior change.
-
-        * platform/graphics/FontCascade.cpp:
-        (WebCore::FontCascade::drawGlyphBuffer):
-        * platform/graphics/GlyphBuffer.h:
-        (WebCore::GlyphBuffer::clear):
-        (WebCore::GlyphBuffer::advanceAt):
-        (WebCore::GlyphBuffer::add):
-        (WebCore::GlyphBuffer::shrink):
-        (WebCore::GlyphBuffer::swap):
-        (WebCore::GlyphBuffer::offsetAt): Deleted.
-        * platform/graphics/win/UniscribeController.cpp:
-        (WebCore::UniscribeController::shapeAndPlaceItem):
-
-2016-09-09  Tim Horton  <timothy_horton@apple.com>
-
-        Text replacement candidates don't always overwrite the entire original string
-        https://bugs.webkit.org/show_bug.cgi?id=161779
-        <rdar://problem/28033492>
-
-        Reviewed by Simon Fraser.
-
-        New test: editing/mac/spelling/accept-candidate-replacing-multiple-words.html.
-
-        * editing/Editor.cpp:
-        (WebCore::Editor::contextRangeForCandidateRequest):
-        Factor contextRangeForCandidateRequest out of the WebKits, into Editor.
-        This just expands to paragraph boundaries from the cursor.
-
-        (WebCore::Editor::selectTextCheckingResult):
-        Add selectTextCheckingResult, which, given a TextCheckingResult,
-        selects the range represented by the result's location and length, which
-        indicate the portion of the context string that the result refers to.
-        In the case of accepting a candidate, we want to select that range
-        so that our insertion will overwrite it.
-
-        (WebCore::Editor::handleAcceptedCandidate):
-        Make use of selectTextCheckingResult instead of just assuming that we want
-        to replace the word to the left of the insertion point.
-
-        (WebCore::Editor::stringForCandidateRequest): Deleted.
-        * editing/Editor.h:
-
-        * testing/Internals.cpp:
-        (WebCore::Internals::handleAcceptedCandidate):
-        * testing/Internals.h:
-        * testing/Internals.idl:
-        Internals' handleAcceptedCandidate assumed (wrongly) that the length
-        of a TextCheckerResult was the length of the candidate, when really it is
-        the length of the text that the candidate would replace. Adjust this,
-        and expose the replacement range to JavaScript, so we can test this.
-
-2016-09-09  Brady Eidson  <beidson@apple.com>
-
-        Soft-link GameController.framework.
-        <rdar://problem/28219953> and https://bugs.webkit.org/show_bug.cgi?id=161802
-
-        Reviewed by Brian Burg.
-
-        No new tests (No change in behavior).
-
-        * Configurations/WebCore.xcconfig:
-        * WebCore.xcodeproj/project.pbxproj:
-        * platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
-        (WebCore::GameControllerGamepadProvider::startMonitoringGamepads):
-
-2016-09-09  Jiewen Tan  <jiewen_tan@apple.com>
-
-        Rename Key to CryptoKey
-        https://bugs.webkit.org/show_bug.cgi?id=161665
-        <rdar://problem/28083391>
-
-        Reviewed by Brent Fulgham.
-
-        A link to the spec: https://www.w3.org/TR/WebCryptoAPI/#cryptokey-interface
-
-        * crypto/CryptoKey.idl:
-        Remove some unnecessary IDL attributes and reorder KeyType enum to match the spec.
-        * crypto/CryptoKeyType.h:
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Fix and optimize parsing file URLs ending with a host but no slash
-        https://bugs.webkit.org/show_bug.cgi?id=161815
-
-        Reviewed by Geoffrey Garen.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::bufferView):
-        (WebCore::URLParser::copyURLPartsUntil):
-        (WebCore::URLParser::parse):
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Handle \ in path according to spec
-        https://bugs.webkit.org/show_bug.cgi?id=161805
-
-        Reviewed by Andy Estes.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-09  Youenn Fablet  <youenn@apple.com>
-
-        TextTrackLoader should use FetchOptions::mode according its crossOrigin attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161792
-
-        Reviewed by Eric Carlson.
-
-        Covered by existing and updated tests.
-
-        Updating text track loader to use fetch mode according crossOrigin value.
-
-        Removed the check done in the case the crossOrigin value is not set.
-        Previously cross-origin loads were forbidden, now this is authorized.
-        This change allows aligning with the spec.
-        Also, this check could be bypassed in the case of a same-origin URL redirecting to a cross-origin one.
-
-        * loader/TextTrackLoader.cpp:
-        (WebCore::TextTrackLoader::notifyFinished): Checking resource error in lieu of doing CORS checks on its own.
-        (WebCore::TextTrackLoader::load): Using CachedResourceRequest::setAsPotentiallyCrossOrigin
-        * loader/TextTrackLoader.h:
-        * loader/cache/CachedResource.cpp:
-        (WebCore::CachedResource::loadFrom): Setting loading and status values as would be done when load is finished.
-        (WebCore::CachedResource::setBodyDataFrom): Default implementation is to copy the shared buffer.
-        * loader/cache/CachedResource.h:
-        * loader/cache/CachedResourceLoader.cpp:
-        (WebCore::CachedResourceLoader::updateCachedResourceWithCurrentRequest): Enabling resource update when mode or origin is different for TextTrack resources.
-
-2016-09-09  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should parse URLs with non-special schemes
-        https://bugs.webkit.org/show_bug.cgi?id=161786
-
-        Reviewed by Andy Estes.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        There's no reason for a SchemeEndCheckForSlashes state now that we can copy iterators.
-        It's not in the spec and not needed.
-        Also, move things around a little so parsing special or non-special schemes
-        followed by one or two slashes works correctly.
-
-2016-09-09  Chris Dumez  <cdumez@apple.com>
-
-        Regression(r186020): Null dereference in getStartDate()
-        https://bugs.webkit.org/show_bug.cgi?id=161733
-
-        Reviewed by Eric Carlson.
-
-        Update HTMLMediaElement::getStartDate() to return NaN if m_player is null,
-        instead of crashing.
-
-        Test: fast/media/getStartDate-NaN.html
-
-        * bindings/js/IDBBindingUtilities.cpp:
-        (WebCore::toJS):
-        Add a FIXME comment as this code is using jsDateOrNull() but should
-        probably be using jsDate() as per:
-        - http://w3c.github.io/IndexedDB/#request-convert-a-key-to-a-value
-
-        * bindings/js/JSDOMBinding.cpp:
-        (WebCore::jsDate):
-        (WebCore::jsDateOrNull):
-        * bindings/js/JSDOMBinding.h:
-        - Rename jsDateOrNaN() to jsDate() as this is the default behavior. Also,
-          return new Date(NaN) instead of NaN if the implementation returns NaN.
-          The IDL says we should return a Date, not a number.
-        - Update jsDateOrNull() to only return jsNull() if the native value is
-          NaN, instead of doing so for every value that is not finite. Our
-          convention is to use NaN as special value to represent null in JS.
-
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (NativeToJSValue):
-        When converting a native value (double) into a Date, rely on the fact
-        that the type is nullable when deciding if we should call jsDate() or
-        jsDateOrNull() to convert. This way, we no longe need a WebKit specific
-        [TreatReturnedDateAs=Null|NaN] IDL extended attribute.
-
-        * bindings/scripts/IDLAttributes.txt:
-        * html/HTMLInputElement.idl:
-        Mark valueAsDate attribute as nullable, as per the specification:
-        - https://html.spec.whatwg.org/#htmlinputelement
-
-        * html/HTMLMediaElement.cpp:
-        (WebCore::HTMLMediaElement::getStartDate):
-        Return NaN if m_player is null instead of crashing. The reason I decided
-        to return NaN is because the specification [1] says to return a new Date
-        object representing the current timeline offset. The spec of timeline
-        offset [2] says that the initial timeline offset value is NaN.
-        [1] https://html.spec.whatwg.org/#dom-media-getstartdate
-        [2] https://html.spec.whatwg.org/#timeline-offset
-
-        * bindings/scripts/IDLAttributes.txt:
-        * html/HTMLMediaElement.idl:
-        Drop [TreatReturnedDateAs] attribute as it is no longer supported.
-
-2016-09-09  Youenn Fablet  <youenn@apple.com>
-
-        ASSERTION FAILED: promise.inherits(JSPromise::info())
-        https://bugs.webkit.org/show_bug.cgi?id=161632
-        <rdar://problem/28184743>
-
-        Reviewed by Mark Lam.
-
-        Test: fetch/fetch-worker-crash.html
-
-        * bindings/js/JSDOMPromise.h:
-        (WebCore::callPromiseFunction): Returning early if created promise is null.
-        Passing directly a DeferredWrapper to the generated code.
-        * bindings/scripts/CodeGeneratorJS.pm: Updated to take a DeferredWrapper.
-        (GenerateImplementation):
-        (GenerateReturnParameters):
-        * bindings/scripts/test/JS/JSTestObj.cpp: Rebasing expectations.
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithExceptionPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgumentPromise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
-        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionPromise):
-        (WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithExceptionPromise):
-
-2016-09-09  Myles C. Maxfield  <mmaxfield@apple.com>
-
-        [Cocoa] Improve performance of glyph advance metrics gathering
-        https://bugs.webkit.org/show_bug.cgi?id=161119
-
-        Reviewed by Simon Fraser.
-
-        Most of the glyphs in a GlyphPage are never read from. Therefore, we can get a performance boost
-        by not populating as many items in the GlyphPage. Because of the performance characteristics of
-        CTFontGetGlyphsForCharacters(), a better size for a GlyphPage is 16 items. This, coupled with
-        using CTFontGetUnsummedAdvancesForGlyphsAndStyle(), causes between a 0.01%-0.5% speedup on PLT.
-
-        No new tests because there is no behavior change.
-
-        * platform/graphics/Font.cpp:
-        (WebCore::Font::initCharWidths):
-        (WebCore::Font::platformGlyphInit):
-        (WebCore::createAndFillGlyphPage):
-        * platform/graphics/Font.h:
-        (WebCore::Font::widthForGlyph):
-        * platform/graphics/GlyphMetricsMap.h:
-        * platform/graphics/GlyphPage.h:
-        * platform/graphics/cocoa/FontCocoa.mm:
-        * platform/spi/cocoa/CoreTextSPI.h:
-        (WebCore::Font::platformWidthForGlyph):
-        (WebCore::canUseFastGlyphAdvanceGetter): Deleted.
-
-2016-09-09  Antti Koivisto  <antti@apple.com>
-
-        v3: WebContent crash due to RELEASE_ASSERT in WebCore: WebCore::StyleResolver::styleForElement
-        https://bugs.webkit.org/show_bug.cgi?id=161689
-
-        Reviewed by Andreas Kling.
-
-        These crashes happen because synchronously triggered resource loads generate callbacks that may end up
-        deleting the resource loader.
-
-        Stop triggering resource loads from StyleResolver. Instead trigger them when applying style to render tree.
-
-        * css/StyleResolver.cpp:
-        (WebCore::StyleResolver::~StyleResolver):
-
-            Replace the RELEASE_ASSERT against deletion during resource loads by a general isDeleted assert.
-
-        (WebCore::StyleResolver::styleForElement):
-        (WebCore::StyleResolver::styleForKeyframe):
-        (WebCore::StyleResolver::pseudoStyleForElement):
-        (WebCore::StyleResolver::styleForPage):
-        (WebCore::StyleResolver::applyMatchedProperties):
-        (WebCore::StyleResolver::loadPendingResources): Deleted.
-        * css/StyleResolver.h:
-        * page/animation/KeyframeAnimation.cpp:
-        (WebCore::KeyframeAnimation::KeyframeAnimation):
-        (WebCore::KeyframeAnimation::resolveKeyframeStyles):
-
-            Ensure resource load for all animation frames.
-
-        * page/animation/KeyframeAnimation.h:
-        * rendering/RenderElement.cpp:
-        (WebCore::RenderElement::createFor):
-        (WebCore::RenderElement::initializeStyle):
-
-            Load resources when renderer initializes a style.
-
-        (WebCore::RenderElement::setStyle):
-        (WebCore::RenderElement::getUncachedPseudoStyle):
-
-            Load resources for pseudo styles.
-
-        * rendering/RenderImage.cpp:
-        (WebCore::RenderImage::RenderImage):
-        (WebCore::RenderImage::styleWillChange):
-
-            Shuffle image resource initialization out from constructor so initializeStyle gets called before.
-
-        * rendering/RenderImage.h:
-        * rendering/style/StyleCachedImage.cpp:
-        (WebCore::StyleCachedImage::StyleCachedImage):
-
-            Track pending status with a bit instead of implicitly by the existence of CachedResource.
-            This is useful for asserts.
-
-        (WebCore::StyleCachedImage::load):
-        (WebCore::StyleCachedImage::isPending):
-        (WebCore::StyleCachedImage::addClient):
-        (WebCore::StyleCachedImage::removeClient):
-        (WebCore::StyleCachedImage::image):
-        * rendering/style/StyleCachedImage.h:
-
-2016-09-08  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        ScriptRunner should be driven by PendingScript rather than ScriptElement
-        https://bugs.webkit.org/show_bug.cgi?id=161726
-
-        Reviewed by Ryosuke Niwa.
-
-        Tests: js/dom/document-write-in-error-event.html
-               js/dom/document-write-in-load-event.html
-
-        ScriptRunner is driven by ScriptElement::notifyFinished. While ScriptRunner is driven by this,
-        HTMLScriptRunner does not use it. Instead, HTMLScriptRunner uses PendingScriptClient. As a result,
-        ScriptElement::notifyFinished is used only when the script is annotated with "defer" or "async"
-        while all the external script will load the LoadableScript. It is confusing.
-        This patch removes ScriptElement::notifyFinished and use PendingScript's observability
-        in ScriptRunner instead.
-
-        This patch also fixes the behavior about ignore-destructive-writes counter[1]. When dispatching
-        the load and error events, this ignore-destructive-writes counter should not be incremeneted by
-        this execution. The added tests ensure this behavior.
-
-        [1]: https://html.spec.whatwg.org/multipage/scripting.html#execute-the-script-block
-
-        * dom/ScriptElement.cpp: Drop LoadableScriptClient interface.
-        (WebCore::ScriptElement::prepareScript): Do not use addClient. ScriptRunner use PendingScript::{setClient,clearClient} instead.
-        (WebCore::ScriptElement::executeScriptForScriptRunner): IgnoreDestructiveWriteCountIncrementer will be done in ScriptElement::executeScript.
-        So no need to do it here, that's duplicated.
-        (WebCore::ScriptElement::~ScriptElement): Deleted. ScriptElement does not use addClient/removeClient.
-        (WebCore::ScriptElement::stopLoadRequest): Deleted.
-        (WebCore::ScriptElement::executeScriptForHTMLScriptRunner): Deleted. executeScriptForHTMLScriptRunner and executeScriptForScriptRunner are
-        merged into executeScriptForRunner.
-        (WebCore::ScriptElement::notifyFinished): Deleted.
-        * dom/ScriptElement.h:
-        (WebCore::ScriptElement::~ScriptElement):
-        (WebCore::ScriptElement::willExecuteInOrder): Used in ScriptRunner to determine whether the script is async or defer.
-        (WebCore::ScriptElement::willExecuteWhenDocumentFinishedParsing): Deleted.
-        * dom/ScriptRunner.cpp:
-        (WebCore::ScriptRunner::~ScriptRunner): HashSet's iterator will return `const PendingScript&`.
-        Another option is using HashSet<RefPtr<PendingScript>>. Here, we use a little bit weired const_cast.
-        (WebCore::ScriptRunner::queueScriptForExecution): Use PendingScript::setClient to wait loading.
-        (WebCore::ScriptRunner::notifyFinished): Notify the script ready here.
-        (WebCore::ScriptRunner::timerFired): Use executeScriptForScriptRunner.
-        (WebCore::ScriptRunner::notifyScriptReady): Deleted.
-        * dom/ScriptRunner.h:
-        * html/parser/HTMLScriptRunner.cpp:
-        (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Use executeScriptForScriptRunner.
-
-2016-09-08  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        [WTF] HashTable's rehash is not compatible to Ref<T> and ASan
-        https://bugs.webkit.org/show_bug.cgi?id=161763
-
-        Reviewed by Mark Lam.
-
-        Include wtf/text/StringHash.h to avoid linking errors in EFL port.
-
-        * loader/ResourceLoadStatistics.h:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        HTMLObjectElement.hspace / vspace attributes should be unsigned
-        https://bugs.webkit.org/show_bug.cgi?id=161766
-
-        Reviewed by Ryosuke Niwa.
-
-        HTMLObjectElement.hspace / vspace attributes should be unsigned:
-        - https://html.spec.whatwg.org/#HTMLObjectElement-partial
-
-        Firefox agrees with the specification but those were signed in WebKit.
-
-        No new tests, rebaselined existing test.
-
-        * html/HTMLObjectElement.idl:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        HTMLObjectElement.codebase attribute should reflect as a URL
-        https://bugs.webkit.org/show_bug.cgi?id=161768
-
-        Reviewed by Alex Christensen.
-
-        HTMLObjectElement.codebase attribute should reflect as a URL:
-        - https://html.spec.whatwg.org/#dom-applet-codebase
-
-        Chrome and Firefox agree with the specification.
-
-        No new test, rebaselined existing test.
-
-        * html/HTMLObjectElement.idl:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        ol.start may return incorrect value for reversed lists when not explicitly set
-        https://bugs.webkit.org/show_bug.cgi?id=161713
-
-        Reviewed by Zalan Bujtas.
-
-        ol.start may return incorrect value for reversed lists when not explicitly set.
-        This is because we're supposed to return the number of rendered <li> child
-        elements, which relies on layout. However, we did not make sure the layout is
-        up-to-date before counting the number of li child elements. This patch fixes
-        the issue.
-
-        No new tests, rebaselined existing tests.
-
-        * html/HTMLOListElement.h:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        Add support for HTMLIframeElement.allowFullscreen attribute
-        https://bugs.webkit.org/show_bug.cgi?id=161757
-
-        Reviewed by Sam Weinig.
-
-        Add support for HTMLIframeElement.allowFullscreen attribute:
-        - https://html.spec.whatwg.org/#dom-iframe-allowfullscreen
-
-        Firefox and Chrome already support it, unprefixed.
-
-        Note that the HTMLIframeElement.allowFullscreen attribute reflects the
-        allowfullscreen content attribute which we already support.
-
-        Test: fullscreen/full-screen-iframe-allowFullscreen.html
-
-        * html/HTMLIFrameElement.idl:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        frame.longDesc / iframe.longDesc should reflect as a URL
-        https://bugs.webkit.org/show_bug.cgi?id=161764
-
-        Reviewed by Alex Christensen.
-
-        frame.longDesc / iframe.longDesc should reflect as a URL:
-        - https://html.spec.whatwg.org/#dom-iframe-longdesc
-        - https://html.spec.whatwg.org/#dom-frame-longdesc
-
-        They already do in Chrome and Firefox.
-
-        No new tests, rebaselined existing tests.
-
-        * html/HTMLFrameElement.idl:
-        * html/HTMLIFrameElement.idl:
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Handle \ in paths of special URLs according to spec
-        https://bugs.webkit.org/show_bug.cgi?id=161781
-
-        Reviewed by Tim Horton.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::bufferView):
-        (WebCore::URLParser::copyURLPartsUntil):
-        (WebCore::URLParser::parse):
-        * platform/URLParser.h:
-
-2016-09-08  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        Move the BitmapImage platform dependent code to a new file named NativeImage[CG|Cairo].cpp
-        https://bugs.webkit.org/show_bug.cgi?id=158684
-
-        Reviewed by Simon Fraser.
-
-        This is a refactoring patch. It moves the BitmapImage platform dependent
-        code from BitmapImage to NativeImage[CG|Cairo].cpp. The new APIs are
-        responsible of drawing a NativeImagePtr and answering some metadata queries.
-
-        No new tests -- Code refactoring, no behavior change.
-
-        * PlatformAppleWin.cmake:
-        * PlatformEfl.cmake:
-        * PlatformGTK.cmake:
-        * PlatformMac.cmake:
-        * PlatformWinCairo.cmake:
-        * WebCore.xcodeproj/project.pbxproj:
-        * loader/cache/MemoryCache.h:
-        * loader/icon/IconDatabaseBase.h:
-        * page/mac/TextIndicatorWindow.mm:
-        (-[WebTextIndicatorView initWithFrame:textIndicator:margin:offset:]):
-        (createContentCrossfadeAnimation):
-        * platform/graphics/BitmapImage.cpp:
-        (WebCore::BitmapImage::BitmapImage):
-        (WebCore::BitmapImage::destroyDecodedData):
-        (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
-        (WebCore::BitmapImage::dataChanged):
-        (WebCore::BitmapImage::ensureFrameAtIndexIsCached):
-        (WebCore::BitmapImage::frameImageAtIndex):
-        (WebCore::BitmapImage::nativeImage):
-        (WebCore::BitmapImage::nativeImageForCurrentFrame):
-        (WebCore::BitmapImage::nativeImageOfSize):
-        (WebCore::BitmapImage::framesNativeImages):
-        (WebCore::BitmapImage::frameIsCompleteAtIndex):
-        (WebCore::BitmapImage::frameDurationAtIndex):
-        (WebCore::BitmapImage::frameHasAlphaAtIndex):
-        (WebCore::BitmapImage::frameOrientationAtIndex):
-        (WebCore::BitmapImage::singlePixelSolidColor):
-        (WebCore::BitmapImage::draw):
-        (WebCore::BitmapImage::drawPattern):
-        (WebCore::BitmapImage::canAnimate):
-        (WebCore::BitmapImage::clearTimer):
-        (WebCore::BitmapImage::startTimer):
-        (WebCore::BitmapImage::stopAnimation):
-        (WebCore::BitmapImage::resetAnimation):
-        (WebCore::BitmapImage::hasSingleSecurityOrigin): Deleted.
-        (WebCore::BitmapImage::filenameExtension): Deleted.
-        (WebCore::BitmapImage::ensureFrameIsCached): Deleted.
-        * platform/graphics/BitmapImage.h:
-        (WebCore::FrameData::FrameData):
-        m_hasAlpha can be initialized with false because it is accessed only in
-        BitmapImage::frameHasAlphaAtIndex() and it is guarded by m_haveMetadata.
-        Both m_haveMetadata and m_hasAlpha are set in BitmapImage constructor
-        and in BitmapImage::cacheFrame().
-        
-        (WebCore::FrameData::~FrameData):
-        (WebCore::FrameData::clear):
-        * platform/graphics/Icon.h:
-        * platform/graphics/Image.h:
-        (WebCore::Image::nativeImage):
-        (WebCore::Image::nativeImageOfSize):
-        (WebCore::Image::framesNativeImages):
-        (WebCore::Image::orientationForCurrentFrame): Deleted.
-        (WebCore::Image::getCGImageRef): Deleted.
-        (WebCore::Image::getFirstCGImageRefOfSize): Deleted.
-        (WebCore::Image::getCGImageArray): Deleted.
-        * platform/graphics/ImageSource.cpp:
-        (WebCore::ImageSource::calculateMaximumSubsamplingLevel):
-        (WebCore::ImageSource::size):
-        (WebCore::ImageSource::sizeRespectingOrientation):
-        * platform/graphics/ImageSource.h:
-        * platform/graphics/MediaPlayer.h:
-        * platform/graphics/NativeImage.h: Added.
-        * platform/graphics/NativeImagePtr.h: Removed.
-        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
-        (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updatePausedImage):
-        * platform/graphics/cairo/BitmapImageCairo.cpp: Removed.
-        * platform/graphics/cairo/NativeImageCairo.cpp: Added.
-        (WebCore::nativeImageSize):
-        (WebCore::nativeImageHasAlpha):
-        (WebCore::nativeImageSinglePixelSolidColor):
-        (WebCore::subsamplingScale):
-        (WebCore::drawNativeImage):
-        (WebCore::clearNativeImageSubImages):
-        * platform/graphics/cg/BitmapImageCG.cpp: Removed.
-        * platform/graphics/cg/ImageDecoderCG.cpp:
-        (WebCore::ImageDecoder::size):
-        * platform/graphics/cg/ImageDecoderCG.h:
-        * platform/graphics/cg/NativeImageCG.cpp: Added.
-        (WebCore::nativeImageSize):
-        (WebCore::nativeImageHasAlpha):
-        (WebCore::nativeImageSinglePixelSolidColor):
-        (WebCore::subsamplingScale):
-        (WebCore::drawNativeImage):
-        (WebCore::clearNativeImageSubImages):
-        * platform/graphics/cg/PatternCG.cpp:
-        (WebCore::Pattern::createPlatformPattern):
-        * platform/graphics/cocoa/TextTrackRepresentationCocoa.mm:
-        (TextTrackRepresentationCocoa::update):
-        * platform/graphics/mac/ImageMac.mm:
-        (WebCore::BitmapImage::getTIFFRepresentation):
-        * platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
-        (WebCore::MockRealtimeVideoSourceMac::updatePlatformLayer):
-        (WebCore::MockRealtimeVideoSourceMac::updateSampleBuffer):
-        * platform/win/DragImageCGWin.cpp:
-        (WebCore::createDragImageFromImage):
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser: Parsing empty URLs with a base URL should return the base URL
-        https://bugs.webkit.org/show_bug.cgi?id=161777
-
-        Reviewed by Tim Horton.
-
-        Covered by an API test and progress towards passing all web platform tests when using URLParser.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser failures should preserve the original input string
-        https://bugs.webkit.org/show_bug.cgi?id=161769
-
-        Reviewed by Tim Horton.
-
-        No new tests, but covered by updates to API tests.
-        This also represents many newly passing web platform tests when using URLParser.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::failure):
-        (WebCore::URLParser::parse):
-        * platform/URLParser.h:
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should parse URLs with a user but no password
-        https://bugs.webkit.org/show_bug.cgi?id=161773
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parseAuthority):
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        Fix URLs after r205669.
-        https://bugs.webkit.org/show_bug.cgi?id=161731
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::enabled):
-        I accidentally committed enabling the URLParser by default.  Not ready yet.
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        Align proto getter / setter behavior with other browsers
-        https://bugs.webkit.org/show_bug.cgi?id=161455
-
-        Reviewed by Saam Barati.
-
-        Align cross-origin __proto__ getter / setter behavior with other
-        browsers and the specification:
-
-        [[SetPrototypeOf]] should throw a TypeError:
-        - https://html.spec.whatwg.org/#windowproxy-setprototypeof
-        - https://html.spec.whatwg.org/#location-setprototypeof
-        - https://tc39.github.io/ecma262/#sec-object.setprototypeof (step 5)
-
-        [[GetPrototypeOf]] should return null cross-origin:
-        - https://html.spec.whatwg.org/#windowproxy-getprototypeof
-        - https://html.spec.whatwg.org/#location-getprototypeof
-
-        Test: js/dom/setPrototypeOf-location-window.html
-
-        * bindings/js/JSDOMWindowBase.cpp:
-        (WebCore::JSDOMWindowBase::JSDOMWindowBase): Deleted.
-        * bindings/js/JSDOMWindowCustom.cpp:
-        (WebCore::JSDOMWindow::setPrototype):
-        (WebCore::JSDOMWindow::getPrototype):
-        (WebCore::JSDOMWindow::preventExtensions):
-        * bindings/js/JSLocationCustom.cpp:
-        (WebCore::JSLocation::setPrototype):
-        (WebCore::JSLocation::getPrototype):
-        * bindings/js/JSWorkerGlobalScopeBase.cpp:
-        (WebCore::JSWorkerGlobalScopeBase::supportsRichSourceInfo): Deleted.
-        * bindings/js/JSWorkerGlobalScopeBase.h:
-        * bindings/scripts/CodeGeneratorJS.pm:
-        (GenerateHeader):
-        * bindings/scripts/IDLAttributes.txt:
-        * page/DOMWindow.idl:
-        * page/Location.idl:
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should parse ports after IPv4 and IPv6 hosts
-        https://bugs.webkit.org/show_bug.cgi?id=161731
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parsePort):
-        (WebCore::URLParser::parseHost):
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should correctly handle \ in path
-        https://bugs.webkit.org/show_bug.cgi?id=161762
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::isSpecialScheme):
-        (WebCore::bufferView):
-        (WebCore::URLParser::parse):
-        Treat \ as / in the path of special URLs as described in the spec and tested in web platform tests.
-        Also a slight performance improvement using StringViews instead of copied Strings.
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        URLParser should handle URLs with empty authority
-        https://bugs.webkit.org/show_bug.cgi?id=161711
-
-        Reviewed by Brady Eidson.
-
-        Covered by new API tests.
-
-        * platform/URLParser.cpp:
-        (WebCore::URLParser::parse):
-        (WebCore::URLParser::parseAuthority):
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        HTMLImageElement.hspace / vspace attributes should be unsigned
-        https://bugs.webkit.org/show_bug.cgi?id=161754
-
-        Reviewed by Alex Christensen.
-
-        HTMLImageElement.hspace / vspace attributes should be unsigned:
-        - https://html.spec.whatwg.org/#HTMLImageElement-partial
-
-        Firefox agrees with the specification, however, those were signed in
-        webKit.
-
-        No new tests, rebaselined existing test.
-
-        * html/HTMLImageElement.idl:
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        Update parseHTMLNonNegativeInteger() to return an unsigned value
-        https://bugs.webkit.org/show_bug.cgi?id=161759
-
-        Reviewed by Alex Christensen.
-
-        Update parseHTMLNonNegativeInteger() to return an unsigned value instead
-        of a signed one as the value can never be negative.
-
-        * html/HTMLElement.cpp:
-        (WebCore::HTMLElement::parseBorderWidthAttribute):
-        * html/HTMLImageElement.cpp:
-        (WebCore::HTMLImageElement::width):
-        (WebCore::HTMLImageElement::height):
-        * html/HTMLInputElement.cpp:
-        (WebCore::HTMLInputElement::maxLengthAttributeChanged):
-        (WebCore::HTMLInputElement::minLengthAttributeChanged):
-        * html/HTMLTextAreaElement.cpp:
-        (WebCore::HTMLTextAreaElement::maxLengthAttributeChanged):
-        (WebCore::HTMLTextAreaElement::minLengthAttributeChanged):
-        * html/ImageInputType.cpp:
-        (WebCore::ImageInputType::height):
-        (WebCore::ImageInputType::width):
-        * html/parser/HTMLParserIdioms.cpp:
-        (WebCore::parseHTMLNonNegativeInteger):
-        (WebCore::parseHTTPRefreshInternal):
-        * html/parser/HTMLParserIdioms.h:
-
-2016-09-08  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        Get rid of the color profile from ImageFrame and ImageDecoder
-        https://bugs.webkit.org/show_bug.cgi?id=159699
-
-        Reviewed by Simon Fraser.
-
-        The color profile is set but it is never used.
-
-        * platform/image-decoders/ImageDecoder.cpp:
-        (WebCore::ImageFrame::setColorProfile): Deleted.
-        * platform/image-decoders/ImageDecoder.h:
-        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
-        (WebCore::JPEGImageReader::decode):
-        (WebCore::JPEGImageDecoder::outputScanlines):
-        (WebCore::readColorProfile): Deleted.
-        * platform/image-decoders/jpeg/JPEGImageDecoder.h:
-        * platform/image-decoders/png/PNGImageDecoder.cpp:
-        (WebCore::PNGImageDecoder::headerAvailable):
-        (WebCore::PNGImageDecoder::rowAvailable):
-        (WebCore::readColorProfile): Deleted.
-
-2016-09-08  Dave Hyatt  <hyatt@apple.com>
-
-        [CSS Parser] Add support for new CSS selector parsing
-        https://bugs.webkit.org/show_bug.cgi?id=161749
-
-        Reviewed by Dean Jackson.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        * contentextensions/ContentExtensionParser.cpp:
-        (WebCore::ContentExtensions::isValidSelector):
-        * css/CSSDefaultStyleSheets.cpp:
-        (WebCore::parseUASheet):
-        * css/CSSFontFaceSet.cpp:
-        (WebCore::CSSFontFaceSet::matchingFaces):
-        * css/CSSGrammar.y.in:
-        * css/CSSSelector.cpp:
-        (WebCore::CSSSelector::selectorText):
-        * css/CSSSelector.h:
-        * css/DOMCSSNamespace.cpp:
-        (WebCore::DOMCSSNamespace::supports):
-        * css/FontFace.cpp:
-        (WebCore::FontFace::parseString):
-        (WebCore::FontFace::setVariant):
-        * css/MediaList.cpp:
-        (WebCore::MediaQuerySet::internalParse):
-        (WebCore::MediaQuerySet::parse):
-        * css/SelectorChecker.cpp:
-        (WebCore::SelectorChecker::matchRecursively):
-        * css/SelectorFilter.cpp:
-        (WebCore::SelectorFilter::collectIdentifierHashes):
-        * css/SelectorPseudoClassAndCompatibilityElementMap.in:
-        * css/SelectorPseudoTypeMap.h:
-        * css/SourceSizeList.cpp:
-        (WebCore::parseSizesAttribute):
-        * css/StyleProperties.cpp:
-        (WebCore::MutableStyleProperties::MutableStyleProperties):
-        * css/StyleProperties.h:
-        * css/StyleRuleImport.cpp:
-        (WebCore::StyleRuleImport::setCSSStyleSheet):
-        * css/StyleSheetContents.cpp:
-        (WebCore::StyleSheetContents::StyleSheetContents):
-        (WebCore::StyleSheetContents::parserAddNamespace):
-        (WebCore::StyleSheetContents::namespaceURIFromPrefix):
-        (WebCore::StyleSheetContents::determineNamespace): Deleted.
-        * css/StyleSheetContents.h:
-        * css/WebKitCSSMatrix.cpp:
-        (WebCore::WebKitCSSMatrix::setMatrixValue):
-        * css/makeSelectorPseudoClassAndCompatibilityElementMap.py:
-        * css/parser/CSSParser.cpp:
-        (WebCore::strictCSSParserContext):
-        (WebCore::CSSParserContext::CSSParserContext):
-        (WebCore::CSSParser::parseColor):
-        (WebCore::CSSParser::shouldAcceptUnitLessValues):
-        (WebCore::CSSParser::parseValue):
-        (WebCore::CSSParser::parseColumnWidth):
-        (WebCore::CSSParser::parseColumnCount):
-        (WebCore::CSSParser::parseFontWeight):
-        (WebCore::CSSParser::parseColorParameters):
-        (WebCore::CSSParser::parseHSLParameters):
-        (WebCore::CSSParser::parseShadow):
-        (WebCore::CSSParser::parseBorderImageSlice):
-        (WebCore::CSSParser::parseBorderImageQuad):
-        (WebCore::CSSParser::parseDeprecatedLinearGradient):
-        (WebCore::CSSParser::parseLinearGradient):
-        (WebCore::CSSParser::parseTransformValue):
-        (WebCore::CSSParser::parseBuiltinFilterArguments):
-        (WebCore::CSSParser::determineNameInNamespace):
-        * css/parser/CSSParser.h:
-        (WebCore::CSSParser::inStrictMode):
-        (WebCore::CSSParser::inQuirksMode):
-        * css/parser/CSSParserMode.h:
-        (WebCore::isQuirksModeBehavior):
-        (WebCore::isUASheetBehavior):
-        (WebCore::isUnitLessLengthParsingEnabledForMode):
-        (WebCore::isCSSViewportParsingEnabledForMode):
-        (WebCore::strictToCSSParserMode):
-        (WebCore::isStrictParserMode):
-        * css/parser/CSSParserValues.cpp:
-        (WebCore::CSSParserSelector::parsePseudoElementSelectorFromStringView):
-        (WebCore::CSSParserSelector::parsePseudoClassSelectorFromStringView):
-        (WebCore::CSSParserSelector::setSelectorList):
-        (WebCore::CSSParserSelector::appendTagHistory):
-        (WebCore::CSSParserSelector::releaseTagHistory):
-        (WebCore::CSSParserSelector::isHostPseudoSelector):
-        * css/parser/CSSParserValues.h:
-        (WebCore::CSSParserSelector::match):
-        (WebCore::CSSParserSelector::pseudoElementType):
-        (WebCore::CSSParserSelector::selectorList):
-        (WebCore::CSSParserSelector::needsImplicitShadowCombinatorForMatching):
-        * css/parser/CSSPropertyParser.h:
-        (WebCore::CSSPropertyParser::inQuirksMode):
-        * css/parser/CSSSelectorParser.cpp: Added.
-        (WebCore::CSSSelectorParser::parseSelector):
-        (WebCore::CSSSelectorParser::CSSSelectorParser):
-        (WebCore::CSSSelectorParser::consumeComplexSelectorList):
-        (WebCore::CSSSelectorParser::consumeCompoundSelectorList):
-        (WebCore::CSSSelectorParser::consumeComplexSelector):
-        (WebCore::CSSSelectorParser::consumeCompoundSelector):
-        (WebCore::CSSSelectorParser::consumeSimpleSelector):
-        (WebCore::CSSSelectorParser::consumeName):
-        (WebCore::CSSSelectorParser::consumeId):
-        (WebCore::CSSSelectorParser::consumeClass):
-        (WebCore::CSSSelectorParser::consumeAttribute):
-        (WebCore::CSSSelectorParser::consumePseudo):
-        (WebCore::CSSSelectorParser::consumeCombinator):
-        (WebCore::CSSSelectorParser::consumeAttributeMatch):
-        (WebCore::CSSSelectorParser::consumeAttributeFlags):
-        (WebCore::CSSSelectorParser::consumeANPlusB):
-        (WebCore::CSSSelectorParser::defaultNamespace):
-        (WebCore::CSSSelectorParser::determineNamespace):
-        (WebCore::CSSSelectorParser::prependTypeSelectorIfNeeded):
-        (WebCore::CSSSelectorParser::addSimpleSelectorToCompound):
-        (WebCore::CSSSelectorParser::splitCompoundAtImplicitShadowCrossingCombinator):
-        * css/parser/CSSSelectorParser.h: Added.
-        (WebCore::CSSSelectorParser::DisallowPseudoElementsScope::DisallowPseudoElementsScope):
-        (WebCore::CSSSelectorParser::DisallowPseudoElementsScope::~DisallowPseudoElementsScope):
-        * cssjit/SelectorCompiler.cpp:
-        (WebCore::SelectorCompiler::fragmentRelationForSelectorRelation):
-        * dom/StyledElement.cpp:
-        (WebCore::StyledElement::rebuildPresentationAttributeStyle):
-        * svg/SVGFontFaceElement.cpp:
-        (WebCore::SVGFontFaceElement::SVGFontFaceElement):
-
-2016-09-08  Simon Fraser  <simon.fraser@apple.com>
-
-        Don't run transitions to or from undefined Lengths
-        https://bugs.webkit.org/show_bug.cgi?id=161750
-        rdar://problem/28170460
-
-        Reviewed by Zalan Bujtas.
-
-        For properties like max-height whose default value is 'none', we would erroneously
-        attempt to run transitions/animations, and then assert when one of the endpoints
-        was undefined.
-
-        So don't attempt to blend such Length values, just as do when they are auto.
-
-        Fixes some transitions on apple.com and developer.apple.com.
-
-        Test: transitions/transition-to-from-undefined.html
-
-        * page/animation/CSSPropertyAnimation.cpp:
-        (WebCore::CSSPropertyAnimation::blendProperties):
-        * platform/Length.cpp:
-        (WebCore::blend):
-
-2016-09-08  Myles C. Maxfield  <mmaxfield@apple.com>
-
-        Support new emoji group candidates
-        https://bugs.webkit.org/show_bug.cgi?id=161664
-        <rdar://problem/24802695>
-        <rdar://problem/27666433>
-
-        Reviewed by Simon Fraser.
-
-        Support more emoji group candidates. This includes joining groups into a single glyph, as
-        well as atomic deletions of the entire group when the backspace key is pressed.
-
-        Tests: editing/deleting/delete-emoji.html:
-               fast/text/emoji-num-glyphs.html:
-
-        * platform/text/CharacterProperties.h:
-        (WebCore::isEmojiGroupCandidate):
-
-2016-09-08  Chris Dumez  <cdumez@apple.com>
-
-        HTMLImageElement.width / height attributes should be unsigned
-        https://bugs.webkit.org/show_bug.cgi?id=161730
-
-        Reviewed by Alex Christensen.
-
-        HTMLImageElement.width / height attributes should be unsigned as per
-        the HTML specification:
-        - https://html.spec.whatwg.org/#htmlimageelement
-
-        However, they are signed in WebKit. Firefox agrees with the
-        specification.
-
-        No new tests, rebaselined existing test.
-
-        * bindings/js/JSImageConstructor.cpp:
-        (WebCore::JSImageConstructor::construct):
-        (WebCore::createImageConstructor): Deleted.
-        * html/HTMLImageElement.cpp:
-        (WebCore::HTMLImageElement::createForJSConstructor):
-        (WebCore::HTMLImageElement::width):
-        (WebCore::HTMLImageElement::height):
-        (WebCore::HTMLImageElement::setHeight):
-        (WebCore::HTMLImageElement::setWidth):
-        * html/HTMLImageElement.h:
-        * html/HTMLImageElement.idl:
-        * html/ImageDocument.cpp:
-        (WebCore::ImageDocument::restoreImageSize):
-
-2016-09-08  Filip Pizlo  <fpizlo@apple.com>
-
-        Move JSMap/JSSet over to Auxiliary MarkedSpace
-        https://bugs.webkit.org/show_bug.cgi?id=161744
-
-        Reviewed by Saam Barati.
-
-        No new tests because no change in behavior.
-
-        * bindings/js/SerializedScriptValue.cpp:
-
-2016-09-08  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r205652.
-        https://bugs.webkit.org/show_bug.cgi?id=161748
-
-        Crashing under ASan (Requested by yusukesuzuki on #webkit).
-
-        Reverted changeset:
-
-        "ScriptRunner should be driven by PendingScript rather than
-        ScriptElement"
-        https://bugs.webkit.org/show_bug.cgi?id=161726
-        http://trac.webkit.org/changeset/205652
-
-2016-09-08  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        ScriptRunner should be driven by PendingScript rather than ScriptElement
-        https://bugs.webkit.org/show_bug.cgi?id=161726
-
-        Reviewed by Ryosuke Niwa.
-
-        ScriptRunner is driven by ScriptElement::notifyFinished. While ScriptRunner is driven by this,
-        HTMLScriptRunner does not use it. Instead, HTMLScriptRunner uses PendingScriptClient. As a result,
-        ScriptElement::notifyFinished is used only when the script is annotated with "defer" or "async"
-        while all the external script will load the LoadableScript. It is confusing.
-        This patch removes ScriptElement::notifyFinished and use PendingScript's observability
-        in ScriptRunner instead.
-
-        This patch also fixes the behavior about ignore-destructive-writes counter[1]. When dispatching
-        the load and error events, this ignore-destructive-writes counter should not be incremeneted by
-        this execution. The added tests ensure this behavior.
-
-        [1]: https://html.spec.whatwg.org/multipage/scripting.html#execute-the-script-block
-
-        * dom/ScriptElement.cpp: Drop LoadableScriptClient interface.
-        (WebCore::ScriptElement::prepareScript): Do not use addClient. ScriptRunner use PendingScript::{setClient,clearClient} instead.
-        (WebCore::ScriptElement::executeScriptForScriptRunner): IgnoreDestructiveWriteCountIncrementer will be done in ScriptElement::executeScript.
-        So no need to do it here, that's duplicated.
-        (WebCore::ScriptElement::~ScriptElement): Deleted. ScriptElement does not use addClient/removeClient.
-        (WebCore::ScriptElement::stopLoadRequest): Deleted.
-        (WebCore::ScriptElement::executeScriptForHTMLScriptRunner): Deleted. executeScriptForHTMLScriptRunner and executeScriptForScriptRunner are
-        merged into executeScriptForRunner.
-        (WebCore::ScriptElement::notifyFinished): Deleted.
-        * dom/ScriptElement.h:
-        (WebCore::ScriptElement::~ScriptElement):
-        (WebCore::ScriptElement::willExecuteInOrder): Used in ScriptRunner to determine whether the script is async or defer.
-        (WebCore::ScriptElement::willExecuteWhenDocumentFinishedParsing): Deleted.
-        * dom/ScriptRunner.cpp:
-        (WebCore::ScriptRunner::~ScriptRunner): HashSet's iterator will return `const PendingScript&`.
-        Another option is using HashSet<RefPtr<PendingScript>>. Here, we use a little bit weired const_cast.
-        (WebCore::ScriptRunner::queueScriptForExecution): Use PendingScript::setClient to wait loading.
-        (WebCore::ScriptRunner::notifyFinished): Notify the script ready here.
-        (WebCore::ScriptRunner::timerFired): Use executeScriptForScriptRunner.
-        (WebCore::ScriptRunner::notifyScriptReady): Deleted.
-        * dom/ScriptRunner.h:
-        * html/parser/HTMLScriptRunner.cpp:
-        (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Use executeScriptForScriptRunner.
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        Re-land r205580 after r205649 fixed the test failures
-        https://bugs.webkit.org/show_bug.cgi?id=161668
-
-        Re-landing changesets:
-
-        "Punycode encode non-ascii hosts in URLParser"
-        https://bugs.webkit.org/show_bug.cgi?id=161655
-        http://trac.webkit.org/changeset/205521
-
-        "Fix query-only and fragment-only relative URLs when using
-        URLParser"
-        https://bugs.webkit.org/show_bug.cgi?id=161657
-        http://trac.webkit.org/changeset/205526
-
-        "URLParser should parse / as a relative URL"
-        https://bugs.webkit.org/show_bug.cgi?id=161667
-        http://trac.webkit.org/changeset/205532
-
-2016-09-08  Alex Christensen  <achristensen@webkit.org>
-
-        Add range check in URLParser's serializeIPv6
-        https://bugs.webkit.org/show_bug.cgi?id=161743
-
-        Reviewed by David Kilzer.
-
-        No new tests, but this fixes API tests in some release builds after
-        the patch from https://bugs.webkit.org/show_bug.cgi?id=161668 is recommitted.
-
-        * platform/URLParser.cpp:
-        (WebCore::serializeIPv6):
-        Don't go out of bounds.  Don't assume that the memory immediately after the end of the array will be empty.
-
-2016-09-07  Alex Christensen  <achristensen@webkit.org>
-
-        Roll out r205580 and r205582.
-        https://bugs.webkit.org/show_bug.cgi?id=161668
-
-        I need to figure out why this is failing on the bots before landing any more URLParser progress.
-
-2016-09-07  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        Unreviewed, EFL build fix after r205581
-        https://bugs.webkit.org/show_bug.cgi?id=161674
-
-        * dom/LoadableClassicScript.cpp:
-        (WebCore::LoadableClassicScript::notifyFinished):
-
-2016-09-07  Alex Christensen  <achristensen@webkit.org>
-
-        Fix API tests after r205580
-        https://bugs.webkit.org/show_bug.cgi?id=161668
-
-        No new tests, but this fixes API tests on bots.
-
-        * platform/URLParser.cpp:
-        (WebCore::domainToASCII):
-        This function seems to be appending characters to strings sometimes on some configurations.
-        This definitely needs further investigation, but this will fix the bots, and nothing else
-        will be affected because the URLParser is disabled by default.
-
-2016-09-07  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        Introduce abstract class LoadableScript for classic script and module graph
-        https://bugs.webkit.org/show_bug.cgi?id=161674
-
-        Reviewed by Ryosuke Niwa.
-
-        To prepare for ScriptModuleGraph, we introduce the abstract class over the classic script
-        and the module script, LoadableScript.
-
-        No behavior change.
-
-        * CMakeLists.txt:
-        * WebCore.xcodeproj/project.pbxproj:
-        * dom/LoadableClassicScript.cpp: Added. LoadableClassicScript is the derived class from the
-        LoadableScript. In the module patch, we will introduce LoadableScriptModuleGraph which is also
-        the derived class from the LoadableScript. It is used for the external classic script.
-        A CachedResourceHandle used here alone does not prevent the underlying CachedResource from purging its
-        data buffer. This LoadableClassicScript holds a client until this class is destroyed in order to
-        guarantee that the data buffer will not be purged.
-        (WebCore::LoadableClassicScript::create):
-        (WebCore::LoadableClassicScript::LoadableClassicScript):
-        (WebCore::LoadableClassicScript::~LoadableClassicScript):
-        (WebCore::LoadableClassicScript::isLoaded):
-        (WebCore::LoadableClassicScript::wasErrored): Beyond the boolean value, this can return the detail
-        of the error. This detailed information will be used to report it to the inspector in the ScriptElement.
-        (WebCore::LoadableClassicScript::wasCanceled):
-        (WebCore::LoadableClassicScript::notifyFinished): Nosniff and cross-origin loading errors are handled here,
-        instead of exposing CachedScript*.
-        (WebCore::LoadableClassicScript::execute): Execute the cached script by using the given ScriptElement.
-        * dom/LoadableClassicScript.h: Copied from Source/WebCore/dom/PendingScript.h.
-        (isType):
-        * dom/LoadableScript.cpp: Copied from Source/WebCore/dom/ScriptRunner.h. New wrapper for CachedScript
-        and ScriptModuleGraph. We introduce a new wrapper to handle the above 2 things in the same way.
-        We take the way to introduce a new wrapper instead of introducing a new interface that is inherited by
-        CachedScript and ScriptModuleGraph. This is because ScriptModuleGraph is ref-counted while CachedScript
-        is managed by CachedResourceHandle. While this patch does not contain ScriptModuleGraph part, this
-        should be added in the module patch and at that time, this should be managed by this LoadableScript's
-        subclass. And we introduce TypeCasts traits for LoadableScript to allow `is<>` and `downcast<>`.
-        (WebCore::LoadableScript::addClient):
-        (WebCore::LoadableScript::removeClient):
-        (WebCore::LoadableScript::notifyClientFinished):
-        * dom/LoadableScript.h: Copied from Source/WebCore/dom/ScriptRunner.h.
-        (WebCore::LoadableScript::~LoadableScript):
-        (WebCore::LoadableScript::isClassicScript):
-        (WebCore::LoadableScript::isModuleGraph):
-        * dom/LoadableScriptClient.h: Copied from Source/WebCore/dom/ScriptRunner.h.
-        (WebCore::LoadableScriptClient::~LoadableScriptClient):
-        * dom/PendingScript.cpp: Use LoadableScript instead of CachedScript.
-        (WebCore::PendingScript::create):
-        (WebCore::PendingScript::PendingScript):
-        (WebCore::PendingScript::~PendingScript):
-        (WebCore::PendingScript::loadableScript):
-        (WebCore::PendingScript::notifyFinished):
-        (WebCore::PendingScript::isLoaded):
-        (WebCore::PendingScript::wasErrored):
-        (WebCore::PendingScript::cachedScript): Deleted.
-        * dom/PendingScript.h:
-        * dom/ScriptElement.cpp:
-        (WebCore::ScriptElement::ScriptElement):
-        (WebCore::ScriptElement::handleSourceAttribute): Change sourceUrl to sourceURL to be consistent.
-        (WebCore::ScriptElement::prepareScript):
-        (WebCore::ScriptElement::requestClassicScript): requestScript is renamed to requestClassicScript.
-        (WebCore::ScriptElement::requestScriptWithCache): Extract the code requesting the
-        CachedScript from requestScript. This will also be used by the module fetcher.
-        (WebCore::ScriptElement::executeScript): Now inspector error reporting is also done in this function.
-        When an error occurs, LoadableScript::wasErrored() returns the error which may include the information
-        to report the error to the inspector. nosniff and cross-origin loading errors are now detected by the
-        LoadableClassicScript and reported through this wasErrored().
-        (WebCore::ScriptElement::stopLoadRequest):
-        (WebCore::ScriptElement::executeScriptAndDispatchEvent):
-        (WebCore::ScriptElement::executeScriptForScriptRunner): Move the code from ScriptRunner. This function
-        calls removeClient(*this) because ScriptRunner is driven by the ScriptElement's notification. Only when using
-        ScriptRunner, we call addClient(*this) for ScriptElement. This is tricky, we should refactor this in the separated
-        bug (https://bugs.webkit.org/show_bug.cgi?id=161726).
-        (WebCore::ScriptElement::executeScriptForHTMLScriptRunner): Move the code from HTMLScriptRunner.
-        (WebCore::ScriptElement::notifyFinished):
-        (WebCore::ScriptElement::requestScript): Deleted.
-        (WebCore::ScriptElement::execute): Deleted.
-        * dom/ScriptElement.h:
-        (WebCore::ScriptElement::loadableScript):
-        (WebCore::ScriptElement::cachedScript): Deleted.
-        * dom/ScriptRunner.cpp:
-        (WebCore::ScriptRunner::queueScriptForExecution):
-        (WebCore::ScriptRunner::timerFired): Use ScriptElement::executeScriptForScriptRunner.
-        * dom/ScriptRunner.h:
-        * html/parser/HTMLScriptRunner.cpp:
-        (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
-        (WebCore::requestPendingScript):
-        (WebCore::HTMLScriptRunner::requestParsingBlockingScript):
-        (WebCore::HTMLScriptRunner::sourceFromPendingScript): Deleted.
-        * html/parser/HTMLScriptRunner.h: Use ScriptElement::executeScriptForHTMLScriptRunner.
-        * xml/parser/XMLDocumentParserLibxml2.cpp: Currently, we do nothing about XMLDocument in this patch.
-        We should support the module script, but before that, we should refactor this pending script handling.
-        (WebCore::XMLDocumentParser::endElementNs):
-
-2016-09-07  Alex Christensen  <achristensen@webkit.org>
-
-        Unreviewed, revert r205533.
-        https://bugs.webkit.org/show_bug.cgi?id=161668
-
-        Re-landing changesets:
-
-        "Punycode encode non-ascii hosts in URLParser"
-        https://bugs.webkit.org/show_bug.cgi?id=161655
-        http://trac.webkit.org/changeset/205521
-
-        "Fix query-only and fragment-only relative URLs when using
-        URLParser"
-        https://bugs.webkit.org/show_bug.cgi?id=161657
-        http://trac.webkit.org/changeset/205526
-
-        "URLParser should parse / as a relative URL"
-        https://bugs.webkit.org/show_bug.cgi?id=161667
-        http://trac.webkit.org/changeset/205532
-
-2016-09-07  Simon Fraser  <simon.fraser@apple.com>
-
-        Enable the <meter> element on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=161714
-        rdar://problem/8978410
-
-        Reviewed by Tim Horton.
-
-        Define ENABLE_METER_ELEMENT unconditionally now.
-        
-        Rendering falls back to html.css rendering, which makes <meter> looks similar between
-        macOS and iOS.
-
-        Tested by enabling existing tests.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2016-09-07  Eric Carlson  <eric.carlson@apple.com>
-
-        [MediaStream] applyConstraints pt. 2 - advanced constraints
-        https://bugs.webkit.org/show_bug.cgi?id=161715
-        <rdar://problem/28195461>
-
-        Reviewed by Dean Jackson.
-
-        Test: fast/mediastream/apply-constraints-advanced.html
-
-        * platform/mediastream/MediaConstraints.cpp:
-        (WebCore::MediaConstraint::create): Return Ref<>, not RefPtr<>.
-        (WebCore::MediaConstraint::copy): New
-        (WebCore::IntConstraint::copy): Ditto.
-        (WebCore::DoubleConstraint::copy): Ditto.
-        (WebCore::BooleanConstraint::copy): Ditto.
-        (WebCore::StringConstraint::copy): Ditto.
-        (WebCore::StringConstraint::fitnessDistance): New, compute the fitness distance between the
-          constraint and the specified value.
-        (WebCore::StringConstraint::merge): New, merge value into constraint.
-        (WebCore::FlattenedConstraint::set): New, add or replace a constraint.
-        (WebCore::FlattenedConstraint::merge): New, merge or add a constraint.
-        * platform/mediastream/MediaConstraints.h:
-        (WebCore::MediaConstraint::fitnessDistance):
-        (WebCore::MediaConstraint::merge):
-        (WebCore::NumericConstraint::nearlyEqual):
-        (WebCore::FlattenedConstraint::isEmpty):
-        (WebCore::FlattenedConstraint::begin):
-        (WebCore::FlattenedConstraint::end):
-        (WebCore::MediaConstraint::~MediaConstraint): Deleted.
-        (WebCore::MediaConstraint::find): Deleted.
-        (WebCore::MediaConstraint::getIdeal): Deleted.
-
-        * platform/mediastream/RealtimeMediaSource.cpp:
-        (WebCore::RealtimeMediaSource::fitnessDistance): Return the fitness distance between the source
-          capabilities and a constraint.
-        (WebCore::applyNumericConstraint): New, apply a numeric constraint.
-        (WebCore::RealtimeMediaSource::applyConstraint): Use applyNumericConstraint.
-        (WebCore::RealtimeMediaSource::selectSettings): New, implement the SelectSettings algorithm
-        (WebCore::RealtimeMediaSource::applyConstraints):
-        (WebCore::RealtimeMediaSource::supportsConstraint): Deleted.
-        (WebCore::value): Deleted.
-        * platform/mediastream/RealtimeMediaSource.h:
-
-2016-09-07  Mark Lam  <mark.lam@apple.com>
-
-        Add CatchScope and force all exception checks to be via ThrowScope or CatchScope.
-        https://bugs.webkit.org/show_bug.cgi?id=161498
-
-        Reviewed by Geoffrey Garen.
-
-        No new test because there is no behavior change in general except for 1 bug fix.
-        That bug is already caught by existing tests with the introduction of the CatchScope.
-
-        Fixes a bug in JSEventListener::handleEvent() where the exception thrown from
-        a failed attempt to get the handleEvent callback is not handled.
-
-        * ForwardingHeaders/runtime/CatchScope.h: Added.
-        * Modules/encryptedmedia/CDMSessionClearKey.cpp:
-        (WebCore::CDMSessionClearKey::update):
-        * Modules/indexeddb/IDBObjectStore.cpp:
-        (WebCore::IDBObjectStore::putOrAdd):
-        * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
-        (WebCore::IDBServer::UniqueIDBDatabase::performPutOrAdd):
-        * Modules/mediastream/SDPProcessor.cpp:
-        (WebCore::SDPProcessor::callScript):
-        * Modules/plugins/QuickTimePluginReplacement.mm:
-        (WebCore::QuickTimePluginReplacement::ensureReplacementScriptInjected):
-        (WebCore::QuickTimePluginReplacement::installReplacement):
-        * bindings/js/ArrayValue.cpp:
-        (WebCore::ArrayValue::get):
-        * bindings/js/Dictionary.cpp:
-        (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
-        * bindings/js/IDBBindingUtilities.cpp:
-        (WebCore::toJS):
-        * bindings/js/JSApplePaySessionCustom.cpp:
-        (WebCore::JSApplePaySession::completeShippingMethodSelection):
-        (WebCore::JSApplePaySession::completeShippingContactSelection):
-        (WebCore::JSApplePaySession::completePaymentMethodSelection):
-        * bindings/js/JSAudioTrackCustom.cpp:
-        (WebCore::JSAudioTrack::setKind):
-        (WebCore::JSAudioTrack::setLanguage):
-        * bindings/js/JSBlobCustom.cpp:
-        (WebCore::constructJSBlob):
-        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
-        (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
-        * bindings/js/JSCommandLineAPIHostCustom.cpp:
-        (WebCore::getJSListenerFunctions):
-        * bindings/js/JSCryptoAlgorithmDictionary.cpp:
-        (WebCore::JSCryptoAlgorithmDictionary::getAlgorithmIdentifier):
-        (WebCore::getHashAlgorithm):
-        (WebCore::createAesCbcParams):
-        (WebCore::createAesKeyGenParams):
-        (WebCore::createHmacParams):
-        (WebCore::createHmacKeyParams):
-        (WebCore::createRsaKeyGenParams):
-        (WebCore::createRsaOaepParams):
-        (WebCore::createRsaSsaParams):
-        * bindings/js/JSCryptoKeySerializationJWK.cpp:
-        (WebCore::getJSArrayFromJSON):
-        (WebCore::getStringFromJSON):
-        (WebCore::getBooleanFromJSON):
-        (WebCore::JSCryptoKeySerializationJWK::JSCryptoKeySerializationJWK):
-        (WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
-        (WebCore::JSCryptoKeySerializationJWK::keyDataOctetSequence):
-        (WebCore::JSCryptoKeySerializationJWK::keyDataRSAComponents):
-        (WebCore::JSCryptoKeySerializationJWK::keyData):
-        (WebCore::buildJSONForRSAComponents):
-        (WebCore::addUsagesToJSON):
-        (WebCore::JSCryptoKeySerializationJWK::serialize):
-        * bindings/js/JSCustomElementInterface.cpp:
-        (WebCore::JSCustomElementInterface::constructElement):
-        (WebCore::constructCustomElementSynchronously):
-        (WebCore::JSCustomElementInterface::upgradeElement):
-        * bindings/js/JSCustomElementRegistryCustom.cpp:
-        (WebCore::getCustomElementCallback):
-        (WebCore::JSCustomElementRegistry::define):
-        (WebCore::whenDefinedPromise):
-        (WebCore::JSCustomElementRegistry::whenDefined):
-        * bindings/js/JSDOMBinding.cpp:
-        (WebCore::valueToUSVString):
-        (WebCore::reportException):
-        (WebCore::reportCurrentException):
-        (WebCore::setDOMException):
-        (WebCore::hasIteratorMethod):
-        (WebCore::toSmallerInt):
-        (WebCore::toSmallerUInt):
-        (WebCore::toInt32EnforceRange):
-        (WebCore::toUInt32EnforceRange):
-        (WebCore::toInt64EnforceRange):
-        (WebCore::toUInt64EnforceRange):
-        (WebCore::throwNotSupportedError):
-        (WebCore::throwInvalidStateError):
-        (WebCore::throwSecurityError):
-        * bindings/js/JSDOMBinding.h:
-        (WebCore::toJSSequence):
-        (WebCore::toJS):
-        (WebCore::jsFrozenArray):
-        (WebCore::NativeValueTraits<String>::nativeValue):
-        (WebCore::NativeValueTraits<unsigned>::nativeValue):
-        (WebCore::NativeValueTraits<float>::nativeValue):
-        (WebCore::NativeValueTraits<double>::nativeValue):
-        (WebCore::toNativeArray):
-        * bindings/js/JSDOMGlobalObject.cpp:
-        (WebCore::makeThisTypeErrorForBuiltins):
-        (WebCore::makeGetterTypeErrorForBuiltins):
-        * bindings/js/JSDOMGlobalObjectTask.cpp:
-        * bindings/js/JSDOMIterator.h:
-        (WebCore::iteratorForEach):
-        * bindings/js/JSDOMPromise.cpp:
-        (WebCore::rejectPromiseWithExceptionIfAny):
-        * bindings/js/JSDOMPromise.h:
-        (WebCore::callPromiseFunction):
-        * bindings/js/JSDOMStringMapCustom.cpp:
-        (WebCore::JSDOMStringMap::putDelegate):
-        *&nb