WebKit-https.git
2 years agoUpdate tools and configurations after renaming Source/WebKit2 to Source/WebKit.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:29:22 +0000 (02:29 +0000)]
Update tools and configurations after renaming Source/WebKit2 to Source/WebKit.
https://bugs.webkit.org/show_bug.cgi?id=174164
rdar://problem/33137595

Reviewed by Dan Bernstein.

.:

* Source/Makefile:
* Source/PlatformGTK.cmake:
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/WebKitFS.cmake:
* Source/cmake/WebKitPackaging.cmake:
* WebKit.xcworkspace/contents.xcworkspacedata:
* WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:

Source/WebKit:

* PlatformGTK.cmake:
* Shared/API/c/wpe/WebKit.h:

Tools:

* BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
(ShouldBuildTest):
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* Scripts/build-webkit:
* Scripts/do-file-rename:
* Scripts/do-webcore-rename:
* Scripts/update-webkit-localizable-strings:
* Scripts/webkitpy/common/config/watchlist:
* Scripts/webkitpy/style/checker.py:
* Scripts/webkitpy/style/checkers/featuredefines.py:
* gtk/make-dist.py:
(ensure_version_if_possible):
* gtk/manifest.txt.in:

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

2 years agoUpdate the Visual Studio project name from WebKit to WebKitLegacy.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:29:17 +0000 (02:29 +0000)]
Update the Visual Studio project name from WebKit to WebKitLegacy.
https://bugs.webkit.org/show_bug.cgi?id=174162
rdar://problem/33137594

Reviewed by Dan Bernstein.

Rename WebKit to WebKitLegacy.

* WebKitLegacy.vcxproj/WebKitLegacy.proj: Renamed from Source/WebKitLegacy/WebKit.vcxproj/WebKit.proj.

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

2 years agoUpdate the Xcode project name from WebKit to WebKitLegacy.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:29:15 +0000 (02:29 +0000)]
Update the Xcode project name from WebKit to WebKitLegacy.
https://bugs.webkit.org/show_bug.cgi?id=174162
rdar://problem/33137594

Reviewed by Dan Bernstein.

Rename WebKit to WebKitLegacy.

.:

* WebKit.xcworkspace/contents.xcworkspacedata:
* WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:

Source/WebKitLegacy:

* WebKitLegacy.xcodeproj/project.pbxproj: Renamed from Source/WebKitLegacy/WebKit.xcodeproj/project.pbxproj.

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

2 years agoUpdate tools and configurations after renaming Source/WebKit to Source/WebKitLegacy.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:29:11 +0000 (02:29 +0000)]
Update tools and configurations after renaming Source/WebKit to Source/WebKitLegacy.
https://bugs.webkit.org/show_bug.cgi?id=174162
rdar://problem/33137594

Reviewed by Dan Bernstein.

.:

Mass rename of Source/WebKit to Source/WebKitLegacy in OpenSource cmake files
and Xcode project files.

* Source/cmake/OptionsGTK.cmake:
* Source/cmake/WebKitFS.cmake:
* WebKit.xcworkspace/contents.xcworkspacedata:
* WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:

Tools:

Mass rename of Source/WebKit to Source/WebKitLegacy in OpenSource tooling.

* BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
* DumpRenderTree/mac/InternalHeaders/WebKit/WebTypesInternal.h:
* EWSTools/configure-clang-linux.sh:
* Scripts/build-webkit:
* Scripts/do-file-rename:
* Scripts/do-webcore-rename:
* Scripts/update-webkit-localizable-strings:
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
* Scripts/webkitpy/style/checkers/changelog_unittest.py:
* Scripts/webkitpy/style/checkers/featuredefines.py:
* gtk/manifest.txt.in:

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

2 years agoRename Source/WebKit2 to Source/WebKit.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:12:32 +0000 (02:12 +0000)]
Rename Source/WebKit2 to Source/WebKit.

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

2 years agoRename Source/WebKit to Source/WebKitLegacy.
matthew_hanson@apple.com [Fri, 14 Jul 2017 02:11:40 +0000 (02:11 +0000)]
Rename Source/WebKit to Source/WebKitLegacy.

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

2 years agoFix compiler warnings when building with GCC 7
mcatanzaro@igalia.com [Fri, 14 Jul 2017 01:48:49 +0000 (01:48 +0000)]
Fix compiler warnings when building with GCC 7
https://bugs.webkit.org/show_bug.cgi?id=174463

Reviewed by Darin Adler.

.:

* Source/cmake/OptionsCommon.cmake:

Source/JavaScriptCore:

* disassembler/udis86/udis86_decode.c:
(decode_operand):

Source/ThirdParty:

* brotli/CMakeLists.txt:

Source/WebCore:

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setShouldManageAudioSessionCategory):

Source/WebKit2:

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::sendOutputMessage):

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

2 years agoIncorrect call to StyledElement::setInlineStyleProperty in ImageDocument::createDocum...
mcatanzaro@igalia.com [Fri, 14 Jul 2017 01:38:54 +0000 (01:38 +0000)]
Incorrect call to StyledElement::setInlineStyleProperty in ImageDocument::createDocumentStructure
https://bugs.webkit.org/show_bug.cgi?id=174470

Reviewed by Darin Adler.

* html/ImageDocument.cpp:
(WebCore::ImageDocument::createDocumentStructure):

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

2 years agoSkipped multiple http/tests/webrtc/ test on iOS simulator.
jlewis3@apple.com [Fri, 14 Jul 2017 00:23:26 +0000 (00:23 +0000)]
Skipped multiple http/tests/webrtc/ test on iOS simulator.
https://bugs.webkit.org/show_bug.cgi?id=173861

Unreviewed test gardening.
* platform/ios-simulator-wk2/TestExpectations:

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

2 years agoAdd script to rebase patches during the WebKit2->WebKit/WebKit->WebKitLegacy transition
jbedard@apple.com [Fri, 14 Jul 2017 00:20:11 +0000 (00:20 +0000)]
Add script to rebase patches during the WebKit2->WebKit/WebKit->WebKitLegacy transition
https://bugs.webkit.org/show_bug.cgi?id=174438
<rdar://problem/33277112>

Reviewed by Aakash Jain.

Given a patch, this will convert the changes from the path to the new directory structure.

* Scripts/rebase-patch-after-webkit-move: Added.
(append_source): Append 'Source' to the provided path.
(is_editable_line): Return true if a line the script expects to modify.
(needs_rebase): Return if a line needs to be rebased based on it's content.
(rebase_line): Rebase the provided line.
(rebase): Rebase a patch given the lines of that patch and a file to output the rebased patch to.
(parse_arguments): Parse the command line arguments and return the patches to be rebased, if they
were provided.

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

2 years agoFix iOS build.
dino@apple.com [Thu, 13 Jul 2017 23:09:05 +0000 (23:09 +0000)]
Fix iOS build.

* platform/graphics/GraphicsContext3D.h:

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

2 years agoMoved filesystem code out of WebResourceLoadStatisticsStore class
cdumez@apple.com [Thu, 13 Jul 2017 23:08:57 +0000 (23:08 +0000)]
Moved filesystem code out of WebResourceLoadStatisticsStore class
https://bugs.webkit.org/show_bug.cgi?id=174435

Reviewed by Brent Fulgham.

Moved filesystem code out of WebResourceLoadStatisticsStore class and into
a new ResourceLoadStatisticsPersistentStorage class to decrease complexity.

* CMakeLists.txt:
* UIProcess/Cocoa/WebResourceLoadStatisticsStoreCocoa.mm:
* UIProcess/Storage/ResourceLoadStatisticsPersistentStorage.cpp: Added.
(WebKit::hasFileChangedSince):
(WebKit::createDecoderForFile):
(WebKit::ResourceLoadStatisticsPersistentStorage::ResourceLoadStatisticsPersistentStorage):
(WebKit::ResourceLoadStatisticsPersistentStorage::~ResourceLoadStatisticsPersistentStorage):
(WebKit::ResourceLoadStatisticsPersistentStorage::storageDirectoryPath):
(WebKit::ResourceLoadStatisticsPersistentStorage::resourceLogFilePath):
(WebKit::ResourceLoadStatisticsPersistentStorage::startMonitoringDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::stopMonitoringDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::refreshMemoryStoreFromDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::populateMemoryStoreFromDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::writeMemoryStoreToDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::scheduleOrWriteMemoryStore):
(WebKit::ResourceLoadStatisticsPersistentStorage::clear):
(WebKit::ResourceLoadStatisticsPersistentStorage::finishAllPendingWorkSynchronously):
(WebKit::ResourceLoadStatisticsPersistentStorage::excludeFromBackup):
* UIProcess/Storage/ResourceLoadStatisticsPersistentStorage.h: Added.
* UIProcess/Storage/ios/ResourceLoadStatisticsPersistentStorageIOS.mm: Added.
(WebKit::ResourceLoadStatisticsPersistentStorage::excludeFromBackup):
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::processStatisticsAndDataRecords):
(WebKit::WebResourceLoadStatisticsStore::grandfatherExistingWebsiteData):
(WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
(WebKit::WebResourceLoadStatisticsStore::resetDataFromDecoder):
* UIProcess/WebResourceLoadStatisticsStore.h:
* WebKit2.xcodeproj/project.pbxproj:

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

2 years agoRename GraphicsContext[3D]Mac to Cocoa and move things into graphics/cocoa
dino@apple.com [Thu, 13 Jul 2017 23:04:13 +0000 (23:04 +0000)]
Rename GraphicsContext[3D]Mac to Cocoa and move things into graphics/cocoa
https://bugs.webkit.org/show_bug.cgi?id=174453
<rdar://problem/33281481>

Reviewed by Simon Fraser.

Two renames, two moves:
graphics/mac/GraphicsContext3DMac.mm -> graphics/cocoa/GraphicsContext3DCocoa.mm
graphics/mac/GraphicsContext.mm -> graphics/cocoa/GraphicsContextCocoa.mm
graphics/mac/WebGLLayer.h -> graphics/cocoa/WebGLLayer.h
graphics/mac/WebGLLayer.mm -> graphics/cocoa/WebGLLayer.mm

* PlatformMac.cmake:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/cocoa/GraphicsContext3DCocoa.mm: Renamed from Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm.
* platform/graphics/cocoa/GraphicsContextCocoa.mm: Renamed from Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm.
* platform/graphics/cocoa/WebGLLayer.h: Renamed from Source/WebCore/platform/graphics/mac/WebGLLayer.h.
* platform/graphics/cocoa/WebGLLayer.mm: Renamed from Source/WebCore/platform/graphics/mac/WebGLLayer.mm.

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

2 years agoClean-up some things in GraphicsContext3D
dino@apple.com [Thu, 13 Jul 2017 22:59:50 +0000 (22:59 +0000)]
Clean-up some things in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=174452
<rdar://problem/33281257>

Reviewed by Simon Fraser.

General clean-up in GC3D.

Covered by existing tests.

* platform/graphics/GraphicsContext3D.h: Use initial values where possible.
(WebCore::GraphicsContext3D::GraphicsContext3DState::GraphicsContext3DState): Deleted.
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D): Nearly everything can come from the
initial values now.
(WebCore::GraphicsContext3D::~GraphicsContext3D): Remove code that won't be enabled
on this platform.
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): While unlikely to happen,
and possibly harmless in this case, add some checked arithmetic to make sure we don't overflow
when working out how big a buffer to create.
(WebCore::GraphicsContext3D::paintRenderingResultsToImageData): Ditto.
(WebCore::GraphicsContext3D::reshape): Do nothing if we are ever given negative
width or height. Again unlikely.

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

2 years agoAvoid unnecessary copy of framebuffer into WebGL Layer
dino@apple.com [Thu, 13 Jul 2017 22:49:52 +0000 (22:49 +0000)]
Avoid unnecessary copy of framebuffer into WebGL Layer
https://bugs.webkit.org/show_bug.cgi?id=174345
<rdar://problem/33228950>

Reviewed by Sam Weinig.

On macOS, we're unnecessarily copying the framebuffer into another
texture before pushing it into the compositing layer. Instead we
should simply render the FBO into the CALayer we use to draw on
the screen.

Covered by the existing WebGL tests.

* platform/graphics/GraphicsContext3D.h:
(WebCore::GraphicsContext3D::platformTexture): Return the FBO texture instead.
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D): No need to have a compositing
texture.
(WebCore::GraphicsContext3D::~GraphicsContext3D):
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::prepareTexture): Don't copy the pixels from
the FBO into the compositing texture

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

2 years agoUnreviewed, rolling out r219453.
cdumez@apple.com [Thu, 13 Jul 2017 22:04:05 +0000 (22:04 +0000)]
Unreviewed, rolling out r219453.

Seems to cause some crashes on the bots

Reverted changeset:

"Moved filesystem code out of WebResourceLoadStatisticsStore
class"
https://bugs.webkit.org/show_bug.cgi?id=174435
http://trac.webkit.org/changeset/219453

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

2 years agoMarked imported/w3c/web-platform-tests/IndexedDB/large-nested-cloning.html as flaky...
jlewis3@apple.com [Thu, 13 Jul 2017 22:02:14 +0000 (22:02 +0000)]
Marked imported/w3c/web-platform-tests/IndexedDB/large-nested-cloning.html as flaky on iOS.
https://bugs.webkit.org/show_bug.cgi?id=173487

Unreviewed test gardening.

* platform/ios-simulator-wk2/TestExpectations:

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

2 years agoSkipping media/video-source-before-src.html.
jlewis3@apple.com [Thu, 13 Jul 2017 21:02:37 +0000 (21:02 +0000)]
Skipping media/video-source-before-src.html.
https://bugs.webkit.org/show_bug.cgi?id=174284

Unreviewed test gardening.

* TestExpectations:

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

2 years agoIncorrect assertion in JSC::CallLinkInfo::callTypeFor
mcatanzaro@igalia.com [Thu, 13 Jul 2017 20:39:32 +0000 (20:39 +0000)]
Incorrect assertion in JSC::CallLinkInfo::callTypeFor
https://bugs.webkit.org/show_bug.cgi?id=174467

Reviewed by Saam Barati.

* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::callTypeFor):

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

2 years agoREGRESSION: "visibility:hidden" does not hide play button for video elements
graouts@webkit.org [Thu, 13 Jul 2017 20:19:10 +0000 (20:19 +0000)]
REGRESSION: "visibility:hidden" does not hide play button for video elements
​https://bugs.webkit.org/show_bug.cgi?id=174258
<rdar://problem/33181452>

Unreviewed test gardening.

Add a missing expectation file which is designed to be empty and is now just a space.

* media/modern-media-controls/css/visibility-hidden-expected.html: Added.

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

2 years agoImplementors of memoryCost() need to be thread-safe.
mark.lam@apple.com [Thu, 13 Jul 2017 19:16:54 +0000 (19:16 +0000)]
Implementors of memoryCost() need to be thread-safe.
https://bugs.webkit.org/show_bug.cgi?id=172738
<rdar://problem/32474881>

Reviewed by Keith Miller.

No new tests. This patch fixes a race condition bug that can result in random
crashes (and other unpredictable behavior), and is very difficult to test for.

* Modules/webaudio/AudioBuffer.cpp:
(WebCore::AudioBuffer::releaseMemory):
(WebCore::AudioBuffer::memoryCost):
* Modules/webaudio/AudioBuffer.h:
* dom/ChildNodeList.h:
* dom/CollectionIndexCache.h:
(WebCore::CollectionIndexCache::memoryCost):
* dom/LiveNodeList.h:
* html/CachedHTMLCollection.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::memoryCost):
(WebCore::HTMLCanvasElement::externalMemoryCost):
(WebCore::HTMLCanvasElement::setImageBuffer):
* html/HTMLCanvasElement.h:
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::invalidateNamedElementCache):
* html/HTMLCollection.h:
(WebCore::CollectionNamedElementCache::memoryCost):
(WebCore::HTMLCollection::memoryCost):
(WebCore::HTMLCollection::setNamedItemCache):
* platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::memoryCost):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::memoryCost):
(WebCore::ImageBuffer::externalMemoryCost):

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

2 years agoFix style. Use #pragma once in VideoFullscreen and PlaybackSession headers.
commit-queue@webkit.org [Thu, 13 Jul 2017 18:41:10 +0000 (18:41 +0000)]
Fix style. Use #pragma once in VideoFullscreen and PlaybackSession headers.
https://bugs.webkit.org/show_bug.cgi?id=174448

Patch by Jeremy Jones <jeremyj@apple.com> on 2017-07-13
Reviewed by Eric Carlson.

No behavior change.

Source/WebCore:

* platform/cocoa/WebPlaybackSessionInterface.h:
* platform/cocoa/WebVideoFullscreenChangeObserver.h:
* platform/cocoa/WebVideoFullscreenModel.h:
* platform/cocoa/WebVideoFullscreenModelVideoElement.h:
* platform/ios/WebPlaybackSessionInterfaceAVKit.h:
* platform/ios/WebVideoFullscreenControllerAVKit.h:
* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
* platform/mac/WebVideoFullscreenInterfaceMac.h:

Source/WebKit2:

* UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h:
* WebProcess/cocoa/WebVideoFullscreenManager.h:

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

2 years agoDeleting last URLSearchParams key should remove trailing ? in associated URL
commit-queue@webkit.org [Thu, 13 Jul 2017 18:21:48 +0000 (18:21 +0000)]
Deleting last URLSearchParams key should remove trailing ? in associated URL
https://bugs.webkit.org/show_bug.cgi?id=174465

Patch by Alex Christensen <achristensen@webkit.org> on 2017-07-13
Reviewed by Chris Dumez.

Source/WebCore:

This makes us match the behavior of Chrome and Firefox, and the spec after https://github.com/whatwg/url/issues/332 is approved.
This will be covered by an upcoming web platform test, and I updated fast/dom/DOMURL/searchparams.html to cover it now.

* platform/URLParser.cpp:
(WebCore::URLParser::serialize):
If there are no tuples, serialize to the null string instead of a non-null empty string.
This makes it so URL::setQuery removes the ?

LayoutTests:

* fast/dom/DOMURL/searchparams-expected.txt:
* fast/dom/DOMURL/searchparams.html:

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

2 years agoStyle fix. Replace strongThis with protectedThis.
commit-queue@webkit.org [Thu, 13 Jul 2017 18:21:33 +0000 (18:21 +0000)]
Style fix. Replace strongThis with protectedThis.
https://bugs.webkit.org/show_bug.cgi?id=174444

Patch by Jeremy Jones <jeremyj@apple.com> on 2017-07-13
Reviewed by Eric Carlson.

Rename, no behavior change.

Source/WebCore:

* Modules/webaudio/AudioScheduledSourceNode.cpp:
(WebCore::AudioScheduledSourceNode::finish):
* platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::maybeBecomeReadyForMoreMediaData):
(WebCore::WebCoreDecompressionSession::enqueueSample):
(WebCore::WebCoreDecompressionSession::handleDecompressionOutput):
(WebCore::WebCoreDecompressionSession::enqueueDecodedSample):
(WebCore::WebCoreDecompressionSession::requestMediaDataWhenReady):
(WebCore::WebCoreDecompressionSession::flush):

Source/WebKit2:

* WebProcess/cocoa/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::didSetupFullscreen):
(WebKit::WebVideoFullscreenManager::didEnterFullscreen):
(WebKit::WebVideoFullscreenManager::didExitFullscreen):
(WebKit::WebVideoFullscreenManager::didCleanupFullscreen):

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

2 years agoFix block style in WebVideoFullscreen classes.
commit-queue@webkit.org [Thu, 13 Jul 2017 18:19:38 +0000 (18:19 +0000)]
Fix block style in WebVideoFullscreen classes.
https://bugs.webkit.org/show_bug.cgi?id=174446

Patch by Jeremy Jones <jeremyj@apple.com> on 2017-07-13
Reviewed by Eric Carlson.

No behavior change.

* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(WebVideoFullscreenControllerContext::setVideoLayerFrame):
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerLayer layoutSublayers]):
(getWebAVPictureInPicturePlayerLayerViewClass):
(getWebAVPlayerLayerViewClass):

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

2 years ago[Win] Build error when building WebCore from WebCore.proj project file.
pvollan@apple.com [Thu, 13 Jul 2017 18:17:48 +0000 (18:17 +0000)]
[Win] Build error when building WebCore from WebCore.proj project file.
https://bugs.webkit.org/show_bug.cgi?id=174462

Reviewed by Brent Fulgham.

Add required include directory to list of include directories.

* pal/CMakeLists.txt:
* pal/PlatformWin.cmake:

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

2 years agoWeb Inspector: Remove unused and untested Page domain commands
commit-queue@webkit.org [Thu, 13 Jul 2017 18:03:27 +0000 (18:03 +0000)]
Web Inspector: Remove unused and untested Page domain commands
https://bugs.webkit.org/show_bug.cgi?id=174429

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-07-13
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

* inspector/protocol/Page.json:

Source/WebCore:

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad): Deleted.
(WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad): Deleted.
* inspector/InspectorPageAgent.h:

Source/WebInspectorUI:

* UserInterface/Protocol/Legacy/10.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/11.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/9.3/InspectorBackendCommands.js:
* Versions/Inspector-iOS-10.0.json:
* Versions/Inspector-iOS-10.3.json:
* Versions/Inspector-iOS-11.0.json:
* Versions/Inspector-iOS-7.0.json:
* Versions/Inspector-iOS-8.0.json:
* Versions/Inspector-iOS-9.0.json:
* Versions/Inspector-iOS-9.3.json:

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

2 years agoMoved filesystem code out of WebResourceLoadStatisticsStore class
cdumez@apple.com [Thu, 13 Jul 2017 17:52:43 +0000 (17:52 +0000)]
Moved filesystem code out of WebResourceLoadStatisticsStore class
https://bugs.webkit.org/show_bug.cgi?id=174435

Reviewed by Brent Fulgham.

Moved filesystem code out of WebResourceLoadStatisticsStore class and into
a new ResourceLoadStatisticsPersistentStorage class to decrease complexity.

* CMakeLists.txt:
* UIProcess/Cocoa/WebResourceLoadStatisticsStoreCocoa.mm:
* UIProcess/Storage/ResourceLoadStatisticsPersistentStorage.cpp: Added.
(WebKit::hasFileChangedSince):
(WebKit::createDecoderForFile):
(WebKit::ResourceLoadStatisticsPersistentStorage::ResourceLoadStatisticsPersistentStorage):
(WebKit::ResourceLoadStatisticsPersistentStorage::~ResourceLoadStatisticsPersistentStorage):
(WebKit::ResourceLoadStatisticsPersistentStorage::storageDirectoryPath):
(WebKit::ResourceLoadStatisticsPersistentStorage::resourceLogFilePath):
(WebKit::ResourceLoadStatisticsPersistentStorage::startMonitoringDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::stopMonitoringDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::refreshMemoryStoreFromDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::populateMemoryStoreFromDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::writeMemoryStoreToDisk):
(WebKit::ResourceLoadStatisticsPersistentStorage::scheduleOrWriteMemoryStore):
(WebKit::ResourceLoadStatisticsPersistentStorage::clear):
(WebKit::ResourceLoadStatisticsPersistentStorage::finishAllPendingWorkSynchronously):
(WebKit::ResourceLoadStatisticsPersistentStorage::excludeFromBackup):
* UIProcess/Storage/ResourceLoadStatisticsPersistentStorage.h: Added.
* UIProcess/Storage/ios/ResourceLoadStatisticsPersistentStorageIOS.mm: Added.
(WebKit::ResourceLoadStatisticsPersistentStorage::excludeFromBackup):
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::processStatisticsAndDataRecords):
(WebKit::WebResourceLoadStatisticsStore::grandfatherExistingWebsiteData):
(WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
(WebKit::WebResourceLoadStatisticsStore::resetDataFromDecoder):
* UIProcess/WebResourceLoadStatisticsStore.h:
* WebKit2.xcodeproj/project.pbxproj:

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

2 years agoMissing exception check in JSObject::hasInstance
sbarati@apple.com [Thu, 13 Jul 2017 17:03:45 +0000 (17:03 +0000)]
Missing exception check in JSObject::hasInstance
https://bugs.webkit.org/show_bug.cgi?id=174455
<rdar://problem/31384608>

Reviewed by Mark Lam.

JSTests:

* stress/has-instance-exception-check.js: Added.
(assert):
(let.getter.Object.getOwnPropertyDescriptor.get foo):

Source/JavaScriptCore:

* runtime/JSObject.cpp:
(JSC::JSObject::hasInstance):

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

2 years agoUnreviewed GTK+ gardening. Update expectations of several tests failing at r219449.
magomez@igalia.com [Thu, 13 Jul 2017 15:51:57 +0000 (15:51 +0000)]
Unreviewed GTK+ gardening. Update expectations of several tests failing at r219449.

* platform/gtk/TestExpectations:

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

2 years ago[GCrypt] Implement CryptoKeyRSA SPKI exports
zandobersek@gmail.com [Thu, 13 Jul 2017 10:09:00 +0000 (10:09 +0000)]
[GCrypt] Implement CryptoKeyRSA SPKI exports
https://bugs.webkit.org/show_bug.cgi?id=173695

Reviewed by Jiewen Tan.

Source/WebCore:

Implement the SPKI export operation for RSA keys for platforms that use
libgcrypt.

In CryptoKeyRSA::exportSpki(), we bail early with an invalid access exception if
this export is not being done for a public key. Otherwise, we start with creating
the `RSAPublicKey` ASN.1 structure, filling in the modulus and public exponent
data that's retrieved from the `public-key` s-expression in the signed MPI format.

We then create the `SubjectPublicKeyInfo` ASN.1 structure and fill it out with
the necessary data. The id-rsaEncryption object identifier is written out under
the `algorithm.algorithm` element, and a null value is written out under the
`algorithm.parameters` element. This doesn't follow the specification at the
moment, since id-RSASSA-PSS would have to be written for the RSA-PSS algorithm,
and id-RSAES-OAEP for the RSA-OAEP algorithm, along with specific parameter
structures. But no test in WebKit or the web-platform-tests suite covers this,
so this deviation should be addressed later.

Data of the previously-constructed `RSAPublicKey` structure is retrieved and
written out under the `subjectPublicKey` element, before finally retrieving
data of the `SubjectPublicKeyInfo` structure and returning that to the caller.

A helper mpiSignedData() function is added, providing overloads for gcry_mpi_t
and gcry_sexp_t parameters. MPI data for that parameter is retrieved and the
first byte of that data is tested, inserting an additional 0x00 byte at the
beginning of the Vector if that first byte has the first bit set, avoiding this
data accidentally being interpreted as a signed integer.

No new tests -- related tests are now passing and are unskipped.

* crypto/gcrypt/CryptoKeyRSAGCrypt.cpp:
(WebCore::CryptoKeyRSA::exportSpki):
* crypto/gcrypt/GCryptUtilities.h:
(WebCore::mpiSignedData):

LayoutTests:

* platform/gtk/TestExpectations: Unskip the RSA SPKI export tests
that are now passing.

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

2 years ago[GCrypt] Implement CryptoKeyRSA SPKI imports
zandobersek@gmail.com [Thu, 13 Jul 2017 10:00:24 +0000 (10:00 +0000)]
[GCrypt] Implement CryptoKeyRSA SPKI imports
https://bugs.webkit.org/show_bug.cgi?id=173694

Reviewed by Jiewen Tan.

Source/WebCore:

Implement the SPKI import operation for RSA keys for platforms that use
libgcrypt.

The passed-in key data is decoded against the `SubjectPublicKeyInfo` ASN.1
structure. We then validate the `algorithm.algorithm` element, ensuring that
the value under that represents a supported object identifier. This check is
for now mostly superficial, only ensuring that the object identifier is either
id-rsaEncryption, id-RSAES-OAEP or id-RSASSA-PSS. This has to be further extended
to also check the id-sha{1,256,384,512}WithRSAEncryption identifiers as well as
decoding the `algorithm.parameters` element against a specific ASN.1 structure,
if necessary (RSASSA-PSS-params or RSAES-OAEP-params), and cross-checking the
specified digest algorithm with the algorithm that's specified through the main
object identifier or the structure contained in `algorithm.parameters`. This is
avoided for now because no test in WebKit or the web-platform-tests suite covers
this detail of the specification.

After the algorithm is identified as supported, we proceed with decoding the
`subjectPublicKey` data against the `RSAPublicKey` ASN.1 structure. From there,
we retrieve the `modulus` and `publicExponent` data from which we can construct
an RSA `public-key` s-expression that can be used through libgcrypt. A new
CryptoKeyRSA object is then created, taking over ownership of the `public-key`
s-expression, and returned.

No new tests -- related tests are now passing and are unskipped.

* crypto/gcrypt/CryptoKeyRSAGCrypt.cpp:
(WebCore::supportedAlgorithmIdentifier):
(WebCore::CryptoKeyRSA::importSpki):

LayoutTests:

* platform/gtk/TestExpectations: Unskip the RSA SPKI import tests
that are now passing.

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

2 years agoREGRESSION(r219332): [GTK] 9 new failures on fast/forms spinbutton related tests
clopez@igalia.com [Thu, 13 Jul 2017 09:38:52 +0000 (09:38 +0000)]
REGRESSION(r219332): [GTK] 9 new failures on fast/forms spinbutton related tests
https://bugs.webkit.org/show_bug.cgi?id=174395

Reviewed by Carlos Garcia Campos.

Source/WebCore:

Covered by existing tests.

Before r219332 the height of the spin button widget was
calculated as the maximum value between the individual button
( the [+] or [-] ) width (33 pixels) and height (16 pixels).
And r219332 caused the height of the widget to be calculated as
the height of the button (16 pixels), which was incorrect as
each button should be first expanded vertically to fit the
preferred size of the widget.

Fix this by making the calculations about the spin button widget
on a new function spinButtonSize() that takes this into account,
and use this values both for adjusting the style of the input
field and the spin button widget itself.

* rendering/RenderThemeGtk.cpp:
(WebCore::spinButtonSize):
(WebCore::RenderThemeGtk::adjustTextFieldStyle):
(WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle):

LayoutTests:

* fast/forms/number/number-spinbutton-in-multi-column.html: Instead of assuming that the width will be 100, calculate a -7 offset dinamically.
* platform/gtk/TestExpectations: Remove expected failures now orking.
* platform/gtk/fast/forms/number/number-size-spinbutton-nocover-expected.png: Rebaseline.
* platform/gtk/fast/forms/number/number-size-spinbutton-nocover-expected.txt: Rebaseline.

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

2 years agoeglplatform.h does not support Wayland
aperez@igalia.com [Thu, 13 Jul 2017 09:21:52 +0000 (09:21 +0000)]
eglplatform.h does not support Wayland
https://bugs.webkit.org/show_bug.cgi?id=163482

This makes it possible to build WebKitGTK+ when the target system has only Wayland support,
but no X11 (and therefore the X11 headers are not present).

Reviewed by Alex Christensen.

* include/EGL/eglplatform.h: Add Wayland typedefs when WL_EGL_PLATFORM is defined (for example
by including wayland-egl.h before including EGL/egl.h). Also, include the X11 headers only
when ANGLE_USE_X11 is defined and, for consistency with Mesa's version of the header, when
MESA_EGL_NO_X11_HEADERS is not defined.

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

2 years ago[GTK][WPE] border-radius with non visible border doesn't work on images that have...
magomez@igalia.com [Thu, 13 Jul 2017 08:21:46 +0000 (08:21 +0000)]
[GTK][WPE] border-radius with non visible border doesn't work on images that have their own RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=174157

Reviewed by Carlos Garcia Campos.

Do not allow direct compositing of images when they have a border-radius property on WebKitGTK+ and WPE.
These platforms don't support clipping using rounded rectangles during composition, which is required
when using border-radius and the border is not visible. Due to this, they need to perform the clippping
with cairo.

This is a temporal fix, until appropriate clipping is implemented in the TextureMapper.

No new tests.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::isDirectlyCompositedImage):

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

2 years agoAX: WebView crashes app after opening VoiceOver context box menu from modal dialog
cfleizach@apple.com [Thu, 13 Jul 2017 07:47:11 +0000 (07:47 +0000)]
AX: WebView crashes app after opening VoiceOver context box menu from modal dialog
https://bugs.webkit.org/show_bug.cgi?id=163999
<rdar://problem/28949013>

Reviewed by Joanmarie Diggs.

Protect when m_object goes away.

* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]):

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

2 years ago[ESnext] Implement Object Spread
ticaiolima@gmail.com [Thu, 13 Jul 2017 07:11:45 +0000 (07:11 +0000)]
[ESnext] Implement Object Spread
https://bugs.webkit.org/show_bug.cgi?id=167963

Reviewed by Saam Barati.

JSTests:

* stress/obj-rest-destructuring-order.js: Added.
(assert):
(o.get z):
(o.get a):
* stress/obj-spread-order.js: Added.
(assert):
(o.get z):
(o.get a):
* stress/object-spread.js: Added.
(let.assert):
(assert.sameValue):
(let.o.get a):
(let.obj.get c):
(cthulhu.get x):
(let.obj.set c):
(calls.o.get z):
(calls.o.get a):
(try.let.obj.get foo):
(get calls):

Source/JavaScriptCore:

This patch implements ECMA262 stage 3 Object Spread proposal [1].
It's implemented using CopyDataPropertiesNoExclusions to copy
all enumerable keys from object being spreaded. The implementation of
CopyDataPropertiesNoExclusions follows the CopyDataProperties
implementation, however we don't receive excludedNames as parameter.

[1] - https://github.com/tc39/proposal-object-rest-spread

* builtins/GlobalOperations.js:
(globalPrivate.copyDataPropertiesNoExclusions):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitLoad):
* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):
(JSC::ObjectSpreadExpressionNode::emitBytecode):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createObjectSpreadExpression):
(JSC::ASTBuilder::createProperty):
* parser/NodeConstructors.h:
(JSC::PropertyNode::PropertyNode):
(JSC::ObjectSpreadExpressionNode::ObjectSpreadExpressionNode):
* parser/Nodes.h:
(JSC::ObjectSpreadExpressionNode::expression):
* parser/Parser.cpp:
(JSC::Parser<LexerType>::parseProperty):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createObjectSpreadExpression):
(JSC::SyntaxChecker::createProperty):

LayoutTests:

* js/parser-syntax-check-expected.txt:
* js/script-tests/parser-syntax-check.js:

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

2 years agoWeb Automation: evaluateJavaScriptFunction should start the callback timeout after...
carlosgc@webkit.org [Thu, 13 Jul 2017 06:34:20 +0000 (06:34 +0000)]
Web Automation: evaluateJavaScriptFunction should start the callback timeout after the function is applied
https://bugs.webkit.org/show_bug.cgi?id=174421

Reviewed by Brian Burg.

This is causing selenium test testShouldNotTimeoutIfScriptCallsbackInsideAZeroTimeout to fail, because
JavaScriptTimeout error is generated unexpectedly. When no script timeout is specified, 0 is used by default,
which means we do a setTimeout with 0 and then the script does another setTimeout with 0, but ours is dispatched
before and reportTimeoutError is called. We should start our timeout after applying the function, and only if
the result hasn't been reported yet.

* WebProcess/Automation/WebAutomationSessionProxy.js:
(let.AutomationSessionProxy.prototype.evaluateJavaScriptFunction):

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

2 years ago[iOS DnD] [WK2] Add SPI to enable, disable, or follow default behavior for DnD on...
wenson_hsieh@apple.com [Thu, 13 Jul 2017 02:39:12 +0000 (02:39 +0000)]
[iOS DnD] [WK2] Add SPI to enable, disable, or follow default behavior for DnD on a WKWebView
https://bugs.webkit.org/show_bug.cgi?id=174440
<rdar://problem/33272627>

Reviewed by Beth Dakin.

Adds a new _dragInteractionPolicy property to WKWebView, which an internal client may use to always allow
dragging out of the web view (_WKDragInteractionPolicyAlwaysEnable), never allow
(_WKDragInteractionPolicyAlwaysDisable) or just use the default device-dependent behavior
(_WKDragInteractionPolicyDefault).

Also removes an extraneous class from WKContentViewInteraction.mm that is no longer used anywhere.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):

Set _dragInteractionPolicy to _WKDragInteractionPolicyDefault upon initialization.

(-[WKWebView _dragInteractionPolicy]):
(-[WKWebView _setDragInteractionPolicy:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(shouldEnableDragInteractionForPolicy):
(-[WKContentView _didChangeDragInteractionPolicy]):

Called by the WKWebView when its _dragInteractionPolicy changes. The content view updates its
UIDragInteraction's -enabled property here in response.

(-[WKContentView setupDataInteractionDelegates]):

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

2 years agoAsync image decoding for large images should be disabled by default
commit-queue@webkit.org [Thu, 13 Jul 2017 02:20:19 +0000 (02:20 +0000)]
Async image decoding for large images should be disabled by default
https://bugs.webkit.org/show_bug.cgi?id=174432

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-07-12
Reviewed by Simon Fraser.

Source/WebCore:

-- Rename GraphicsLayerPaintFlags::Snapshotting to AllowAsyncImageDecoding.
-- Replace every reference to GraphicsLayerPaintFlags::Snapshotting by
   GraphicsLayerPaintFlags::None and every GraphicsLayerPaintFlags::None
   by AllowAsyncImageDecoding.
-- Rename PaintBehaviorSnapshotting to PaintBehaviorAllowAsyncImageDecoding.
-- Propagate PaintBehaviorAllowAsyncImageDecoding from a parent view to
   a child view instead of propagating PaintBehaviorSnapshotting.
-- Remove setting the bit PaintBehaviorSnapshotting in any new PaintBehavoir.
-- Replace setting the bit PaintBehaviorSnapshotting in an existing PaintBehavoir
   by resetting the bit PaintBehaviorAllowAsyncImageDecoding.

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
* page/FrameView.cpp:
(WebCore::FrameView::willPaintContents):
(WebCore::FrameView::paintContentsForSnapshot):
* platform/graphics/GraphicsLayer.h:
* platform/graphics/GraphicsLayerClient.h:
* platform/graphics/mac/WebLayer.mm:
(-[WebLayer drawInContext:]):
(-[WebSimpleLayer drawInContext:]):
* rendering/PaintPhase.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::decodingModeForImageDraw):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
* rendering/RenderBoxModelObject.h:
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintIntoRect):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintForegroundForFragments):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintContents):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents): We need to propagate the
PaintBehaviorAllowAsyncImageDecoding from RenderWidget to the FrameView.
We did not need to do that for PaintBehaviorSnapshotting because
FrameView was setting it in its m_paintBehavior if (document->printing())
in FrameView::willPaintContents().

Source/WebKit/mac:

-- Remove setting the bit PaintBehaviorSnapshotting in any new PaintBehavoir.
-- Return PaintBehaviorAllowAsyncImageDecoding when the return value was 0.
-- Propagate PaintBehaviorAllowAsyncImageDecoding from a parent view to
   a child view instead of propagating PaintBehaviorSnapshotting.
-- Replace setting the bit PaintBehaviorSnapshotting in an existing PaintBehavoir
   by resetting the bit PaintBehaviorAllowAsyncImageDecoding.

* WebView/WebFrame.mm:
(-[WebFrame _paintBehaviorForDestinationContext:]):
(-[WebFrame _drawRect:contentsOnly:]):
* WebView/WebHTMLView.mm:
(imageFromRect):

Source/WebKit2:

-- Replace every reference to GraphicsLayerPaintFlags::Snapshotting by
   GraphicsLayerPaintFlags::None and every GraphicsLayerPaintFlags::None
   by AllowAsyncImageDecoding.
-- Replace setting the bit PaintBehaviorSnapshotting in an existing PaintBehavoir
   by resetting the bit PaintBehaviorAllowAsyncImageDecoding.

* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::drawInContext):
* WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
(WebKit::imageForRect):
* WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
(WebKit::InjectedBundleRangeHandle::renderedImage):

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

2 years agoGardening: build fix after r219434.
mark.lam@apple.com [Thu, 13 Jul 2017 00:22:26 +0000 (00:22 +0000)]
Gardening: build fix after r219434.
https://bugs.webkit.org/show_bug.cgi?id=174441

Not reviewed.

Make public some MacroAssembler functions that are needed by the probe implementationq.

* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::trustedImm32FromPtr):
* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::linkCall):

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

2 years agoREGRESSION(r219391): Broke the USE(OPENGL_ES_2) build
timothy@hatcher.name [Thu, 13 Jul 2017 00:15:56 +0000 (00:15 +0000)]
REGRESSION(r219391): Broke the USE(OPENGL_ES_2) build
https://bugs.webkit.org/show_bug.cgi?id=174442

Unreviewed build fix.

* platform/graphics/egl/GLContextEGL.cpp: Fix typo of OPENGL_ES2.

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

2 years agoRecreate the AudioUnit when restarting capture
commit-queue@webkit.org [Thu, 13 Jul 2017 00:03:37 +0000 (00:03 +0000)]
Recreate the AudioUnit when restarting capture
https://bugs.webkit.org/show_bug.cgi?id=174439

Patch by Youenn Fablet <youenn@apple.com> on 2017-07-12
Reviewed by Jer Noble.

Sometimes other applications in the system like FaceTime may make the audio unit not functional.
Reloading the tab capturing audio will trigger a call to stop the audio shared unit.
When the tab requests again audio, the shared unit will restart.
At that time, the AudioUnit shared unit will be fully recreated.

Manually tested by doing a webrtc call and then doing a FaceTime call.
Remote WebRTC endpoints may not receive any audio.
With the patch, reloading the web page will get back the audio.
Previously, restarting the UIProcess was the only way.

* platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioSharedUnit::startProducingData): Cleaning the audio unit when starting to produce data if there is a preexisting audio unit.

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

2 years agoMove Probe code from AbstractMacroAssembler to MacroAssembler.
mark.lam@apple.com [Wed, 12 Jul 2017 23:50:01 +0000 (23:50 +0000)]
Move Probe code from AbstractMacroAssembler to MacroAssembler.
https://bugs.webkit.org/show_bug.cgi?id=174441

Reviewed by Saam Barati.

This is a pure refactoring patch for moving probe code from the AbstractMacroAssembler
to MacroAssembler.  There is no code behavior change.

* assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler<AssemblerType>::Address::indexedBy):
(JSC::AbstractMacroAssembler::CPUState::gprName): Deleted.
(JSC::AbstractMacroAssembler::CPUState::fprName): Deleted.
(JSC::AbstractMacroAssembler::CPUState::gpr): Deleted.
(JSC::AbstractMacroAssembler::CPUState::fpr): Deleted.
(JSC::MacroAssemblerType>::Address::indexedBy): Deleted.
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::CPUState::gprName):
(JSC::MacroAssembler::CPUState::fprName):
(JSC::MacroAssembler::CPUState::gpr):
(JSC::MacroAssembler::CPUState::fpr):
* assembler/MacroAssemblerARM.cpp:
(JSC::MacroAssembler::probe):
(JSC::MacroAssemblerARM::probe): Deleted.
* assembler/MacroAssemblerARM.h:
* assembler/MacroAssemblerARM64.cpp:
(JSC::MacroAssembler::probe):
(JSC::MacroAssemblerARM64::probe): Deleted.
* assembler/MacroAssemblerARM64.h:
* assembler/MacroAssemblerARMv7.cpp:
(JSC::MacroAssembler::probe):
(JSC::MacroAssemblerARMv7::probe): Deleted.
* assembler/MacroAssemblerARMv7.h:
* assembler/MacroAssemblerMIPS.h:
* assembler/MacroAssemblerX86Common.cpp:
(JSC::MacroAssembler::probe):
(JSC::MacroAssemblerX86Common::probe): Deleted.
* assembler/MacroAssemblerX86Common.h:

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

2 years agoGenericArguments consults the wrong state when tracking modified argument descriptors...
sbarati@apple.com [Wed, 12 Jul 2017 23:30:07 +0000 (23:30 +0000)]
GenericArguments consults the wrong state when tracking modified argument descriptors and mapped arguments
https://bugs.webkit.org/show_bug.cgi?id=174411
<rdar://problem/31696186>

Reviewed by Mark Lam.

JSTests:

* stress/generic-arguments-correct-delete-behavior.js: Added.
(assert):
(makeTest):

Source/JavaScriptCore:

The code for deleting an argument was incorrectly referencing state
when it decided if it should unmap or mark a property as having its
descriptor modified. This patch fixes the bug where if we delete a
property, we would sometimes not unmap an argument when deleting it.

* runtime/GenericArgumentsInlines.h:
(JSC::GenericArguments<Type>::getOwnPropertySlot):
(JSC::GenericArguments<Type>::getOwnPropertySlotByIndex):
(JSC::GenericArguments<Type>::deleteProperty):
(JSC::GenericArguments<Type>::deletePropertyByIndex):

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

2 years agoVersioning.
jmarcell@apple.com [Wed, 12 Jul 2017 23:27:40 +0000 (23:27 +0000)]
Versioning.

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

2 years agoAccessing localDescription, remoteDescription, etc. after setTimeout raises EXC_BAD_A...
commit-queue@webkit.org [Wed, 12 Jul 2017 22:31:45 +0000 (22:31 +0000)]
Accessing localDescription, remoteDescription, etc. after setTimeout raises EXC_BAD_ACCESS
https://bugs.webkit.org/show_bug.cgi?id=174323
<rdar://problem/33267876>

Patch by Youenn Fablet <youenn@apple.com> on 2017-07-12
Reviewed by Eric Carlson.

Test: webrtc/calling-peerconnection-once-closed.html

In case the libwebrtc backend is null, we should not use it to get description from it.
Return null in that case.

Adding ASSERT to other calls where the layer above LibWebRTCMediaEndpoint should protect
from calling a function on a null libwebrtc backend.

* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::currentLocalDescription):
(WebCore::LibWebRTCMediaEndpoint::currentRemoteDescription):
(WebCore::LibWebRTCMediaEndpoint::pendingLocalDescription):
(WebCore::LibWebRTCMediaEndpoint::pendingRemoteDescription):
(WebCore::LibWebRTCMediaEndpoint::localDescription):
(WebCore::LibWebRTCMediaEndpoint::remoteDescription):
(WebCore::LibWebRTCMediaEndpoint::doSetLocalDescription):
(WebCore::LibWebRTCMediaEndpoint::doSetRemoteDescription):
(WebCore::LibWebRTCMediaEndpoint::addTrack):
(WebCore::LibWebRTCMediaEndpoint::removeTrack):
(WebCore::LibWebRTCMediaEndpoint::doCreateOffer):
(WebCore::LibWebRTCMediaEndpoint::doCreateAnswer):
(WebCore::LibWebRTCMediaEndpoint::createDataChannel):

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

2 years agoUnreviewed, rolling out r219176.
commit-queue@webkit.org [Wed, 12 Jul 2017 22:26:08 +0000 (22:26 +0000)]
Unreviewed, rolling out r219176.
https://bugs.webkit.org/show_bug.cgi?id=174436

"Can cause infinite recursion on iOS" (Requested by mlam on
#webkit).

Reverted changeset:

"WTF::Thread should have the threads stack bounds."
https://bugs.webkit.org/show_bug.cgi?id=173975
http://trac.webkit.org/changeset/219176

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

2 years agoAX: [iOS] Implement a way to retrieve a text marker range with desired text that...
n_wang@apple.com [Wed, 12 Jul 2017 22:20:43 +0000 (22:20 +0000)]
AX: [iOS] Implement a way to retrieve a text marker range with desired text that is closest to a position
https://bugs.webkit.org/show_bug.cgi?id=174393
<rdar://problem/33248006>

Reviewed by Chris Fleizach.

Source/WebCore:

Used the existing findClosestPlainText function to search the range on iOS.
Also exposed a function on the iOS wrapper to return the selection rects of
the result range from the searching.

Test: accessibility/ios-simulator/text-marker-range-matches-text.html

* accessibility/AXObjectCache.cpp:
(WebCore::visiblePositionForPositionWithOffset):
(WebCore::AXObjectCache::rangeMatchesTextNearRange):
* accessibility/AXObjectCache.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper rangeFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper textMarkerRangeFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper textRectsFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper rectsForSelectionRects:]):

Tools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(textMarkerRangeMatchesTextNearMarkersCallback):
(AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):

LayoutTests:

* accessibility/ios-simulator/text-marker-range-matches-text-expected.txt: Added.
* accessibility/ios-simulator/text-marker-range-matches-text.html: Added.

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

2 years agoUnreviewed, rolling out r219409.
jlewis3@apple.com [Wed, 12 Jul 2017 20:57:43 +0000 (20:57 +0000)]
Unreviewed, rolling out r219409.

The revision caused the Windows builds to fail.

Reverted changeset:

"AX: [iOS] Implement a way to retrieve a text marker range
with desired text that is closest to a position"
https://bugs.webkit.org/show_bug.cgi?id=174393
http://trac.webkit.org/changeset/219409

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

2 years ago[FreeType] Enable BCI on webfonts
commit-queue@webkit.org [Wed, 12 Jul 2017 20:44:41 +0000 (20:44 +0000)]
[FreeType] Enable BCI on webfonts
https://bugs.webkit.org/show_bug.cgi?id=174403

Patch by Alicia Boya García <aboya@igalia.com> on 2017-07-12
Reviewed by Michael Catanzaro.

The FreeType BCI hinter used to be disabled on webfonts in favor of
the autohinter.

FreeType BCI hinter has improved considerably in the past and now most
other browsers enable it too. Given the old reasons no longer apply,
the BCI has now been enabled in order to get better text rendering when
embedded hints are available.

* platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
(WebCore::FontCustomPlatformData::FontCustomPlatformData):

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

2 years agoUnreviewed, rolling out r219361.
commit-queue@webkit.org [Wed, 12 Jul 2017 20:43:37 +0000 (20:43 +0000)]
Unreviewed, rolling out r219361.
https://bugs.webkit.org/show_bug.cgi?id=174434

Huge PLUM memory regression on iOS (Requested by kling on
#webkit).

Reverted changeset:

"[WebIDL] Convert MutationCallback to be a normal generate
callback"
https://bugs.webkit.org/show_bug.cgi?id=174140
http://trac.webkit.org/changeset/219361

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

2 years agoUpdate web platform tests for elementFromPoint and elementsFromPoint
commit-queue@webkit.org [Wed, 12 Jul 2017 20:21:34 +0000 (20:21 +0000)]
Update web platform tests for elementFromPoint and elementsFromPoint
https://bugs.webkit.org/show_bug.cgi?id=174391

Patch by Ali Juma <ajuma@chromium.org> on 2017-07-12
Reviewed by Youenn Fablet.

This updates tests to include changes made upstream in
https://github.com/w3c/web-platform-tests/pull/6349. These changes make the tests
fit within the 800x600 window size used in layout tests.

* web-platform-tests/cssom-view/elementFromPoint-expected.txt: Updated.
* web-platform-tests/cssom-view/elementFromPoint.html: Updated.
* web-platform-tests/cssom-view/elementsFromPoint.html: Updated.

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

2 years ago[MediaStream] a capture source failure should end the MediaStreamTrack
eric.carlson@apple.com [Wed, 12 Jul 2017 20:19:44 +0000 (20:19 +0000)]
[MediaStream] a capture source failure should end the MediaStreamTrack
https://bugs.webkit.org/show_bug.cgi?id=174375

Reviewed by Youenn Fablet.

Source/WebCore:

Test: fast/mediastream/media-stream-track-source-failure.html

* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::captureFailed): New, signal observers that the source has ended.
* platform/mediastream/RealtimeMediaSource.h:

* platform/mediastream/mac/AVMediaCaptureSource.h:
* platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::AVMediaCaptureSource::setupSession): Call captureFailed if setupCaptureSession fails.

* platform/mediastream/mac/AVVideoCaptureSource.h:
* platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::setupCaptureSession): Return false on failure.
(WebCore::AVVideoCaptureSource::shutdownCaptureSession): Delete unused instance variable.
(WebCore::AVVideoCaptureSource::processNewFrame): Ditto.

* testing/Internals.cpp:
(WebCore::Internals::endMediaStreamTrackCaptureSource): Call track.source.captureFailed().
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit2:

* UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::captureStateChanged): Consolidate start/end.
(WebKit::UserMediaPermissionRequestManagerProxy::startedCaptureSession): Deleted.
(WebKit::UserMediaPermissionRequestManagerProxy::endedCaptureSession): Deleted.
* UIProcess/UserMediaPermissionRequestManagerProxy.h:

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::isPlayingMediaDidChange): Call captureStateChanged if the capture
state changes. Consider interrupted flags.

LayoutTests:

* fast/mediastream/media-stream-track-source-failure-expected.txt: Added.
* fast/mediastream/media-stream-track-source-failure.html: Added.

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

2 years agoImprove font matching with FontConfig and FreeType
timothy@hatcher.name [Wed, 12 Jul 2017 19:16:44 +0000 (19:16 +0000)]
Improve font matching with FontConfig and FreeType
https://bugs.webkit.org/show_bug.cgi?id=174374

Reviewed by Michael Catanzaro.

* platform/graphics/freetype/FontCacheFreeType.cpp:
(WebCore::FontCache::createFontPlatformData): Loop through all family name matches from FcFontMatch.

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

2 years agoReactivate audio ducking when restarting the shared unit
commit-queue@webkit.org [Wed, 12 Jul 2017 19:08:06 +0000 (19:08 +0000)]
Reactivate audio ducking when restarting the shared unit
https://bugs.webkit.org/show_bug.cgi?id=174428

Patch by Youenn Fablet <youenn@apple.com> on 2017-07-12
Reviewed by Eric Carlson.

Currently, when another application ducks WebKit, there is no other way than to quit the UIProcess and restart it.
By again audio ducking when starting the audio unit, reloading the page will be enough.
Testing by launching a tab with audio capture and audio playing.
Then make a FaceTime call and hear the tab volume go down.
End the call to FaceTime and the tab volume remains low.
Reload the tab and the volume has a normal level.

* platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioSharedUnit::setupAudioUnit):
(WebCore::CoreAudioSharedUnit::startInternal):

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

2 years agobmalloc: Failure to build when the compiler specifically targets ARMv8-A / defines...
aperez@igalia.com [Wed, 12 Jul 2017 18:43:36 +0000 (18:43 +0000)]
bmalloc: Failure to build when the compiler specifically targets ARMv8-A / defines __ARM_ARCH_8A__
https://bugs.webkit.org/show_bug.cgi?id=174424

Reviewed by Michael Catanzaro.

* bmalloc/BPlatform.h: Also check for __ARCH_ARM_8A__ to detect ARMv8.

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

2 years ago[WTF] Failure to build when the compiler specifically targets ARMv8-A / defines __ARM...
aperez@igalia.com [Wed, 12 Jul 2017 18:42:29 +0000 (18:42 +0000)]
[WTF] Failure to build when the compiler specifically targets ARMv8-A / defines __ARM_ARCH_8A__
https://bugs.webkit.org/show_bug.cgi?id=174425

Reviewed by Michael Catanzaro.

* wtf/Platform.h: Also check for __ARCH_ARM_8A__ to detect ARMv8.

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

2 years agoPlayback controls should not hide while AirPlay is active
commit-queue@webkit.org [Wed, 12 Jul 2017 18:19:28 +0000 (18:19 +0000)]
Playback controls should not hide while AirPlay is active
https://bugs.webkit.org/show_bug.cgi?id=174422
<rdar://problem/33011477>

Patch by Antoine Quint <graouts@apple.com> on 2017-07-12
Reviewed by Eric Carlson.

Source/WebCore:

We now also track changes in AirPlay playback status and account for it when identifying whether we
ought to let media controls automatically hide, which should only happen if the media is playing and
not playing back through AirPlay.

* Modules/modern-media-controls/media/controls-visibility-support.js:
(ControlsVisibilitySupport.prototype.get mediaEvents):
(ControlsVisibilitySupport.prototype._updateControls):
(ControlsVisibilitySupport):

LayoutTests:

Expand the existing AirPlaySupport test to check that when we enter AirPlay we correctly prevent
the media controls from automatically hiding.

* media/modern-media-controls/airplay-support/airplay-support-expected.txt:
* media/modern-media-controls/airplay-support/airplay-support.html:

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

2 years agoUnreviewed build fix when both DATA_LOG_TO_FILE and DATA_LOG_FILENAME are defined.
msaboff@apple.com [Wed, 12 Jul 2017 18:07:14 +0000 (18:07 +0000)]
Unreviewed build fix when both DATA_LOG_TO_FILE and DATA_LOG_FILENAME are defined.

* wtf/DataLog.cpp:
(WTF::initializeLogFileOnce): Changed declaration of logBasename from
char* logBasename to const char* logBasename.

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

2 years agoAttempt to fix the build following <https://trac.webkit.org/changeset/219407>
dbates@webkit.org [Wed, 12 Jul 2017 18:01:19 +0000 (18:01 +0000)]
Attempt to fix the build following <https://trac.webkit.org/changeset/219407>
(https://bugs.webkit.org/show_bug.cgi?id=174386)

Fix bad merge after <https://trac.webkit.org/changeset/219404>.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/FrameLoader.h:

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

2 years agoAX: [iOS] Implement a way to retrieve a text marker range with desired text that...
n_wang@apple.com [Wed, 12 Jul 2017 17:58:25 +0000 (17:58 +0000)]
AX: [iOS] Implement a way to retrieve a text marker range with desired text that is closest to a position
https://bugs.webkit.org/show_bug.cgi?id=174393
<rdar://problem/33248006>

Reviewed by Chris Fleizach.

Source/WebCore:

Used the existing findClosestPlainText function to search the range on iOS.
Also exposed a function on the iOS wrapper to return the selection rects of
the result range from the searching.

Test: accessibility/ios-simulator/text-marker-range-matches-text.html

* accessibility/AXObjectCache.cpp:
(WebCore::visiblePositionForPositionWithOffset):
(WebCore::AXObjectCache::rangeMatchesTextNearRange):
* accessibility/AXObjectCache.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper rangeFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper textMarkerRangeFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper textRectsFromMarkers:withText:]):
(-[WebAccessibilityObjectWrapper rectsForSelectionRects:]):

Tools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(textMarkerRangeMatchesTextNearMarkersCallback):
(AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):

LayoutTests:

* accessibility/ios-simulator/text-marker-range-matches-text-expected.txt: Added.
* accessibility/ios-simulator/text-marker-range-matches-text.html: Added.

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

2 years agoSkip WebRTC tests on Windows.
pvollan@apple.com [Wed, 12 Jul 2017 17:50:27 +0000 (17:50 +0000)]
Skip WebRTC tests on Windows.

Unreviewed test gardening.

* platform/win/TestExpectations:

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

2 years agoNavigationAction should track whether the navigation was initiated by the main frame
dbates@webkit.org [Wed, 12 Jul 2017 17:25:37 +0000 (17:25 +0000)]
NavigationAction should track whether the navigation was initiated by the main frame
https://bugs.webkit.org/show_bug.cgi?id=174386
<rdar://problem/33245267>

Reviewed by Brady Eidson.

Source/WebCore:

Although we added state to NavigationAction to track whether the navigation was
initiated by the main frame in r219170 it is not possible to initialize this state
when instantiating a NavigationAction. Having NavigationAction track this state
will be useful to ensure that we can always compute the source frame information
when asking the embedding client whether to allow a navigation. We will make use
of it in the fix for <https://bugs.webkit.org/show_bug.cgi?id=174385>.

No behavior changed. So, no new tests.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL): Pass whether the load was initiated by the main frame
when instantiating the NavigationAction.
(WebCore::FrameLoader::load): For now, pass InitiatedByMainFrame::Unknown when instantiating
the NavigationAction as we do not know if the load was initiated by the main frame.
(WebCore::FrameLoader::loadWithDocumentLoader): Ditto.
(WebCore::FrameLoader::reload): Ditto
(WebCore::FrameLoader::loadDifferentDocumentItem): Ditto.
(WebCore::createWindow): Pass whether the load was initiated by the main frame when
instantiating the NavigationAction.
* loader/NavigationAction.cpp:
(WebCore::NavigationAction::NavigationAction): Modified to take argument of type InitiatedByMainFrame
that indicates whether the navigation was initiated by the main frame.
* loader/NavigationAction.h:
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy): For now, pass InitiatedByMainFrame::Unknown
when instantiating the NavigationAction as we do not know if the load was initiated by the
main frame.
* page/ContextMenuController.cpp:
(WebCore::openNewWindow): Pass whether the load was initiated by the main frame when
instantiating the NavigationAction.

Source/WebKit2:

* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::openInNewTab): Pass whether the load was initiated by the main frame
when instantiating the NavigationAction.

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

2 years agoMake prepare-ChangeLog -g <commit> generate a more standard ChangeLog entry.
commit-queue@webkit.org [Wed, 12 Jul 2017 17:16:48 +0000 (17:16 +0000)]
Make prepare-ChangeLog -g <commit> generate a more standard ChangeLog entry.
https://bugs.webkit.org/show_bug.cgi?id=174197

Patch by Emilio Cobos Álvarez <ecobos@igalia.com> on 2017-07-12
Reviewed by Darin Adler.

This bit me the first time I tried to submit a patch to WebKit, and still I have
to manually edit the ChangeLog every time I use the script.

This generates a more convenient and standard ChangeLog entry.

* Scripts/prepare-ChangeLog:
(generateNewChangeLogs):

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

2 years agoRebaseline of test fast/dom/Window/property-access-on-cached-window-after-frame-remov...
jlewis3@apple.com [Wed, 12 Jul 2017 17:14:40 +0000 (17:14 +0000)]
Rebaseline of test fast/dom/Window/property-access-on-cached-window-after-frame-removed.html.
https://bugs.webkit.org/show_bug.cgi?id=174400

Unreviewed test gardening.

* fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt:

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

2 years agoRename NavigationInitiatedByMainFrame to InitiatedByMainFrame
dbates@webkit.org [Wed, 12 Jul 2017 17:12:07 +0000 (17:12 +0000)]
Rename NavigationInitiatedByMainFrame to InitiatedByMainFrame
https://bugs.webkit.org/show_bug.cgi?id=174427

Rubber-stamped by Brady Eidson.

Source/WebCore:

* inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::openInNewTab):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::navigate):
* loader/FrameLoadRequest.cpp:
(WebCore::FrameLoadRequest::FrameLoadRequest):
* loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::initiatedByMainFrame):
(WebCore::FrameLoadRequest::navigationInitiatedByMainFrame): Deleted.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::shouldOpenExternalURLsPolicyToApply):
(WebCore::applyShouldOpenExternalURLsPolicyToNewDocumentLoader):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::reload):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/FrameLoader.h:
* loader/FrameLoaderTypes.h:
* loader/NavigationAction.h:
(WebCore::NavigationAction::initiatedByMainFrame):
(WebCore::NavigationAction::navigationInitiatedByMainFrame): Deleted.
* loader/NavigationScheduler.cpp:
(WebCore::ScheduledNavigation::ScheduledNavigation):
(WebCore::ScheduledNavigation::initiatedByMainFrame):
(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::ScheduledNavigation::navigationInitiatedByMainFrame): Deleted.
* page/ContextMenuController.cpp:
(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::createWindow):

Source/WebKit/ios:

* WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):

Source/WebKit/mac:

* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

Source/WebKit/win:

* Plugins/PluginView.cpp:
(WebCore::PluginView::start):
(WebCore::PluginView::getURLNotify):
(WebCore::PluginView::getURL):
(WebCore::PluginView::handlePost):

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::loadURL):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchCreatePage):
* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::openInNewTab):

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

2 years agoUnreviewed, rolling out r219401.
jlewis3@apple.com [Wed, 12 Jul 2017 17:06:43 +0000 (17:06 +0000)]
Unreviewed, rolling out r219401.

This revision rolled out the previous patch, but after talking
with reviewer, a rebaseline is what was needed.Rolling back in
before rebaseline.

Reverted changeset:

"Unreviewed, rolling out r219379."
https://bugs.webkit.org/show_bug.cgi?id=174400
http://trac.webkit.org/changeset/219401

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

2 years agoUpdate description of Secure Contexts experimental flag
dbates@webkit.org [Wed, 12 Jul 2017 16:57:16 +0000 (16:57 +0000)]
Update description of Secure Contexts experimental flag
https://bugs.webkit.org/show_bug.cgi?id=174401

Reviewed by Simon Fraser.

Change the description of the Secure Contexts experimental flag from "isSecureContext attribute"
to "Secure Contexts API".

* Shared/WebPreferencesDefinitions.h:

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

2 years agoUnreviewed, rolling out r219379.
jlewis3@apple.com [Wed, 12 Jul 2017 16:44:12 +0000 (16:44 +0000)]
Unreviewed, rolling out r219379.

This revision caused a consistent failure in the test
fast/dom/Window/property-access-on-cached-window-after-frame-
removed.html.

Reverted changeset:

"Remove NAVIGATOR_HWCONCURRENCY"
https://bugs.webkit.org/show_bug.cgi?id=174400
http://trac.webkit.org/changeset/219379

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

2 years ago[GTK] Media test gardening after r219253
commit-queue@webkit.org [Wed, 12 Jul 2017 16:14:31 +0000 (16:14 +0000)]
[GTK] Media test gardening after r219253
https://bugs.webkit.org/show_bug.cgi?id=174254

Unreviewed test gardening.

video-cookie was fixed by r219252.
media/video-restricted-no-preload-metadata.html been passing consistently.

Patch by Charlie Turner <cturner@igalia.com> on 2017-07-12

* platform/gtk/TestExpectations:

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

2 years agoWrong radix used in Unicode Escape in invalid character error message
commit-queue@webkit.org [Wed, 12 Jul 2017 15:57:14 +0000 (15:57 +0000)]
Wrong radix used in Unicode Escape in invalid character error message
https://bugs.webkit.org/show_bug.cgi?id=174419

Patch by Tooru Fujisawa [:arai] <arai.unmht@gmail.com> on 2017-07-12
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

* web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-003-expected.txt:
* web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-004-expected.txt:

Source/JavaScriptCore:

* parser/Lexer.cpp:
(JSC::Lexer<T>::invalidCharacterMessage):

LayoutTests:

* fast/loader/cache-encoding-expected.txt:
* http/tests/preload/preload-encoding-expected.txt:
* js/basic-strict-mode-expected.txt:
* js/kde/parse-expected.txt:
* loader/reload-subresource-when-type-changes-expected.txt:
* platform/ios/imported/w3c/web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-003-expected.txt:
* platform/ios/imported/w3c/web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-004-expected.txt:

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

2 years agoImport test verifying combination of allow-top-navigation and allow-top-navigation...
fred.wang@free.fr [Wed, 12 Jul 2017 15:47:33 +0000 (15:47 +0000)]
Import test verifying combination of allow-top-navigation and allow-top-navigation-by-user-activation
https://bugs.webkit.org/show_bug.cgi?id=174351

Patch by Frederic Wang <fwang@igalia.com> on 2017-07-12
Reviewed by Youenn Fablet.

This imports a test to verify that the combination of the allow-top-navigation and
allow-top-navigation-by-user-activation flags is just treated as allow-top-navigation.
For now the expectation contains a parsing error message which will be removed when bug
171327 is fixed.

* web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
Add the new test.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html: Added.
This is imported from the W3C repository.
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3-expected.txt: Added.
The test passes, even if for now the 'allow-top-navigation-by-user-activation' triggers a
parsing error message in the console.

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

2 years agoPaginated mode: Infinite recursion in RenderTable::layout
zalan@apple.com [Wed, 12 Jul 2017 15:37:52 +0000 (15:37 +0000)]
Paginated mode: Infinite recursion in RenderTable::layout
https://bugs.webkit.org/show_bug.cgi?id=174413

Reviewed by Simon Fraser.

This patch is a workaround for avoiding infinite recursion when the table layout does not stabilize.
Apparently we leak some context (computed padding in this case) from the current to the subsequent layout.
The subsequent layouts always end up producing different line heights for some of the cells in the <thead>.
In paginated mode, when the section moves (<thead>, <tbody> etc) we call layout again recursively.
This could lead to infinite recursion for unstable table layout.

Unable to come up with a reduction yet.

* rendering/RenderTable.cpp:
(WebCore::RenderTable::layout):
* rendering/RenderTable.h:

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

2 years agoWebRTC: Incorrect sdpMLineIndex for video breaks Firefox interop
commit-queue@webkit.org [Wed, 12 Jul 2017 14:27:31 +0000 (14:27 +0000)]
WebRTC: Incorrect sdpMLineIndex for video breaks Firefox interop
https://bugs.webkit.org/show_bug.cgi?id=173530

Patch by Youenn Fablet <youenn@apple.com> on 2017-07-12
Reviewed by Alex Christensen.

Source/WebCore:

Test: webrtc/ice-candidate-sdpMLineIndex.html

Reading missing parameter from libwebrtc backend and setting it when firing the RTCIceCandidate event.

* Modules/mediastream/PeerConnectionBackend.cpp:
(WebCore::PeerConnectionBackend::disableICECandidateFiltering):
(WebCore::PeerConnectionBackend::newICECandidate):
* Modules/mediastream/PeerConnectionBackend.h:
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::OnIceCandidate):

LayoutTests:

* webrtc/ice-candidate-sdpMLineIndex-expected.txt: Added.
* webrtc/ice-candidate-sdpMLineIndex.html: Added.

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

2 years ago[GCrypt] Implement CryptoKeyEC PKCS#8 exports
zandobersek@gmail.com [Wed, 12 Jul 2017 13:59:37 +0000 (13:59 +0000)]
[GCrypt] Implement CryptoKeyEC PKCS#8 exports
https://bugs.webkit.org/show_bug.cgi?id=173648

Reviewed by Jiewen Tan.

Source/WebCore:

Implement the PKCS#8 export operation for EC keys for platforms that use
libgcrypt.

First, the `ECParameters` and the `ECPrivateKey` ASN.1 structures are created
and filled out accordingly. For the former, the appropriate object identifier
is written under the `namedCurve` element of the structure. For the latter, we
write out '1' under `version`, and eliminate the optional `parameters` element.
An libgcrypt EC context is then used to retrieve the private and public key
MPIs that are then written out under the `privateKey` and `publicKey` elements,
respectively.

After that, we can proceed to create and fill out the `PrivateKeyInfo` structure.
0 is written out under the `version` element, and the id-ecPublicKey object
identifier is written out under the `privateKeyAlgorithm.algorithm` element. This
doesn't strictly follow the specification, since the id-ecDH identifier should be
used for ECDH keys, but no test in WebKit or the web-platform-tests suite covers
this, so this specific detail should be revisited later.

Data of the previously-constructed `ECParameters` structure is retrieved and
written out under the `privateKeyAlgorithm.parameters` element. Similarly is done
for the `ECPrivateKey` structure, writing out its data under the `privateKey`
element. Finally, the optional `attributes` element of the `PrivateKeyInfo`
structure is eliminated, and the encoded data of this structure is retrieved and
returned.

No new tests -- relevant tests are now passing and are unskipped.

* crypto/gcrypt/CryptoKeyECGCrypt.cpp:
(WebCore::CryptoKeyEC::platformExportPkcs8):

LayoutTests:

* platform/gtk/TestExpectations: Unskip the EC PKCS#8 export tests
that are now passing.

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

2 years ago[WPE] Use libepoxy
zandobersek@gmail.com [Wed, 12 Jul 2017 13:58:46 +0000 (13:58 +0000)]
[WPE] Use libepoxy
https://bugs.webkit.org/show_bug.cgi?id=172104

Reviewed by Michael Catanzaro.

.:

* Source/cmake/FindLibEpoxy.cmake: Added.
* Source/cmake/OptionsWPE.cmake: Find libepoxy, don't search for
EGL or OpenGL ES anymore, and enable USE_LIBEPOXY by default.

Source/WebCore:

No new tests -- no changes in behavior.

Implement the proper libepoxy header inclusion for ports that enable it.

The library acts as a loading facility working on top of the system-provided
OpenGL and EGL libraries, with the headers providing a complete collection of
specification-defined OpenGL and EGL types, constants and entrypoints.

Support is added through the USE(LIBEPOXY) build guard. Note that this guard
isn't exclusive with USE(OPENGL), USE(OPENGL_ES_2) or USE(EGL), so the
USE(LIBEPOXY) condition is tested before those.

In case of OpenGL headers, the <epoxy/gl.h> header is included, and in
case of EGL headers, the <epoxy/egl.h> header. <epoxy/egl.h> includes
<epoxy/gl.h> on its own, so in some cases the inclusion of the latter is
omitted.

EpoxyShims.h header is added, doing a job similar to OpenGLESShims.h. The
EXT-suffixed GL entrypoints are redefined to the non-suffixed versions.
No suffixed constants are defined because those are defined by the libepoxy
headers to the well-known values.

* CMakeLists.txt:
* PlatformWPE.cmake:
* platform/graphics/ANGLEWebKitBridge.h:
* platform/graphics/EpoxyShims.h: Added.
* platform/graphics/GLContext.cpp:
(WebCore::initializeOpenGLShimsIfNeeded):
* platform/graphics/GraphicsContext3DPrivate.cpp:
* platform/graphics/PlatformDisplay.cpp:
* platform/graphics/cairo/CairoUtilities.cpp:
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::create):
* platform/graphics/cairo/ImageBufferCairo.cpp:
* platform/graphics/egl/GLContextEGL.cpp:
* platform/graphics/egl/GLContextEGLWPE.cpp:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
* platform/graphics/opengl/Extensions3DOpenGLES.cpp:
* platform/graphics/opengl/Extensions3DOpenGLES.h:
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
* platform/graphics/opengl/TemporaryOpenGLSetting.cpp:
* platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp:
* platform/graphics/wpe/PlatformDisplayWPE.cpp:

Source/WebKit2:

* PlatformWPE.cmake: Drop the EGL_INCLUDE_DIRS compilation flags.
* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
Include <epoxy/gl.h> when compiling with libepoxy usage enabled.

Tools:

* WebKitTestRunner/wpe/HeadlessViewBackend.h:
Include the <epoxy/egl.h> header, dropping the EGL and GLES2 inclusions.

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

2 years ago[GTK][WPE] Align Jhbuild patches for GStreamer packages
zandobersek@gmail.com [Wed, 12 Jul 2017 11:26:11 +0000 (11:26 +0000)]
[GTK][WPE] Align Jhbuild patches for GStreamer packages
https://bugs.webkit.org/show_bug.cgi?id=174363

Reviewed by Michael Catanzaro.

Align the patches we apply over Jhbuild-managed GStreamer dependency packages
between the GTK+ and WPE port. There's no reason for the two ports to apply
different patches over same versions of GStreamer releases.

This aligns the two ports on this specific issue. Next we'll look into
creating a single GStreamer-specific Jhbuild moduleset that will allow us
to keep these patches in a single place, avoiding duplicate files.

* gtk/jhbuild.modules:
* gtk/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Added.
* gtk/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch.
* gtk/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Added.
* wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Removed.

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

2 years agoImageDecoder: Gifs with infinite animation only play once very often
carlosgc@webkit.org [Wed, 12 Jul 2017 10:58:31 +0000 (10:58 +0000)]
ImageDecoder: Gifs with infinite animation only play once very often
https://bugs.webkit.org/show_bug.cgi?id=173403

Reviewed by Michael Catanzaro.

It doesn't always happen, it's easier to reproduce when loading big files from the network, but it also depends
on every file. The problem is that ImageFrameCache is caching the repetition count value always when the size is
already available. In the case of gif files, the loop count value can be at any point of the image stream, so
having the size available doesn't mean we also have the loop count. So, if the value is queried before it's
available, the default value is cached (repeat once) and then always used. We should clear the cached value when
new data is added to the decoder, like we do with other cached values that can change when more data is decoded.

* platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::clearMetadata): Clear m_repetitionCount.

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

2 years agoWeb Automation: upstream safaridriver's JavaScript atom implementations
carlosgc@webkit.org [Wed, 12 Jul 2017 10:56:22 +0000 (10:56 +0000)]
Web Automation: upstream safaridriver's JavaScript atom implementations
https://bugs.webkit.org/show_bug.cgi?id=172060
<rdar://problem/32168187>

Reviewed by Brian Burg.

* UIProcess/Automation/atoms/ElementAttribute.js: Added.
* UIProcess/Automation/atoms/ElementDisplayed.js: Added.
* UIProcess/Automation/atoms/FindNodes.js: Added.
* UIProcess/Automation/atoms/FormElementClear.js: Added.
* UIProcess/Automation/atoms/FormSubmit.js: Added.

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

2 years ago[SOUP] Do not use C linkage for functions using C++ features
aperez@igalia.com [Wed, 12 Jul 2017 10:12:39 +0000 (10:12 +0000)]
[SOUP] Do not use C linkage for functions using C++ features
https://bugs.webkit.org/show_bug.cgi?id=174392

Reviewed by Michael Catanzaro.

No new tests because there is no behavior change.

* platform/network/soup/WebKitSoupRequestGeneric.h: Move G_END_DECLS
to leave functions which use C++ features outside of the block it
delimits.

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

2 years agoUnreviewed, attempt to fix Windows build
utatane.tea@gmail.com [Wed, 12 Jul 2017 10:11:22 +0000 (10:11 +0000)]
Unreviewed, attempt to fix Windows build
https://bugs.webkit.org/show_bug.cgi?id=174366

* wtf/FastMalloc.h:
(WTF::operator==):
(WTF::operator!=):
(WTF::FastAllocator::operator==): Deleted.
(WTF::FastAllocator::operator!=): Deleted.

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

2 years ago[GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source file of...
carlosgc@webkit.org [Wed, 12 Jul 2017 07:02:25 +0000 (07:02 +0000)]
[GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source file of drag is unavailable
https://bugs.webkit.org/show_bug.cgi?id=174161

Reviewed by Michael Catanzaro.

It seems selection data could contain an empty string, in which case gtk_selection_data_get_data() returns a
valid pointer, but gtk_selection_data_get_length() returns 0. When this happens we end up trying to split an
empty string resulting in an empty vector, but we unconditionally access the first element of the vector.

* platform/gtk/PasteboardHelper.cpp:
(WebCore::selectionDataToUTF8String): Return a null string in case selection data length is 0.
(WebCore::PasteboardHelper::fillSelectionData): Return early if selection data length is 0, instead of checking
the selection data pointer.

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

2 years ago[GTK][WPE] Enable FILE_LOCK and implement lockFile and unlockFile
carlosgc@webkit.org [Wed, 12 Jul 2017 06:59:15 +0000 (06:59 +0000)]
[GTK][WPE] Enable FILE_LOCK and implement lockFile and unlockFile
https://bugs.webkit.org/show_bug.cgi?id=174357

Reviewed by Michael Catanzaro.

.:

* Source/cmake/OptionsGTK.cmake: Use gio-unix unconditionally.

Source/WebCore:

Implement lockFile and unlockFile using flock().

* PlatformWPE.cmake:
* platform/glib/FileSystemGlib.cpp:
(WebCore::lockFile):
(WebCore::unlockFile):

Source/WTF:

* wtf/Platform.h: Enable FILE_LOCK in GTK and WPE ports.

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

2 years agoUse FastAllocator in STL containers
utatane.tea@gmail.com [Wed, 12 Jul 2017 05:42:33 +0000 (05:42 +0000)]
Use FastAllocator in STL containers
https://bugs.webkit.org/show_bug.cgi?id=174366

Rubber stamped by Sam Weinig.

This patch uses FastAllocator for STL containers including std::set and std::map.
STL can take a template parameter to be used as allocator for containers.
We prepare FastAllocator, which uses fastMalloc for allocation.
This allows us to use bmalloc (if supported) for STL containers which offers
functionalities that is not supported in WTF containers.

* Modules/indexeddb/IDBKeyData.h:
* Modules/indexeddb/server/IndexValueEntry.cpp:
(WebCore::IDBServer::IndexValueEntry::IndexValueEntry):
(WebCore::IDBServer::IndexValueEntry::Iterator::Iterator):
(WebCore::IDBServer::IndexValueEntry::reverseFind):
* Modules/indexeddb/server/IndexValueEntry.h:
* Modules/indexeddb/server/IndexValueStore.cpp:
(WebCore::IDBServer::IndexValueStore::lowestIteratorInRange):
(WebCore::IDBServer::IndexValueStore::highestReverseIteratorInRange):
(WebCore::IDBServer::IndexValueStore::Iterator::Iterator):
* Modules/indexeddb/server/IndexValueStore.h:
* Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
(WebCore::IDBServer::MemoryBackingStoreTransaction::objectStoreCleared):
* Modules/indexeddb/server/MemoryBackingStoreTransaction.h:
* Modules/indexeddb/server/MemoryObjectStore.cpp:
(WebCore::IDBServer::MemoryObjectStore::replaceKeyValueStore):
(WebCore::IDBServer::MemoryObjectStore::addRecord):
(WebCore::IDBServer::MemoryObjectStore::updateCursorsForPutRecord):
* Modules/indexeddb/server/MemoryObjectStore.h:
(WebCore::IDBServer::MemoryObjectStore::orderedKeys):
* Modules/indexeddb/server/MemoryObjectStoreCursor.cpp:
(WebCore::IDBServer::MemoryObjectStoreCursor::keyAdded):
(WebCore::IDBServer::MemoryObjectStoreCursor::setFirstInRemainingRange):
(WebCore::IDBServer::MemoryObjectStoreCursor::setForwardIteratorFromRemainingRange):
(WebCore::IDBServer::MemoryObjectStoreCursor::setReverseIteratorFromRemainingRange):
(WebCore::IDBServer::MemoryObjectStoreCursor::incrementForwardIterator):
(WebCore::IDBServer::MemoryObjectStoreCursor::incrementReverseIterator):
* Modules/indexeddb/server/MemoryObjectStoreCursor.h:
* Modules/mediasource/SampleMap.h:
* page/WheelEventTestTrigger.cpp:
(WebCore::WheelEventTestTrigger::deferTestsForReason):
(WebCore::dumpState):
* page/WheelEventTestTrigger.h:
* platform/graphics/cv/VideoTextureCopierCV.cpp:
(WebCore::enumToStringMap):
* rendering/OrderIterator.h:

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

2 years ago[Win] Build error when building WebKit.dll from WebKit.proj project file.
pvollan@apple.com [Wed, 12 Jul 2017 04:14:42 +0000 (04:14 +0000)]
[Win] Build error when building WebKit.dll from WebKit.proj project file.
https://bugs.webkit.org/show_bug.cgi?id=174410

Reviewed by Brent Fulgham.

Copy required header files to forwarding headers folder.

Source/WebCore:

* PlatformWin.cmake:

Source/WebCore/PAL:

* pal/PlatformWin.cmake:

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

2 years agoAnother build fix.
rniwa@webkit.org [Wed, 12 Jul 2017 03:00:04 +0000 (03:00 +0000)]
Another build fix.

* public/v3/components/chart-pane-base.js:
(ChartPaneBase.prototype._updateCommitLogViewer):

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

2 years agoBuild fix. It looks like the code here is racy.
rniwa@webkit.org [Wed, 12 Jul 2017 02:38:03 +0000 (02:38 +0000)]
Build fix. It looks like the code here is racy.

* public/v3/components/chart-pane-base.js:
(ChartPaneBase.prototype.configure):
(ChartPaneBase.prototype.setOpenRepository):

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

2 years agoRemove NAVIGATOR_HWCONCURRENCY
dino@apple.com [Wed, 12 Jul 2017 02:18:48 +0000 (02:18 +0000)]
Remove NAVIGATOR_HWCONCURRENCY
https://bugs.webkit.org/show_bug.cgi?id=174400

.:

Reviewed by Sam Weinig.

* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* page/NavigatorBase.cpp:
(WebCore::NavigatorBase::hardwareConcurrency): Deleted.
* page/NavigatorBase.h:
* page/NavigatorConcurrentHardware.idl: Removed.

Source/WebCore/PAL:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Sam Weinig.

* wtf/FeatureDefines.h:

Tools:

Reviewed by Sam Weinig.

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

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

2 years agoWKWindowFeatures needs to expose scrollbar, fullscreen, and dialog configuration...
commit-queue@webkit.org [Wed, 12 Jul 2017 00:25:41 +0000 (00:25 +0000)]
WKWindowFeatures needs to expose scrollbar, fullscreen, and dialog configuration properties
https://bugs.webkit.org/show_bug.cgi?id=174239

Patch by Ansh Shukla <ansh_shukla@apple.com> on 2017-07-11
Reviewed by Brady Eidson.

Source/WebKit2:

Add a new private header to expose getters for window feature properties already available
in the TFB APIWindowFeatures class. These properties are necessary for Safari to adopt more
modern API.

* UIProcess/API/Cocoa/WKWindowFeatures.mm:
(-[WKWindowFeatures _locationBarVisibility]):
(-[WKWindowFeatures _scrollbarsVisibility]):
(-[WKWindowFeatures _fullscreenDisplay]):
(-[WKWindowFeatures _dialogDisplay]):
* UIProcess/API/Cocoa/WKWindowFeaturesInternal.h: Expose some window features as read-only
properties.
* UIProcess/API/Cocoa/WKWindowFeaturesPrivate.h:
* WebKit2.xcodeproj/project.pbxproj:

Tools:

Create windows with specific features set and make sure those are properly reflected in the
WKWindowFeatures object.

* TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
(resetToConsistentState):
(-[CheckWindowFeaturesUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TEST):

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

2 years agoRealtimeOutgoingAudioSource should not push more audio data if the WebRTC thread...
commit-queue@webkit.org [Wed, 12 Jul 2017 00:25:38 +0000 (00:25 +0000)]
RealtimeOutgoingAudioSource should not push more audio data if the WebRTC thread is not able to process it
https://bugs.webkit.org/show_bug.cgi?id=174383

Patch by Youenn Fablet <youenn@apple.com> on 2017-07-11
Reviewed by Eric Carlson.

This patch adds support to check for pending-processing audio data.
If the amount of audio data is bigger than a high water mark of 0.5 seconds,
we stop pushing new audio data until buffered audio data is lower than a low water mark of 0.1 seconds.
Patch is tested by adding breakpoints to trigger the high water mark, verifying that low water mark is triggered
and receiving audio is fine on the other connection endpoint.

* platform/mediastream/mac/RealtimeOutgoingAudioSource.cpp:
(WebCore::RealtimeOutgoingAudioSource::isReachingBufferedAudioDataHighLimit):
(WebCore::RealtimeOutgoingAudioSource::isReachingBufferedAudioDataLowLimit):
(WebCore::RealtimeOutgoingAudioSource::audioSamplesAvailable):
* platform/mediastream/mac/RealtimeOutgoingAudioSource.h:

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

2 years agoDo not duplicate files when deleting directories with svn 1.9
jbedard@apple.com [Wed, 12 Jul 2017 00:24:44 +0000 (00:24 +0000)]
Do not duplicate files when deleting directories with svn 1.9
https://bugs.webkit.org/show_bug.cgi?id=174339
<rdar://problem/33226781>

Reviewed by David Kilzer.

* Scripts/svn-create-patch:
(diffOptionsForFile): No longer pass -N option, since this does not work in SVN 1.9.4.
(generateFileList): Determine which files are deleted because they are part of a
directory being deleted.

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

2 years agoWeb Inspector: Correct a typo in the .eslintrc
commit-queue@webkit.org [Wed, 12 Jul 2017 00:23:25 +0000 (00:23 +0000)]
Web Inspector: Correct a typo in the .eslintrc
https://bugs.webkit.org/show_bug.cgi?id=174389

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-07-11
Reviewed by Matt Baker.

* .eslintrc:

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

2 years agoAvoid duplicating default parameter values in [WKWebsiteDataStore _resourceLoadStatis...
cdumez@apple.com [Wed, 12 Jul 2017 00:23:16 +0000 (00:23 +0000)]
Avoid duplicating default parameter values in [WKWebsiteDataStore _resourceLoadStatisticsResetToConsistentState]
https://bugs.webkit.org/show_bug.cgi?id=174402

Reviewed by Brent Fulgham.

* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _resourceLoadStatisticsResetToConsistentState]):
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::removeDataRecords):
(WebKit::WebResourceLoadStatisticsStore::processStatisticsAndDataRecords):
(WebKit::WebResourceLoadStatisticsStore::grandfatherExistingWebsiteData):
(WebKit::WebResourceLoadStatisticsStore::performDailyTasks):
(WebKit::WebResourceLoadStatisticsStore::setTimeToLiveUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::setTimeToLiveCookiePartitionFree):
(WebKit::WebResourceLoadStatisticsStore::setMinimumTimeBetweenDataRecordsRemoval):
(WebKit::WebResourceLoadStatisticsStore::setGrandfatheringTime):
(WebKit::WebResourceLoadStatisticsStore::shouldRemoveDataRecords):
(WebKit::WebResourceLoadStatisticsStore::shouldPartitionCookies):
(WebKit::WebResourceLoadStatisticsStore::hasStatisticsExpired):
(WebKit::WebResourceLoadStatisticsStore::setMaxStatisticsEntries):
(WebKit::WebResourceLoadStatisticsStore::setPruneEntriesDownTo):
(WebKit::WebResourceLoadStatisticsStore::pruneStatisticsIfNeeded):
(WebKit::WebResourceLoadStatisticsStore::resetParametersToDefaultValues):
* UIProcess/WebResourceLoadStatisticsStore.h:

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

2 years agoRolling out r219372.
dino@apple.com [Tue, 11 Jul 2017 23:58:58 +0000 (23:58 +0000)]
Rolling out r219372.

.:

* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* page/NavigatorBase.cpp:
(WebCore::NavigatorBase::hardwareConcurrency):
* page/NavigatorBase.h:
* page/NavigatorConcurrentHardware.idl: Added.

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

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

2 years agoRemove NAVIGATOR_HWCONCURRENCY
dino@apple.com [Tue, 11 Jul 2017 23:19:14 +0000 (23:19 +0000)]
Remove NAVIGATOR_HWCONCURRENCY
https://bugs.webkit.org/show_bug.cgi?id=174400

.:

Reviewed by Sam Weinig.

* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* page/NavigatorBase.cpp:
(WebCore::NavigatorBase::hardwareConcurrency): Deleted.
* page/NavigatorBase.h:
* page/NavigatorConcurrentHardware.idl: Removed.

Source/WebCore/PAL:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Reviewed by Sam Weinig.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Sam Weinig.

* wtf/FeatureDefines.h:

Tools:

Reviewed by Sam Weinig.

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

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

2 years ago[WebCrypto] CryptoKeyECMac::Custom OpenSSL tag is actually tagged type [1]
jiewen_tan@apple.com [Tue, 11 Jul 2017 23:11:41 +0000 (23:11 +0000)]
[WebCrypto] CryptoKeyECMac::Custom OpenSSL tag is actually tagged type [1]
https://bugs.webkit.org/show_bug.cgi?id=174382
<rdar://problem/33244871>

Reviewed by Brent Fulgham.

No change of behaviour.

* crypto/mac/CryptoKeyECMac.cpp:
(WebCore::CryptoKeyEC::platformImportPkcs8):
(WebCore::CryptoKeyEC::platformExportPkcs8):
Replace CustomECParameters with TaggedType1 according to X.690(08/2015) section 8.14:
https://www.itu.int/rec/T-REC-X.690-201508-I/en
and RFC 5915 Appendix A:
http://www.ietf.org/rfc/rfc5915.txt.

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

2 years agoShow the roots built by perf try bots on results page
rniwa@webkit.org [Tue, 11 Jul 2017 22:54:55 +0000 (22:54 +0000)]
Show the roots built by perf try bots on results page
https://bugs.webkit.org/show_bug.cgi?id=174305

Reviewed by Joseph Pecoraro.

Show build products created by a perf try bots so that we can download them for local testing.

* public/v3/components/test-group-revision-table.js:
(TestGroupRevisionTable.prototype._renderTable): Find the set of repositories for which a patch is applied.
Show build products for all commit sets for such a repository since when WebKit is built with a patch in
one configuration, the other configuration also needs to be built for consistency.
(TestGroupRevisionTable.prototype._buildCommitCell): Added the hyperlink for build products.
(TestGroupRevisionTable.prototype._buildFileInfo): Takes a string to override the file's label. Since all
build products made by bots tend to have the same filename, we show the label of "Build product" instead.
(TestGroupRevisionTable.prototype._mergeCellsWithSameCommitsAcrossRows): Fixed a bug that any entry with
a patch wasn't getting merged since it was comparing against the result commit set, which does not contain
the patch (only requested commit set contains a patch).

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

2 years agoViewport fit experimental feature should be always on by default
dino@apple.com [Tue, 11 Jul 2017 22:48:40 +0000 (22:48 +0000)]
Viewport fit experimental feature should be always on by default
https://bugs.webkit.org/show_bug.cgi?id=174398
<rdar://problem/33248920>

Reviewed by Simon Fraser.

Even though this is experimental, it should be enabled by default, and
not follow the value of DEFAULT_EXPERIMENTAL_FEATURES_ENABLED.

* Shared/WebPreferencesDefinitions.h:

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

2 years agoREGRESSION(r219332): [GTK] 9 new failures on fast/forms spinbutton related tests.
clopez@igalia.com [Tue, 11 Jul 2017 22:33:10 +0000 (22:33 +0000)]
REGRESSION(r219332): [GTK] 9 new failures on fast/forms spinbutton related tests.
https://bugs.webkit.org/show_bug.cgi?id=174395

Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Mark the new failures. Further investigation pending.

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