Timeline
Jan 31, 2016:
- 10:34 PM Changeset in webkit [195953] by
-
- 17 edits4 adds in trunk
Add resize event for HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=125715
Patch by Jeremy Jones <jeremyj@apple.com> on 2016-01-31
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaselined test after moving 'resize' from DOMWindow.idl to GlobalEventHandlers.idl
per https://html.spec.whatwg.org/multipage/webappapis.html#globaleventhandlers
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Tests: http/tests/media/hls/hls-video-resize.html
media/video-resize.html
Move resize javascript event from DOMWindow.idl to GlobalEventHandlers.idl
per https://html.spec.whatwg.org/multipage/webappapis.html#globaleventhandlers
Post resize event from video element when metadata loads and when content size changes.
- dom/GlobalEventHandlers.idl: Add onresize.
- html/HTMLElement.cpp:
(WebCore::HTMLElement::createEventHandlerNameMap): Add onresizeAttr.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setReadyState):
(WebCore::HTMLMediaElement::mediaPlayerSizeChanged):
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::scheduleResizeEvent):
(WebCore::HTMLMediaElement::scheduleResizeEventIfSizeChanged):
- html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::scheduleResizeEvent): Sechedule event.
(WebCore::HTMLVideoElement::scheduleResizeEventIfSizeChanged): Schedule event if size has changed.
- html/HTMLVideoElement.h: Add declarations.
- page/DOMWindow.idl: Remove onresize.
Source/WebInspectorUI:
Add a display name for "resize" event.
- UserInterface/Models/ScriptTimelineRecord.js:
(WebInspector.ScriptTimelineRecord.EventType.displayName):
LayoutTests:
Update test for change: move resize javascript event from DOMWindow.idl to GlobalEventHandlers.idl
per https://html.spec.whatwg.org/multipage/webappapis.html#globaleventhandlers
- fast/dom/event-handler-attributes-expected.txt: Rebaselined.
- fast/dom/event-handler-attributes.html:
Move resize from uniqueWindowEvents to eventsInGlobalEventHandlers.
- http/tests/media/hls/hls-video-resize-expected.txt: Added.
- http/tests/media/hls/hls-video-resize.html: Added.
- js/dom/dom-static-property-for-in-iteration-expected.txt: Rebaselined.
- media/video-resize-expected.txt: Added.
- media/video-resize.html: Added.
- media/video-test.js:
(requiredEvents): Deleted global. Value is now captured by closure.
(waitForEventsAndCall): Remove dependence on global variable, and fix event observation leak.
- 9:51 PM Changeset in webkit [195952] by
-
- 2 edits in trunk/Source/WebCore
Revert accidental behavior change from previous patch.
- platform/URL.cpp:
(WebCore::mimeTypeFromDataURL): Restore behavior where an empty MIME type would
be turned into "text/plain".
- 9:46 PM Changeset in webkit [195951] by
-
- 53 edits in trunk/Source
Cut down on calls to String::lower; mostly replace with convertToASCIILowercase
https://bugs.webkit.org/show_bug.cgi?id=153732
Reviewed by Dean Jackson.
Source/WebCore:
- Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::isTypeSupported): Added comment about mysterious call
to lower(); should probably return here and remove it.
- Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::initProtocolHandlerWhitelist): Deleted. Moved into isProtocolWhitelisted.
(WebCore::isProtocolWhitelisted): Changed set to be ASCIICaseInsensitiveHash and
initialized it using a lambda instead of a separate function.
(WebCore::verifyProtocolHandlerScheme): Added a FIXME about some case sensitive
checking of the protocol prefix here.
- Modules/plugins/QuickTimePluginReplacement.mm:
(WebCore::QuickTimePluginReplacement::supportsMimeType): Changed set to be
ASCIICaseInsensitiveHash and initialized it using a lambda instead of using
an explict check for empty.
(WebCore::QuickTimePluginReplacement::supportsFileExtension): Ditto.
- Modules/plugins/YouTubePluginReplacement.cpp:
(WebCore::queryKeysAndValues): Use convertToASCIILowercase. The keys here are
going to be all ASCII.
(WebCore::isYouTubeURL): Use equalLettersIgnoringASCIICase instead of lowercasing
the string.
(WebCore::processAndCreateYouTubeURL): Use url.protocolIsInHTTPFamily instead of
listing "http" and then "https" explicitly. Use equalLettersIgnoringASCIICase
instead of lowercasing a string.
(WebCore::YouTubePluginReplacement::youTubeURL): Ditto.
- Modules/websockets/WebSocketHandshake.cpp:
(WebCore::hostName): Use convertToASCIILowercase on host name.
(WebCore::WebSocketHandshake::host): Ditto.
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes): Call convertToASCIILowercase instead of lower
to lowercase an element's tag name. This is a strange way to do things; typically
would be better to use some other function on Element, since tagName goes out of
its way to be capitalized, but some ATK expert can improve this later.
- css/CSSGrammar.y.in: Use the new convertToASCIILowercaseInPlace function rather
than the old lower function. We only need to lowercase the ASCII letters, and it's
also better to have the function have a clearer name.
- css/CSSParser.cpp:
(WebCore::convertToASCIILowercaseInPlace): Renamed from makeLower and made it deal
with only ASCII lowercasing.
(WebCore::CSSParserString::convertToASCIILowercaseInPlace): Renamed from lower.
(WebCore::isUniversalKeyword): Added. Helper for the function below that uses
equalLettersIgnoringASCIICase rather than lowercasing the string.
(WebCore::parseKeywordValue): Use isUniversalKeyword. Also clarified a comment.
(WebCore::CSSParser::parseAttr): Use convertToASCIILowercaseInPlace and delay
String creation until later in the function, using CSSParserString operations more.
- css/CSSParserValues.cpp:
(WebCore::CSSParserSelector::parsePseudoElementSelector): Use
convertToASCIILowercaseInPlace by its new name, with its new behavior.
- css/CSSParserValues.h: Tweaked comment and formatting a bit. Replaced the lower
function with the convertToASCIILowercaseInPlace function.
- css/CSSSelector.cpp:
(WebCore::CSSSelector::RareData::parseNth): Rewrote this to avoid the need to
make a lowercased copy of m_argument. Use equalLettersIgnoringASCIICase, and two
calls to find. Also use String::toIntStrict so we don't have to create String
objects for substrings.
- css/MediaQuery.cpp:
(WebCore::MediaQuery::MediaQuery): Use convertToASCIILowercase for media type name.
- css/MediaQueryExp.cpp:
(WebCore::MediaQueryExp::serialize): Use convertToASCIILowercase for media feature name.
- dom/Document.cpp:
(WebCore::isSeparator): Tweaked formatting and removed non-helpful comment.
(WebCore::processArguments): Changed this from a static member function to a non-member
file internal function. Use a std::function instead of a function pointer with a void*
pointer. Rewrote algorithm to simplify it and use StringView instead of String for the
keys and values.
(WebCore::Document::processViewport): Use a lambda instead of a function pointer to
call setViewportFeature, so that function's interface is no longer dictated by
the exact type of the function pointer argument to processArguments.
(WebCore::Document::processFormatDetection): Use a lambda instead of the
setParserFeature function above; use equalLettersIgnoringASCIICase for both the
key and the value, since processArguments no longer lowercases the string.
(WebCore::Document::processArguments): Deleted.
- dom/Document.h: Removed unnecessary declaration of processArguments and
ArgumentsCallback. Both are now private to the cpp file.
- dom/Element.cpp:
(WebCore::makeIdForStyleResolution): Use convertToASCIILowercase. When in quirks mode,
we want to match IDs in an ASCII case-insensitive way not match compatibility caseless.
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::isScriptTypeSupported): Remove the use of lower here since
the MIME type registry is now itself ASCII case-insensitive.
- dom/ViewportArguments.cpp:
(WebCore::numericPrefix): Changed to use StringView and take a Document&, rearranged
argument order so Document& comes first.
(WebCore::findSizeValue): Ditto.
(WebCore::findScaleValue): Ditto.
(WebCore::findBooleanValue): Ditto. Also use std::abs instead of fabs, possibly
avoiding a conversion from float to double (not sure it was happening before but it's
definitely not happening now).
(WebCore::setViewportFeature): Changed to put arguments in a more logical order, to take
the ViewportArguments as a reference, not a void*, and to use StringView to avoid forcing
the caller to allocate strings. Also changed to use equalLettersIgnoringASCIICase so we
don't rely on the caller to make the key lowercase for us.
(WebCore::reportViewportWarning): Changed argument types. Added a couple comments about
mistakes in the function.
- dom/ViewportArguments.h: Removed unnecessary declaration of reportViewportWarning,
which is now private to the cpp file. Updated for new arguments to setViewportFeature.
- editing/EditorCommand.cpp:
(WebCore::executeFormatBlock): Use convertToASCIILowercase on the argument, which is
specifying a tag name.
- fileapi/Blob.cpp:
(WebCore::Blob::isValidContentType): Removed unnecessary separate loops for
8-bit and 16-bit strings. Content types are short strings and this small optimization is
not worth the additional code complexity.
(WebCore::Blob::normalizedContentType): Use convertToASCIILowercase since valid
content types are guaranteed to be all ASCII.
(WebCore::Blob::isNormalizedContentType): Removed unnecessary separate loops for
8-bit and 16-bit strings. Content types are short strings and this small optimization is
not worth the additional code complexity.
- html/parser/HTMLParserIdioms.cpp: Added now-needed include of QualifiedName.h.
- html/parser/HTMLParserIdioms.h: Removed unneeded include of QualifiedName.h and
WTFString.h. Made sure every function is declared first, even if it's also defined
later in the header in the section for functions templates and inline functions.
- loader/archive/ArchiveFactory.cpp:
(WebCore::ArchiveFactory::registerKnownArchiveMIMETypes): Use auto& for the type of
the set of MIME types here, since it's now using ASCIICaseInsensitiveHash.
- platform/MIMETypeRegistry.cpp: Changed the MIME type sets to use
ASCIICaseInsensitiveHash since MIME type are not case sensitive.
(WebCore::initializeSupportedImageMIMETypes): Use a modern for loop.
(WebCore::initializeSupportedImageMIMETypesForEncoding): Updated for HashSet type change.
(WebCore::initializePDFMIMETypes): Use a modern for loop.
(WebCore::initializeSupportedNonImageMimeTypes): Use a modern for loop.
(WebCore::initializeSupportedMediaMIMETypes): Updated for HashSet type change.
(WebCore::initializeUnsupportedTextMIMETypes): Use a modern for loop.
(WebCore::initializeMIMETypeRegistry): Updated for HashSet type change.
(WebCore::MIMETypeRegistry::getSupportedImageMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding): Ditto.
(WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getPDFMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getPDFAndPostScriptMIMETypes): Ditto.
(WebCore::MIMETypeRegistry::getUnsupportedTextMIMETypes): Ditto.
(WebCore::mimeTypeAssociationMap): Use ASCIICaseInsensitiveHash.
(WebCore::MIMETypeRegistry::getNormalizedMIMEType): Use auto to make code tighter.
- platform/MIMETypeRegistry.h: Changed return types of the getMIMETypes functions
to use ASCIICaseInsensitiveHash.
- platform/SchemeRegistry.cpp:
(WebCore::schemesForbiddenFromDomainRelaxation): Changed type to
use ASCIICaseInsensitiveHash.
- platform/URL.cpp:
(WebCore::mimeTypeFromDataURL): Use convertToASCIILowercase instead of lower.
Also removed some dead code that tried to handle the case where the data URL
has a comma as one of the first 5 characters: That can't happen since it's a
precondition of this function that the first five characters are "data:".
- platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::getSupportedTypes): Change type of argument to
a HashSet with ASCIICaseInsensitiveHash.
- platform/graphics/MediaPlayer.h: Ditto.
- platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::staticMIMETypeList):
Changed type of HashSet to use ASCIICaseInsensitiveHash.
- platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h: Ditto.
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::avfMIMETypes):
Changed type of HashSet to use ASCIICaseInsensitiveHash.
(WebCore::MediaPlayerPrivateAVFoundationCF::getSupportedTypes): Ditto.
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h: Ditto.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
Changed type of HashSet to use ASCIICaseInsensitiveHash.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator): Removed
an unnecessary line of code to set a local variable to 0 just before it falls
out of scope.
(WebCore::avfMIMETypes): Ditto. Also tightened up the code a bit.
(WebCore::MediaPlayerPrivateAVFoundationObjC::getSupportedTypes): Ditto.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
Changed type of HashSet to use ASCIICaseInsensitiveHash.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::mimeTypeCache): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::getSupportedTypes): Ditto.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h: Ditto.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::getSupportedTypes): Ditto.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::mimeTypeCache): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::getSupportedTypes): Ditto.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Ditto.
- platform/graphics/mac/MediaPlayerPrivateQTKit.h: Ditto.
- platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::shouldRejectMIMEType): Made this non-case-sensitive by using startsWith
and the "false" argument. Later change this to startsWithIgnoringASCIICase or
startsWithLettersIgnoringASCIICase.
(WebCore::addFileTypesToCache): Use ASCIICaseInsensitiveHash. ALso rewrote to
tighten up the code a bit and use modern Objective-C for loops.
(WebCore::mimeCommonTypesCache): Use ASCIICaseInsensitiveHash.
(WebCore::mimeModernTypesCache): Ditto.
(WebCore::concatenateHashSets): Ditto.
(WebCore::MediaPlayerPrivateQTKit::getSupportedTypes): Ditto.
(WebCore::MediaPlayerPrivateQTKit::disableUnsupportedTracks): Initialied
track type set using lambda, but left it case sensitive.
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
(WebCore::mimeTypeCache): Changed type of HashSet to use ASCIICaseInsensitiveHash.
(WebCore::MediaPlayerPrivateMediaFoundation::getSupportedTypes): Ditto.
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
- platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::mimeTypeCache): Ditto.
(WebCore::MockMediaPlayerMediaSource::getSupportedTypes): Ditto.
- platform/mock/mediasource/MockMediaPlayerMediaSource.h: Ditto.
Source/WebKit/mac:
- WebView/WebHTMLRepresentation.mm:
(newArrayWithStrings): Updated to use HashSet<String, ASCIICaseInsensitiveHash>
and also to use a modern for loop.
Source/WTF:
- wtf/text/StringView.h: Added toIntStrict. Not thrilled about the name of this
function, but generally it seems likely to be useful more often than toInt.
And it's needed for one call site in WebCore that was using String::lower.
- 8:44 PM Changeset in webkit [195950] by
-
- 3 edits4 adds in trunk
Add "WebKit built-in PDF" Plugin to set of publicly visible plugins
https://bugs.webkit.org/show_bug.cgi?id=153657
<rdar://problem/24413107>
Reviewed by Darin Adler.
Source/WebCore:
Tested by http/tests/plugins/visible_plugins.html.
A number of poorly-coded sites break when WebKit reports that it understands PDF mime types,
but does not have a list of plugins that the site can iterate through.
To avoid this compatibility problem, we should also expose the "WebKit built-in PDF" plugin
to avoid this edge case.
- plugins/PluginData.cpp:
(WebCore::shouldBePubliclyVisible): Add "WebKit built-in PDF" plugin.
LayoutTests:
- http/tests/plugins/visible_plugins-expected.txt: Added.
- http/tests/plugins/visible_plugins.html: Added.
- platform/mac-wk2/http/tests/plugins: Added.
- platform/mac-wk2/http/tests/plugins/visible_plugins-expected.txt: Added.
- 8:09 PM Changeset in webkit [195949] by
-
- 11 edits2 adds in trunk
AX: Add a boundary value to AXTextStateChangeType
https://bugs.webkit.org/show_bug.cgi?id=153085
Patch by Doug Russell <d_russell@apple.com> on 2016-01-31
Reviewed by Darin Adler.
Post an AT notification when navigation is attempted past
an editable element's boundaries.
Source/WebCore:
Test: accessibility/mac/selection-boundary-userinfo.html
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::showIntent):
- accessibility/AXTextStateChangeIntent.h:
- accessibility/mac/AXObjectCacheMac.mm:
(platformChangeTypeForWebCoreChangeType):
(WebCore::AXObjectCache::postTextStateChangePlatformNotification):
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::modifyMovingRight):
(WebCore::FrameSelection::modifyMovingForward):
(WebCore::FrameSelection::modifyMovingLeft):
(WebCore::FrameSelection::modifyMovingBackward):
(WebCore::textSelectionWithDirectionAndGranularity):
(WebCore::FrameSelection::modify):
(WebCore::FrameSelection::modifyExtendingBackward): Deleted.
(WebCore::FrameSelection::textSelectionIntent): Deleted.
- editing/FrameSelection.h:
- editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::next):
(WebCore::VisiblePosition::previous):
(WebCore::VisiblePosition::left):
(WebCore::VisiblePosition::right):
(WebCore::VisiblePosition::honorEditingBoundaryAtOrBefore):
(WebCore::VisiblePosition::honorEditingBoundaryAtOrAfter):
(WebCore::VisiblePosition::leftVisuallyDistinctCandidate): Deleted.
(WebCore::VisiblePosition::rightVisuallyDistinctCandidate): Deleted.
- editing/VisiblePosition.h:
- editing/VisibleUnits.cpp:
(WebCore::startOfLine):
(WebCore::logicalStartOfLine):
(WebCore::endOfLine):
(WebCore::logicalEndOfLine):
(WebCore::leftBoundaryOfLine):
(WebCore::rightBoundaryOfLine):
(WebCore::inSameLogicalLine): Deleted.
(WebCore::endOfEditableContent): Deleted.
(WebCore::isEndOfEditableOrNonEditableContent): Deleted.
- editing/VisibleUnits.h:
LayoutTests:
- accessibility/mac/selection-boundary-userinfo-expected.txt: Added.
- accessibility/mac/selection-boundary-userinfo.html: Added.
- 7:10 PM Changeset in webkit [195948] by
-
- 26 edits10 adds in trunk
CSP: Use the served CSP header for dedicated workers
https://bugs.webkit.org/show_bug.cgi?id=153157
<rdar://problem/24383254>
And
https://bugs.webkit.org/show_bug.cgi?id=153156
<rdar://problem/24383246>
Patch by Daniel Bates <dabates@apple.com> on 2016-01-31
Reviewed by Brent Fulgham.
Source/WebCore:
Inspired by Blink commit:
<https://src.chromium.org/viewvc/blink?revision=194143&view=revision>
Implement support for respecting Content Security Policy (CSP) HTTP headers included in the
HTTP response for a Web Worker's script as per section Workers of the CSP 2.0 spec,
<https://w3c.github.io/webappsec-csp/2/#processing-model-workers> (29 August 2015).
Currently a Web Worker always inherits the CSP of its owner document. Instead a web worker
will inherit the CSP of its owner document only if its script is incapable of defining a
content security policy (i.e. its origin is a globally unique identifier). Otherwise, the
CSP HTTP headers delivered with the script will be used to define the CSP for the worker.
Tests: fast/workers/worker-inherits-csp-blocks-eval.html
fast/workers/worker-inherits-csp-blocks-xhr.html
http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval.html
- CMakeLists.txt: Add file ContentSecurityPolicyResponseHeaders.cpp.
- WebCore.vcxproj/WebCore.vcxproj: Add files ContentSecurityPolicyResponseHeaders.{cpp, h}.
- WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- dom/Document.cpp:
(WebCore::Document::processHttpEquiv): Update code to use enum class ContentSecurityPolicyHeaderType.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::didBeginDocument): Extract logic to collect Content Security Policy HTTP headers
into class ContentSecurityPolicyResponseHeaders and make use of it here.
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::CSPDirectiveList::headerType): Modified to use enum class ContentSecurityPolicyHeaderType.
(WebCore::CSPDirectiveList::CSPDirectiveList): Ditto.
(WebCore::CSPDirectiveList::create): Ditto.
(WebCore::ContentSecurityPolicy::responseHeaders): Creates and returns a ContentSecurityPolicyResponseHeaders
object with the parsed CSP policy headers.
(WebCore::ContentSecurityPolicy::didReceiveHeaders): Processed the CSP policy headers represented by the
specified ContentSecurityPolicyResponseHeaders object.
(WebCore::ContentSecurityPolicy::deprecatedHeader): Deleted.
(WebCore::ContentSecurityPolicy::deprecatedHeaderType): Deleted.
- page/csp/ContentSecurityPolicy.h: Defines a class that represents a collection of CSP policy headers.
This class has two purposes:
- It extracts the CSP policy headers from a HTTP response (ResourceResponse object). We make use of this functionality in both FrameLoader::didBeginDocument() and Worker::didReceiveResponse().
- It serves as a memento that externalizes the internal CSP policy details of an instance of ContentSecurityPolicy. We make use of this memento functionality to support inheriting the CSP policy of the worker's owner document in a thread-safe manner. You can create and restore a memento using ContentSecurityPolicy::responseHeaders() and ContentSecurityPolicy::didReceiveHeaders(), respectively.
- page/csp/ContentSecurityPolicyResponseHeaders.cpp: Added.
(WebCore::ContentSecurityPolicyResponseHeaders::ContentSecurityPolicyResponseHeaders): Extracts the
CSP HTTP headers from a ResourceResponse object.
(WebCore::ContentSecurityPolicyResponseHeaders::isolatedCopy): Make a copy of this object that is
safe to pass to another thread.
- page/csp/ContentSecurityPolicyResponseHeaders.h: Added.
- workers/DedicatedWorkerGlobalScope.cpp:
(WebCore::DedicatedWorkerGlobalScope::create): Modified to use class ContentSecurityPolicyResponseHeaders.
- workers/DedicatedWorkerGlobalScope.h:
- workers/DedicatedWorkerThread.cpp:
(WebCore::DedicatedWorkerThread::create): Ditto.
(WebCore::DedicatedWorkerThread::DedicatedWorkerThread): Ditto.
(WebCore::DedicatedWorkerThread::createWorkerGlobalScope): Ditto.
- workers/DedicatedWorkerThread.h:
- workers/Worker.cpp:
(WebCore::Worker::didReceiveResponse): Create a ContentSecurityPolicyResponseHeaders if the origin of
the worker's script is capable of providing a CSP. Otherwise, we will inherit the CSP of the worker's owner
document in Worker::notifyFinished().
(WebCore::Worker::notifyFinished): Pass the appropriate CSP response headers to WorkerMessagingProxy::startWorkerGlobalScope().
- workers/Worker.h:
- workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::applyContentSecurityPolicyResponseHeaders): Renamed; formerly named applyContentSecurityPolicyFromString().
Modified to take a ContentSecurityPolicyResponseHeaders and apply it to the ContentSecurityPolicy object associated with the worker.
(WebCore::WorkerGlobalScope::applyContentSecurityPolicyFromString): Deleted.
- workers/WorkerGlobalScope.h:
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope): Pass the worker's ContentSecurityPolicyResponseHeaders object.
- workers/WorkerThread.cpp:
(WebCore::WorkerThreadStartupData::WorkerThreadStartupData): Added field m_contentSecurityPolicyResponseHeaders to store
the CSP response headers to be applied to the worker's ContentSecurityPolicy object.
(WebCore::WorkerThread::WorkerThread): Modified to use ContentSecurityPolicyResponseHeaders.
(WebCore::WorkerThread::workerThread): Pass the ContentSecurityPolicyResponseHeaders object from the start up data struct
to DedicatedWorkerThread::createWorkerGlobalScope().
- workers/WorkerThread.h:
LayoutTests:
Add new tests to ensure we block eval() in blob-, file-URL workers and block XHR in a file-URL worker.
- TestExpectations: Remove now passing tests http/tests/security/contentSecurityPolicy/worker-{multiple-csp-headers, without-own-csp}.html
and update the associated bug # for tests that fail.
- fast/workers/resources/worker-inherits-csp-blocks-eval.js: Added.
(catch):
- fast/workers/resources/worker-inherits-csp-blocks-xhr.js: Added.
(catch):
- fast/workers/worker-inherits-csp-blocks-eval-expected.txt: Added.
- fast/workers/worker-inherits-csp-blocks-eval.html: Added.
- fast/workers/worker-inherits-csp-blocks-xhr-expected.txt: Added.
- fast/workers/worker-inherits-csp-blocks-xhr.html: Added.
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval.html: Added.
- http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers-expected.txt: Updated expected results as
the result was incorrect.
- http/tests/security/contentSecurityPolicy/worker-without-own-csp-expected.txt: Ditto.
- 6:22 PM Changeset in webkit [195947] by
-
- 322 edits in trunk/LayoutTests
Unreviewed. EFL gardening: rebaseline tests after r195740. (more to follow)
- platform/efl/css1/basic/containment-expected.txt:
- platform/efl/css1/basic/contextual_selectors-expected.txt:
- platform/efl/css1/basic/grouping-expected.txt:
- platform/efl/css1/basic/id_as_selector-expected.txt:
- platform/efl/css1/basic/inheritance-expected.txt:
- platform/efl/css1/box_properties/border-expected.txt:
- platform/efl/css1/box_properties/border_bottom-expected.txt:
- platform/efl/css1/box_properties/border_bottom_inline-expected.txt:
- platform/efl/css1/box_properties/border_bottom_width-expected.txt:
- platform/efl/css1/box_properties/border_bottom_width_inline-expected.txt:
- platform/efl/css1/box_properties/border_color-expected.txt:
- platform/efl/css1/box_properties/border_color_inline-expected.txt:
- platform/efl/css1/box_properties/border_inline-expected.txt:
- platform/efl/css1/box_properties/border_left-expected.txt:
- platform/efl/css1/box_properties/border_left_inline-expected.txt:
- platform/efl/css1/box_properties/border_left_width-expected.txt:
- platform/efl/css1/box_properties/border_left_width_inline-expected.txt:
- platform/efl/css1/box_properties/border_right-expected.txt:
- platform/efl/css1/box_properties/border_right_inline-expected.txt:
- platform/efl/css1/box_properties/border_right_width-expected.txt:
- platform/efl/css1/box_properties/border_right_width_inline-expected.txt:
- platform/efl/css1/box_properties/border_style-expected.txt:
- platform/efl/css1/box_properties/border_style_inline-expected.txt:
- platform/efl/css1/box_properties/border_top-expected.txt:
- platform/efl/css1/box_properties/border_top_inline-expected.txt:
- platform/efl/css1/box_properties/border_top_width-expected.txt:
- platform/efl/css1/box_properties/border_top_width_inline-expected.txt:
- platform/efl/css1/box_properties/clear-expected.txt:
- platform/efl/css1/box_properties/clear_float-expected.txt:
- platform/efl/css1/box_properties/float-expected.txt:
- platform/efl/css1/box_properties/float_elements_in_series-expected.txt:
- platform/efl/css1/box_properties/float_margin-expected.txt:
- platform/efl/css1/box_properties/height-expected.txt:
- platform/efl/css1/box_properties/margin-expected.txt:
- platform/efl/css1/box_properties/margin_bottom-expected.txt:
- platform/efl/css1/box_properties/margin_bottom_inline-expected.txt:
- platform/efl/css1/box_properties/margin_inline-expected.txt:
- platform/efl/css1/box_properties/margin_left-expected.txt:
- platform/efl/css1/box_properties/margin_left_inline-expected.txt:
- platform/efl/css1/box_properties/margin_right-expected.txt:
- platform/efl/css1/box_properties/margin_right_inline-expected.txt:
- platform/efl/css1/box_properties/margin_top-expected.txt:
- platform/efl/css1/box_properties/margin_top_inline-expected.txt:
- platform/efl/css1/box_properties/padding-expected.txt:
- platform/efl/css1/box_properties/padding_bottom-expected.txt:
- platform/efl/css1/box_properties/padding_bottom_inline-expected.txt:
- platform/efl/css1/box_properties/padding_inline-expected.txt:
- platform/efl/css1/box_properties/padding_left-expected.txt:
- platform/efl/css1/box_properties/padding_left_inline-expected.txt:
- platform/efl/css1/box_properties/padding_right-expected.txt:
- platform/efl/css1/box_properties/padding_right_inline-expected.txt:
- platform/efl/css1/box_properties/padding_top-expected.txt:
- platform/efl/css1/box_properties/padding_top_inline-expected.txt:
- platform/efl/css1/box_properties/width-expected.txt:
- platform/efl/css1/cascade/cascade_order-expected.txt:
- platform/efl/css1/cascade/important-expected.txt:
- platform/efl/css1/classification/display-expected.txt:
- platform/efl/css1/classification/list_style-expected.txt:
- platform/efl/css1/classification/list_style_image-expected.txt:
- platform/efl/css1/classification/list_style_position-expected.txt:
- platform/efl/css1/classification/list_style_type-expected.txt:
- platform/efl/css1/classification/white_space-expected.txt:
- platform/efl/css1/color_and_background/background-expected.txt:
- platform/efl/css1/color_and_background/background_attachment-expected.txt:
- platform/efl/css1/color_and_background/background_color-expected.txt:
- platform/efl/css1/color_and_background/background_image-expected.txt:
- platform/efl/css1/color_and_background/background_position-expected.txt:
- platform/efl/css1/color_and_background/background_repeat-expected.txt:
- platform/efl/css1/color_and_background/color-expected.txt:
- platform/efl/css1/conformance/forward_compatible_parsing-expected.txt:
- platform/efl/css1/font_properties/font-expected.txt:
- platform/efl/css1/font_properties/font_family-expected.txt:
- platform/efl/css1/font_properties/font_size-expected.txt:
- platform/efl/css1/font_properties/font_style-expected.txt:
- platform/efl/css1/font_properties/font_variant-expected.txt:
- platform/efl/css1/font_properties/font_weight-expected.txt:
- platform/efl/css1/formatting_model/canvas-expected.txt:
- platform/efl/css1/formatting_model/height_of_lines-expected.txt:
- platform/efl/css1/formatting_model/inline_elements-expected.txt:
- platform/efl/css1/formatting_model/replaced_elements-expected.txt:
- platform/efl/css1/formatting_model/vertical_formatting-expected.txt:
- platform/efl/css1/pseudo/anchor-expected.txt:
- platform/efl/css1/pseudo/firstletter-expected.txt:
- platform/efl/css1/pseudo/firstline-expected.txt:
- platform/efl/css1/pseudo/multiple_pseudo_elements-expected.txt:
- platform/efl/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
- platform/efl/css1/text_properties/letter_spacing-expected.txt:
- platform/efl/css1/text_properties/line_height-expected.txt:
- platform/efl/css1/text_properties/text_align-expected.txt:
- platform/efl/css1/text_properties/text_decoration-expected.txt:
- platform/efl/css1/text_properties/text_indent-expected.txt:
- platform/efl/css1/text_properties/text_transform-expected.txt:
- platform/efl/css1/text_properties/vertical_align-expected.txt:
- platform/efl/css1/text_properties/word_spacing-expected.txt:
- platform/efl/css1/units/color_units-expected.txt:
- platform/efl/css1/units/length_units-expected.txt:
- platform/efl/css1/units/percentage_units-expected.txt:
- platform/efl/css1/units/urls-expected.txt:
- platform/efl/css2.1/20110323/border-collapse-offset-002-expected.txt:
- platform/efl/css2.1/20110323/border-conflict-style-079-expected.txt:
- platform/efl/css2.1/20110323/border-conflict-style-088-expected.txt:
- platform/efl/css2.1/20110323/dynamic-top-change-002-expected.txt:
- platform/efl/css2.1/20110323/dynamic-top-change-003-expected.txt:
- platform/efl/css2.1/20110323/inline-table-001-expected.txt:
- platform/efl/css2.1/20110323/inline-table-002a-expected.txt:
- platform/efl/css2.1/20110323/inline-table-003-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-001-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-002-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-003-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-004-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-005-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-006-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-007-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-013-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-014-expected.txt:
- platform/efl/css2.1/20110323/margin-applies-to-015-expected.txt:
- platform/efl/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt:
- platform/efl/css2.1/20110323/table-caption-001-expected.txt:
- platform/efl/css2.1/20110323/table-caption-optional-001-expected.txt:
- platform/efl/css2.1/20110323/table-caption-optional-002-expected.txt:
- platform/efl/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
- platform/efl/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt:
- platform/efl/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt:
- platform/efl/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt:
- platform/efl/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt:
- platform/efl/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
- platform/efl/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-59-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-70-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
- platform/efl/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-18-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-29-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-29b-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-33-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-73-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-73b-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-77-expected.txt:
- platform/efl/css3/selectors3/html/css3-modsel-77b-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-18-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-29-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-29b-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-33-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-73-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-73b-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-77-expected.txt:
- platform/efl/css3/selectors3/xhtml/css3-modsel-77b-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-18-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-29-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-29b-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-33-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-73-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-73b-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-77-expected.txt:
- platform/efl/css3/selectors3/xml/css3-modsel-77b-expected.txt:
- platform/efl/editing/deleting/4922367-expected.txt:
- platform/efl/editing/deleting/5126166-expected.txt:
- platform/efl/editing/deleting/5206311-1-expected.txt:
- platform/efl/editing/deleting/5433862-2-expected.txt:
- platform/efl/editing/inserting/paragraph-separator-in-table-1-expected.txt:
- platform/efl/editing/selection/3690703-2-expected.txt:
- platform/efl/editing/selection/3690703-expected.txt:
- platform/efl/editing/selection/3690719-expected.txt:
- platform/efl/editing/selection/5057506-2-expected.txt:
- platform/efl/editing/selection/5057506-expected.txt:
- platform/efl/editing/selection/5131716-1-expected.txt:
- platform/efl/editing/selection/5131716-2-expected.txt:
- platform/efl/editing/selection/5131716-3-expected.txt:
- platform/efl/editing/selection/5131716-4-expected.txt:
- platform/efl/editing/selection/move-by-line-001-expected.txt:
- platform/efl/editing/selection/select-all-004-expected.txt:
- platform/efl/editing/unsupported-content/table-type-after-expected.txt:
- platform/efl/editing/unsupported-content/table-type-before-expected.txt:
- platform/efl/fast/block/basic/016-expected.txt:
- platform/efl/fast/block/basic/quirk-percent-height-table-cell-expected.txt:
- platform/efl/fast/block/float/015-expected.txt:
- platform/efl/fast/block/margin-collapse/006-expected.txt:
- platform/efl/fast/block/margin-collapse/010-expected.txt:
- platform/efl/fast/block/margin-collapse/011-expected.txt:
- platform/efl/fast/block/margin-collapse/012-expected.txt:
- platform/efl/fast/block/margin-collapse/015-expected.txt:
- platform/efl/fast/block/margin-collapse/016-expected.txt:
- platform/efl/fast/block/margin-collapse/017-expected.txt:
- platform/efl/fast/block/margin-collapse/018-expected.txt:
- platform/efl/fast/block/margin-collapse/019-expected.txt:
- platform/efl/fast/block/margin-collapse/020-expected.txt:
- platform/efl/fast/block/margin-collapse/021-expected.txt:
- platform/efl/fast/block/margin-collapse/022-expected.txt:
- platform/efl/fast/block/margin-collapse/025-expected.txt:
- platform/efl/fast/block/margin-collapse/032-expected.txt:
- platform/efl/fast/block/margin-collapse/033-expected.txt:
- platform/efl/fast/block/margin-collapse/034-expected.txt:
- platform/efl/fast/block/margin-collapse/041-expected.txt:
- platform/efl/fast/block/margin-collapse/042-expected.txt:
- platform/efl/fast/block/margin-collapse/055-expected.txt:
- platform/efl/fast/block/margin-collapse/056-expected.txt:
- platform/efl/fast/block/margin-collapse/057-expected.txt:
- platform/efl/fast/block/margin-collapse/058-expected.txt:
- platform/efl/fast/block/margin-collapse/059-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
- platform/efl/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
- platform/efl/fast/block/positioning/negative-right-pos-expected.txt:
- platform/efl/fast/block/positioning/table-cell-static-position-expected.txt:
- platform/efl/fast/borders/border-antialiasing-expected.txt:
- platform/efl/fast/borders/border-radius-different-width-001-expected.txt:
- platform/efl/fast/borders/table-borders-expected.txt:
- platform/efl/fast/css-generated-content/first-letter-in-nested-before-expected.txt:
- platform/efl/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt:
- platform/efl/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
- platform/efl/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
- platform/efl/fast/css-generated-content/table-parts-before-and-after-expected.txt:
- platform/efl/fast/css-generated-content/table-row-group-with-before-expected.txt:
- platform/efl/fast/css-generated-content/table-row-with-before-expected.txt:
- platform/efl/fast/css-generated-content/table-with-before-expected.txt:
- platform/efl/fast/css/003-expected.txt:
- platform/efl/fast/css/absolute-poition-in-rtl-parent-expected.txt:
- platform/efl/fast/css/acid2-expected.txt:
- platform/efl/fast/css/acid2-pixel-expected.txt:
- platform/efl/fast/css/bidi-override-in-anonymous-block-expected.txt:
- platform/efl/fast/css/box-shadow-and-border-radius-expected.txt:
- platform/efl/fast/css/caption-width-absolute-position-expected.txt:
- platform/efl/fast/css/caption-width-absolute-position-offset-top-expected.txt:
- platform/efl/fast/css/caption-width-fixed-position-expected.txt:
- platform/efl/fast/css/caption-width-fixed-position-offset-top-expected.txt:
- platform/efl/fast/css/caption-width-relative-position-expected.txt:
- platform/efl/fast/css/caption-width-relative-position-offset-top-expected.txt:
- platform/efl/fast/css/css3-nth-child-expected.txt:
- platform/efl/fast/css/focus-ring-detached-expected.txt:
- platform/efl/fast/css/focus-ring-multiline-expected.txt:
- platform/efl/fast/css/h1-in-section-elements-expected.txt:
- platform/efl/fast/css/image-rendering-expected.txt:
- platform/efl/fast/css/min-width-with-spanned-cell-expected.txt:
- platform/efl/fast/css/percentage-non-integer-expected.txt:
- platform/efl/fast/css/table-text-align-quirk-expected.txt:
- platform/efl/fast/css/table-text-align-strict-expected.txt:
- platform/efl/fast/dom/34176-expected.txt:
- platform/efl/fast/dom/HTMLTableElement/colSpan-expected.txt:
- platform/efl/fast/dom/HTMLTableElement/createCaption-expected.txt:
- platform/efl/fast/dom/row-inner-text-expected.txt:
- platform/efl/fast/dynamic/001-expected.txt:
- platform/efl/fast/dynamic/containing-block-change-expected.txt:
- platform/efl/fast/dynamic/float-withdrawal-expected.txt:
- platform/efl/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
- platform/efl/fast/dynamic/subtree-table-cell-height-expected.txt:
- platform/efl/fast/encoding/utf-16-big-endian-expected.txt:
- platform/efl/fast/encoding/utf-16-little-endian-expected.txt:
- platform/efl/fast/forms/001-expected.txt:
- platform/efl/fast/forms/005-expected.txt:
- platform/efl/fast/forms/basic-buttons-expected.txt:
- platform/efl/fast/forms/form-element-geometry-expected.txt:
- platform/efl/fast/forms/form-hides-table-expected.txt:
- platform/efl/fast/forms/form-in-malformed-markup-expected.txt:
- platform/efl/fast/forms/formmove3-expected.txt:
- platform/efl/fast/forms/input-table-expected.txt:
- platform/efl/fast/forms/listbox-bidi-align-expected.txt:
- platform/efl/fast/forms/preserveFormDuringResidualStyle-expected.txt:
- platform/efl/fast/forms/select-dirty-parent-pref-widths-expected.txt:
- platform/efl/fast/html/details-writing-mode-expected.txt:
- platform/efl/fast/inline-block/001-expected.txt:
- platform/efl/fast/inline-block/overflow-clip-expected.txt:
- platform/efl/fast/invalid/012-expected.txt:
- platform/efl/fast/invalid/018-expected.txt:
- platform/efl/fast/lists/004-expected.txt:
- platform/efl/fast/lists/list-marker-before-content-table-expected.txt:
- platform/efl/fast/multicol/span/before-child-anonymous-column-block-expected.txt:
- platform/efl/fast/overflow/002-expected.txt:
- platform/efl/fast/overflow/overflow-rtl-expected.txt:
- platform/efl/fast/overflow/overflow-rtl-vertical-expected.txt:
- platform/efl/fast/overflow/table-overflow-float-expected.txt:
- platform/efl/fast/reflections/table-cell-expected.txt:
- platform/efl/fast/repaint/block-selection-gap-in-table-cell-expected.txt:
- platform/efl/fast/repaint/float-overflow-expected.txt:
- platform/efl/fast/repaint/float-overflow-right-expected.txt:
- platform/efl/fast/repaint/subtree-root-clip-3-expected.txt:
- platform/efl/fast/repaint/table-cell-collapsed-border-expected.txt:
- platform/efl/fast/repaint/table-cell-collapsed-border-scroll-expected.txt:
- platform/efl/fast/repaint/table-cell-move-expected.txt:
- platform/efl/fast/repaint/table-cell-overflow-expected.txt:
- platform/efl/fast/repaint/table-cell-vertical-overflow-expected.txt:
- platform/efl/fast/repaint/table-col-background-expected.txt:
- platform/efl/fast/repaint/table-collapsed-border-expected.txt:
- platform/efl/fast/repaint/table-extra-bottom-grow-expected.txt:
- platform/efl/fast/repaint/table-outer-border-expected.txt:
- platform/efl/fast/repaint/table-row-expected.txt:
- platform/efl/fast/repaint/table-section-overflow-expected.txt:
- platform/efl/fast/repaint/table-section-repaint-expected.txt:
- platform/efl/fast/repaint/table-two-pass-layout-overpaint-expected.txt:
- platform/efl/fast/repaint/table-writing-modes-h-expected.txt:
- platform/efl/fast/repaint/table-writing-modes-v-expected.txt:
- 5:50 PM Changeset in webkit [195946] by
-
- 9 edits in trunk/Source
Get rid of most calls to String::upper; mostly replace them with convertToASCIIUppercase
https://bugs.webkit.org/show_bug.cgi?id=153715
Reviewed by Gyuyoung Kim.
Source/WebCore:
- editing/cocoa/HTMLConverter.mm:
(HTMLConverter::computedAttributesForElement): Use convertToASCIILowercase to fold
ASCII case when searching for fonts by name.
- platform/network/cf/ResourceResponseCFNet.cpp:
(WebCore::ResourceResponse::platformLazyInit): Use convertToASCIIUppercase to make
the HTTP version string canonical. Not sure why it's needed at all, but the letters
we might be uppercasing are "HTTP", so no need to handle non-ASCII.
- platform/network/cocoa/ResourceResponseCocoa.mm:
(WebCore::ResourceResponse::platformLazyInit): Ditto.
- rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::operator<<): Use convertToASCIIUppercase when writing the spread
method type into a text stream. The method types are all ASCII.
Source/WebKit2:
- UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
Use convertToASCIIUppercase on language names.
Source/WTF:
- wtf/text/AtomicString.h:
(WTF::AtomicString::upper): Deleted.
- 5:20 PM Changeset in webkit [195945] by
-
- 2 edits in trunk
[EFL] All API tests are broken on 15.10
https://bugs.webkit.org/show_bug.cgi?id=153528
Reviewed by Gyuyoung Kim.
- CMakeLists.txt: Having include(WebKitCommon) statement follow
CMAKE_FOO_OUTPUT_DIRECTORY otherwise all the API tests gets blocked.
- 4:27 PM Changeset in webkit [195944] by
-
- 5 edits in branches/safari-601-branch/Source
Versioning.
- 4:27 PM Changeset in webkit [195943] by
-
- 5 edits in branches/safari-601.1.46-branch/Source
Versioning.
- 4:26 PM Changeset in webkit [195942] by
-
- 6 edits in trunk/Source
[Cocoa] Remove unused definition of HAVE_HEADER_DETECTION_H
https://bugs.webkit.org/show_bug.cgi?id=153729
Reviewed by Sam Weinig.
After r141700, HAVE_HEADER_DETECTION_H is no longer used.
- Configurations/Base.xcconfig:
- 4:10 PM Changeset in webkit [195941] by
-
- 1 copy in tags/Safari-601.1.46.96
New tag.
- 4:10 PM Changeset in webkit [195940] by
-
- 1 copy in tags/Safari-601.5.14
New tag.
- 4:07 PM Changeset in webkit [195939] by
-
- 2 edits in trunk/Source/JavaScriptCore
B3->Air lowering should use MoveFloat more
https://bugs.webkit.org/show_bug.cgi?id=153714
Reviewed by Sam Weinig.
This is a very minor and benign bug. It just means that we will use the more canonical
MoveFloat instruction when moving floats, rather than using MoveDouble.
- b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::relaxedMoveForType):
- 3:05 PM Changeset in webkit [195938] by
-
- 5 edits7 adds in trunk/Source/JavaScriptCore
Should not predict OtherObj for ToThis with primitive types under strict mode
https://bugs.webkit.org/show_bug.cgi?id=153544
Reviewed by Filip Pizlo.
Currently, ToThis predicates OtherObj for primitive values.
But it's not true in strict mode.
In strict mode, ToThis does nothing on primitive values.
In this patch, we
- fix prediction. Handles primitive types in strict mode. And we also handles StringObject.
- convert it to Identity if the argument should be predicted as primitive types.
This optimization is important to implement Primitive.prototype.methods[1].
Otherwise, we always got BadType OSR exits.
[1]: https://bugs.webkit.org/show_bug.cgi?id=143889
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupToThis):
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- tests/stress/to-this-boolean.js: Added.
(Boolean.prototype.negate):
(Boolean.prototype.negate2):
- tests/stress/to-this-double.js: Added.
(Number.prototype.negate):
- tests/stress/to-this-int32.js: Added.
(Number.prototype.negate):
- tests/stress/to-this-int52.js: Added.
(Number.prototype.negate):
- tests/stress/to-this-number.js: Added.
(Number.prototype.negate):
- tests/stress/to-this-string.js: Added.
(String.prototype.prefix):
(String.prototype.first):
(String.prototype.second):
- tests/stress/to-this-symbol.js: Added.
(Symbol.prototype.identity):
(Symbol.prototype.identity2):
- 3:00 PM Changeset in webkit [195937] by
-
- 20 edits in trunk/Source
[Cocoa] Remove has_include guards around use of WebKitAdditions
https://bugs.webkit.org/show_bug.cgi?id=153728
Reviewed by Andy Estes.
Guard WebKitAdditions includes with #if USE(APPLE_INTERNAL_SDK) rather than with has_include.
Source/WebCore:
- dom/EventNames.h:
- loader/EmptyClients.cpp:
(WebCore::fillWithEmptyClients):
- page/MainFrame.cpp:
(WebCore::MainFrame::MainFrame):
- page/MainFrame.h:
- page/PageConfiguration.h:
- platform/cocoa/WebKitAdditions.mm:
- platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
- platform/ios/LegacyTileGridTile.mm:
Source/WebKit/mac:
- WebKitAdditions.mm:
- WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
Source/WebKit2:
- Shared/Cocoa/WebKitAdditions.mm:
- Shared/WebCoreArgumentCoders.h:
- Shared/mac/RemoteLayerBackingStore.mm:
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::reattachToWebProcess):
(WebKit::WebPageProxy::resetState):
- UIProcess/WebPageProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_shouldDispatchFakeMouseMoveEvents):
- 2:46 PM Changeset in webkit [195936] by
-
- 5 edits in tags/Safari-602.1.18.1/Source
Versioning.
- 2:42 PM Changeset in webkit [195935] by
-
- 1 copy in tags/Safari-602.1.18.1
New tag.
- 12:59 PM Changeset in webkit [195934] by
-
- 2 edits in trunk/Source/WebKit2
Include the right WebKitAdditions files
<rdar://problem/24429804>
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetState):
- 12:49 PM Changeset in webkit [195933] by
-
- 2 edits in branches/safari-601.1.46-branch/Source/WebCore
Merged r195932. rdar://problem/24430138
- 12:39 PM Changeset in webkit [195932] by
-
- 2 edits in branches/safari-601-branch/Source/WebCore
Merge patch for rdar://problem/24426332 and rdar://problem/24209109.
- 12:27 PM Changeset in webkit [195931] by
-
- 4 edits in branches/safari-601-branch/Source/WebCore
Roll out r195817.
- 11:51 AM Changeset in webkit [195930] by
-
- 5 edits in branches/safari-601.1.46-branch/Source
Versioning.
- 11:51 AM Changeset in webkit [195929] by
-
- 5 edits in branches/safari-601-branch/Source
Versioning.
- 11:22 AM Changeset in webkit [195928] by
-
- 37 edits in trunk
Replace CaseFoldingHash with ASCIICaseInsensitiveHash
https://bugs.webkit.org/show_bug.cgi?id=153639
Reviewed by Filip Pizlo.
Source/WebCore:
- Modules/webdatabase/DatabaseAuthorizer.h: Use ASCIICaseInsensitiveHash
for whitelisted functions. Function names are all ASCII.
- accessibility/AccessibilityObject.cpp: Use ASCIICaseInsensitiveHash
for ARIA roles. ARIA roles are all ASCII.
- crypto/CryptoAlgorithmRegistry.h: Use ASCIICaseInsensitiveHash for
crypto algorithm names. Algorithm names are all ASCII.
- css/CSSFontSelector.cpp:
(WebCore::registerLocalFontFacesForFamily): Use ASCIICaseInsensitiveHash
for font faces. Face names should use ASCII case insensitive matching;
there is no need for non-ASCII case folding.
- css/CSSFontSelector.h: Ditto.
- dom/DOMImplementation.cpp: Use ASCIICaseInsensitiveHash for the
FeatureSet. The features are all ASCII.
- dom/Document.h: Use ASCIICaseInsensitiveHash for the access key
map. Access keys are all ASCII.
- dom/ScriptElement.cpp:
(WebCore::isLegacySupportedJavaScriptLanguage): Use ASCIICaseInsensitiveHash
for the language set. These strings are all ASCII.
- editing/EditorCommand.cpp: Use ASCIICaseInsensitiveHash for editor
command names. These names are all ASCII.
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::parametersForPlugin): Use ASCIICaseInsensitiveHash
for parameter names. These names are all ASCII.
- html/InputType.cpp: Use ASCIICaseInsensitiveHash for the input types.
The input types are all ASCII.
- loader/CrossOriginAccessControl.h: Use ASCIICaseInsensitiveHash for
HTTP header field names. These names are all ASCII.
- loader/CrossOriginPreflightResultCache.h: Ditto.
- loader/archive/ArchiveFactory.cpp: Use ASCIICaseInsensitiveHash for
MIME types. MIME types are all ASCII.
- platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes): Ditto.
- platform/SchemeRegistry.h: Use ASCIICaseInsensitiveHas for URL schemes.
URL schemes are all ASCII.
- platform/URL.cpp: Ditto.
- platform/graphics/FontCache.cpp:
(WebCore::FontPlatformDataCacheKey::operator==): Use ASCIICaseInsensitiveHash.
(WebCore::FontPlatformDataCacheKeyHash::hash): Use ASCIICaseInsensitiveHash.
- platform/graphics/FontCascade.cpp:
(WebCore::keysMatch): Rename from operator== since this operation is not
equality. Changed to equalIgnoringASCIICase and did a little streamlining.
(WebCore::makeFontCascadeCacheKey): Use reserveInitialCapacity for slightly
better memory use.
(WebCore::computeFontCascadeCacheHash): Use IntegerHasher to make computing
a hash more efficient by eliminating the overhead of building a vector and
even possible heap allocation and deallocation.
(WebCore::retrieveOrAddCachedFonts): Use keysMatch instead of ==.
- platform/graphics/cocoa/FontCacheCoreText.cpp: Use ASCIICaseInsensitiveHash
for font family names. These names should use ASCII case insensitive matching;
there is no need for non-ASCII case folding.
- platform/network/HTTPHeaderMap.h: Use ASCIICaseInsensitiveHash for
HTTP header field names. These names are all ASCII.
- rendering/style/RenderStyle.cpp:
(WebCore::computeFontHash): Use IntegerHasher to avoid allocating memory just
to compute a hash. Use ASCIICaseInsensitiveHash.
Source/WebKit/win:
- WebCoreStatistics.cpp:
(WebCoreStatistics::memoryStatistics): Use ASCIICaseInsensitiveHash for field names.
These names are all ASCII.
- WebURLResponse.cpp:
(WebURLResponse::allHeaderFields): Use ASCIICaseInsensitiveHash for HTTP header
field names. These names are all ASCII.
Source/WebKit2:
- UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Use ASCIICaseInsensitiveHash
for MIME types. MIME types are all ASCII.
- UIProcess/Plugins/PlugInAutoStartProvider.h: Use ASCIICaseInsensitiveHash for
origins. Origin strings should use ASCII case insensitive matching and should not
fold non-ASCII case.
- WebProcess/WebPage/WebPage.h: Use ASCIICaseInsensitiveHash for MIME types.
MIME types are all ASCII.
- WebProcess/WebProcess.cpp:
(WebKit::addCaseFoldedCharacters): Use ASCIICaseInsensitiveHash to hash plug-in
origin strings. (See rationale above.)
(WebKit::hashForPlugInOrigin): Updated comment.
Source/WTF:
- wtf/text/StringHash.h: Renamed CaseFoldingHash to ASCIICaseInsensitiveHash.
(WTF::ASCIICaseInsensitiveHash::foldCase): Use toASCIILower.
(WTF::ASCIICaseInsensitiveHash::equal): Use equalIgnoringASCIICase.
Also added some assertions.
- wtf/text/StringImpl.cpp: Made the latin1CaseFoldTable private to this file,
since it's no longer needed by CaseFoldingHash. Moved it up before its first use.
(WTF::equalCompatibilityCaseless): Fixed typo in the name of this function.
(WTF::equalCompatibiltyCaselessNonNull): Deleted.
- wtf/text/StringImpl.h: Removed declarations of latin1CaseFoldTable and
equalCompatibiltyCaselessNonNull
Tools:
- Scripts/do-webcore-rename: Use script to do this rename.
- 4:08 AM Changeset in webkit [195927] by
-
- 27 edits in trunk/Source
Reduce PassRefPtr uses in dom - 5
https://bugs.webkit.org/show_bug.cgi?id=153470
Reviewed by Darin Adler.
As a step to remove PassRefPtr, this patch reduces uses of PassRefPtr in WebCore/dom.
- dom/Document.cpp:
(WebCore::Document::adoptNode):
(WebCore::Document::implicitClose):
(WebCore::Document::enqueuePopstateEvent):
(WebCore::Document::setInputCursor):
- dom/Document.h:
- dom/DocumentMarker.cpp:
(WebCore::DocumentMarkerTextMatch::instanceFor):
- dom/Event.cpp:
(WebCore::Event::setUnderlyingEvent):
- dom/Event.h:
- dom/EventDispatcher.h:
- dom/GenericEventQueue.cpp:
(WebCore::GenericEventQueue::enqueueEvent):
- dom/GenericEventQueue.h:
- dom/MouseEvent.cpp:
(WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
- dom/Node.cpp:
(WebCore::Node::dispatchDOMActivateEvent):
- dom/NodeIterator.h:
- dom/PendingScript.h:
- dom/PopStateEvent.cpp:
(WebCore::PopStateEvent::create):
- dom/PopStateEvent.h:
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setCSSStyleSheet): Deleted. Nobody calls this function.
- dom/ProcessingInstruction.h:
- dom/RangeBoundaryPoint.h:
(WebCore::RangeBoundaryPoint::RangeBoundaryPoint):
- dom/TextEvent.cpp:
(WebCore::TextEvent::createForFragmentPaste):
(WebCore::TextEvent::TextEvent):
- dom/TextEvent.h:
- editing/Editor.cpp:
(WebCore::Editor::pasteAsFragment):
- editing/Editor.h:
- editing/mac/EditorMac.mm:
(WebCore::Editor::replaceNodeFromPasteboard):
- 3:41 AM Changeset in webkit [195926] by
-
- 3 edits in trunk/Source/JavaScriptCore
[mips] don't save to a callee saved register too early
https://bugs.webkit.org/show_bug.cgi?id=153463
If we save $gp to $s4 in pichdr, then in some cases, we were
overwriting $s4 before LLInt's pushCalleeSaves() is called (as pichdr
is at the very beginning of a function). Now we save $gp to $s4 at the
end of pushCalleeSaves().
Patch by Guillaume Emont <guijemont@igalia.com> on 2016-01-31
Reviewed by Michael Saboff.
- offlineasm/mips.rb:
- llint/LowLevelInterpreter.asm:
Move the saving of $gp to $s4 from pichdr to pushCalleeSaves(). Take
the opportunity to only save $s4 as we never use the other callee
saved registers.
- 3:41 AM Changeset in webkit [195925] by
-
- 14 edits in trunk/Source
Use std::make_unique<> when creating an unique_ptr object.
https://bugs.webkit.org/show_bug.cgi?id=153705
Reviewed by Darin Adler.
Source/WebCore:
Some factory functions have used std::unique_ptr<> for creating an unique_ptr object.
It is wrong. We have to use std::make_unique<>.
- Modules/mediasession/WebMediaSessionManager.cpp:
(WebCore::WebMediaSessionManager::mockPicker):
- inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::internalStart):
- platform/cf/RunLoopObserver.cpp:
(WebCore::RunLoopObserver::create): Deleted.
- platform/cf/RunLoopObserver.h:
(WebCore::RunLoopObserver::RunLoopObserver):
- platform/graphics/avfoundation/WebMediaSessionManagerMac.cpp:
(WebCore::WebMediaSessionManagerMac::platformPicker):
- platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
- platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
(WebCore::MediaPlaybackTargetPickerMac::create): Deleted.
- platform/graphics/ca/cocoa/LayerFlushSchedulerMac.cpp:
(WebCore::LayerFlushScheduler::LayerFlushScheduler):
- platform/mock/MediaPlaybackTargetPickerMock.cpp:
(WebCore::MediaPlaybackTargetPickerMock::create): Deleted.
- platform/mock/MediaPlaybackTargetPickerMock.h:
- rendering/FloatingObjects.cpp:
(WebCore::FloatingObject::copyToNewContainer):
Source/WebKit2:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy): Use std::make_unique<> instead of RunLoopObserver::create().
- 1:20 AM Changeset in webkit [195924] by
-
- 3 edits in trunk/LayoutTests/imported/w3c
imported/w3c/web-platform-tests/streams-api/readable-streams/garbage-collection.html asserts frequently
https://bugs.webkit.org/show_bug.cgi?id=152436
Reviewed by Darin Adler.
GCController is not available in Worker environments, explaining probably why garbage-collection-2.html is not crashing at all.
Inlining half of the tests in garbage-collection-2.html (runned in window) to compare with garbage-collection-1.html.
- web-platform-tests/streams-api/readable-streams/garbage-collection-2-expected.txt:
- web-platform-tests/streams-api/readable-streams/garbage-collection-2.html:
Jan 30, 2016:
- 9:57 PM Changeset in webkit [195923] by
-
- 2 edits in trunk/Source/WebInspectorUI
Add the break-* properties to Web Inspector's completion set
https://bugs.webkit.org/show_bug.cgi?id=153706
Reviewed by Darin Adler.
- UserInterface/Models/CSSKeywordCompletions.js:
- 8:11 PM Changeset in webkit [195922] by
-
- 25 edits in trunk/Source/WebKit2
[Cocoa] Get rid of many WK_ macros for nullability
https://bugs.webkit.org/show_bug.cgi?id=153718
Sam Weinig reviewed an earlier version of this change, and Simon Fraser rubber-stamped this version.
- Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END}, WK_NULLABLE, WK_NULL_UNSPECIFIED, and WK_NULLABLE_PROPERTY. Removed the __has_feature(assume_nonnull) case.
- mac/postprocess-framework-headers.sh: Removed rules for rewriting the above macros. Also chanegd to rewrite WK_NULLABLE_SPECIFIER to the modern _Nullable instead of nullable.
Replaced instances of the above macros with their expansions.
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKError.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- UIProcess/API/Cocoa/WKScriptMessage.h:
- UIProcess/API/Cocoa/WKScriptMessageHandler.h:
- UIProcess/API/Cocoa/WKSecurityOrigin.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKUserContentController.h:
- UIProcess/API/Cocoa/WKUserScript.h:
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.h:
- UIProcess/API/Cocoa/WKWindowFeatures.h:
- UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
- UIProcess/API/Cocoa/_WKElementInfo.h:
- UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
- UIProcess/API/Cocoa/_WKUserStyleSheet.h:
- 7:59 PM Changeset in webkit [195921] by
-
- 2 edits in trunk/Websites/webkit.org
B3 documentation style shouldn't have hacks for h1
https://bugs.webkit.org/show_bug.cgi?id=153725
Reviewed by Alexey Proskuryakov.
- docs/b3/style.css:
- 5:22 PM Changeset in webkit [195920] by
-
- 25 edits in trunk/Source/WebKit2
Reverted r195914, because at least one of the build.webkit.org builders still uses a compiler that doesn’t understand _Nullable.
- Shared/API/Cocoa/WKFoundation.h:
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKError.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- UIProcess/API/Cocoa/WKScriptMessage.h:
- UIProcess/API/Cocoa/WKScriptMessageHandler.h:
- UIProcess/API/Cocoa/WKSecurityOrigin.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKUserContentController.h:
- UIProcess/API/Cocoa/WKUserScript.h:
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.h:
- UIProcess/API/Cocoa/WKWindowFeatures.h:
- UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
- UIProcess/API/Cocoa/_WKElementInfo.h:
- UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
- UIProcess/API/Cocoa/_WKUserStyleSheet.h:
- mac/postprocess-framework-headers.sh:
- 5:19 PM Changeset in webkit [195919] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix GTK debug build after r195899
- dom/EventContext.h:
(isType):
- 5:15 PM Changeset in webkit [195918] by
-
- 2 edits in trunk/Source/WebCore
Add missing include to fix building debug configuration
https://bugs.webkit.org/show_bug.cgi?id=153719
Patch by Jeremy Huddleston Sequoia <jeremyhu@apple.com> on 2016-01-30
Reviewed by Darin Adler.
No new tests.
- rendering/RenderObject.cpp:
- 4:53 PM Changeset in webkit [195917] by
-
- 37 edits in trunk
Unreviewed, rolling out r195911.
https://bugs.webkit.org/show_bug.cgi?id=153723
Caused frequent assertion failures on bots (Requested by ap on
#webkit).
Reverted changeset:
"Replace CaseFoldingHash with ASCIICaseInsensitiveHash"
https://bugs.webkit.org/show_bug.cgi?id=153639
http://trac.webkit.org/changeset/195911
- 4:41 PM Changeset in webkit [195916] by
-
- 64 edits in trunk
Unreviewed, rolling out r195799 and r195828.
https://bugs.webkit.org/show_bug.cgi?id=153722
Caused assertion failures, severely affecting EWS (Requested
by ap on #webkit).
Reverted changesets:
"Web Inspector: InspectorTimelineAgent doesn't need to
recompile functions because it now uses the sampling profiler"
https://bugs.webkit.org/show_bug.cgi?id=153500
http://trac.webkit.org/changeset/195799
"Attempt to fix the Windows build after r195799"
http://trac.webkit.org/changeset/195828
- 4:24 PM Changeset in webkit [195915] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Network panel is empty until the window is resized
https://bugs.webkit.org/show_bug.cgi?id=153701
<rdar://problem/24423739>
Reviewed by Timothy Hatcher.
NetworkGridContentView shouldn't prevent a layout from being scheduled
when the network sidebar is collapsed.
- UserInterface/Views/NetworkGridContentView.js:
(WebInspector.NetworkGridContentView.prototype.needsLayout): Deleted.
Removed View.prototype.needsLayout override that was preventing
layouts from being scheduled as timeline records are added.
- 3:50 PM Changeset in webkit [195914] by
-
- 25 edits in trunk/Source/WebKit2
[Cocoa] Get rid of WK_ macros for nullability
https://bugs.webkit.org/show_bug.cgi?id=153718
Reviewed by Sam Weinig.
- Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END}, WK_NULLABLE, WK_NULL_UNSPECIFIED, WK_NULLABLE_SPECIFIER, and WK_NULLABLE_PROPERTY.
- mac/postprocess-framework-headers.sh: Removed rules for rewriting those macros.
Replaced instances of those macros with their expansions, but using the modern _Nullable
instead of nullable:
- UIProcess/API/Cocoa/WKBackForwardList.h:
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKError.h:
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- UIProcess/API/Cocoa/WKScriptMessage.h:
- UIProcess/API/Cocoa/WKScriptMessageHandler.h:
- UIProcess/API/Cocoa/WKSecurityOrigin.h:
- UIProcess/API/Cocoa/WKUIDelegate.h:
- UIProcess/API/Cocoa/WKUserContentController.h:
- UIProcess/API/Cocoa/WKUserScript.h:
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.h:
- UIProcess/API/Cocoa/WKWindowFeatures.h:
- UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
- UIProcess/API/Cocoa/_WKElementInfo.h:
- UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
- UIProcess/API/Cocoa/_WKUserStyleSheet.h:
- 2:25 PM Changeset in webkit [195913] by
-
- 4 edits in trunk
Modern IDB: Some tests crash with specific odd database names.
https://bugs.webkit.org/show_bug.cgi?id=153688
Reviewed by Darin Adler.
Source/WebCore:
No new tests (2 existing tests now pass).
- platform/FileSystem.cpp:
(WebCore::shouldEscapeUChar): Return true for some surrogate-pair situations.
(WebCore::encodeForFileName): Pass along the previous and next characters, as well,
and do a two byte escaping for some characters.
LayoutTests:
- platform/mac-wk1/TestExpectations:
- 2:19 PM Changeset in webkit [195912] by
-
- 5 edits2 adds in trunk
More than one audio and/or text track sometimes selected in media controls menu
https://bugs.webkit.org/show_bug.cgi?id=153664
Source/WebCore:
Use an <img> element for the track menu item checkmark instead of a background image and
the ::before selector.
Reviewed by Jer Noble.
Test: media/controls/track-menu.html
- Modules/mediacontrols/mediaControlsApple.css:
(audio::-webkit-media-controls-closed-captions-container li:hover):
(audio::-webkit-media-controls-closed-captions-container li .checkmark-container):
(audio::-webkit-media-controls-closed-captions-container li.selected .checkmark-container):
(audio::-webkit-media-controls-closed-captions-container li.selected:hover .checkmark-container):
(audio::-webkit-media-controls-closed-captions-container li.selected::before): Deleted.
(audio::-webkit-media-controls-closed-captions-container li.selected:hover::before): Deleted.
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.buildCaptionMenu):
(Controller.prototype.):
(Controller.prototype.getCurrentControlsStatus):
LayoutTests:
Reviewed by Jer Noble.
- media/controls/controls-test-helpers.js:
(ControlsTest.prototype.get currentState):
(ControlsTest.prototype.get video):
(ControlsTest.prototype.stateForControlsElement):
(ControlsTest.prototype.handleEvent):
(ControlsTest.prototype.setup):
(ControlsTest.prototype.start):
(ControlsTest.prototype.isEqualTo):
(ControlsTest.prototype.isNotEqualTo):
(ControlsTest.prototype.contains):
- media/controls/track-menu-expected.txt: Added.
- media/controls/track-menu.html: Added.
- 1:53 PM Changeset in webkit [195911] by
-
- 37 edits in trunk
Replace CaseFoldingHash with ASCIICaseInsensitiveHash
https://bugs.webkit.org/show_bug.cgi?id=153639
Reviewed by Filip Pizlo.
Source/WebCore:
- Modules/webdatabase/DatabaseAuthorizer.h: Use ASCIICaseInsensitiveHash
for whitelisted functions. Function names are all ASCII.
- accessibility/AccessibilityObject.cpp: Use ASCIICaseInsensitiveHash
for ARIA roles. ARIA roles are all ASCII.
- crypto/CryptoAlgorithmRegistry.h: Use ASCIICaseInsensitiveHash for
crypto algorithm names. Algorithm names are all ASCII.
- css/CSSFontSelector.cpp:
(WebCore::registerLocalFontFacesForFamily): Use ASCIICaseInsensitiveHash
for font faces. Face names should use ASCII case insensitive matching;
there is no need for non-ASCII case folding.
- css/CSSFontSelector.h: Ditto.
- dom/DOMImplementation.cpp: Use ASCIICaseInsensitiveHash for the
FeatureSet. The features are all ASCII.
- dom/Document.h: Use ASCIICaseInsensitiveHash for the access key
map. Access keys are all ASCII.
- dom/ScriptElement.cpp:
(WebCore::isLegacySupportedJavaScriptLanguage): Use ASCIICaseInsensitiveHash
for the language set. These strings are all ASCII.
- editing/EditorCommand.cpp: Use ASCIICaseInsensitiveHash for editor
command names. These names are all ASCII.
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::parametersForPlugin): Use ASCIICaseInsensitiveHash
for parameter names. These names are all ASCII.
- html/InputType.cpp: Use ASCIICaseInsensitiveHash for the input types.
The input types are all ASCII.
- loader/CrossOriginAccessControl.h: Use ASCIICaseInsensitiveHash for
HTTP header field names. These names are all ASCII.
- loader/CrossOriginPreflightResultCache.h: Ditto.
- loader/archive/ArchiveFactory.cpp: Use ASCIICaseInsensitiveHash for
MIME types. MIME types are all ASCII.
- platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes): Ditto.
- platform/SchemeRegistry.h: Use ASCIICaseInsensitiveHas for URL schemes.
URL schemes are all ASCII.
- platform/URL.cpp: Ditto.
- platform/graphics/FontCache.cpp: Reworked FontPlatformDataCacheKey struct:
Made it a conventional struct with non-prefixed data members names. Removed
the "==" operator since it was appropriate for hash table lookup but wasn't
a true equality operator. Tightened the implementations of the constructors.
(WebCore::FontPlatformDataCacheKeyHash::hash): Use ASCIICaseInsensitiveHash.
(WebCore::FontPlatformDataCacheKeyHash::equal): Do the equality check here,
not using the == operator. And use equalIgnoringASCIICase.
(WebCore::FontPlatformDataCacheKeyTraits::isEmptyValue): Added this entire
traits struct so we check empty values in a more efficient way.
(WebCore::FontCache::getCachedFontPlatformData): Added comments and tweaked
style in this function.
- platform/graphics/FontCascade.cpp:
(WebCore::keysMatch): Rename from operator== since this operation is not
equality. Changed to equalIgnoringASCIICase and did a little streamlining.
(WebCore::makeFontCascadeCacheKey): Use reserveInitialCapacity for slightly
better memory use.
(WebCore::computeFontCascadeCacheHash): Use IntegerHasher to make computing
a hash more efficient by eliminating the overhead of building a vector and
even possible heap allocation and deallocation.
(WebCore::retrieveOrAddCachedFonts): Use keysMatch instead of ==.
- platform/graphics/cocoa/FontCacheCoreText.cpp: Use ASCIICaseInsensitiveHash
for font family names. These names should use ASCII case insensitive matching;
there is no need for non-ASCII case folding.
- platform/network/HTTPHeaderMap.h: Use ASCIICaseInsensitiveHash for
HTTP header field names. These names are all ASCII.
- rendering/style/RenderStyle.cpp:
(WebCore::computeFontHash): Use IntegerHasher to avoid allocating memory just
to compute a hash. Use ASCIICaseInsensitiveHash.
Source/WebKit/win:
- WebCoreStatistics.cpp:
(WebCoreStatistics::memoryStatistics): Use ASCIICaseInsensitiveHash for field names.
These names are all ASCII.
- WebURLResponse.cpp:
(WebURLResponse::allHeaderFields): Use ASCIICaseInsensitiveHash for HTTP header
field names. These names are all ASCII.
Source/WebKit2:
- UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Use ASCIICaseInsensitiveHash
for MIME types. MIME types are all ASCII.
- UIProcess/Plugins/PlugInAutoStartProvider.h: Use ASCIICaseInsensitiveHash for
origins. Origin strings should use ASCII case insensitive matching and should not
fold non-ASCII case.
- WebProcess/WebPage/WebPage.h: Use ASCIICaseInsensitiveHash for MIME types.
MIME types are all ASCII.
- WebProcess/WebProcess.cpp:
(WebKit::addCaseFoldedCharacters): Use ASCIICaseInsensitiveHash to hash plug-in
origin strings. (See rationale above.)
(WebKit::hashForPlugInOrigin): Updated comment.
Source/WTF:
- wtf/text/StringHash.h: Renamed CaseFoldingHash to ASCIICaseInsensitiveHash.
(WTF::ASCIICaseInsensitiveHash::foldCase): Use toASCIILower.
(WTF::ASCIICaseInsensitiveHash::equal): Use equalIgnoringASCIICase.
Also added some assertions.
- wtf/text/StringImpl.cpp: Made the latin1CaseFoldTable private to this file,
since it's no longer needed by CaseFoldingHash. Moved it up before its first use.
(WTF::equalCompatibilityCaseless): Fixed typo in the name of this function.
(WTF::equalCompatibiltyCaselessNonNull): Deleted.
- wtf/text/StringImpl.h: Removed declarations of latin1CaseFoldTable and
equalCompatibiltyCaselessNonNull
Tools:
- Scripts/do-webcore-rename: Use script to do this rename.
- 1:49 PM Changeset in webkit [195910] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Object tree parent items are misaligned
https://bugs.webkit.org/show_bug.cgi?id=153699
<rdar://problem/24423683>
Patch by Devin Rousso <Devin Rousso> on 2016-01-30
Reviewed by Darin Adler.
- UserInterface/Views/ObjectTreeView.css:
(.object-tree .object-tree):
Ensure that toplevel Object preview trees are displayed properly while also
making child trees inline.
- UserInterface/Views/TreeOutline.css:
(.tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) > .icon):
(.tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) .icon): Deleted.
This would apply to all .icon elements contained within a non-parent item,
which is not the desired effect. Instead, this should only apply to only the
.icon element of that particular non-parent item.
- 1:39 PM Changeset in webkit [195909] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r195871.
Caused several layout tests to time out
Reverted changeset:
"Tab suspension code shouldn't use page cache cacheability
logic"
https://bugs.webkit.org/show_bug.cgi?id=153680
http://trac.webkit.org/changeset/195871
- 1:34 PM Changeset in webkit [195908] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, rebaseline bindings tests after r195904.
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
(WebCore::jsTestCustomNamedGetterConstructor):
(WebCore::setJSTestCustomNamedGetterConstructor):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::jsTestEventTargetConstructor):
(WebCore::setJSTestEventTargetConstructor):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlot):
(WebCore::jsTestOverrideBuiltinsConstructor):
(WebCore::setJSTestOverrideBuiltinsConstructor):
- 1:01 PM Changeset in webkit [195907] by
-
- 32 edits4 adds in trunk
[JS Bindings] prototype.constructor should be writable
https://bugs.webkit.org/show_bug.cgi?id=149412
<rdar://problem/22545096>
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C tests now that more checks are passing.
- web-platform-tests/XMLHttpRequest/interfaces-expected.txt:
- web-platform-tests/dom/interfaces-expected.txt:
- web-platform-tests/fetch/api/headers/headers-idl-expected.txt:
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
prototype.constructor should have the following properties:
{ Writable: true, Enumerable: false, Configurable: true }
as per the Web IDL specification:
https://heycam.github.io/webidl/#interface-prototype-object
In WebKit, it is currently not writable. It is writable in Firefox.
This patch was first landed in r190085 but was rolled out for causing
crashes: <rdar://problem/22825602>. The issue was that even though we
marked constructor as writable, we failed to generate a setter for it.
This patch addresses the issue and the crash in <rdar://problem/22825602>
no longer occurs after this change. A regression test is also added for
this crash.
Tests:
fast/dom/HTMLDocument/constructor-setter-crash.html
fast/dom/prototype-constructor-setter.html
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateAttributesHashTable):
(GenerateImplementation):
- bindings/scripts/IDLAttributes.txt:
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::setJSTestActiveDOMObjectConstructor):
- bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
(WebCore::setJSTestClassWithJSBuiltinConstructorConstructor):
- bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
(WebCore::setJSTestCustomConstructorWithNoInterfaceObjectConstructor):
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::setJSTestCustomNamedGetterConstructor):
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::setJSTestEventConstructorConstructor):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::setJSTestEventTargetConstructor):
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::setJSTestExceptionConstructor):
- bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::setJSTestGenerateIsReachableConstructor):
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::setJSTestInterfaceConstructor):
- bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
(WebCore::setJSTestJSBuiltinConstructorConstructor):
- bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::setJSTestMediaQueryListListenerConstructor):
- bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::setJSTestNamedConstructorConstructor):
- bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::setJSTestNodeConstructor):
- bindings/scripts/test/JS/JSTestNondeterministic.cpp:
(WebCore::setJSTestNondeterministicConstructor):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::setJSTestObjConstructor):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::setJSTestOverloadedConstructorsConstructor):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::setJSTestOverrideBuiltinsConstructor):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::setJSTestSerializedScriptValueInterfaceConstructor):
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::setJSTestTypedefsConstructor):
- bindings/scripts/test/JS/JSattribute.cpp:
(WebCore::setJSattributeConstructor):
- bindings/scripts/test/JS/JSreadonly.cpp:
(WebCore::setJSreadonlyConstructor):
- page/DOMWindow.idl:
LayoutTests:
- fast/dom/HTMLDocument/constructor-setter-crash-expected.txt: Added.
- fast/dom/HTMLDocument/constructor-setter-crash.html: Added.
Add regression test for crash at <rdar://problem/22825602>.
- fast/dom/prototype-constructor-setter-expected.txt: Added.
- fast/dom/prototype-constructor-setter.html: Added.
Add new test checking that prototype.constructor is writable.
- js/dom/constructor-attributes-expected.txt:
Rebaseline existing test now that prototype.constructor is writable.
- 12:57 PM Changeset in webkit [195906] by
-
- 3 edits in trunk/Source/JavaScriptCore
[B3] JetStream/quicksort.c fails/hangs on Linux with GCC
https://bugs.webkit.org/show_bug.cgi?id=153647
Reviewed by Filip Pizlo.
In B3ComputeDivisionMagic, we accidentally perform sub, add operation onto signed integer. (In this case, int32_t)
But integer overflow is undefined behavior in C[1][2]
As a result, in GCC 4.9 release build, computeDivisionMagic(2) returns unexpected value.
divisor = 2
d = 2
signedMin = INT32_MIN = -2147483647 (-0x7fffffff)
t = signedMin
anc = t - 1 - (t % ad)Oops, we performed overflow operation!
So,
ancvalue becomes undefined.
In this patch, we first cast all the operated values to unsigned one.
Reading the code, there are no operations that depends on signedness. (For example, we used aboveEqual like unsigned operations for comparison.)
[1]: http://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html
[2]: http://dl.acm.org/citation.cfm?id=2522728
- b3/B3ComputeDivisionMagic.h:
(JSC::B3::computeDivisionMagic):
- b3/testb3.cpp:
(JSC::B3::testComputeDivisionMagic):
(JSC::B3::run):
- 12:48 PM Changeset in webkit [195905] by
-
- 2 edits in trunk/Source/JavaScriptCore
Shrink Heap::m_executables after cleaning it.
<https://webkit.org/b/153682>
Reviewed by Darin Adler.
The Heap::m_executables Vector was never shrunk down, despite sometimes
getting pretty huge (~500kB in my longest-running WebContent process.)
After GC has finished pruning unmarked Executables, shrink the Vector.
- heap/Heap.cpp:
(JSC::Heap::clearUnmarkedExecutables):
- 12:10 PM Changeset in webkit [195904] by
-
- 12 edits in trunk
Move more 'constructor' properties to the prototype
https://bugs.webkit.org/show_bug.cgi?id=153667
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline several W3C tests now that more checks are passing. A lot of
the 'constructor' attributes checks are still failing because the
attribute is not writable. This is being addressed via Bug 149412.
- web-platform-tests/dom/collections/HTMLCollection-supported-property-names-expected.txt:
- web-platform-tests/dom/interfaces-expected.txt:
- web-platform-tests/dom/nodes/Element-getElementsByTagName-expected.txt:
- web-platform-tests/html/dom/documents/dom-tree-accessors/document.forms-expected.txt:
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Move more 'constructor' properties to the prototype. In particular, we
used to keep the 'constructor' on the instance for interfaces that have
an indexed / named property getter because our getOwnPropertySlot()
implementation used to be wrong for such interfaces.
However, getOwnPropertySlot() should be correct after r188590 so we
should now be able to move the 'constructor' up to the prototype for
these interfaces, as per the specification:
http://heycam.github.io/webidl/#interface-prototype-object
No new tests, already covered by existing tests.
- bindings/js/JSPluginElementFunctions.h:
(WebCore::pluginElementCustomGetOwnPropertySlot):
Add a null check for staticPropHashTable. It is now null because this
type no longer has any property on the instance now that 'constructor'
is on the prototype.
- bindings/scripts/CodeGeneratorJS.pm:
(ConstructorShouldBeOnInstance):
LayoutTests:
Rebaseline a couple of tests now that 'constructor' is on the prototype
for more interfaces.
- fast/dom/htmlcollection-getownpropertynames-expected.txt:
- storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt:
- 12:06 PM Changeset in webkit [195903] by
-
- 5 edits in trunk/Websites/webkit.org
Improve the style of B3 documentation
https://bugs.webkit.org/show_bug.cgi?id=153674
Reviewed by Oliver Hunt.
This makes the style of the B3 documentation look like the Wiki, which I think is
appropriate for the kind of content that we're putting into it - in particular, the font
is the perfect size for dense content. The style also doesn't require much spoonfeeding
from the HTML side so you can write nice looking documentation by just using really
basic HTML constructs.
- docs/b3/assembly-intermediate-representation.html:
- docs/b3/index.html:
- docs/b3/intermediate-representation.html:
- docs/b3/style.css:
- 12:01 PM Changeset in webkit [195902] by
-
- 2 edits in trunk/Source/WebKit2
[GTK] Use configured python executable when executing generate-inspector-gresource-manifest.py
https://bugs.webkit.org/show_bug.cgi?id=153712
Patch by Jeremy Huddleston Sequoia <jeremyhu@apple.com> on 2016-01-30
Reviewed by Michael Catanzaro.
- PlatformGTK.cmake:
- 11:30 AM Changeset in webkit [195901] by
-
- 10 edits in trunk/Source
Enable VIDEO_PRESENTATION_MODE only in Debug and Release builds on Mac
https://bugs.webkit.org/show_bug.cgi?id=153665
Reviewed by Dan Bernstein.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/Platform.h:
Remove this as the flag is already defined in FeatureDefines.xcconfig files.
- 11:22 AM Changeset in webkit [195900] by
-
- 2 edits in trunk/Source/WebCore
[iOS] WebKit1 apps crash in _ZN7WebCore16DiskCacheMonitorC2ERKNS_15ResourceRequestENS_9SessionIDEPK20_CFCachedURLResponse_block_invoke1
<http://webkit.org/b/153710>
<rdar://problem/23116706>
Reviewed by Darin Adler.
- loader/cocoa/DiskCacheMonitorCocoa.mm:
(WebCore::DiskCacheMonitor::DiskCacheMonitor):
- Fix race condition on iOS WebKit1 clients by calling the block to cancel the DiskCacheMonitor on the WebThread, which is the same thread where the CFCachedURLResponseCallBackBlock is called.
- Removed whitespace to adhere to style.
- 10:38 AM Changeset in webkit [195899] by
-
- 14 edits2 adds in trunk
TouchList should be retargeted
https://bugs.webkit.org/show_bug.cgi?id=149592
Reviewed by Antti Koivisto.
Source/WebCore:
Retarget touch target's using the same algorithm as the one used for related targets instead of
EventRelatedNodeResolver which is removed in this patch.
Also enable the retargeting on iOS.
Test: fast/shadow-dom/touch-event-ios.html
- dom/EventContext.cpp:
(WebCore::TouchEventContext::TouchEventContext):
(WebCore::TouchEventContext::handleLocalEvents):
(WebCore::TouchEventContext::checkReachability):
- dom/EventContext.h:
(WebCore::toTouchEventContext):
(WebCore::EventContext::isUnreachableNode):
- dom/EventDispatcher.cpp:
(WebCore::EventRelatedNodeResolver): Deleted.
(WebCore::EventPath::EventPath):
(WebCore::EventDispatcher::dispatchEvent):
(WebCore::addRelatedNodeResolversForTouchList): Deleted.
(WebCore::EventPath::updateTouchLists): Deleted.
(WebCore::EventPath::setRelatedTarget): Removed superfluous UNUSED_PARAM since the argument is always used.
(WebCore::EventPath::retargetTouch): Extracted from updateTouchLists/setRelatedTarget. Clones Touch object
with the new target for each event context just like related targets.
(WebCore::EventPath::retargetTouchLists): Renamed from updateTouchLists. Calls retargetTouch on each Touch
object in each TouchList.
- dom/TouchEvent.h:
Tools:
Added touchDownAtPoint and liftUpAtPoint to UIScriptController so that we can test touch events with
multiple touch targets on iOS. fast/shadow-dom/touch-event-ios.html uses this new testing feature.
- WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl:
- WebKitTestRunner/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::touchDownAtPoint): Added.
(WTR::UIScriptController::liftUpAtPoint): Added.
- WebKitTestRunner/UIScriptContext/UIScriptController.h:
- WebKitTestRunner/ios/HIDEventGenerator.h:
- WebKitTestRunner/ios/HIDEventGenerator.mm:
(-[HIDEventGenerator touchDown:touchCount:completionBlock:]): Added. Sends touch down and waits.
(-[HIDEventGenerator liftUp:touchCount:completionBlock:]): Ditto for lift up.
- WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::touchDownAtPoint): Added.
(WTR::UIScriptController::liftUpAtPoint): Added.
LayoutTests:
Added a regression test for retargeting touch targets on iOS.
- fast/shadow-dom/touch-event-ios-expected.txt: Added.
- fast/shadow-dom/touch-event-ios.html: Added.
- platform/mac/TestExpectations: Added the failing expectation on Mac since touch support is not enabled.
- 10:09 AM Changeset in webkit [195898] by
-
- 2 edits in trunk/Source/JavaScriptCore
[B3] REGRESSION(r195882): Should break early after modConstant replaceWithNewValue succeeds
https://bugs.webkit.org/show_bug.cgi?id=153711
Reviewed by Filip Pizlo.
Should break after modConstant replaceWithNewValue succeeds. m_value is already replaced with Identity
if modConstant succeeds. So it does not have any children. m_value->child(1) breaks testb3.
- b3/B3ReduceStrength.cpp:
- 9:03 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 9:03 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 9:02 AM Changeset in webkit [195897] by
-
- 2 edits in trunk/LayoutTests
[GTK] Two disk cache tests are failing
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 8:48 AM Changeset in webkit [195896] by
-
- 2 edits in trunk/LayoutTests
[GTK] Some W3C DOM tests are failing
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 8:38 AM Changeset in webkit [195895] by
-
- 2 edits in trunk/LayoutTests
[GTK] IndexedDB expectations gardening
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 8:14 AM Changeset in webkit [195894] by
-
- 2 edits in trunk/LayoutTests
[GTK] platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html is failing
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 8:03 AM Changeset in webkit [195893] by
-
- 2 edits in trunk/LayoutTests
[GTK] Some organization in the test expectations file
Unreviewed.
- platform/gtk/TestExpectations:
- 7:33 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 7:28 AM Changeset in webkit [195892] by
-
- 20 edits35 adds in trunk
Support break-after, break-before and break-inside.
https://bugs.webkit.org/show_bug.cgi?id=148814
Reviewed by Dean Jackson.
Source/WebCore:
New tests added in printing/, fast/multicol/, and fast/regions.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::convertToPageBreak):
(WebCore::convertToColumnBreak):
(WebCore::convertToRegionBreak):
For backwards compatibility, keep support for all the old properties in
computed style. This means we have to convert the break-* property values
into keywords that make sense for the legacy properties. This mainly
involves mapping "page", "column", "region" to "always" (similar rule for
the avoid-* versions as well).
(WebCore::ComputedStyleExtractor::propertyValue):
Add support for the three new break-* properties.
- css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
Add support for the new break properties.
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator BreakBetween):
(WebCore::CSSPrimitiveValue::operator BreakInside):
Add converters for the new BreakBetween and BreakInside enums. Remove
the EPageBreak enum, since it is no longer used.
- css/CSSPropertyNames.in:
- css/CSSValueKeywords.in:
Add the new properties and the new values supported by the properties
to the keywords lists.
- css/StyleBuilderConverter.h:
(WebCore::StyleBuilderConverter::convertFontSynthesis):
(WebCore::StyleBuilderConverter::convertPageBreakBetween):
(WebCore::StyleBuilderConverter::convertPageBreakInside):
(WebCore::StyleBuilderConverter::convertColumnBreakBetween):
(WebCore::StyleBuilderConverter::convertColumnBreakInside):
(WebCore::StyleBuilderConverter::convertRegionBreakBetween):
(WebCore::StyleBuilderConverter::convertRegionBreakInside):
In order to map the legacy properties into the new break-* values
we have custom converter functions.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintChild):
(WebCore::RenderBlock::childBoxIsUnsplittableForFragmentation):
(WebCore::RenderBlock::computeRegionRangeForBoxChild):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::applyBeforeBreak):
(WebCore::RenderBlockFlow::applyAfterBreak):
Patch the block code to check the correct new break-* constants. For
avoidance, this means checking both the general avoid value and the
specific value (e.g., avoid-page). In place of "always", we check
the specific value (e.g., column) and then for page specifically, we
also treat "left", "right", "recto" and "verso" as "always break" for now.
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresLayout):
Make sure changes to the break properties trigger relayout.
- rendering/style/RenderStyle.h:
Add getters and setters for the break-* properties and remove all
occurrences of the legacy page, column and region values from the RenderStyle.
- rendering/style/RenderStyleConstants.cpp:
(WebCore::alwaysPageBreak):
We have a helper function here for mapping several constant values to "page".
- rendering/style/RenderStyleConstants.h:
Definitions of the new BreakBetween and BreakInside enums.
- rendering/style/StyleMultiColData.cpp:
(WebCore::StyleMultiColData::StyleMultiColData):
(WebCore::StyleMultiColData::operator==):
- rendering/style/StyleMultiColData.h:
Remove the column-specific break data.
- rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
- rendering/style/StyleRareNonInheritedData.h:
Remove the region-specific break data and replace it with generic break
data that is now used by all three pagination models.
LayoutTests:
- TestExpectations:
- fast/multicol/standardized-break-properties-expected.txt: Added.
- fast/multicol/standardized-break-properties.html: Added.
- fast/multicol/vertical-lr/standardized-break-properties-expected.txt: Added.
- fast/multicol/vertical-lr/standardized-break-properties.html: Added.
- fast/multicol/vertical-rl/standardized-break-properties-expected.txt: Added.
- fast/multicol/vertical-rl/standardized-break-properties.html: Added.
- fast/regions/text-break-properties-expected.txt: Added.
- fast/regions/text-break-properties.html: Added.
- printing/allowed-breaks-expected.txt: Added.
- printing/allowed-breaks.html: Added.
- printing/break-after-avoid-expected.txt: Added.
- printing/break-after-avoid-page-expected.txt: Added.
- printing/break-after-avoid-page.html: Added.
- printing/break-after-avoid.html: Added.
- printing/break-always-expected.txt: Added.
- printing/break-always.html: Added.
- printing/break-avoid-expected.txt: Added.
- printing/break-avoid-page-expected.txt: Added.
- printing/break-avoid-page.html: Added.
- printing/break-avoid.html: Added.
- printing/break-display-none-expected.txt: Added.
- printing/break-display-none.html: Added.
- printing/break-inside-avoid-expected.txt: Added.
- printing/break-inside-avoid-page-expected.txt: Added.
- printing/break-inside-avoid-page.html: Added.
- printing/break-inside-avoid.html: Added.
- printing/script-tests/allowed-breaks.js: Added.
(test):
- printing/script-tests/break-after-avoid-page.js: Added.
(test):
- printing/script-tests/break-after-avoid.js: Added.
(test):
- printing/script-tests/break-always.js: Added.
(test):
- printing/script-tests/break-avoid-page.js: Added.
(test):
- printing/script-tests/break-avoid.js: Added.
(test):
- printing/script-tests/break-display-none.js: Added.
(test):
- printing/script-tests/break-inside-avoid-page.js: Added.
(test):
- printing/script-tests/break-inside-avoid.js: Added.
(test):
- 7:25 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 4:53 AM Changeset in webkit [195891] by
-
- 13 edits in trunk
Enable SamplingProfiler on POSIX environment
https://bugs.webkit.org/show_bug.cgi?id=153584
Reviewed by Michael Saboff.
.:
Add features.h header check. It will define GLIBC.
- Source/cmake/OptionsCommon.cmake:
Source/JavaScriptCore:
In this patch, we implement suspend and resume mechanizm for POSIX threads.
And with GLIBC, we can retrieve registers from it.
We take the following strategy.
Suspend side.
- install sigaction to the threads.
- in the profiler (suspend / resume callers), emit signal with pthread_kill and wait with POSIX semaphore.
- in the signal handler, up the POSIX semaphore. Use sem_post because it is the async-signal-safe function in POSIX.
- in the signal handler, perform sigsuspend to stop the thread until being resumed.
- in the profiler, we can be waken up from the semaphore because (3) ups.
Resume side.
- in the profiler, emit signal and wait on the semaphore.
- in the signal handler, it is waken up from the sigsuspend.
- in the signal handler, up the semaphore.
- in the profiler, the profiler is waken up from the semaphore. It is ensured that the given thread is resumed by the signal.
- heap/MachineStackMarker.cpp:
(pthreadSignalHandlerSuspendResume):
(JSC::MachineThreads::Thread::Thread):
(JSC::MachineThreads::Thread::~Thread):
(JSC::MachineThreads::Thread::suspend):
(JSC::MachineThreads::Thread::resume):
(JSC::MachineThreads::Thread::getRegisters):
(JSC::MachineThreads::Thread::Registers::stackPointer):
(JSC::MachineThreads::Thread::Registers::framePointer):
(JSC::MachineThreads::Thread::Registers::instructionPointer):
(JSC::MachineThreads::Thread::Registers::llintPC):
(JSC::MachineThreads::Thread::freeRegisters):
- heap/MachineStackMarker.h:
- runtime/SamplingProfiler.cpp:
(JSC::reportStats):
- tests/stress/call-varargs-from-inlined-code-with-odd-number-of-arguments.js:
- tests/stress/call-varargs-from-inlined-code.js:
- tests/stress/v8-earley-boyer-strict.js:
Source/WTF:
Use GLIBC since mcontext_t layout depends on it.
- wtf/Platform.h:
Tools:
- Scripts/run-jsc-stress-tests: