[webkit-changes] [220443] trunk
Title: [220443] trunk Revision 220443 Author wenson_hs...@apple.com Date 2017-08-08 22:36:57 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed, rolling out r220393. This patch regresses the performance of WebPage::editorState. Reverted changeset: "[iOS WK2] WKWebView schedules nonstop layout after pressing cmb+b,i,u inside a contenteditable div" https://bugs.webkit.org/show_bug.cgi?id=175116 http://trac.webkit.org/changeset/220393 Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-024-expected.txt trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-026-expected.txt trunk/LayoutTests/platform/ios-wk2/editing/style/5084241-expected.txt trunk/LayoutTests/platform/ios-wk2/editing/style/unbold-in-bold-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/StyleProperties.cpp trunk/Source/WebCore/css/StyleProperties.h trunk/Source/WebCore/editing/EditingStyle.cpp trunk/Source/WebCore/editing/EditingStyle.h trunk/Source/WebCore/editing/Editor.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h trunk/Source/WebKit/UIProcess/API/mac/WKView.mm trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Removed Paths trunk/Tools/TestWebKitAPI/EditingTestHarness.h trunk/Tools/TestWebKitAPI/EditingTestHarness.mm trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/EditorStateTests.mm trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/editor-state-test-harness.html Diff Modified: trunk/LayoutTests/ChangeLog (220442 => 220443) --- trunk/LayoutTests/ChangeLog 2017-08-09 05:15:47 UTC (rev 220442) +++ trunk/LayoutTests/ChangeLog 2017-08-09 05:36:57 UTC (rev 220443) @@ -1,3 +1,16 @@ +2017-08-08 Wenson Hsieh+ +Unreviewed, rolling out r220393. + +This patch regresses the performance of WebPage::editorState. + +Reverted changeset: + +"[iOS WK2] WKWebView schedules nonstop layout after pressing +cmb+b,i,u inside a contenteditable div" +https://bugs.webkit.org/show_bug.cgi?id=175116 +http://trac.webkit.org/changeset/220393 + 2017-08-08 Chris Dumez [Beacon] Add support for CORS-preflighting for WK2 / NETWORK_SESSION Modified: trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-024-expected.txt (220442 => 220443) --- trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-024-expected.txt 2017-08-09 05:15:47 UTC (rev 220442) +++ trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-024-expected.txt 2017-08-09 05:36:57 UTC (rev 220443) @@ -64,6 +64,7 @@ RenderBlock {P} at (0,238) size 784x58 [border: (2px solid #FF)] RenderText {#text} at (14,15) size 36x28 text run at (14,15) width 36: "xxx" + RenderBlock (anonymous) at (0,320) size 784x0 RenderBlock {P} at (0,320) size 784x58 [border: (2px solid #FF)] RenderBR {BR} at (14,15) size 0x28 [bgcolor=#008000] RenderBlock {P} at (0,402) size 784x58 [border: (2px solid #FF)] Modified: trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-026-expected.txt (220442 => 220443) --- trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-026-expected.txt 2017-08-09 05:15:47 UTC (rev 220442) +++ trunk/LayoutTests/platform/ios-wk2/editing/inserting/insert-div-026-expected.txt 2017-08-09 05:36:57 UTC (rev 220443) @@ -54,4 +54,5 @@ text run at (2,3) width 20: "fo" RenderText {#text} at (21,3) size 13x28 text run at (21,3) width 13: "x" +RenderBlock (anonymous) at (0,34) size 784x0 caret: position 3 of child 0 {#text} of child 0 {B} of child 1 {DIV} of child 3 {DIV} of body Modified: trunk/LayoutTests/platform/ios-wk2/editing/style/5084241-expected.txt (220442 => 220443) --- trunk/LayoutTests/platform/ios-wk2/editing/style/5084241-expected.txt 2017-08-09 05:15:47 UTC (rev 220442) +++ trunk/LayoutTests/platform/ios-wk2/editing/style/5084241-expected.txt 2017-08-09 05:36:57 UTC (rev 220443) @@ -14,4 +14,5 @@ RenderInline {FONT} at (0,0) size 159x19 [color=#FF] RenderText {#text} at (150,0) size 159x19 text run at (150,0) width 159: "This
[webkit-changes] [220442] trunk
Title: [220442] trunk Revision 220442 Author cdu...@apple.com Date 2017-08-08 22:15:47 -0700 (Tue, 08 Aug 2017) Log Message [Beacon] Add support for CORS-preflighting for WK2 / NETWORK_SESSION https://bugs.webkit.org/show_bug.cgi?id=175264 Reviewed by Youenn Fablet. Source/WebCore: Pass additional information when creating a PingHandle so that the PingLoad can deal with CORS-preflighting on Network process side. Tests: http/wpt/beacon/cors/cors-preflight-arraybufferview-failure.html http/wpt/beacon/cors/cors-preflight-arraybufferview-success.html http/wpt/beacon/cors/cors-preflight-blob-failure.html http/wpt/beacon/cors/cors-preflight-blob-success.html http/wpt/beacon/cors/cors-preflight-cookie.html * WebCore.xcodeproj/project.pbxproj: * loader/CrossOriginAccessControl.cpp: (WebCore::validatePreflightResponse): * loader/CrossOriginAccessControl.h: * loader/CrossOriginPreflightChecker.cpp: (WebCore::CrossOriginPreflightChecker::validatePreflightResponse): * loader/CrossOriginPreflightResultCache.h: * loader/LoaderStrategy.h: * loader/PingLoader.cpp: (WebCore::PingLoader::loadImage): (WebCore::PingLoader::sendPing): (WebCore::PingLoader::sendViolationReport): (WebCore::PingLoader::startPingLoad): * loader/PingLoader.h: * loader/cache/CachedResource.cpp: (WebCore::CachedResource::load): * page/SecurityOrigin.h: Source/WebKit: Implement CORS-preflighting for beacons with a payload that has a non safelisted MIME type, as per: - https://w3c.github.io/beacon/#privacy - https://www.w3.org/TR/beacon/#sec-processing-model CORS-preflighting is completely handled on Network Process side because a beacon request can outlive its page and therefore its WebContent process. This requires us to pass a little more information to the Network process, in particular the source origin and the corsMode. The current implementation does not currently deal with CORS preflights needed upon a redirect. This will be added in a follow-up. * CMakeLists.txt: * NetworkProcess/NetworkCORSPreflightChecker.cpp: Added. (WebKit::NetworkCORSPreflightChecker::NetworkCORSPreflightChecker): (WebKit::NetworkCORSPreflightChecker::~NetworkCORSPreflightChecker): (WebKit::NetworkCORSPreflightChecker::startPreflight): (WebKit::NetworkCORSPreflightChecker::willPerformHTTPRedirection): (WebKit::NetworkCORSPreflightChecker::didReceiveChallenge): (WebKit::NetworkCORSPreflightChecker::didReceiveResponseNetworkSession): (WebKit::NetworkCORSPreflightChecker::didReceiveData): (WebKit::NetworkCORSPreflightChecker::didCompleteWithError): (WebKit::NetworkCORSPreflightChecker::didSendData): (WebKit::NetworkCORSPreflightChecker::wasBlocked): (WebKit::NetworkCORSPreflightChecker::cannotShowURL): * NetworkProcess/NetworkCORSPreflightChecker.h: Added. * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::loadPing): * NetworkProcess/NetworkConnectionToWebProcess.h: * NetworkProcess/NetworkResourceLoadParameters.cpp: (WebKit::NetworkResourceLoadParameters::encode const): (WebKit::NetworkResourceLoadParameters::decode): * NetworkProcess/NetworkResourceLoadParameters.h: * NetworkProcess/PingLoad.cpp: Added. (WebKit::PingLoad::PingLoad): (WebKit::PingLoad::~PingLoad): (WebKit::PingLoad::startNetworkLoad): (WebKit::PingLoad::willPerformHTTPRedirection): (WebKit::PingLoad::didReceiveChallenge): (WebKit::PingLoad::didReceiveResponseNetworkSession): (WebKit::PingLoad::didReceiveData): (WebKit::PingLoad::didCompleteWithError): (WebKit::PingLoad::didSendData): (WebKit::PingLoad::wasBlocked): (WebKit::PingLoad::cannotShowURL): (WebKit::PingLoad::timeoutTimerFired): (WebKit::PingLoad::needsCORSPreflight const): (WebKit::PingLoad::doCORSPreflight): * NetworkProcess/PingLoad.h: * WebKit.xcodeproj/project.pbxproj: * WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::WebLoaderStrategy::createPingHandle): * WebProcess/Network/WebLoaderStrategy.h: Source/WebKitLegacy: createPingHandle() now takes new parameters but there is currently no behavior change on WebKit1. * WebCoreSupport/WebResourceLoadScheduler.cpp: (WebResourceLoadScheduler::createPingHandle): * WebCoreSupport/WebResourceLoadScheduler.h: LayoutTests: Add layout test coverage. * http/wpt/beacon/cors/cors-preflight-arraybufferview-failure-expected.txt: Added. * http/wpt/beacon/cors/cors-preflight-arraybufferview-failure.html: Added. * http/wpt/beacon/cors/cors-preflight-arraybufferview-success-expected.txt: Added. * http/wpt/beacon/cors/cors-preflight-arraybufferview-success.html: Added. * http/wpt/beacon/cors/cors-preflight-blob-failure-expected.txt: Added. * http/wpt/beacon/cors/cors-preflight-blob-failure.html: Added. * http/wpt/beacon/cors/cors-preflight-blob-success-expected.txt: Added. * http/wpt/beacon/cors/cors-preflight-blob-success.html: Added. * http/wpt/beacon/cors/cors-preflight-cookie-expected.txt: Added. * http/wpt/beacon/cors/cors-preflight-cookie.html: Added. * http/wpt/beacon/resources/beacon-preflight.py: Added.
[webkit-changes] [220441] trunk/Source/JavaScriptCore
Title: [220441] trunk/Source/_javascript_Core Revision 220441 Author fpi...@apple.com Date 2017-08-08 20:48:44 -0700 (Tue, 08 Aug 2017) Log Message ICs should do caging https://bugs.webkit.org/show_bug.cgi?id=175295 Reviewed by Saam Barati. Adds the appropriate cage() calls in our inline caches. * bytecode/AccessCase.cpp: (JSC::AccessCase::generateImpl): * bytecode/InlineAccess.cpp: (JSC::InlineAccess::dumpCacheSizesAndCrash): (JSC::InlineAccess::generateSelfPropertyAccess): (JSC::InlineAccess::generateSelfPropertyReplace): (JSC::InlineAccess::generateArrayLength): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/AccessCase.cpp trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220440 => 220441) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-09 03:24:31 UTC (rev 220440) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-09 03:48:44 UTC (rev 220441) @@ -1,3 +1,20 @@ +2017-08-08 Filip Pizlo+ +ICs should do caging +https://bugs.webkit.org/show_bug.cgi?id=175295 + +Reviewed by Saam Barati. + +Adds the appropriate cage() calls in our inline caches. + +* bytecode/AccessCase.cpp: +(JSC::AccessCase::generateImpl): +* bytecode/InlineAccess.cpp: +(JSC::InlineAccess::dumpCacheSizesAndCrash): +(JSC::InlineAccess::generateSelfPropertyAccess): +(JSC::InlineAccess::generateSelfPropertyReplace): +(JSC::InlineAccess::generateArrayLength): + 2017-08-08 Devin Rousso Web Inspector: Canvas: support editing WebGL shaders Modified: trunk/Source/_javascript_Core/bytecode/AccessCase.cpp (220440 => 220441) --- trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2017-08-09 03:24:31 UTC (rev 220440) +++ trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2017-08-09 03:48:44 UTC (rev 220441) @@ -527,8 +527,7 @@ jit.loadPtr( CCallHelpers::Address(baseForAccessGPR, JSObject::butterflyOffset()), loadedValueGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, loadedValueGPR); storageGPR = loadedValueGPR; } @@ -879,8 +878,7 @@ // already had out-of-line property storage). jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR3); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, scratchGPR3); // We have scratchGPR = new storage, scratchGPR3 = old storage, // scratchGPR2 = available @@ -961,8 +959,7 @@ } else { if (!allocating) { jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, scratchGPR); } jit.storeValue( valueRegs, @@ -999,8 +996,7 @@ case ArrayLength: { jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, scratchGPR); jit.load32(CCallHelpers::Address(scratchGPR, ArrayStorage::lengthOffset()), scratchGPR); state.failAndIgnore.append( jit.branch32(CCallHelpers::LessThan, scratchGPR, CCallHelpers::TrustedImm32(0))); Modified: trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp (220440 => 220441) --- trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp 2017-08-09 03:24:31 UTC (rev 220440) +++ trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp 2017-08-09 03:48:44 UTC (rev 220441) @@ -57,8 +57,7 @@ jit.patchableBranch32( CCallHelpers::NotEqual, value, CCallHelpers::TrustedImm32(IsArray | ContiguousShape)); jit.loadPtr(CCallHelpers::Address(base, JSObject::butterflyOffset()), value); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, value); jit.load32(CCallHelpers::Address(value, ArrayStorage::lengthOffset()), value); jit.boxInt32(scratchGPR, regs); @@ -75,8 +74,7 @@ jit.loadPtr( CCallHelpers::Address(base, JSObject::butterflyOffset()), value); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 +jit.cage(Gigacage::JSValue, value); GPRReg storageGPR = value; jit.loadValue( CCallHelpers::Address(storageGPR,
[webkit-changes] [220440] trunk/Source/WebCore
Title: [220440] trunk/Source/WebCore Revision 220440 Author wei...@apple.com Date 2017-08-08 20:24:31 -0700 (Tue, 08 Aug 2017) Log Message Address review feedback from https://bugs.webkit.org/show_bug.cgi?id=175246. * bindings/js/DOMPromiseProxy.h: * css/FontFaceSet.cpp: * css/FontFaceSet.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/js/DOMPromiseProxy.h trunk/Source/WebCore/css/FontFaceSet.cpp trunk/Source/WebCore/css/FontFaceSet.h Diff Modified: trunk/Source/WebCore/ChangeLog (220439 => 220440) --- trunk/Source/WebCore/ChangeLog 2017-08-09 03:18:25 UTC (rev 220439) +++ trunk/Source/WebCore/ChangeLog 2017-08-09 03:24:31 UTC (rev 220440) @@ -1,3 +1,11 @@ +2017-08-08 Sam Weinig+ +Address review feedback from https://bugs.webkit.org/show_bug.cgi?id=175246. + +* bindings/js/DOMPromiseProxy.h: +* css/FontFaceSet.cpp: +* css/FontFaceSet.h: + 2017-08-08 Devin Rousso Web Inspector: Canvas: support editing WebGL shaders Modified: trunk/Source/WebCore/bindings/js/DOMPromiseProxy.h (220439 => 220440) --- trunk/Source/WebCore/bindings/js/DOMPromiseProxy.h 2017-08-09 03:18:25 UTC (rev 220439) +++ trunk/Source/WebCore/bindings/js/DOMPromiseProxy.h 2017-08-09 03:24:31 UTC (rev 220440) @@ -46,7 +46,7 @@ JSC::JSValue promise(JSC::ExecState&, JSDOMGlobalObject&); -void reset(); +void clear(); bool isFulfilled() const; @@ -70,7 +70,7 @@ JSC::JSValue promise(JSC::ExecState&, JSDOMGlobalObject&); -void reset(); +void clear(); bool isFulfilled() const; @@ -82,6 +82,10 @@ Vector m_deferredPromises; }; +// Instead of storing the value of the resolution directly, DOMPromiseProxyWithResolveCallback +// allows the owner to specify callback to be called when the resolved value is needed. This is +// needed to avoid reference cycles when the resolved value is the owner, such as is the case with +// FontFace and FontFaceSet. template class DOMPromiseProxyWithResolveCallback { public: @@ -99,7 +103,7 @@ JSC::JSValue promise(JSC::ExecState&, JSDOMGlobalObject&); -void reset(); +void clear(); bool isFulfilled() const; @@ -143,7 +147,7 @@ } template -inline void DOMPromiseProxy::reset() +inline void DOMPromiseProxy::clear() { m_valueOrException = std::nullopt; m_deferredPromises.clear(); @@ -212,7 +216,7 @@ return result; } -inline void DOMPromiseProxy::reset() +inline void DOMPromiseProxy::clear() { m_valueOrException = std::nullopt; m_deferredPromises.clear(); @@ -280,7 +284,7 @@ } template -inline void DOMPromiseProxyWithResolveCallback::reset() +inline void DOMPromiseProxyWithResolveCallback::clear() { m_valueOrException = std::nullopt; m_deferredPromises.clear(); Modified: trunk/Source/WebCore/css/FontFaceSet.cpp (220439 => 220440) --- trunk/Source/WebCore/css/FontFaceSet.cpp 2017-08-09 03:18:25 UTC (rev 220439) +++ trunk/Source/WebCore/css/FontFaceSet.cpp 2017-08-09 03:24:31 UTC (rev 220440) @@ -189,14 +189,12 @@ void FontFaceSet::startedLoading() { // FIXME: Fire a "loading" event asynchronously. -m_isReady = false; -m_readyPromise.reset(); +m_readyPromise.clear(); } void FontFaceSet::completedLoading() { m_readyPromise.resolve(*this); -m_isReady = true; } void FontFaceSet::faceFinished(CSSFontFace& face, CSSFontFace::Status newStatus) Modified: trunk/Source/WebCore/css/FontFaceSet.h (220439 => 220440) --- trunk/Source/WebCore/css/FontFaceSet.h 2017-08-09 03:18:25 UTC (rev 220439) +++ trunk/Source/WebCore/css/FontFaceSet.h 2017-08-09 03:24:31 UTC (rev 220440) @@ -113,7 +113,6 @@ Ref m_backing; HashMap > m_pendingPromises; ReadyPromise m_readyPromise; -bool m_isReady { true }; }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220438] branches/safari-604.1.38.1-branch
Title: [220438] branches/safari-604.1.38.1-branch Revision 220438 Author jmarc...@apple.com Date 2017-08-08 20:18:21 -0700 (Tue, 08 Aug 2017) Log Message Cherry-pick r220289. rdar://problem/33789082 Modified Paths branches/safari-604.1.38.1-branch/LayoutTests/ChangeLog branches/safari-604.1.38.1-branch/Source/WebCore/ChangeLog branches/safari-604.1.38.1-branch/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp Diff Modified: branches/safari-604.1.38.1-branch/LayoutTests/ChangeLog (220437 => 220438) --- branches/safari-604.1.38.1-branch/LayoutTests/ChangeLog 2017-08-09 03:09:47 UTC (rev 220437) +++ branches/safari-604.1.38.1-branch/LayoutTests/ChangeLog 2017-08-09 03:18:21 UTC (rev 220438) @@ -1,3 +1,18 @@ +2017-08-08 Jason Marcell+ +Cherry-pick r220289. rdar://problem/33789082 + +2017-08-04 Said Abou-Hallawa + +RenderImageResourceStyleImage::image() should return the nullImage() if the image is not available +https://bugs.webkit.org/show_bug.cgi?id=174874 + + +Reviewed by Simon Fraser. + +* fast/images/image-element-image-content-data-expected.txt: Added. +* fast/images/image-element-image-content-data.html: Added. + 2017-08-04 Jason Marcell Revert r219896. rdar://problem/33711000 Modified: branches/safari-604.1.38.1-branch/Source/WebCore/ChangeLog (220437 => 220438) --- branches/safari-604.1.38.1-branch/Source/WebCore/ChangeLog 2017-08-09 03:09:47 UTC (rev 220437) +++ branches/safari-604.1.38.1-branch/Source/WebCore/ChangeLog 2017-08-09 03:18:21 UTC (rev 220438) @@ -1,3 +1,56 @@ +2017-08-08 Jason Marcell + +Cherry-pick r220289. rdar://problem/33789082 + +2017-08-04 Said Abou-Hallawa + +RenderImageResourceStyleImage::image() should return the nullImage() if the image is not available +https://bugs.webkit.org/show_bug.cgi?id=174874 + + +Reviewed by Simon Fraser. + +If an element has a non-CachedImage content data, e.g. -webkit-named-image, +RenderImageResourceStyleImage will be created and attached to the RenderImage. +RenderImageResourceStyleImage::m_cachedImage will be set to null at the +beginning because the m_styleImage->isCachedImage() is false in this case. +When ImageLoader finishes loading the url of the src attribute, +RenderImageResource::setCachedImage() will be called to set m_cachedImage. + +A crash will happen when the RenderImage is destroyed. Destroying the +RenderImage calls RenderImageResourceStyleImage::shutdown() which checks +m_cachedImage and finds it not null, so it calls RenderImageResourceStyleImage::image() +which ends up calling CSSNamedImageValue::image() which returns a null pointer +because the size is empty. RenderImageResourceStyleImage::shutdown() calls +image()->stopAnimation() without checking the return value of image(). + +Another crash will happen later when deleting the CachedImage from the memory +cache if CachedImage::canDestroyDecodedData() is called because the client +it gets from m_clients is a freed pointer. This happens because RenderImageResourceStyleImage +has m_styleImage of type StyleGeneratedImage but its m_cachedImage is set +by RenderImageResource::setCachedImage(). When RenderImageResourceStyleImage::shutdown() +is called, it calls StyleGeneratedImage::removeClient() which does not +know anything about RenderImageResourceStyleImage::m_cachedImage. So we +end up having a freed pointer in the m_clients of the CachedImage. + +Test: fast/images/image-element-image-content-data.html + +* rendering/RenderImageResourceStyleImage.cpp: +(WebCore::RenderImageResourceStyleImage::shutdown): Revert back the changes +of r208511 in this function. Add a call to image()->stopAnimation() without +checking the return of image() since it will return the nullImage() if +the image not available. There is no need to check m_cachedImage before +calling image() because image() does not check or access m_cachedImage. + +If m_styleImage is not a CachedStyleImage but m_cachedImage is not null, +we need to remove m_renderer from the set of the clients of this m_cachedImage. + +(WebCore::RenderImageResourceStyleImage::image const): The base class method +RenderImageResource::image() returns the nullImage() if the image not +available. This is because CachedImage::imageForRenderer() returns +the nullImage() if the image is not available; see CachedImage.h. We should +do the
[webkit-changes] [220439] branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac
Title: [220439] branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac Revision 220439 Author jmarc...@apple.com Date 2017-08-08 20:18:25 -0700 (Tue, 08 Aug 2017) Log Message Cherry-pick r220429. rdar://problem/33789343 Modified Paths branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/ChangeLog branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm Diff Modified: branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/ChangeLog (220438 => 220439) --- branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/ChangeLog 2017-08-09 03:18:21 UTC (rev 220438) +++ branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/ChangeLog 2017-08-09 03:18:25 UTC (rev 220439) @@ -1,3 +1,19 @@ +2017-08-08 Jason Marcell+ +Cherry-pick r220429. rdar://problem/33789343 + +2017-08-08 Brady Eidson + +Don't enable default icon loading in WK1 for apps linked against old SDKs. + and https://bugs.webkit.org/show_bug.cgi?id=175342 + +Reviewed by Andy Estes. + +* Misc/WebKitVersionChecks.h: +* WebCoreSupport/WebFrameLoaderClient.mm: +(WebFrameLoaderClient::getLoadDecisionForIcons): Don't do any icon loading unless + the app is linked against new WebKit with the new behavior. + 2017-07-26 Jason Marcell Cherry-pick r219876. rdar://problem/33523847 Modified: branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h (220438 => 220439) --- branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h 2017-08-09 03:18:21 UTC (rev 220438) +++ branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h 2017-08-09 03:18:25 UTC (rev 220439) @@ -61,6 +61,8 @@ #define WEBKIT_FIRST_VERSION_WITH_CSS_ATTRIBUTE_SETTERS_IGNORING_PRIORITY 0x02170D00 // 535.13.0 #define WEBKIT_FIRST_VERSION_WITHOUT_LEGACY_BACKGROUNDSIZE_SHORTHAND_BEHAVIOR 0x02190100 // 537.1.0 #define WEBKIT_FIRST_VERSION_WITH_INSECURE_CONTENT_BLOCKING 0x02590116 // 601.1.22 +#define WEBKIT_FIRST_VERSION_WITH_DEFAULT_ICON_LOADING 0x025C0126 // 604.1.38 + #else // Need to implement WebKitLinkedOnOrAfter // Actually UIKit version numbers, since applications don't link against WebKit Modified: branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm (220438 => 220439) --- branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm 2017-08-09 03:18:21 UTC (rev 220438) +++ branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm 2017-08-09 03:18:25 UTC (rev 220439) @@ -55,6 +55,7 @@ #import "WebKitErrorsPrivate.h" #import "WebKitLogging.h" #import "WebKitNSStringExtras.h" +#import "WebKitVersionChecks.h" #import "WebNSURLExtras.h" #import "WebNavigationData.h" #import "WebNetscapePluginPackage.h" @@ -144,7 +145,6 @@ #import #import #import -#import "WebKitVersionChecks.h" #import "WebMailDelegate.h" #import "WebUIKitDelegate.h" #endif @@ -2282,6 +2282,15 @@ DocumentLoader* documentLoader = frame->loader().documentLoader(); ASSERT(documentLoader); +#if PLATFORM(MAC) +if (!WebKitLinkedOnOrAfter(WEBKIT_FIRST_VERSION_WITH_DEFAULT_ICON_LOADING)) { +for (auto& icon : icons) +documentLoader->didGetLoadDecisionForIcon(false, icon.second, 0); + +return; +} +#endif + bool disallowedDueToImageLoadSettings = false; if (!frame->settings().loadsImagesAutomatically() && !frame->settings().loadsSiteIconsIgnoringImageLoadingSetting()) disallowedDueToImageLoadSettings = true; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220437] branches/safari-604.1.38.0-branch
Title: [220437] branches/safari-604.1.38.0-branch Revision 220437 Author jmarc...@apple.com Date 2017-08-08 20:09:47 -0700 (Tue, 08 Aug 2017) Log Message Cherry-pick r220289. rdar://problem/33789085 Modified Paths branches/safari-604.1.38.0-branch/LayoutTests/ChangeLog branches/safari-604.1.38.0-branch/Source/WebCore/ChangeLog branches/safari-604.1.38.0-branch/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp Diff Modified: branches/safari-604.1.38.0-branch/LayoutTests/ChangeLog (220436 => 220437) --- branches/safari-604.1.38.0-branch/LayoutTests/ChangeLog 2017-08-09 01:55:53 UTC (rev 220436) +++ branches/safari-604.1.38.0-branch/LayoutTests/ChangeLog 2017-08-09 03:09:47 UTC (rev 220437) @@ -1,3 +1,18 @@ +2017-08-08 Jason Marcell+ +Cherry-pick r220289. rdar://problem/33789085 + +2017-08-04 Said Abou-Hallawa + +RenderImageResourceStyleImage::image() should return the nullImage() if the image is not available +https://bugs.webkit.org/show_bug.cgi?id=174874 + + +Reviewed by Simon Fraser. + +* fast/images/image-element-image-content-data-expected.txt: Added. +* fast/images/image-element-image-content-data.html: Added. + 2017-08-04 Jason Marcell Revert r219896. rdar://problem/33711000 Modified: branches/safari-604.1.38.0-branch/Source/WebCore/ChangeLog (220436 => 220437) --- branches/safari-604.1.38.0-branch/Source/WebCore/ChangeLog 2017-08-09 01:55:53 UTC (rev 220436) +++ branches/safari-604.1.38.0-branch/Source/WebCore/ChangeLog 2017-08-09 03:09:47 UTC (rev 220437) @@ -1,3 +1,56 @@ +2017-08-08 Jason Marcell + +Cherry-pick r220289. rdar://problem/33789085 + +2017-08-04 Said Abou-Hallawa + +RenderImageResourceStyleImage::image() should return the nullImage() if the image is not available +https://bugs.webkit.org/show_bug.cgi?id=174874 + + +Reviewed by Simon Fraser. + +If an element has a non-CachedImage content data, e.g. -webkit-named-image, +RenderImageResourceStyleImage will be created and attached to the RenderImage. +RenderImageResourceStyleImage::m_cachedImage will be set to null at the +beginning because the m_styleImage->isCachedImage() is false in this case. +When ImageLoader finishes loading the url of the src attribute, +RenderImageResource::setCachedImage() will be called to set m_cachedImage. + +A crash will happen when the RenderImage is destroyed. Destroying the +RenderImage calls RenderImageResourceStyleImage::shutdown() which checks +m_cachedImage and finds it not null, so it calls RenderImageResourceStyleImage::image() +which ends up calling CSSNamedImageValue::image() which returns a null pointer +because the size is empty. RenderImageResourceStyleImage::shutdown() calls +image()->stopAnimation() without checking the return value of image(). + +Another crash will happen later when deleting the CachedImage from the memory +cache if CachedImage::canDestroyDecodedData() is called because the client +it gets from m_clients is a freed pointer. This happens because RenderImageResourceStyleImage +has m_styleImage of type StyleGeneratedImage but its m_cachedImage is set +by RenderImageResource::setCachedImage(). When RenderImageResourceStyleImage::shutdown() +is called, it calls StyleGeneratedImage::removeClient() which does not +know anything about RenderImageResourceStyleImage::m_cachedImage. So we +end up having a freed pointer in the m_clients of the CachedImage. + +Test: fast/images/image-element-image-content-data.html + +* rendering/RenderImageResourceStyleImage.cpp: +(WebCore::RenderImageResourceStyleImage::shutdown): Revert back the changes +of r208511 in this function. Add a call to image()->stopAnimation() without +checking the return of image() since it will return the nullImage() if +the image not available. There is no need to check m_cachedImage before +calling image() because image() does not check or access m_cachedImage. + +If m_styleImage is not a CachedStyleImage but m_cachedImage is not null, +we need to remove m_renderer from the set of the clients of this m_cachedImage. + +(WebCore::RenderImageResourceStyleImage::image const): The base class method +RenderImageResource::image() returns the nullImage() if the image not +available. This is because CachedImage::imageForRenderer() returns +the nullImage() if the image is not available; see CachedImage.h. We should +do the
[webkit-changes] [220436] trunk
Title: [220436] trunk Revision 220436 Author drou...@apple.com Date 2017-08-08 18:55:53 -0700 (Tue, 08 Aug 2017) Log Message Web Inspector: Canvas: support editing WebGL shaders https://bugs.webkit.org/show_bug.cgi?id=124211 Reviewed by Matt Baker. Source/_javascript_Core: * inspector/protocol/Canvas.json: Add `updateShader` command that will change the given shader's source to the provided string, recompile, and relink it to its associated program. Drive-by: add description to `requestShaderSource` command. Source/WebCore: Test: inspector/canvas/updateShader.html * inspector/InspectorCanvasAgent.h: * inspector/InspectorCanvasAgent.cpp: (WebCore::InspectorCanvasAgent::updateShader): * html/canvas/WebGLRenderingContextBase.h: * html/canvas/WebGLRenderingContextBase.cpp: (WebCore::WebGLRenderingContextBase::linkProgram): (WebCore::WebGLRenderingContextBase::linkProgramWithoutInvalidatingAttribLocations): Normally, when a program is linked, it invalidates any WebGLUniformLocation associated with the program by incrementing its `linkCount`. In order to allow live editing of shaders, we need to be able to compile and link a shader without invalidating these locations. This patch moves the shader linking logic to its own function that is called by `linkProgram` so that InspectorCanvasAgent can compile and link without invalidation. Source/WebInspectorUI: * UserInterface/Models/ShaderProgram.js: (WI.ShaderProgram.prototype.updateVertexShader): (WI.ShaderProgram.prototype.updateFragmentShader): (WI.ShaderProgram.prototype._updateShader): * UserInterface/Views/ShaderProgramContentView.js: (WI.ShaderProgramContentView): (WI.ShaderProgramContentView.prototype._contentDidChange): LayoutTests: * inspector/canvas/updateShader-expected.txt: Added. * inspector/canvas/updateShader.html: Added. * platform/win/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/win/TestExpectations trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/inspector/protocol/Canvas.json trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h trunk/Source/WebCore/inspector/InspectorCanvasAgent.cpp trunk/Source/WebCore/inspector/InspectorCanvasAgent.h trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Models/ShaderProgram.js trunk/Source/WebInspectorUI/UserInterface/Views/ShaderProgramContentView.js Added Paths trunk/LayoutTests/inspector/canvas/updateShader-expected.txt trunk/LayoutTests/inspector/canvas/updateShader.html Diff Modified: trunk/LayoutTests/ChangeLog (220435 => 220436) --- trunk/LayoutTests/ChangeLog 2017-08-09 01:39:37 UTC (rev 220435) +++ trunk/LayoutTests/ChangeLog 2017-08-09 01:55:53 UTC (rev 220436) @@ -1,3 +1,16 @@ +2017-08-08 Devin Rousso+ +Web Inspector: Canvas: support editing WebGL shaders +https://bugs.webkit.org/show_bug.cgi?id=124211 + + +Reviewed by Matt Baker. + +* inspector/canvas/updateShader-expected.txt: Added. +* inspector/canvas/updateShader.html: Added. + +* platform/win/TestExpectations: + 2017-08-08 Ryan Haddad Mark media/modern-media-controls/css/webkit-cursor-visibility-auto-hide.html as flaky. Added: trunk/LayoutTests/inspector/canvas/updateShader-expected.txt (0 => 220436) --- trunk/LayoutTests/inspector/canvas/updateShader-expected.txt (rev 0) +++ trunk/LayoutTests/inspector/canvas/updateShader-expected.txt 2017-08-09 01:55:53 UTC (rev 220436) @@ -0,0 +1,38 @@ +CONSOLE MESSAGE: WebGL: ERROR: 0:1: 'INVALID' : syntax error +CONSOLE MESSAGE: WebGL: ERROR: 0:1: 'INVALID' : syntax error +Test compilation of shaders after being attached to a program, with and without syntax errors. + + +== Running test suite: Canvas.updateShader +-- Running test case: Canvas.updateShader.vertexShaderValid + +void main(void) { +gl_Position = vec4(1, 2, 3, 4); +} + + +-- Running test case: Canvas.updateShader.fragmentShaderValid + +precision mediump float; + +void main(void) { +gl_FragColor = vec4(0.1, 0.2, 0.3, 0.4); +} + + +-- Running test case: Canvas.updateShader.invalidProgramId +PASS: Should produce an error. +Error: No shader program for given identifier. + +-- Running test case: Canvas.updateShader.invalidShaderType +PASS: Should produce an error. +Error: No shader for given type. + +-- Running test case: Canvas.updateShader.invalidVertexShaderSource +PASS: Should produce error. +Error: Shader compilation failed. + +-- Running test case: Canvas.updateShader.invalidFragmentShaderSource +PASS: Should produce error. +Error: Shader compilation failed. + Added: trunk/LayoutTests/inspector/canvas/updateShader.html (0 => 220436) --- trunk/LayoutTests/inspector/canvas/updateShader.html (rev 0) +++
[webkit-changes] [220435] trunk/Source/WebKit
Title: [220435] trunk/Source/WebKit Revision 220435 Author megan_gard...@apple.com Date 2017-08-08 18:39:37 -0700 (Tue, 08 Aug 2017) Log Message Remove old and unused pointIsInAssistedNode definition https://bugs.webkit.org/show_bug.cgi?id=175335 Stage removal here to allow removal from UIKit. Replaced by textInteractionGesture:shouldBeginAtPoint: Reviewed by Tim Horton. * Platform/spi/ios/UIKitSPI.h: * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView pointIsInAssistedNode:]): Deleted. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Diff Modified: trunk/Source/WebKit/ChangeLog (220434 => 220435) --- trunk/Source/WebKit/ChangeLog 2017-08-09 01:24:25 UTC (rev 220434) +++ trunk/Source/WebKit/ChangeLog 2017-08-09 01:39:37 UTC (rev 220435) @@ -1,3 +1,17 @@ +2017-08-08 Megan Gardner+ +Remove old and unused pointIsInAssistedNode definition +https://bugs.webkit.org/show_bug.cgi?id=175335 + +Stage removal here to allow removal from UIKit. +Replaced by textInteractionGesture:shouldBeginAtPoint: + +Reviewed by Tim Horton. + +* Platform/spi/ios/UIKitSPI.h: +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKContentView pointIsInAssistedNode:]): Deleted. + 2017-08-08 Michael Catanzaro Unreviewed, fix Ubuntu LTS build Modified: trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h (220434 => 220435) --- trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2017-08-09 01:24:25 UTC (rev 220434) +++ trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2017-08-09 01:39:37 UTC (rev 220435) @@ -603,7 +603,9 @@ - (BOOL)hasMarkedText; - (BOOL)hasSelectablePositionAtPoint:(CGPoint)point; +#if __IPHONE_OS_VERSION_MAX_ALLOWED < 11 - (BOOL)pointIsInAssistedNode:(CGPoint)point; +#endif - (NSArray *)webSelectionRects; - (void)_cancelLongPressGestureRecognizer; Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (220434 => 220435) --- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2017-08-09 01:24:25 UTC (rev 220434) +++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2017-08-09 01:39:37 UTC (rev 220435) @@ -1501,12 +1501,13 @@ return NO; return _positionInformation.isNearMarkedText; } - +#if __IPHONE_OS_VERSION_MAX_ALLOWED < 11 - (BOOL)pointIsInAssistedNode:(CGPoint)point { // This method is still implemented for backwards compatibility with older UIKit versions. return [self textInteractionGesture:UIWKGestureLoupe shouldBeginAtPoint:point]; } +#endif - (BOOL)textInteractionGesture:(UIWKGestureType)gesture shouldBeginAtPoint:(CGPoint)point { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220434] trunk/Tools
Title: [220434] trunk/Tools Revision 220434 Author commit-qu...@webkit.org Date 2017-08-08 18:24:25 -0700 (Tue, 08 Aug 2017) Log Message Created Individual EWS Pages https://bugs.webkit.org/show_bug.cgi?id=174477 Patch by obinna obikeon 2017-08-08 Reviewed by Aakash Jain. Created individual pages for each EWS. Changed the link within each status bubble to go directly to the individual EWS page. Also added a link to original status page showing all EWSes. * QueueStatusServer/handlers/patch.py: (Patch.get): Handles the case for individual ews queue as well as for all EWS queues. * QueueStatusServer/handlers/statusbubble.py: (StatusBubble._build_bubble): Updated url for specific EWS. * QueueStatusServer/main.py: Added a link to the individual ews in the routes dictionary. * QueueStatusServer/templates/patch.html: Added a link to go directly to the page with all ews queues. * QueueStatusServer/templates/statusbubble.html: If you click on a statusbubble it takes you directly to the individual ews page. Modified Paths trunk/Tools/ChangeLog trunk/Tools/QueueStatusServer/handlers/patch.py trunk/Tools/QueueStatusServer/handlers/statusbubble.py trunk/Tools/QueueStatusServer/main.py trunk/Tools/QueueStatusServer/templates/patch.html trunk/Tools/QueueStatusServer/templates/statusbubble.html Diff Modified: trunk/Tools/ChangeLog (220433 => 220434) --- trunk/Tools/ChangeLog 2017-08-09 01:01:44 UTC (rev 220433) +++ trunk/Tools/ChangeLog 2017-08-09 01:24:25 UTC (rev 220434) @@ -1,3 +1,23 @@ +2017-08-08 obinna obike + +Created Individual EWS Pages +https://bugs.webkit.org/show_bug.cgi?id=174477 + +Reviewed by Aakash Jain. + +Created individual pages for each EWS. Changed the link within each status bubble +to go directly to the individual EWS page. Also added a link to original status page showing all EWSes. + +* QueueStatusServer/handlers/patch.py: +(Patch.get): Handles the case for individual ews queue as well as for all EWS queues. +* QueueStatusServer/handlers/statusbubble.py: +(StatusBubble._build_bubble): Updated url for specific EWS. +* QueueStatusServer/main.py: Added a link to the individual ews in the routes dictionary. +* QueueStatusServer/templates/patch.html: Added a link to go directly to the page with +all ews queues. +* QueueStatusServer/templates/statusbubble.html: If you click on a statusbubble it +takes you directly to the individual ews page. + 2017-08-08 Stephan Szabo Separate jsc stress test script writer from run-jsc-stress-tests Modified: trunk/Tools/QueueStatusServer/handlers/patch.py (220433 => 220434) --- trunk/Tools/QueueStatusServer/handlers/patch.py 2017-08-09 01:01:44 UTC (rev 220433) +++ trunk/Tools/QueueStatusServer/handlers/patch.py 2017-08-09 01:24:25 UTC (rev 220434) @@ -33,7 +33,7 @@ class Patch(webapp.RequestHandler): -def get(self, attachment_id_string): +def get(self, attachment_id_string, queue_name=None): attachment_id = int(attachment_id_string) statuses = QueueStatus.all().filter("active_patch_id =", attachment_id).order("-date") @@ -41,9 +41,10 @@ queue_status = {} for status in statuses: bug_id = status.active_bug_id # Should be the same for every status. -per_queue_statuses = queue_status.get(status.queue_name, []) -per_queue_statuses.append(status) -queue_status[status.queue_name] = per_queue_statuses +if status.queue_name == queue_name or queue_name is None: +per_queue_statuses = queue_status.get(status.queue_name, []) +per_queue_statuses.append(status) +queue_status[status.queue_name] = per_queue_statuses queue_status = sorted(queue_status.items()) template_values = { "attachment_id" : attachment_id, Modified: trunk/Tools/QueueStatusServer/handlers/statusbubble.py (220433 => 220434) --- trunk/Tools/QueueStatusServer/handlers/statusbubble.py 2017-08-09 01:01:44 UTC (rev 220433) +++ trunk/Tools/QueueStatusServer/handlers/statusbubble.py 2017-08-09 01:24:25 UTC (rev 220434) @@ -113,6 +113,7 @@ bubble = { "name": queue.short_name().lower(), "attachment_id": attachment.id, +"queue_name": queue.name(), } # 10 recent statuses is enough to always include a resultative one, if there were any at all. statuses = QueueStatus.all().filter('queue_name =', queue.name()).filter('active_patch_id =', attachment.id).order('-date').fetch(limit=10) Modified: trunk/Tools/QueueStatusServer/main.py (220433 => 220434) --- trunk/Tools/QueueStatusServer/main.py 2017-08-09 01:01:44 UTC (rev 220433) +++ trunk/Tools/QueueStatusServer/main.py 2017-08-09 01:24:25 UTC (rev 220434) @@ -64,6 +64,7 @@ ('/gc', GC),
[webkit-changes] [220432] trunk/Source/JavaScriptCore
Title: [220432] trunk/Source/_javascript_Core Revision 220432 Author commit-qu...@webkit.org Date 2017-08-08 17:26:04 -0700 (Tue, 08 Aug 2017) Log Message Make JSC_validateExceptionChecks=1 succeed on JSTests/slowMicrobenchmarks/spread-small-array.js. https://bugs.webkit.org/show_bug.cgi?id=175347 Patch by Robin Morisseton 2017-08-08 Reviewed by Saam Barati. This is done by making finishCreation explicitely check for exceptions after setConstantRegister and setConstantIdentifiersSetRegisters. I chose to have this check replace the boolean returned previously by these functions for readability. The performance impact should be negligible considering how much more finishCreation does. This fix then caused another issue to appear as it was now clear that finishCreation can throw. And since it is called by ProgramCodeBlock::create(), FunctionCodeBlock::create() and friends, that are in turn called by ScriptExecutable::newCodeBlockFor, this last function also required a few tweaks. * bytecode/CodeBlock.cpp: (JSC::CodeBlock::finishCreation): (JSC::CodeBlock::setConstantIdentifierSetRegisters): (JSC::CodeBlock::setConstantRegisters): * bytecode/CodeBlock.h: * runtime/ScriptExecutable.cpp: (JSC::ScriptExecutable::newCodeBlockFor): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp trunk/Source/_javascript_Core/bytecode/CodeBlock.h trunk/Source/_javascript_Core/runtime/ScriptExecutable.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220431 => 220432) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-09 00:18:08 UTC (rev 220431) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-09 00:26:04 UTC (rev 220432) @@ -1,3 +1,24 @@ +2017-08-08 Robin Morisset + +Make JSC_validateExceptionChecks=1 succeed on JSTests/slowMicrobenchmarks/spread-small-array.js. +https://bugs.webkit.org/show_bug.cgi?id=175347 + +Reviewed by Saam Barati. + +This is done by making finishCreation explicitely check for exceptions after setConstantRegister and setConstantIdentifiersSetRegisters. +I chose to have this check replace the boolean returned previously by these functions for readability. The performance impact should be +negligible considering how much more finishCreation does. +This fix then caused another issue to appear as it was now clear that finishCreation can throw. And since it is called by ProgramCodeBlock::create(), +FunctionCodeBlock::create() and friends, that are in turn called by ScriptExecutable::newCodeBlockFor, this last function also required a few tweaks. + +* bytecode/CodeBlock.cpp: +(JSC::CodeBlock::finishCreation): +(JSC::CodeBlock::setConstantIdentifierSetRegisters): +(JSC::CodeBlock::setConstantRegisters): +* bytecode/CodeBlock.h: +* runtime/ScriptExecutable.cpp: +(JSC::ScriptExecutable::newCodeBlockFor): + 2017-08-08 Michael Catanzaro Unreviewed, fix Ubuntu LTS build Modified: trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp (220431 => 220432) --- trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2017-08-09 00:18:08 UTC (rev 220431) +++ trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2017-08-09 00:26:04 UTC (rev 220432) @@ -401,15 +401,16 @@ JSScope* scope) { Base::finishCreation(vm); +auto throwScope = DECLARE_THROW_SCOPE(vm); if (vm.typeProfiler() || vm.controlFlowProfiler()) vm.functionHasExecutedCache()->removeUnexecutedRange(ownerExecutable->sourceID(), ownerExecutable->typeProfilingStartOffset(), ownerExecutable->typeProfilingEndOffset()); -if (!setConstantRegisters(unlinkedCodeBlock->constantRegisters(), unlinkedCodeBlock->constantsSourceCodeRepresentation())) -return false; +setConstantRegisters(unlinkedCodeBlock->constantRegisters(), unlinkedCodeBlock->constantsSourceCodeRepresentation()); +RETURN_IF_EXCEPTION(throwScope, false); -if (!setConstantIdentifierSetRegisters(vm, unlinkedCodeBlock->constantIdentifierSets())) -return false; +setConstantIdentifierSetRegisters(vm, unlinkedCodeBlock->constantIdentifierSets()); +RETURN_IF_EXCEPTION(throwScope, false); if (unlinkedCodeBlock->usesGlobalObject()) m_constantRegisters[unlinkedCodeBlock->globalObjectRegister().toConstantIndex()].set(*m_vm, this, m_globalObject.get()); @@ -869,7 +870,7 @@ #endif // ENABLE(JIT) } -bool CodeBlock::setConstantIdentifierSetRegisters(VM& vm, const Vector& constants) +void CodeBlock::setConstantIdentifierSetRegisters(VM& vm, const Vector& constants) { auto scope = DECLARE_THROW_SCOPE(vm); JSGlobalObject* globalObject = m_globalObject.get(); @@ -877,24 +878,21 @@ for (const auto& entry : constants) { Structure* setStructure = globalObject->setStructure(); -RETURN_IF_EXCEPTION(scope, false); +
[webkit-changes] [220431] trunk/Tools
Title: [220431] trunk/Tools Revision 220431 Author commit-qu...@webkit.org Date 2017-08-08 17:18:08 -0700 (Tue, 08 Aug 2017) Log Message Separate jsc stress test script writer from run-jsc-stress-tests https://bugs.webkit.org/show_bug.cgi?id=175216 Patch by Stephan Szaboon 2017-08-08 Reviewed by Mark Lam. * Scripts/run-jsc-stress-tests: * Scripts/webkitruby/jsc-stress-test-writer-default.rb: Added. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/run-jsc-stress-tests Added Paths trunk/Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb Diff Modified: trunk/Tools/ChangeLog (220430 => 220431) --- trunk/Tools/ChangeLog 2017-08-09 00:03:55 UTC (rev 220430) +++ trunk/Tools/ChangeLog 2017-08-09 00:18:08 UTC (rev 220431) @@ -1,3 +1,13 @@ +2017-08-08 Stephan Szabo + +Separate jsc stress test script writer from run-jsc-stress-tests +https://bugs.webkit.org/show_bug.cgi?id=175216 + +Reviewed by Mark Lam. + +* Scripts/run-jsc-stress-tests: +* Scripts/webkitruby/jsc-stress-test-writer-default.rb: Added. + 2017-08-08 Michael Catanzaro Unreviewed, fix Ubuntu LTS build Modified: trunk/Tools/Scripts/run-jsc-stress-tests (220430 => 220431) --- trunk/Tools/Scripts/run-jsc-stress-tests 2017-08-09 00:03:55 UTC (rev 220430) +++ trunk/Tools/Scripts/run-jsc-stress-tests 2017-08-09 00:18:08 UTC (rev 220431) @@ -434,6 +434,8 @@ B3O1_OPTIONS = ["--defaultB3OptLevel=1"] FTL_OPTIONS = ["--useFTLJIT=true"] +require_relative "webkitruby/jsc-stress-test-writer-default" + def shouldCollectContinuously? $buildType == "release" or $forceCollectContinuously end @@ -471,274 +473,8 @@ pathToBundleResourceFromBenchmarkDirectory(".helpers") end -def prefixCommand(prefix) -"awk " + Shellwords.shellescape("{ printf #{(prefix + ': ').inspect}; print }") -end - -def redirectAndPrefixCommand(prefix) -prefixCommand(prefix) + " 2>&1" -end - -def pipeAndPrefixCommand(outputFilename, prefix) -"tee " + Shellwords.shellescape(outputFilename.to_s) + " | " + prefixCommand(prefix) -end - -# Output handler for tests that are expected to be silent. -def silentOutputHandler -Proc.new { -| name | -" | " + pipeAndPrefixCommand((Pathname("..") + (name + ".out")).to_s, name) -} -end - -# Output handler for tests that are expected to produce meaningful output. -def noisyOutputHandler -Proc.new { -| name | -" | cat > " + Shellwords.shellescape((Pathname("..") + (name + ".out")).to_s) -} -end - -# Error handler for tests that fail exactly when they return non-zero exit status. -# This is useful when a test is expected to fail. -def simpleErrorHandler -Proc.new { -| outp, plan | -outp.puts "if test -e #{plan.failFile}" -outp.puts "then" -outp.puts "(echo ERROR: Unexpected exit code: `cat #{plan.failFile}`) | " + redirectAndPrefixCommand(plan.name) -outp.puts "" + plan.failCommand -outp.puts "else" -outp.puts "" + plan.successCommand -outp.puts "fi" -} -end - -# Error handler for tests that fail exactly when they return zero exit status. -def expectedFailErrorHandler -Proc.new { -| outp, plan | -outp.puts "if test -e #{plan.failFile}" -outp.puts "then" -outp.puts "" + plan.successCommand -outp.puts "else" -outp.puts "(echo ERROR: Unexpected exit code: 0) | " + redirectAndPrefixCommand(plan.name) -outp.puts "" + plan.failCommand -outp.puts "fi" -} -end - -# Error handler for tests that fail exactly when they return non-zero exit status and produce -# lots of spew. This will echo that spew when the test fails. -def noisyErrorHandler -Proc.new { -| outp, plan | -outputFilename = Shellwords.shellescape((Pathname("..") + (plan.name + ".out")).to_s) - -outp.puts "if test -e #{plan.failFile}" -outp.puts "then" -outp.puts "(cat #{outputFilename} && echo ERROR: Unexpected exit code: `cat #{plan.failFile}`) | " + redirectAndPrefixCommand(plan.name) -outp.puts "" + plan.failCommand -outp.puts "else" -outp.puts "" + plan.successCommand -outp.puts "fi" -} -end - -# Error handler for tests that diff their output with some expectation. -def diffErrorHandler(expectedFilename) -Proc.new { -| outp, plan | -outputFilename = Shellwords.shellescape((Pathname("..") + (plan.name + ".out")).to_s) -diffFilename = Shellwords.shellescape((Pathname("..") + (plan.name + ".diff")).to_s) - -outp.puts "if test -e #{plan.failFile}" -outp.puts "then" -outp.puts "(cat #{outputFilename} && echo ERROR: Unexpected exit code: `cat #{plan.failFile}`) | " + redirectAndPrefixCommand(plan.name) -outp.puts "" + plan.failCommand -
[webkit-changes] [220430] trunk/Source/WebCore
Title: [220430] trunk/Source/WebCore Revision 220430 Author wilan...@apple.com Date 2017-08-08 17:03:55 -0700 (Tue, 08 Aug 2017) Log Message Resource Load Statistics: Merge of dataRecordsRemoved should use std::max() https://bugs.webkit.org/show_bug.cgi?id=175348 Reviewed by Chris Dumez. No new tests. Online change of a statistic that doesn't affect logic flow. * loader/ResourceLoadStatistics.cpp: (WebCore::ResourceLoadStatistics::merge): Now uses std::max() instead of addition. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220429 => 220430) --- trunk/Source/WebCore/ChangeLog 2017-08-08 23:53:04 UTC (rev 220429) +++ trunk/Source/WebCore/ChangeLog 2017-08-09 00:03:55 UTC (rev 220430) @@ -1,3 +1,17 @@ +2017-08-08 John Wilander+ +Resource Load Statistics: Merge of dataRecordsRemoved should use std::max() +https://bugs.webkit.org/show_bug.cgi?id=175348 + + +Reviewed by Chris Dumez. + +No new tests. Online change of a statistic that doesn't affect logic flow. + +* loader/ResourceLoadStatistics.cpp: +(WebCore::ResourceLoadStatistics::merge): +Now uses std::max() instead of addition. + 2017-08-08 Brent Fulgham Sandbox flags do not support document.domain control Modified: trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp (220429 => 220430) --- trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp 2017-08-08 23:53:04 UTC (rev 220429) +++ trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp 2017-08-09 00:03:55 UTC (rev 220430) @@ -226,7 +226,7 @@ // Prevalent resource stats isPrevalentResource |= other.isPrevalentResource; -dataRecordsRemoved += other.dataRecordsRemoved; +dataRecordsRemoved = std::max(dataRecordsRemoved, other.dataRecordsRemoved); // In-memory only isMarkedForCookiePartitioning |= other.isMarkedForCookiePartitioning; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220429] trunk/Source/WebKitLegacy/mac
Title: [220429] trunk/Source/WebKitLegacy/mac Revision 220429 Author beid...@apple.com Date 2017-08-08 16:53:04 -0700 (Tue, 08 Aug 2017) Log Message Don't enable default icon loading in WK1 for apps linked against old SDKs. and https://bugs.webkit.org/show_bug.cgi?id=175342 Reviewed by Andy Estes. * Misc/WebKitVersionChecks.h: * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::getLoadDecisionForIcons): Don't do any icon loading unless the app is linked against new WebKit with the new behavior. Modified Paths trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm Diff Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (220428 => 220429) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2017-08-08 23:36:49 UTC (rev 220428) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2017-08-08 23:53:04 UTC (rev 220429) @@ -1,3 +1,15 @@ +2017-08-08 Brady Eidson+ +Don't enable default icon loading in WK1 for apps linked against old SDKs. + and https://bugs.webkit.org/show_bug.cgi?id=175342 + +Reviewed by Andy Estes. + +* Misc/WebKitVersionChecks.h: +* WebCoreSupport/WebFrameLoaderClient.mm: +(WebFrameLoaderClient::getLoadDecisionForIcons): Don't do any icon loading unless + the app is linked against new WebKit with the new behavior. + 2017-08-07 Devin Rousso Web Inspector: Preview Canvas path when viewing a recording Modified: trunk/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h (220428 => 220429) --- trunk/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h 2017-08-08 23:36:49 UTC (rev 220428) +++ trunk/Source/WebKitLegacy/mac/Misc/WebKitVersionChecks.h 2017-08-08 23:53:04 UTC (rev 220429) @@ -61,6 +61,8 @@ #define WEBKIT_FIRST_VERSION_WITH_CSS_ATTRIBUTE_SETTERS_IGNORING_PRIORITY 0x02170D00 // 535.13.0 #define WEBKIT_FIRST_VERSION_WITHOUT_LEGACY_BACKGROUNDSIZE_SHORTHAND_BEHAVIOR 0x02190100 // 537.1.0 #define WEBKIT_FIRST_VERSION_WITH_INSECURE_CONTENT_BLOCKING 0x02590116 // 601.1.22 +#define WEBKIT_FIRST_VERSION_WITH_DEFAULT_ICON_LOADING 0x025C0126 // 604.1.38 + #else // Need to implement WebKitLinkedOnOrAfter // Actually UIKit version numbers, since applications don't link against WebKit Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm (220428 => 220429) --- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm 2017-08-08 23:36:49 UTC (rev 220428) +++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm 2017-08-08 23:53:04 UTC (rev 220429) @@ -54,6 +54,7 @@ #import "WebKitErrorsPrivate.h" #import "WebKitLogging.h" #import "WebKitNSStringExtras.h" +#import "WebKitVersionChecks.h" #import "WebNSURLExtras.h" #import "WebNavigationData.h" #import "WebNetscapePluginPackage.h" @@ -142,7 +143,6 @@ #import #import #import -#import "WebKitVersionChecks.h" #import "WebMailDelegate.h" #import "WebUIKitDelegate.h" #endif @@ -2280,6 +2280,15 @@ DocumentLoader* documentLoader = frame->loader().documentLoader(); ASSERT(documentLoader); +#if PLATFORM(MAC) +if (!WebKitLinkedOnOrAfter(WEBKIT_FIRST_VERSION_WITH_DEFAULT_ICON_LOADING)) { +for (auto& icon : icons) +documentLoader->didGetLoadDecisionForIcon(false, icon.second, 0); + +return; +} +#endif + bool disallowedDueToImageLoadSettings = false; if (!frame->settings().loadsImagesAutomatically() && !frame->settings().loadsSiteIconsIgnoringImageLoadingSetting()) disallowedDueToImageLoadSettings = true; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220428] trunk/LayoutTests
Title: [220428] trunk/LayoutTests Revision 220428 Author ryanhad...@apple.com Date 2017-08-08 16:36:49 -0700 (Tue, 08 Aug 2017) Log Message Mark media/modern-media-controls/css/webkit-cursor-visibility-auto-hide.html as flaky. https://bugs.webkit.org/show_bug.cgi?id=175195 Unreviewed test gardening. * platform/mac-wk1/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk1/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (220427 => 220428) --- trunk/LayoutTests/ChangeLog 2017-08-08 23:27:08 UTC (rev 220427) +++ trunk/LayoutTests/ChangeLog 2017-08-08 23:36:49 UTC (rev 220428) @@ -1,3 +1,12 @@ +2017-08-08 Ryan Haddad+ +Mark media/modern-media-controls/css/webkit-cursor-visibility-auto-hide.html as flaky. +https://bugs.webkit.org/show_bug.cgi?id=175195 + +Unreviewed test gardening. + +* platform/mac-wk1/TestExpectations: + 2017-08-08 Brent Fulgham Sandbox flags do not support document.domain control Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (220427 => 220428) --- trunk/LayoutTests/platform/mac-wk1/TestExpectations 2017-08-08 23:27:08 UTC (rev 220427) +++ trunk/LayoutTests/platform/mac-wk1/TestExpectations 2017-08-08 23:36:49 UTC (rev 220428) @@ -377,6 +377,7 @@ webkit.org/b/172807 imported/w3c/web-platform-tests/css/selectors4/focus-within-display-none-001.html [ Pass Failure ] webkit.org/b/168409 media/modern-media-controls/airplay-button/airplay-button.html [ Pass Timeout ] +webkit.org/b/175195 media/modern-media-controls/css/webkit-cursor-visibility-auto-hide.html [ Pass Failure ] webkit.org/b/168265 media/modern-media-controls/forward-button/forward-button.html [ Pass Timeout ] webkit.org/b/173432 [ Debug ] imported/w3c/web-platform-tests/fetch/nosniff/importscripts.html [ Pass Crash ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220427] trunk
Title: [220427] trunk Revision 220427 Author bfulg...@apple.com Date 2017-08-08 16:27:08 -0700 (Tue, 08 Aug 2017) Log Message Sandbox flags do not support document.domain control https://bugs.webkit.org/show_bug.cgi?id=175281 Reviewed by Chris Dumez. Source/WebCore: Update the 'setDomain' logic to honor the sandbox properties as defined in the current HTML5 specification. This brings us in line with how Chrome and other browsers have worked for some time. Test: fast/frames/sandboxed-iframe-domain.html * dom/Document.cpp: (WebCore::Document::setDomain): Add check for sandbox flag (with appropriate error message) * dom/SecurityContext.h: LayoutTests: * fast/frames/resources/sandboxed-iframe-set-domain.html: Added. * fast/frames/sandboxed-iframe-domain.html: Added. * fast/frames/sandboxed-iframe-domain-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/SecurityContext.h Added Paths trunk/LayoutTests/fast/frames/resources/sandboxed-iframe-set-domain.html trunk/LayoutTests/fast/frames/sandboxed-iframe-domain-expected.txt trunk/LayoutTests/fast/frames/sandboxed-iframe-domain.html Diff Modified: trunk/LayoutTests/ChangeLog (220426 => 220427) --- trunk/LayoutTests/ChangeLog 2017-08-08 23:24:08 UTC (rev 220426) +++ trunk/LayoutTests/ChangeLog 2017-08-08 23:27:08 UTC (rev 220427) @@ -1,3 +1,15 @@ +2017-08-08 Brent Fulgham+ +Sandbox flags do not support document.domain control +https://bugs.webkit.org/show_bug.cgi?id=175281 + + +Reviewed by Chris Dumez. + +* fast/frames/resources/sandboxed-iframe-set-domain.html: Added. +* fast/frames/sandboxed-iframe-domain.html: Added. +* fast/frames/sandboxed-iframe-domain-expected.txt: Added. + 2017-08-08 Matt Lewis Skipping imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html Added: trunk/LayoutTests/fast/frames/resources/sandboxed-iframe-set-domain.html (0 => 220427) --- trunk/LayoutTests/fast/frames/resources/sandboxed-iframe-set-domain.html (rev 0) +++ trunk/LayoutTests/fast/frames/resources/sandboxed-iframe-set-domain.html 2017-08-08 23:27:08 UTC (rev 220427) @@ -0,0 +1,14 @@ + +function runTest() +{ +try { +document.domain = 'localhost'; +window.top.performedDomainChange("Allowed to set document.domain", true); +} catch (e) { +window.top.performedDomainChange("Denied: " + e.message, false); +} +} + + +TEST CONTENT + Added: trunk/LayoutTests/fast/frames/sandboxed-iframe-domain-expected.txt (0 => 220427) --- trunk/LayoutTests/fast/frames/sandboxed-iframe-domain-expected.txt (rev 0) +++ trunk/LayoutTests/fast/frames/sandboxed-iframe-domain-expected.txt 2017-08-08 23:27:08 UTC (rev 220427) @@ -0,0 +1,11 @@ +This test verifies that a sandboxed iframe does not have permission to modify the document.domain property. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +Denied: Assignment is forbidden for sandboxed iframes. +PASS successfullyParsed is true + +TEST COMPLETE + +PASS Added: trunk/LayoutTests/fast/frames/sandboxed-iframe-domain.html (0 => 220427) --- trunk/LayoutTests/fast/frames/sandboxed-iframe-domain.html (rev 0) +++ trunk/LayoutTests/fast/frames/sandboxed-iframe-domain.html 2017-08-08 23:27:08 UTC (rev 220427) @@ -0,0 +1,19 @@ + + + +description("This test verifies that a sandboxed iframe does not have permission to modify the document.domain property."); + +function performedDomainChange(message, allowed) +{ +debug(message); +document.getElementById("test_status").innerHTML = (allowed ? "FAIL" : "PASS"); +finishJSTest(); +} + + + +FAIL: Script didn't run + + Modified: trunk/Source/WebCore/ChangeLog (220426 => 220427) --- trunk/Source/WebCore/ChangeLog 2017-08-08 23:24:08 UTC (rev 220426) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 23:27:08 UTC (rev 220427) @@ -1,3 +1,21 @@ +2017-08-08 Brent Fulgham + +Sandbox flags do not support document.domain control +https://bugs.webkit.org/show_bug.cgi?id=175281 + + +Reviewed by Chris Dumez. + +Update the 'setDomain' logic to honor the sandbox properties as defined in the current +HTML5 specification. This brings us in line with how Chrome and other browsers have +worked for some time. + +Test: fast/frames/sandboxed-iframe-domain.html + +* dom/Document.cpp: +(WebCore::Document::setDomain): Add check for sandbox flag (with appropriate error message) +* dom/SecurityContext.h: + 2017-08-08 Jeremy Jones Change fast seek logic to prevent ping-ponging. Modified: trunk/Source/WebCore/dom/Document.cpp (220426 => 220427) ---
[webkit-changes] [220426] trunk/LayoutTests
Title: [220426] trunk/LayoutTests Revision 220426 Author jlew...@apple.com Date 2017-08-08 16:24:08 -0700 (Tue, 08 Aug 2017) Log Message Skipping imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html Unreviewed test gardening. * platform/ios-wk2/TestExpectations: * platform/mac-highsierra/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations trunk/LayoutTests/platform/mac-highsierra/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (220425 => 220426) --- trunk/LayoutTests/ChangeLog 2017-08-08 23:03:21 UTC (rev 220425) +++ trunk/LayoutTests/ChangeLog 2017-08-08 23:24:08 UTC (rev 220426) @@ -1,3 +1,13 @@ +2017-08-08 Matt Lewis+ +Skipping imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html + + +Unreviewed test gardening. + +* platform/ios-wk2/TestExpectations: +* platform/mac-highsierra/TestExpectations: + 2017-08-08 Ryan Haddad Skip plugins/crash-restoring-plugin-page-from-page-cache.html on macOS debug. Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (220425 => 220426) --- trunk/LayoutTests/platform/ios-wk2/TestExpectations 2017-08-08 23:03:21 UTC (rev 220425) +++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2017-08-08 23:24:08 UTC (rev 220426) @@ -1954,4 +1954,5 @@ webkit.org/b/171985 [ Release ] workers/bomb.html [ Pass Timeout ] -webkit.org/b/174949 imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html [ Pass Crash ] +webkit.org/b/174949 imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html [ Skip ] + Modified: trunk/LayoutTests/platform/mac-highsierra/TestExpectations (220425 => 220426) --- trunk/LayoutTests/platform/mac-highsierra/TestExpectations 2017-08-08 23:03:21 UTC (rev 220425) +++ trunk/LayoutTests/platform/mac-highsierra/TestExpectations 2017-08-08 23:24:08 UTC (rev 220426) @@ -135,4 +135,4 @@ imported/w3c/web-platform-tests/XMLHttpRequest/send-blob-with-no-mime-type.html [ Failure ] # -imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html [ Pass Crash ] +imported/w3c/IndexedDB-private-browsing/idbfactory_open12.html [ Skip ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220425] trunk
Title: [220425] trunk Revision 220425 Author mcatanz...@igalia.com Date 2017-08-08 16:03:21 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed, fix Ubuntu LTS build https://bugs.webkit.org/show_bug.cgi?id=174490 Source/_javascript_Core: * inspector/remote/glib/RemoteInspectorGlib.cpp: * inspector/remote/glib/RemoteInspectorServer.cpp: Source/WebDriver: * glib/SessionHostGlib.cpp: Source/WebKit: * UIProcess/glib/RemoteInspectorClient.cpp: (WebKit::RemoteInspectorClient::RemoteInspectorClient): Tools: * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorGlib.cpp trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp trunk/Source/WebDriver/ChangeLog trunk/Source/WebDriver/glib/SessionHostGlib.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/glib/RemoteInspectorClient.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220424 => 220425) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-08 23:03:21 UTC (rev 220425) @@ -1,3 +1,11 @@ +2017-08-08 Michael Catanzaro+ +Unreviewed, fix Ubuntu LTS build +https://bugs.webkit.org/show_bug.cgi?id=174490 + +* inspector/remote/glib/RemoteInspectorGlib.cpp: +* inspector/remote/glib/RemoteInspectorServer.cpp: + 2017-08-08 Filip Pizlo Baseline JIT should do caging Modified: trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorGlib.cpp (220424 => 220425) --- trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorGlib.cpp 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorGlib.cpp 2017-08-08 23:03:21 UTC (rev 220425) @@ -151,7 +151,7 @@ // set_property nullptr, // padding -nullptr +{ 0 } }; void RemoteInspector::setupConnection(GRefPtr&& connection) Modified: trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp (220424 => 220425) --- trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp 2017-08-08 23:03:21 UTC (rev 220425) @@ -135,7 +135,7 @@ // set_property nullptr, // padding -nullptr +{ 0 } }; RemoteInspectorServer& RemoteInspectorServer::singleton() Modified: trunk/Source/WebDriver/ChangeLog (220424 => 220425) --- trunk/Source/WebDriver/ChangeLog 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/WebDriver/ChangeLog 2017-08-08 23:03:21 UTC (rev 220425) @@ -1,5 +1,12 @@ 2017-08-08 Michael Catanzaro +Unreviewed, fix Ubuntu LTS build +https://bugs.webkit.org/show_bug.cgi?id=174490 + +* glib/SessionHostGlib.cpp: + +2017-08-08 Michael Catanzaro + [CMake] Properly test if compiler supports compiler flags https://bugs.webkit.org/show_bug.cgi?id=174490 Modified: trunk/Source/WebDriver/glib/SessionHostGlib.cpp (220424 => 220425) --- trunk/Source/WebDriver/glib/SessionHostGlib.cpp 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/WebDriver/glib/SessionHostGlib.cpp 2017-08-08 23:03:21 UTC (rev 220425) @@ -95,7 +95,7 @@ // set_property nullptr, // padding -nullptr +{ 0 } }; void SessionHost::connectToBrowser(Function&& completionHandler) Modified: trunk/Source/WebKit/ChangeLog (220424 => 220425) --- trunk/Source/WebKit/ChangeLog 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/WebKit/ChangeLog 2017-08-08 23:03:21 UTC (rev 220425) @@ -1,3 +1,11 @@ +2017-08-08 Michael Catanzaro + +Unreviewed, fix Ubuntu LTS build +https://bugs.webkit.org/show_bug.cgi?id=174490 + +* UIProcess/glib/RemoteInspectorClient.cpp: +(WebKit::RemoteInspectorClient::RemoteInspectorClient): + 2017-08-08 Wenson Hsieh Unreviewed, fix the Mac debug build after r220418. Modified: trunk/Source/WebKit/UIProcess/glib/RemoteInspectorClient.cpp (220424 => 220425) --- trunk/Source/WebKit/UIProcess/glib/RemoteInspectorClient.cpp 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Source/WebKit/UIProcess/glib/RemoteInspectorClient.cpp 2017-08-08 23:03:21 UTC (rev 220425) @@ -149,7 +149,7 @@ // set_property nullptr, // padding -nullptr +{ 0 } }; RemoteInspectorClient::RemoteInspectorClient(const char* address, unsigned port, RemoteInspectorObserver& observer) Modified: trunk/Tools/ChangeLog (220424 => 220425) --- trunk/Tools/ChangeLog 2017-08-08 22:53:15 UTC (rev 220424) +++ trunk/Tools/ChangeLog
[webkit-changes] [220424] branches/safari-604.1.38.0-branch/Source
Title: [220424] branches/safari-604.1.38.0-branch/Source Revision 220424 Author jmarc...@apple.com Date 2017-08-08 15:53:15 -0700 (Tue, 08 Aug 2017) Log Message Versioning. Modified Paths branches/safari-604.1.38.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-604.1.38.0-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-604.1.38.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.0-branch/Source/WebCore/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/WebCore/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/WebCore/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -2,7 +2,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The system version prefix is based on the current system version. Modified: branches/safari-604.1.38.0-branch/Source/WebKit/Configurations/Version.xcconfig (220423 => 220424) --- branches/safari-604.1.38.0-branch/Source/WebKit/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) +++ branches/safari-604.1.38.0-branch/Source/WebKit/Configurations/Version.xcconfig 2017-08-08 22:53:15 UTC (rev 220424) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 0; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified:
[webkit-changes] [220423] branches/safari-604.1.38.1-branch/Source
Title: [220423] branches/safari-604.1.38.1-branch/Source Revision 220423 Author jmarc...@apple.com Date 2017-08-08 15:50:11 -0700 (Tue, 08 Aug 2017) Log Message Versioning. Modified Paths branches/safari-604.1.38.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-604.1.38.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-604.1.38.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.1-branch/Source/WebCore/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/WebCore/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/WebCore/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-604.1.38.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -2,7 +2,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The system version prefix is based on the current system version. Modified: branches/safari-604.1.38.1-branch/Source/WebKit/Configurations/Version.xcconfig (220422 => 220423) --- branches/safari-604.1.38.1-branch/Source/WebKit/Configurations/Version.xcconfig 2017-08-08 22:46:50 UTC (rev 220422) +++ branches/safari-604.1.38.1-branch/Source/WebKit/Configurations/Version.xcconfig 2017-08-08 22:50:11 UTC (rev 220423) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 38; MICRO_VERSION = 1; -NANO_VERSION = 2; +NANO_VERSION = 3; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified:
[webkit-changes] [220422] tags/Safari-604.1.38.1.2/
Title: [220422] tags/Safari-604.1.38.1.2/ Revision 220422 Author jmarc...@apple.com Date 2017-08-08 15:46:50 -0700 (Tue, 08 Aug 2017) Log Message Tag Safari-604.1.38.1.2. Added Paths tags/Safari-604.1.38.1.2/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220421] tags/Safari-604.1.38.0.2/
Title: [220421] tags/Safari-604.1.38.0.2/ Revision 220421 Author jmarc...@apple.com Date 2017-08-08 15:45:52 -0700 (Tue, 08 Aug 2017) Log Message Tag Safari-604.1.38.0.2. Added Paths tags/Safari-604.1.38.0.2/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220420] trunk/Source/WebKit
Title: [220420] trunk/Source/WebKit Revision 220420 Author wenson_hs...@apple.com Date 2017-08-08 14:06:18 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed, fix the Mac debug build after r220418. * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::WebViewImpl::prepareForMoveToWindow): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm Diff Modified: trunk/Source/WebKit/ChangeLog (220419 => 220420) --- trunk/Source/WebKit/ChangeLog 2017-08-08 20:55:09 UTC (rev 220419) +++ trunk/Source/WebKit/ChangeLog 2017-08-08 21:06:18 UTC (rev 220420) @@ -1,5 +1,12 @@ 2017-08-08 Wenson Hsieh+Unreviewed, fix the Mac debug build after r220418. + +* UIProcess/Cocoa/WebViewImpl.mm: +(WebKit::WebViewImpl::prepareForMoveToWindow): + +2017-08-08 Wenson Hsieh + [Mac WK2] WebViewImpl should hold a weak pointer to its WKWebView or WKView https://bugs.webkit.org/show_bug.cgi?id=175302 Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm (220419 => 220420) --- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2017-08-08 20:55:09 UTC (rev 220419) +++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2017-08-08 21:06:18 UTC (rev 220420) @@ -2223,7 +2223,7 @@ if (!weakThis) return; -ASSERT(weakThis->[m_view window] == weakThis->m_targetWindowForMovePreparation); +ASSERT([weakThis->m_view window] == weakThis->m_targetWindowForMovePreparation); weakThis->m_targetWindowForMovePreparation = nil; }); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220419] trunk/LayoutTests
Title: [220419] trunk/LayoutTests Revision 220419 Author ryanhad...@apple.com Date 2017-08-08 13:55:09 -0700 (Tue, 08 Aug 2017) Log Message Skip plugins/crash-restoring-plugin-page-from-page-cache.html on macOS debug. https://bugs.webkit.org/show_bug.cgi?id=175270 Unreviewed test gardening. * platform/mac-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (220418 => 220419) --- trunk/LayoutTests/ChangeLog 2017-08-08 20:45:21 UTC (rev 220418) +++ trunk/LayoutTests/ChangeLog 2017-08-08 20:55:09 UTC (rev 220419) @@ -1,5 +1,14 @@ 2017-08-08 Ryan Haddad+Skip plugins/crash-restoring-plugin-page-from-page-cache.html on macOS debug. +https://bugs.webkit.org/show_bug.cgi?id=175270 + +Unreviewed test gardening. + +* platform/mac-wk2/TestExpectations: + +2017-08-08 Ryan Haddad + Mark fast/images/async-image-body-background-image.html as flaky on macOS. https://bugs.webkit.org/show_bug.cgi?id=175193 Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (220418 => 220419) --- trunk/LayoutTests/platform/mac-wk2/TestExpectations 2017-08-08 20:45:21 UTC (rev 220418) +++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2017-08-08 20:55:09 UTC (rev 220419) @@ -738,5 +738,6 @@ webkit.org/b/172148 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-vertical.html [ Pass Failure ] -webkit.org/b/173946 [ Debug ]media/modern-media-controls/fullscreen-support/fullscreen-support-press.html [ Pass Failure ] +webkit.org/b/173946 [ Debug ] media/modern-media-controls/fullscreen-support/fullscreen-support-press.html [ Pass Failure ] +webkit.org/b/175270 [ Debug ] plugins/crash-restoring-plugin-page-from-page-cache.html [ Skip ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220418] trunk
Title: [220418] trunk Revision 220418 Author wenson_hs...@apple.com Date 2017-08-08 13:45:21 -0700 (Tue, 08 Aug 2017) Log Message [Mac WK2] WebViewImpl should hold a weak pointer to its WKWebView or WKView https://bugs.webkit.org/show_bug.cgi?id=175302 Reviewed by Tim Horton. Source/WebKit: Refactor WebViewImpl's m_view from a raw pointer to a WeakObjCPtr to ensure that it is automatically cleared out when the WKWebView or WKView are destroyed, and also changes several places where we implicitly block capture the WebViewImpl to only capture a WeakPtr to the WebViewImpl. Most of the changes here are boilerplate adjustments for how m_view is now a weak pointer. Test: WKWebViewMacEditingTests.DoNotCrashWhenInterpretingKeyEventWhileDeallocatingView. * Shared/mac/WeakObjCPtr.h: (WebKit::WeakObjCPtr::operator ValueType * const): * UIProcess/Cocoa/WebViewImpl.h: * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::WebViewImpl::updateTouchBar): (WebKit::WebViewImpl::updateMediaTouchBar): (WebKit::WebViewImpl::WebViewImpl): (WebKit::WebViewImpl::~WebViewImpl): (WebKit::WebViewImpl::window): (WebKit::WebViewImpl::resignFirstResponder): (WebKit::WebViewImpl::isFocused const): (WebKit::WebViewImpl::renewGState): (WebKit::WebViewImpl::setFrameAndScrollBy): (WebKit::WebViewImpl::updateWindowAndViewFrames): (WebKit::WebViewImpl::updateLayer): (WebKit::WebViewImpl::printOperationWithPrintInfo): (WebKit::WebViewImpl::updateContentInsetsIfAutomatic): (WebKit::WebViewImpl::setLayoutMode): (WebKit::WebViewImpl::intrinsicDeviceScaleFactor const): (WebKit::WebViewImpl::windowDidBecomeKey): (WebKit::WebViewImpl::windowDidResignKey): (WebKit::WebViewImpl::windowDidChangeScreen): (WebKit::WebViewImpl::mightBeginDragWhileInactive): (WebKit::WebViewImpl::acceptsFirstMouse): (WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent): (WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb): (WebKit::WebViewImpl::viewWillMoveToWindow): (WebKit::WebViewImpl::viewDidMoveToWindow): (WebKit::WebViewImpl::viewDidChangeBackingProperties): (WebKit::WebViewImpl::hitTest): (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent): (WebKit::WebViewImpl::colorSpace): (WebKit::WebViewImpl::prepareForMoveToWindow): (WebKit::WebViewImpl::notifyInputContextAboutDiscardedComposition): (WebKit::WebViewImpl::pressureChangeWithEvent): (WebKit::WebViewImpl::fullScreenWindowController): (WebKit::WebViewImpl::executeSavedCommandBySelector): (WebKit::WebViewImpl::validRequestorForSendAndReturnTypes): (WebKit::WebViewImpl::handleRequestedCandidates): (WebKit::WebViewImpl::preferencesDidChange): (WebKit::WebViewImpl::setTextIndicator): (WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly): (WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens): (WebKit::WebViewImpl::sendToolTipMouseExited): (WebKit::WebViewImpl::sendToolTipMouseEntered): (WebKit::WebViewImpl::toolTipChanged): (WebKit::WebViewImpl::setAcceleratedCompositingRootLayer): (WebKit::WebViewImpl::updateThumbnailViewLayer): (WebKit::WebViewImpl::setInspectorAttachmentView): (WebKit::WebViewImpl::inspectorAttachmentView): (WebKit::WebViewImpl::draggedImage): (WebKit::WebViewImpl::draggingEntered): (WebKit::WebViewImpl::draggingUpdated): (WebKit::WebViewImpl::draggingExited): (WebKit::WebViewImpl::performDragOperation): (WebKit::WebViewImpl::hitTestForDragTypes): (WebKit::WebViewImpl::startWindowDrag): (WebKit::WebViewImpl::dragImageForView): (WebKit::WebViewImpl::setPromisedDataForImage): (WebKit::WebViewImpl::setPromisedDataForAttachment): (WebKit::WebViewImpl::takeViewSnapshot): (WebKit::WebViewImpl::scrollWheel): (WebKit::WebViewImpl::magnifyWithEvent): (WebKit::WebViewImpl::rotateWithEvent): (WebKit::WebViewImpl::doneWithKeyEvent): (WebKit::WebViewImpl::interpretKeyEvent): (WebKit::WebViewImpl::firstRectForCharacterRange): (WebKit::WebViewImpl::characterIndexForPoint): (WebKit::WebViewImpl::performKeyEquivalent): (WebKit::WebViewImpl::keyUp): (WebKit::WebViewImpl::keyDown): (WebKit::WebViewImpl::mouseMoved): (WebKit::WebViewImpl::windowIsFrontWindowUnderMouse): (WebKit::WebViewImpl::userInterfaceLayoutDirection): Tools: Adds a new unit test checking that delayed event processing in text input context does not cause unwanted behaviors. See WebKit ChangeLog for more details. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h: Renamed from Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/NSTextInputClientSPI.h. * TestWebKitAPI/Tests/mac/WKWebViewMacEditingTests.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/WKWebViewSelectionTests.mm. (-[SlowTextInputContext handleEventByInputMethod:completionHandler:]): (-[SlowTextInputContext handleEvent:completionHandler:]): (-[SlowInputWebView inputContext]): (-[SlowInputWebView _web_superInputContext]): (TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/mac/WeakObjCPtr.h trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h
[webkit-changes] [220417] trunk/LayoutTests
Title: [220417] trunk/LayoutTests Revision 220417 Author ryanhad...@apple.com Date 2017-08-08 12:58:26 -0700 (Tue, 08 Aug 2017) Log Message Mark fast/images/async-image-body-background-image.html as flaky on macOS. https://bugs.webkit.org/show_bug.cgi?id=175193 Unreviewed test gardening. * platform/mac/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (220416 => 220417) --- trunk/LayoutTests/ChangeLog 2017-08-08 19:44:20 UTC (rev 220416) +++ trunk/LayoutTests/ChangeLog 2017-08-08 19:58:26 UTC (rev 220417) @@ -1,3 +1,12 @@ +2017-08-08 Ryan Haddad+ +Mark fast/images/async-image-body-background-image.html as flaky on macOS. +https://bugs.webkit.org/show_bug.cgi?id=175193 + +Unreviewed test gardening. + +* platform/mac/TestExpectations: + 2017-08-08 Jeremy Jones Change fast seek logic to prevent ping-ponging. Modified: trunk/LayoutTests/platform/mac/TestExpectations (220416 => 220417) --- trunk/LayoutTests/platform/mac/TestExpectations 2017-08-08 19:44:20 UTC (rev 220416) +++ trunk/LayoutTests/platform/mac/TestExpectations 2017-08-08 19:58:26 UTC (rev 220417) @@ -1627,3 +1627,5 @@ webkit.org/b/175102 [ ElCapitan ] workers/wasm-hashset-many.html [ Skip ] webkit.org/b/175102 [ ElCapitan ] workers/wasm-hashset-many-2.html [ Skip ] + +webkit.org/b/175193 fast/images/async-image-body-background-image.html [ Pass Timeout ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220416] trunk/Source
Title: [220416] trunk/Source Revision 220416 Author fpi...@apple.com Date 2017-08-08 12:44:20 -0700 (Tue, 08 Aug 2017) Log Message Baseline JIT should do caging https://bugs.webkit.org/show_bug.cgi?id=175037 Reviewed by Mark Lam. Source/bmalloc: This centralizes the notion of permanently enabling the primitive gigacage, which we only do in jsc and WebProcess. This saves the baseline JIT from emitting some code. Otherwise it would always have to emit enabled checks on each typed array access. * bmalloc/Gigacage.cpp: (Gigacage::primitiveGigacageDisabled): (Gigacage::disableDisablingPrimitiveGigacageIfShouldBeEnabled): (Gigacage::isDisablingPrimitiveGigacageDisabled): * bmalloc/Gigacage.h: (Gigacage::isPrimitiveGigacagePermanentlyEnabled): (Gigacage::canPrimitiveGigacageBeDisabled): Source/_javascript_Core: Adds a AssemblyHelpers::cage and cageConditionally. Uses it in the baseline JIT. Also modifies FTL caging to be more defensive when caging is disabled. Relanded with fixed AssemblyHelpers::cageConditionally(). * bytecode/AccessCase.cpp: (JSC::AccessCase::generateImpl): * bytecode/InlineAccess.cpp: (JSC::InlineAccess::dumpCacheSizesAndCrash): (JSC::InlineAccess::generateSelfPropertyAccess): (JSC::InlineAccess::generateSelfPropertyReplace): (JSC::InlineAccess::generateArrayLength): * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::caged): * jit/AssemblyHelpers.h: (JSC::AssemblyHelpers::cage): (JSC::AssemblyHelpers::cageConditionally): * jit/JITPropertyAccess.cpp: (JSC::JIT::emitDoubleLoad): (JSC::JIT::emitContiguousLoad): (JSC::JIT::emitArrayStorageLoad): (JSC::JIT::emitGenericContiguousPutByVal): (JSC::JIT::emitArrayStoragePutByVal): (JSC::JIT::emit_op_get_from_scope): (JSC::JIT::emit_op_put_to_scope): (JSC::JIT::emitIntTypedArrayGetByVal): (JSC::JIT::emitFloatTypedArrayGetByVal): (JSC::JIT::emitIntTypedArrayPutByVal): (JSC::JIT::emitFloatTypedArrayPutByVal): * jsc.cpp: (jscmain): (primitiveGigacageDisabled): Deleted. Source/WebKit: Use a better API to disable disabling the primitive gigacage. * WebProcess/WebProcess.cpp: (WebKit::m_webSQLiteDatabaseTracker): (WebKit::primitiveGigacageDisabled): Deleted. Source/WTF: * wtf/Gigacage.h: (Gigacage::disableDisablingPrimitiveGigacageIfShouldBeEnabled): (Gigacage::isDisablingPrimitiveGigacageDisabled): (Gigacage::isPrimitiveGigacagePermanentlyEnabled): (Gigacage::canPrimitiveGigacageBeDisabled): (Gigacage::basePtr): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/AccessCase.cpp trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp trunk/Source/_javascript_Core/jit/AssemblyHelpers.h trunk/Source/_javascript_Core/jit/JITPropertyAccess.cpp trunk/Source/_javascript_Core/jsc.cpp trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Gigacage.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebProcess.cpp trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/bmalloc/Gigacage.cpp trunk/Source/bmalloc/bmalloc/Gigacage.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220415 => 220416) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-08 19:16:10 UTC (rev 220415) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-08 19:44:20 UTC (rev 220416) @@ -1,3 +1,44 @@ +2017-08-08 Filip Pizlo+ +Baseline JIT should do caging +https://bugs.webkit.org/show_bug.cgi?id=175037 + +Reviewed by Mark Lam. + +Adds a AssemblyHelpers::cage and cageConditionally. Uses it in the baseline JIT. + +Also modifies FTL caging to be more defensive when caging is disabled. + +Relanded with fixed AssemblyHelpers::cageConditionally(). + +* bytecode/AccessCase.cpp: +(JSC::AccessCase::generateImpl): +* bytecode/InlineAccess.cpp: +(JSC::InlineAccess::dumpCacheSizesAndCrash): +(JSC::InlineAccess::generateSelfPropertyAccess): +(JSC::InlineAccess::generateSelfPropertyReplace): +(JSC::InlineAccess::generateArrayLength): +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::caged): +* jit/AssemblyHelpers.h: +(JSC::AssemblyHelpers::cage): +(JSC::AssemblyHelpers::cageConditionally): +* jit/JITPropertyAccess.cpp: +(JSC::JIT::emitDoubleLoad): +(JSC::JIT::emitContiguousLoad): +(JSC::JIT::emitArrayStorageLoad): +(JSC::JIT::emitGenericContiguousPutByVal): +(JSC::JIT::emitArrayStoragePutByVal): +(JSC::JIT::emit_op_get_from_scope): +(JSC::JIT::emit_op_put_to_scope): +(JSC::JIT::emitIntTypedArrayGetByVal): +(JSC::JIT::emitFloatTypedArrayGetByVal): +(JSC::JIT::emitIntTypedArrayPutByVal): +(JSC::JIT::emitFloatTypedArrayPutByVal): +* jsc.cpp: +(jscmain): +(primitiveGigacageDisabled): Deleted. + 2017-08-08 Ryan
[webkit-changes] [220415] trunk/JSTests
Title: [220415] trunk/JSTests Revision 220415 Author utatane@gmail.com Date 2017-08-08 12:16:10 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed, gardening test262 for Promise resolve / reject function length https://bugs.webkit.org/show_bug.cgi?id=175333 * test262.yaml: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/test262.yaml Diff Modified: trunk/JSTests/ChangeLog (220414 => 220415) --- trunk/JSTests/ChangeLog 2017-08-08 19:03:57 UTC (rev 220414) +++ trunk/JSTests/ChangeLog 2017-08-08 19:16:10 UTC (rev 220415) @@ -1,3 +1,10 @@ +2017-08-08 Yusuke Suzuki+ +Unreviewed, gardening test262 for Promise resolve / reject function length +https://bugs.webkit.org/show_bug.cgi?id=175333 + +* test262.yaml: + 2017-08-07 Robin Morisset GetOwnProperty of TypedArray indexed fields is wrongly configurable Modified: trunk/JSTests/test262.yaml (220414 => 220415) --- trunk/JSTests/test262.yaml 2017-08-08 19:03:57 UTC (rev 220414) +++ trunk/JSTests/test262.yaml 2017-08-08 19:16:10 UTC (rev 220415) @@ -34898,9 +34898,9 @@ - path: test262/test/built-ins/Promise/all/invoke-then-error.js cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js", "../../../../harness/doneprintHandle.js"], [:strict, :async] - path: test262/test/built-ins/Promise/all/invoke-then.js - cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [] + cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [] - path: test262/test/built-ins/Promise/all/invoke-then.js - cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict] + cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict] - path: test262/test/built-ins/Promise/all/iter-close.js cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [] - path: test262/test/built-ins/Promise/all/iter-close.js @@ -34958,9 +34958,9 @@ - path: test262/test/built-ins/Promise/all/resolve-element-function-extensible.js cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict] - path: test262/test/built-ins/Promise/all/resolve-element-function-length.js - cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js", "../../../../harness/propertyHelper.js"], [] + cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js", "../../../../harness/propertyHelper.js"], [] - path: test262/test/built-ins/Promise/all/resolve-element-function-length.js - cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js", "../../../../harness/propertyHelper.js"], [:strict] + cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js", "../../../../harness/propertyHelper.js"], [:strict] - path: test262/test/built-ins/Promise/all/resolve-element-function-name.js cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [] - path: test262/test/built-ins/Promise/all/resolve-element-function-name.js @@ -35006,17 +35006,17 @@ - path: test262/test/built-ins/Promise/exception-after-resolve-in-thenable-job.js cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js", "../../../harness/doneprintHandle.js"], [:strict, :async] - path: test262/test/built-ins/Promise/exec-args.js - cmd: runTest262 :fail, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [] + cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [] - path: test262/test/built-ins/Promise/exec-args.js - cmd: runTest262 :fail, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict] + cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict] - path: test262/test/built-ins/Promise/executor-function-extensible.js cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [] - path: test262/test/built-ins/Promise/executor-function-extensible.js cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict] - path: test262/test/built-ins/Promise/executor-function-length.js - cmd: runTest262 :fail, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js", "../../../harness/propertyHelper.js"], [] + cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js", "../../../harness/propertyHelper.js"], [] - path:
[webkit-changes] [220414] trunk
Title: [220414] trunk Revision 220414 Author commit-qu...@webkit.org Date 2017-08-08 12:03:57 -0700 (Tue, 08 Aug 2017) Log Message Change fast seek logic to prevent ping-ponging. https://bugs.webkit.org/show_bug.cgi?id=175167 rdar://problem/32936116 Patch by Jeremy Joneson 2017-08-08 Reviewed by Jer Noble. Source/WebCore: Updated test: media/video-fast-seek.html Changed fast seek behavior to always seek early than seek time; and after current time when seeking forward. This prevents ping-ponging, where a fast seek overshoots the target looking for a keyframe. A subsequent seek will suddenly be on the other side of current time and will search in the opposite direction for a key frame; repeat. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::fastSeek): LayoutTests: Test now requires forward fast seek result to be between current time and the target time, and a backward seek to be before the seek time. * media/video-fast-seek.html: * media/media-source/media-source-fastseek.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/media/media-source/media-source-fastseek-expected.txt trunk/LayoutTests/media/media-source/media-source-fastseek.html trunk/LayoutTests/media/video-fast-seek-expected.txt trunk/LayoutTests/media/video-fast-seek.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLMediaElement.cpp Diff Modified: trunk/LayoutTests/ChangeLog (220413 => 220414) --- trunk/LayoutTests/ChangeLog 2017-08-08 17:22:07 UTC (rev 220413) +++ trunk/LayoutTests/ChangeLog 2017-08-08 19:03:57 UTC (rev 220414) @@ -1,3 +1,17 @@ +2017-08-08 Jeremy Jones + +Change fast seek logic to prevent ping-ponging. +https://bugs.webkit.org/show_bug.cgi?id=175167 +rdar://problem/32936116 + +Reviewed by Jer Noble. + +Test now requires forward fast seek result to be between current time and the target time, +and a backward seek to be before the seek time. + +* media/video-fast-seek.html: +* media/media-source/media-source-fastseek.html: + 2017-08-08 Ms2ger Remove obsolete failure expectations for event_loadedmetadata.html. Modified: trunk/LayoutTests/media/media-source/media-source-fastseek-expected.txt (220413 => 220414) --- trunk/LayoutTests/media/media-source/media-source-fastseek-expected.txt 2017-08-08 17:22:07 UTC (rev 220413) +++ trunk/LayoutTests/media/media-source/media-source-fastseek-expected.txt 2017-08-08 19:03:57 UTC (rev 220414) @@ -11,7 +11,7 @@ RUN(video.currentTime = 1) EVENT(seeked) EXPECTED (video.currentTime.toFixed(1) == '1') OK -RUN(video.fastSeek(2)) +RUN(video.fastSeek(5)) EVENT(seeked) EXPECTED (video.currentTime.toFixed(1) == '4') OK RUN(video.currentTime = 3) Modified: trunk/LayoutTests/media/media-source/media-source-fastseek.html (220413 => 220414) --- trunk/LayoutTests/media/media-source/media-source-fastseek.html 2017-08-08 17:22:07 UTC (rev 220413) +++ trunk/LayoutTests/media/media-source/media-source-fastseek.html 2017-08-08 19:03:57 UTC (rev 220414) @@ -59,7 +59,7 @@ function seeked1() { testExpected('video.currentTime.toFixed(1)', 1); waitForEventOnce('seeked', seeked2); -run('video.fastSeek(2)'); +run('video.fastSeek(5)'); } function seeked2() { Modified: trunk/LayoutTests/media/video-fast-seek-expected.txt (220413 => 220414) --- trunk/LayoutTests/media/video-fast-seek-expected.txt 2017-08-08 17:22:07 UTC (rev 220413) +++ trunk/LayoutTests/media/video-fast-seek-expected.txt 2017-08-08 19:03:57 UTC (rev 220414) @@ -6,15 +6,16 @@ RUN(video.currentTime = 2.5) EVENT(timeupdate) EXPECTED (video.currentTime.toFixed(1) == '2.5') OK -Test that fastSeek() past the currentTime will not result in a seek before the currentTime: +Test that fastSeek() past the currentTime will not result in a seek before the currentTime or past the seek time: RUN(video.fastSeek(2.6)) EVENT(timeupdate) -EXPECTED (video.currentTime >= '2.6') OK +EXPECTED (video.currentTime <= '2.6') OK +EXPECTED (video.currentTime >= '2.5') OK Seek before the 4th sync sample: RUN(video.currentTime = 2.3) EVENT(timeupdate) EXPECTED (video.currentTime.toFixed(1) == '2.3') OK -Test that fastSeek() before the currentTime will not result in a seek past the currentTime: +Test that fastSeek() before the currentTime will not result in a seek past the seek time: RUN(video.fastSeek(2.2)) EVENT(timeupdate) EXPECTED (video.currentTime <= '2.2') OK Modified: trunk/LayoutTests/media/video-fast-seek.html (220413 => 220414) --- trunk/LayoutTests/media/video-fast-seek.html 2017-08-08 17:22:07 UTC (rev 220413) +++ trunk/LayoutTests/media/video-fast-seek.html 2017-08-08 19:03:57 UTC (rev 220414) @@ -28,7 +28,7 @@ function seek1() { testExpected('video.currentTime.toFixed(1)', 2.5); -consoleWrite('Test that fastSeek() past the currentTime will not
[webkit-changes] [220413] trunk/LayoutTests
Title: [220413] trunk/LayoutTests Revision 220413 Author commit-qu...@webkit.org Date 2017-08-08 10:22:07 -0700 (Tue, 08 Aug 2017) Log Message Remove obsolete failure expectations for event_loadedmetadata.html. https://bugs.webkit.org/show_bug.cgi?id=175027 Unreviewed test gardening. Patch by Ms2geron 2017-08-08 * TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (220412 => 220413) --- trunk/LayoutTests/ChangeLog 2017-08-08 17:18:24 UTC (rev 220412) +++ trunk/LayoutTests/ChangeLog 2017-08-08 17:22:07 UTC (rev 220413) @@ -1,3 +1,12 @@ +2017-08-08 Ms2ger + +Remove obsolete failure expectations for event_loadedmetadata.html. +https://bugs.webkit.org/show_bug.cgi?id=175027 + +Unreviewed test gardening. + +* TestExpectations: + 2017-08-08 John Wilander Resource Load Statistics: Clear web processes' state on history removal Modified: trunk/LayoutTests/TestExpectations (220412 => 220413) --- trunk/LayoutTests/TestExpectations 2017-08-08 17:18:24 UTC (rev 220412) +++ trunk/LayoutTests/TestExpectations 2017-08-08 17:22:07 UTC (rev 220413) @@ -1177,7 +1177,6 @@ imported/w3c/web-platform-tests/XMLHttpRequest/open-url-redirected-worker-origin.htm [ Failure Pass ] imported/w3c/web-platform-tests/cssom/MediaList.html [ Failure ] -imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html [ Failure ] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/document-adopt-base-url.html [ ImageOnlyFailure ] webkit.org/b/168066 performance-api/performance-now-api.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220412] trunk
Title: [220412] trunk Revision 220412 Author wilan...@apple.com Date 2017-08-08 10:18:24 -0700 (Tue, 08 Aug 2017) Log Message Resource Load Statistics: Clear web processes' state on history removal https://bugs.webkit.org/show_bug.cgi?id=175271 Reviewed by Chris Dumez. Source/WebKit: https://bugs.webkit.org/show_bug.cgi?id=175090 introduced state in the web process and that state needs to be cleared when the UI process' statistics are cleared as part of history removal. * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::clearResourceLoadStatistics): * UIProcess/WebProcessPool.h: * UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::removeData): (WebKit::WebsiteDataStore::clearResourceLoadStatisticsInWebProcesses): * UIProcess/WebsiteData/WebsiteDataStore.h: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::clearResourceLoadStatistics): * WebProcess/WebProcess.h: * WebProcess/WebProcess.messages.in: Tools: Test infrastructure for asynchronous tests of website data removal for _WKWebsiteDataTypeResourceLoadStatistics. * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: (WTR::InjectedBundle::didReceiveMessageToPage): * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval): (WTR::TestRunner::statisticsCallClearThroughWebsiteDataRemovalCallback): * WebKitTestRunner/InjectedBundle/TestRunner.h: * WebKitTestRunner/TestController.cpp: (WTR::TestController::statisticsClearThroughWebsiteDataRemoval): * WebKitTestRunner/TestController.h: * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): (WTR::TestInvocation::didClearStatisticsThroughWebsiteDataRemoval): * WebKitTestRunner/TestInvocation.h: * WebKitTestRunner/cocoa/TestControllerCocoa.mm: (WTR::TestController::statisticsClearThroughWebsiteDataRemoval): LayoutTests: * http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt: Added. * http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal.html: Added. * platform/mac-wk2/TestExpectations: user-interaction-reported-after-website-data-removal.html marked as [ Pass ]. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebProcessPool.h trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h trunk/Source/WebKit/WebProcess/WebProcess.cpp trunk/Source/WebKit/WebProcess/WebProcess.h trunk/Source/WebKit/WebProcess/WebProcess.messages.in trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestController.h trunk/Tools/WebKitTestRunner/TestInvocation.cpp trunk/Tools/WebKitTestRunner/TestInvocation.h trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm Added Paths trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal.html Diff Modified: trunk/LayoutTests/ChangeLog (220411 => 220412) --- trunk/LayoutTests/ChangeLog 2017-08-08 17:15:49 UTC (rev 220411) +++ trunk/LayoutTests/ChangeLog 2017-08-08 17:18:24 UTC (rev 220412) @@ -1,3 +1,16 @@ +2017-08-08 John Wilander+ +Resource Load Statistics: Clear web processes' state on history removal +https://bugs.webkit.org/show_bug.cgi?id=175271 + + +Reviewed by Chris Dumez. + +* http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt: Added. +* http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal.html: Added. +* platform/mac-wk2/TestExpectations: +user-interaction-reported-after-website-data-removal.html marked as [ Pass ]. + 2017-08-08 Ryan Haddad Fix baseline for http/tests/security/set-domain-remove-subdomain-for-ip-address.html. Added: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt (0 => 220412) --- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-reported-after-website-data-removal-expected.txt
[webkit-changes] [220411] trunk/Source/WebCore
Title: [220411] trunk/Source/WebCore Revision 220411 Author commit-qu...@webkit.org Date 2017-08-08 10:15:49 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed. Correct the function name in a debug message. https://bugs.webkit.org/show_bug.cgi?id=175262 No new tests: debug logs are not tested. Patch by Ms2geron 2017-08-08 * platform/audio/PlatformMediaSessionManager.cpp: (WebCore::PlatformMediaSessionManager::applicationDidBecomeActive const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220410 => 220411) --- trunk/Source/WebCore/ChangeLog 2017-08-08 17:14:01 UTC (rev 220410) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 17:15:49 UTC (rev 220411) @@ -1,3 +1,13 @@ +2017-08-08 Ms2ger + +Unreviewed. Correct the function name in a debug message. +https://bugs.webkit.org/show_bug.cgi?id=175262 + +No new tests: debug logs are not tested. + +* platform/audio/PlatformMediaSessionManager.cpp: +(WebCore::PlatformMediaSessionManager::applicationDidBecomeActive const): + 2017-08-08 Brent Fulgham Unreviewed build fix after r220376. Modified: trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp (220410 => 220411) --- trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp 2017-08-08 17:14:01 UTC (rev 220410) +++ trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp 2017-08-08 17:15:49 UTC (rev 220411) @@ -307,7 +307,7 @@ void PlatformMediaSessionManager::applicationDidBecomeActive() const { -LOG(Media, "PlatformMediaSessionManager::applicationDidBecomeInactive"); +LOG(Media, "PlatformMediaSessionManager::applicationDidBecomeActive"); Vector sessions = m_sessions; forEachSession([&] (PlatformMediaSession& session, size_t) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220410] trunk/LayoutTests
Title: [220410] trunk/LayoutTests Revision 220410 Author ryanhad...@apple.com Date 2017-08-08 10:14:01 -0700 (Tue, 08 Aug 2017) Log Message Fix baseline for http/tests/security/set-domain-remove-subdomain-for-ip-address.html. Unreviewed test gardening. * http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (220409 => 220410) --- trunk/LayoutTests/ChangeLog 2017-08-08 17:00:12 UTC (rev 220409) +++ trunk/LayoutTests/ChangeLog 2017-08-08 17:14:01 UTC (rev 220410) @@ -1,3 +1,11 @@ +2017-08-08 Ryan Haddad+ +Fix baseline for http/tests/security/set-domain-remove-subdomain-for-ip-address.html. + +Unreviewed test gardening. + +* http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt: + 2017-08-08 Matt Lewis Fixed rebaselined expectations for js/dom/global-constructors-attributes.html. Modified: trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt (220409 => 220410) --- trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt 2017-08-08 17:00:12 UTC (rev 220409) +++ trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt 2017-08-08 17:14:01 UTC (rev 220410) @@ -3,7 +3,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS Was not able to set document.domain to a fragment/part of the IP address. document.domain == 127.0.0.1. Got error: Attempted to use a non-registrable domain +PASS Was not able to set document.domain to a fragment/part of the IP address. document.domain == 127.0.0.1. Got error: Attempted to use a non-registrable domain. PASS successfullyParsed is true TEST COMPLETE ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220408] trunk/Source/WebKit
Title: [220408] trunk/Source/WebKit Revision 220408 Author ape...@igalia.com Date 2017-08-08 09:49:15 -0700 (Tue, 08 Aug 2017) Log Message [WPE] Implement WebsiteDataStore::defaultApplicationCacheDirectory() and friends https://bugs.webkit.org/show_bug.cgi?id=175322 Reviewed by Carlos Garcia Campos. This makes WPE use the same implementation as the GTK+ port, with a preprocessor switch to choose the name of the base directory inside the user XDG cache directory. * PlatformGTK.cmake: Add APIWebsiteDataStoreGLib.cpp to the build sources and remove APIWebsiteDataStoreGtk.cpp. * PlatformWPE.cmake: Add APIWebsiteDataStoreGLib.cpp to the built sources. * UIProcess/API/APIWebsiteDataStore.cpp: Remove now dead code. * UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp: Renamed from Source/WebKit/UIProcess/API/gtk/APIWebsiteDataStoreGtk.cpp. (API::WebsiteDataStore::defaultApplicationCacheDirectory): (API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory): (API::WebsiteDataStore::defaultLocalStorageDirectory): (API::WebsiteDataStore::defaultMediaKeysStorageDirectory): (API::WebsiteDataStore::defaultWebSQLDatabaseDirectory): (API::WebsiteDataStore::defaultResourceLoadStatisticsDirectory): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/PlatformGTK.cmake trunk/Source/WebKit/PlatformWPE.cmake trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp Added Paths trunk/Source/WebKit/UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp Removed Paths trunk/Source/WebKit/UIProcess/API/gtk/APIWebsiteDataStoreGtk.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (220407 => 220408) --- trunk/Source/WebKit/ChangeLog 2017-08-08 16:41:50 UTC (rev 220407) +++ trunk/Source/WebKit/ChangeLog 2017-08-08 16:49:15 UTC (rev 220408) @@ -1,3 +1,24 @@ +2017-08-08 Adrian Perez de Castro+ +[WPE] Implement WebsiteDataStore::defaultApplicationCacheDirectory() and friends +https://bugs.webkit.org/show_bug.cgi?id=175322 + +Reviewed by Carlos Garcia Campos. + +This makes WPE use the same implementation as the GTK+ port, with a preprocessor switch to choose the name of +the base directory inside the user XDG cache directory. + +* PlatformGTK.cmake: Add APIWebsiteDataStoreGLib.cpp to the build sources and remove APIWebsiteDataStoreGtk.cpp. +* PlatformWPE.cmake: Add APIWebsiteDataStoreGLib.cpp to the built sources. +* UIProcess/API/APIWebsiteDataStore.cpp: Remove now dead code. +* UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp: Renamed from Source/WebKit/UIProcess/API/gtk/APIWebsiteDataStoreGtk.cpp. +(API::WebsiteDataStore::defaultApplicationCacheDirectory): +(API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory): +(API::WebsiteDataStore::defaultLocalStorageDirectory): +(API::WebsiteDataStore::defaultMediaKeysStorageDirectory): +(API::WebsiteDataStore::defaultWebSQLDatabaseDirectory): +(API::WebsiteDataStore::defaultResourceLoadStatisticsDirectory): + 2017-08-08 Ryan Haddad Unreviewed, rolling out r220368. Modified: trunk/Source/WebKit/PlatformGTK.cmake (220407 => 220408) --- trunk/Source/WebKit/PlatformGTK.cmake 2017-08-08 16:41:50 UTC (rev 220407) +++ trunk/Source/WebKit/PlatformGTK.cmake 2017-08-08 16:49:15 UTC (rev 220408) @@ -116,6 +116,7 @@ UIProcess/API/C/gtk/WKTextCheckerGtk.cpp UIProcess/API/C/gtk/WKView.cpp +UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp UIProcess/API/glib/IconDatabase.cpp UIProcess/API/glib/WebKitApplicationInfo.cpp UIProcess/API/glib/WebKitAuthenticationRequest.cpp @@ -172,7 +173,6 @@ UIProcess/API/glib/WebKitWebsiteDataManager.cpp UIProcess/API/glib/WebKitWindowProperties.cpp -UIProcess/API/gtk/APIWebsiteDataStoreGtk.cpp UIProcess/API/gtk/PageClientImpl.cpp UIProcess/API/gtk/WebKitAuthenticationDialog.cpp UIProcess/API/gtk/WebKitColorChooser.cpp Modified: trunk/Source/WebKit/PlatformWPE.cmake (220407 => 220408) --- trunk/Source/WebKit/PlatformWPE.cmake 2017-08-08 16:41:50 UTC (rev 220407) +++ trunk/Source/WebKit/PlatformWPE.cmake 2017-08-08 16:49:15 UTC (rev 220408) @@ -131,6 +131,7 @@ UIProcess/API/C/wpe/WKView.cpp +UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp UIProcess/API/glib/IconDatabase.cpp UIProcess/API/glib/WebKitApplicationInfo.cpp UIProcess/API/glib/WebKitAuthenticationRequest.cpp Modified: trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp (220407 => 220408) --- trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp 2017-08-08 16:41:50 UTC (rev 220407) +++ trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp 2017-08-08 16:49:15 UTC (rev 220408) @@ -87,65 +87,6 @@ m_websiteDataStore->setResourceLoadStatisticsEnabled(enabled); } -#if !PLATFORM(COCOA) && !PLATFORM(GTK) -WebKit::WebsiteDataStore::Configuration WebsiteDataStore::defaultDataStoreConfiguration() -{ -//
[webkit-changes] [220407] trunk/Tools
Title: [220407] trunk/Tools Revision 220407 Author mcatanz...@igalia.com Date 2017-08-08 09:41:50 -0700 (Tue, 08 Aug 2017) Log Message Add Alicia Boya GarcÃa as contributor https://bugs.webkit.org/show_bug.cgi?id=175326 Patch by Alicia Boya GarcÃaon 2017-08-08 Reviewed by Michael Catanzaro. * Scripts/webkitpy/common/config/contributors.json: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/contributors.json Diff Modified: trunk/Tools/ChangeLog (220406 => 220407) --- trunk/Tools/ChangeLog 2017-08-08 16:24:19 UTC (rev 220406) +++ trunk/Tools/ChangeLog 2017-08-08 16:41:50 UTC (rev 220407) @@ -1,3 +1,12 @@ +2017-08-08 Alicia Boya GarcÃa + +Add Alicia Boya GarcÃa as contributor +https://bugs.webkit.org/show_bug.cgi?id=175326 + +Reviewed by Michael Catanzaro. + +* Scripts/webkitpy/common/config/contributors.json: + 2017-08-08 Michael Catanzaro [CMake] Properly test if compiler supports compiler flags Modified: trunk/Tools/Scripts/webkitpy/common/config/contributors.json (220406 => 220407) --- trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2017-08-08 16:24:19 UTC (rev 220406) +++ trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2017-08-08 16:41:50 UTC (rev 220407) @@ -381,6 +381,16 @@ ], "status" : "reviewer" }, + "Alicia Boya Garcia" : { + "emails" : [ + "ab...@igalia.com", + "ntr...@gmail.com" + ], + "nicks" : [ + "ntrrgc", + "aboya" + ] + }, "Allan Sandfeld Jensen" : { "emails" : [ "allan.jen...@digia.com", ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220406] trunk/LayoutTests
Title: [220406] trunk/LayoutTests Revision 220406 Author bfulg...@apple.com Date 2017-08-08 09:24:19 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed test results fix after r220376. Rebaseline for new SecurityException message text. * fast/dom/Document/invalid-domain-change-throws-exception-expected.txt: * http/tests/dom/document-attributes-null-handling-expected.txt: * http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt: * http/tests/security/xss-DENIED-invalid-domain-change-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/Document/invalid-domain-change-throws-exception-expected.txt trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt trunk/LayoutTests/http/tests/security/xss-DENIED-invalid-domain-change-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (220405 => 220406) --- trunk/LayoutTests/ChangeLog 2017-08-08 16:13:48 UTC (rev 220405) +++ trunk/LayoutTests/ChangeLog 2017-08-08 16:24:19 UTC (rev 220406) @@ -1,3 +1,14 @@ +2017-08-08 Brent Fulgham+ +Unreviewed test results fix after r220376. + +Rebaseline for new SecurityException message text. + +* fast/dom/Document/invalid-domain-change-throws-exception-expected.txt: +* http/tests/dom/document-attributes-null-handling-expected.txt: +* http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt: +* http/tests/security/xss-DENIED-invalid-domain-change-expected.txt: + 2017-08-08 Javier Fernandez Not possible to remove the 'li' element inside the table cell Modified: trunk/LayoutTests/fast/dom/Document/invalid-domain-change-throws-exception-expected.txt (220405 => 220406) --- trunk/LayoutTests/fast/dom/Document/invalid-domain-change-throws-exception-expected.txt 2017-08-08 16:13:48 UTC (rev 220405) +++ trunk/LayoutTests/fast/dom/Document/invalid-domain-change-throws-exception-expected.txt 2017-08-08 16:24:19 UTC (rev 220406) @@ -3,7 +3,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS document.domain = "apple.com" threw exception SecurityError: The operation is insecure.. +PASS document.domain = "apple.com" threw exception SecurityError: The document has a null effectiveDomain.. PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt (220405 => 220406) --- trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt 2017-08-08 16:13:48 UTC (rev 220405) +++ trunk/LayoutTests/http/tests/dom/document-attributes-null-handling-expected.txt 2017-08-08 16:24:19 UTC (rev 220406) @@ -18,7 +18,7 @@ * domain attribute PASS document.domain is "127.0.0.1" -PASS document.domain = null threw exception SecurityError: The operation is insecure.. +PASS document.domain = null threw exception SecurityError: Attempted to use a non-registrable domain.. PASS document.domain is "127.0.0.1" PASS successfullyParsed is true Modified: trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt (220405 => 220406) --- trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt 2017-08-08 16:13:48 UTC (rev 220405) +++ trunk/LayoutTests/http/tests/security/set-domain-remove-subdomain-for-ip-address-expected.txt 2017-08-08 16:24:19 UTC (rev 220406) @@ -3,7 +3,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". -PASS Was not able to set document.domain to a fragment/part of the IP address. document.domain == 127.0.0.1. Got error: The operation is insecure. +PASS Was not able to set document.domain to a fragment/part of the IP address. document.domain == 127.0.0.1. Got error: Attempted to use a non-registrable domain PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/http/tests/security/xss-DENIED-invalid-domain-change-expected.txt (220405 => 220406) --- trunk/LayoutTests/http/tests/security/xss-DENIED-invalid-domain-change-expected.txt 2017-08-08 16:13:48 UTC (rev 220405) +++ trunk/LayoutTests/http/tests/security/xss-DENIED-invalid-domain-change-expected.txt 2017-08-08 16:24:19 UTC (rev 220406) @@ -1,3 +1,3 @@ -CONSOLE MESSAGE: line 17: SecurityError: The operation is insecure. +CONSOLE MESSAGE: line 17: SecurityError: Attempted to use a non-registrable domain. PASS: cross-site not access allowed ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220405] trunk/Source/WebCore
Title: [220405] trunk/Source/WebCore Revision 220405 Author bfulg...@apple.com Date 2017-08-08 09:13:48 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed build fix after r220376. Don't attempt to use isPublicSuffix when building without that feature enabled. * dom/Document.cpp: (WebCore::Document::domainIsRegisterable const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220404 => 220405) --- trunk/Source/WebCore/ChangeLog 2017-08-08 16:00:06 UTC (rev 220404) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 16:13:48 UTC (rev 220405) @@ -1,3 +1,13 @@ +2017-08-08 Brent Fulgham+ +Unreviewed build fix after r220376. + +Don't attempt to use isPublicSuffix when building without that +feature enabled. + +* dom/Document.cpp: +(WebCore::Document::domainIsRegisterable const): + 2017-08-08 Michael Catanzaro [CMake] Properly test if compiler supports compiler flags Modified: trunk/Source/WebCore/dom/Document.cpp (220404 => 220405) --- trunk/Source/WebCore/dom/Document.cpp 2017-08-08 16:00:06 UTC (rev 220404) +++ trunk/Source/WebCore/dom/Document.cpp 2017-08-08 16:13:48 UTC (rev 220405) @@ -4475,7 +4475,11 @@ if (potentialPublicSuffix.startsWith('.')) potentialPublicSuffix.remove(0, 1); +#if ENABLE(PUBLIC_SUFFIX_LIST) return !isPublicSuffix(potentialPublicSuffix); +#else +return true; +#endif } ExceptionOr Document::setDomain(const String& newDomain) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220404] trunk/Source
Title: [220404] trunk/Source Revision 220404 Author ryanhad...@apple.com Date 2017-08-08 09:00:06 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed, rolling out r220368. This change caused WK1 tests to exit early with crashes. Reverted changeset: "Baseline JIT should do caging" https://bugs.webkit.org/show_bug.cgi?id=175037 http://trac.webkit.org/changeset/220368 Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/AccessCase.cpp trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp trunk/Source/_javascript_Core/jit/AssemblyHelpers.h trunk/Source/_javascript_Core/jit/JITPropertyAccess.cpp trunk/Source/_javascript_Core/jsc.cpp trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Gigacage.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebProcess.cpp trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/bmalloc/Gigacage.cpp trunk/Source/bmalloc/bmalloc/Gigacage.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220403 => 220404) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-08 15:03:48 UTC (rev 220403) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-08 16:00:06 UTC (rev 220404) @@ -1,3 +1,15 @@ +2017-08-08 Ryan Haddad+ +Unreviewed, rolling out r220368. + +This change caused WK1 tests to exit early with crashes. + +Reverted changeset: + +"Baseline JIT should do caging" +https://bugs.webkit.org/show_bug.cgi?id=175037 +http://trac.webkit.org/changeset/220368 + 2017-08-08 Michael Catanzaro [CMake] Properly test if compiler supports compiler flags Modified: trunk/Source/_javascript_Core/bytecode/AccessCase.cpp (220403 => 220404) --- trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2017-08-08 15:03:48 UTC (rev 220403) +++ trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2017-08-08 16:00:06 UTC (rev 220404) @@ -527,8 +527,6 @@ jit.loadPtr( CCallHelpers::Address(baseForAccessGPR, JSObject::butterflyOffset()), loadedValueGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 storageGPR = loadedValueGPR; } @@ -879,8 +877,6 @@ // already had out-of-line property storage). jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR3); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 // We have scratchGPR = new storage, scratchGPR3 = old storage, // scratchGPR2 = available @@ -959,11 +955,8 @@ JSObject::offsetOfInlineStorage() + offsetInInlineStorage(m_offset) * sizeof(JSValue))); } else { -if (!allocating) { +if (!allocating) jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 -} jit.storeValue( valueRegs, CCallHelpers::Address(scratchGPR, offsetInButterfly(m_offset) * sizeof(JSValue))); @@ -999,8 +992,6 @@ case ArrayLength: { jit.loadPtr(CCallHelpers::Address(baseGPR, JSObject::butterflyOffset()), scratchGPR); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 jit.load32(CCallHelpers::Address(scratchGPR, ArrayStorage::lengthOffset()), scratchGPR); state.failAndIgnore.append( jit.branch32(CCallHelpers::LessThan, scratchGPR, CCallHelpers::TrustedImm32(0))); Modified: trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp (220403 => 220404) --- trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp 2017-08-08 15:03:48 UTC (rev 220403) +++ trunk/Source/_javascript_Core/bytecode/InlineAccess.cpp 2017-08-08 16:00:06 UTC (rev 220404) @@ -57,8 +57,6 @@ jit.patchableBranch32( CCallHelpers::NotEqual, value, CCallHelpers::TrustedImm32(IsArray | ContiguousShape)); jit.loadPtr(CCallHelpers::Address(base, JSObject::butterflyOffset()), value); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 jit.load32(CCallHelpers::Address(value, ArrayStorage::lengthOffset()), value); jit.boxInt32(scratchGPR, regs); @@ -75,8 +73,6 @@ jit.loadPtr( CCallHelpers::Address(base, JSObject::butterflyOffset()), value); -// FIXME: Do caging! -// https://bugs.webkit.org/show_bug.cgi?id=175295 GPRReg storageGPR = value; jit.loadValue( CCallHelpers::Address(storageGPR, 0x000ab21ca), regs); @@ -120,8 +116,6 @@
[webkit-changes] [220403] trunk
Title: [220403] trunk Revision 220403 Author mcatanz...@igalia.com Date 2017-08-08 08:03:48 -0700 (Tue, 08 Aug 2017) Log Message [CMake] Properly test if compiler supports compiler flags https://bugs.webkit.org/show_bug.cgi?id=174490 Reviewed by Konstantin Tokarev. .: This turned out to be a massive pain. I didn't want to merely check options before using them: I also wanted to organize the code to avoid setting similar flags in different places. Right now we set a bunch of global flags in OptionsCommon.cmake, and a bunch more flags in WEBKIT_SET_EXTRA_COMPILER_FLAGS on a per-target basis. Setting flags per-target seems better in general, e.g. because it makes it very easy to disable warnings for particular ThirdParty targets. But it turns out that all the flags set on a per-target basis get passed to both the C compiler and the C++ compiler, so it's impossible to pass C++-only flags there. That's terrible. It's possible to make the flags language-conditional using generator expressions, but that doesn't work for the Visual Studio backend, so we would have to drop support for that (not going to happen). The CMake documentation suggests that C and C++ files ought to be built in separate targets to avoid this. It's a mess, basically. So I've wound up removing WEBKIT_SET_EXTRA_COMPILER_FLAGS and adding most of those flags to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS instead. Really the only disadvantage of this is we now have to suppress individual warnings when building ANGLESupport in WebCore. That's not the end of the world. The only remaining useful feature of WEBKIT_SET_EXTRA_COMPILER_FLAGS was to add -fPIC to static library targets, but turns out CMake does that for us if we just set the variable CMAKE_POSITION_INDEPENDENT_CODE, so we can get rid of it completely. Of course there are also macros for setting target-specific compiler flags, which we frequently need in order to suppress specific warnings, particularly warnings coming from third-party libraries like ANGLE and gtest. But remember the footgun: these macros will test the flag against only one compiler, but must work with both C and C++ compilers unless the build target exclusively contains targets built with just one of those compilers. Yuck. * CMakeLists.txt: * Source/CMakeLists.txt: * Source/PlatformGTK.cmake: * Source/cmake/OptionsCommon.cmake: * Source/cmake/WebKitCommon.cmake: * Source/cmake/WebKitCompilerFlags.cmake: Added. * Source/cmake/WebKitMacros.cmake: Source/_javascript_Core: * API/tests/PingPongStackOverflowTest.cpp: (testPingPongStackOverflow): * API/tests/testapi.c: * b3/testb3.cpp: (JSC::B3::testPatchpointLotsOfLateAnys): Source/ThirdParty: * brotli/CMakeLists.txt: * gtest/CMakeLists.txt: * woff2/CMakeLists.txt: * xdgmime/CMakeLists.txt: Source/WebCore: * CMakeLists.txt: * PlatformGTK.cmake: * PlatformWPE.cmake: Source/WebDriver: * WebDriverService.cpp: (WebDriver::WebDriverService::run): * glib/SessionHostGlib.cpp: Source/WebKit: * CMakeLists.txt: * PlatformGTK.cmake: Source/WTF: * wtf/Compiler.h: Tools: * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * MiniBrowser/gtk/CMakeLists.txt: * TestRunnerShared/Bindings/JSWrapper.cpp: (WTR::JSWrapper::initialize): * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformGTK.cmake: * TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp: (TestWebKitAPI::CheckedArithmeticTester::run): * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: (formControlsAssociatedCallback): * TestWebKitAPI/glib/CMakeLists.txt: * TestWebKitAPI/glib/WebKitGLib/TestMain.h: (Test::getResourcesDir): * WebKitTestRunner/CMakeLists.txt: * WebKitTestRunner/InjectedBundle/EventSendingController.cpp: (WTR::menuItemClickCallback): (WTR::staticConvertMenuItemToType): * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setUseDashboardCompatibilityMode): * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp: (WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks): * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: (WTR::AccessibilityUIElement::helpText const): (WTR::AccessibilityUIElement::attributedStringForRange): * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp: (WTR::EventSenderProxy::updateTouchPoint): (WTR::EventSenderProxy::releaseTouchPoint): Modified Paths trunk/CMakeLists.txt trunk/ChangeLog trunk/Source/CMakeLists.txt trunk/Source/_javascript_Core/API/tests/PingPongStackOverflowTest.cpp trunk/Source/_javascript_Core/API/tests/testapi.c trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/b3/testb3.cpp trunk/Source/PlatformGTK.cmake trunk/Source/ThirdParty/ChangeLog trunk/Source/ThirdParty/brotli/CMakeLists.txt trunk/Source/ThirdParty/gtest/CMakeLists.txt trunk/Source/ThirdParty/woff2/CMakeLists.txt trunk/Source/ThirdParty/xdgmime/CMakeLists.txt trunk/Source/WTF/ChangeLog
[webkit-changes] [220402] trunk/Source/WebCore
Title: [220402] trunk/Source/WebCore Revision 220402 Author zandober...@gmail.com Date 2017-08-08 06:29:30 -0700 (Tue, 08 Aug 2017) Log Message [GStreamer] Don't use GraphicsContext3D in VideoTextureCoperGStreamer https://bugs.webkit.org/show_bug.cgi?id=174774 Reviewed by Carlos Garcia Campos. VideoTextureCoperGStreamer class creates a new GraphicsContext3D internally that's used to render to whichever OpenGL context is current. Such usage doesn't add anything to the user since there's no underlying offscreen-based OpenGL context created, and instead all GraphicsContext3D calls are directly translated to usual OpenGL API calls. We should avoid using GraphicsContext3D in such cases and instead use direct OpenGL API calls. This patch achieves that for the VideoTextureCoperGStreamer class. A GraphicsContext3D object is still created because it's needed to construct an instance of the TextureMapperShaderProgram class, but this will be removed as soon as TextureMapperShaderProgram drops the GraphicsContext3D dependence. No new tests -- no change in behavior. * platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp: (WebCore::VideoTextureCopierGStreamer::VideoTextureCopierGStreamer): (WebCore::VideoTextureCopierGStreamer::~VideoTextureCopierGStreamer): (WebCore::VideoTextureCopierGStreamer::copyVideoTextureToPlatformTexture): * platform/graphics/gstreamer/VideoTextureCopierGStreamer.h: (WebCore::VideoTextureCopierGStreamer::resultTexture): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.h Diff Modified: trunk/Source/WebCore/ChangeLog (220401 => 220402) --- trunk/Source/WebCore/ChangeLog 2017-08-08 13:11:00 UTC (rev 220401) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 13:29:30 UTC (rev 220402) @@ -1,5 +1,33 @@ 2017-08-08 Zan Dobersek+[GStreamer] Don't use GraphicsContext3D in VideoTextureCoperGStreamer +https://bugs.webkit.org/show_bug.cgi?id=174774 + +Reviewed by Carlos Garcia Campos. + +VideoTextureCoperGStreamer class creates a new GraphicsContext3D internally +that's used to render to whichever OpenGL context is current. Such usage +doesn't add anything to the user since there's no underlying offscreen-based +OpenGL context created, and instead all GraphicsContext3D calls are directly +translated to usual OpenGL API calls. We should avoid using GraphicsContext3D +in such cases and instead use direct OpenGL API calls. + +This patch achieves that for the VideoTextureCoperGStreamer class. A +GraphicsContext3D object is still created because it's needed to construct an +instance of the TextureMapperShaderProgram class, but this will be removed as +soon as TextureMapperShaderProgram drops the GraphicsContext3D dependence. + +No new tests -- no change in behavior. + +* platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp: +(WebCore::VideoTextureCopierGStreamer::VideoTextureCopierGStreamer): +(WebCore::VideoTextureCopierGStreamer::~VideoTextureCopierGStreamer): +(WebCore::VideoTextureCopierGStreamer::copyVideoTextureToPlatformTexture): +* platform/graphics/gstreamer/VideoTextureCopierGStreamer.h: +(WebCore::VideoTextureCopierGStreamer::resultTexture): + +2017-08-08 Zan Dobersek + [TexMap] Drop GC3D* type usage from TextureMapperPlatformLayer{Buffer,Proxy} https://bugs.webkit.org/show_bug.cgi?id=175314 Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp (220401 => 220402) --- trunk/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp 2017-08-08 13:11:00 UTC (rev 220401) +++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp 2017-08-08 13:29:30 UTC (rev 220402) @@ -27,6 +27,9 @@ #include "ImageOrientation.h" #include "TextureMapperShaderProgram.h" +// FIXME: Remove after TextureMapperShaderProgram drops GraphicsContext3D usage. +#include "GraphicsContext3D.h" + namespace WebCore { VideoTextureCopierGStreamer::VideoTextureCopierGStreamer(ColorConversion colorConversion) @@ -35,18 +38,19 @@ ASSERT(previousContext); PlatformDisplay::sharedDisplayForCompositing().sharingGLContext()->makeContextCurrent(); -m_context3D = GraphicsContext3D::createForCurrentGLContext(); +{ +// FIXME: Remove after TextureMapperShaderProgram drops GraphicsContext3D usage. +auto context3D = GraphicsContext3D::createForCurrentGLContext(); +m_shaderProgram = TextureMapperShaderProgram::create(*context3D, TextureMapperShaderProgram::Texture); +} -m_shaderProgram = TextureMapperShaderProgram::create(*m_context3D, TextureMapperShaderProgram::Texture); +glGenFramebuffers(1,
[webkit-changes] [220401] trunk/Source/JavaScriptCore
Title: [220401] trunk/Source/_javascript_Core Revision 220401 Author utatane@gmail.com Date 2017-08-08 06:11:00 -0700 (Tue, 08 Aug 2017) Log Message [Linux] Clear WasmMemory with madvice instead of memset https://bugs.webkit.org/show_bug.cgi?id=175150 Reviewed by Filip Pizlo. In Linux, zeroing pages with memset populates backing store. Instead, we should use madvise with MADV_DONTNEED. It discards pages. And if you access these pages, on-demand-zero-pages will be shown. We also commit grown pages in all OSes. * wasm/WasmMemory.cpp: (JSC::Wasm::commitZeroPages): (JSC::Wasm::Memory::create): (JSC::Wasm::Memory::grow): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmMemory.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (220400 => 220401) --- trunk/Source/_javascript_Core/ChangeLog 2017-08-08 13:05:22 UTC (rev 220400) +++ trunk/Source/_javascript_Core/ChangeLog 2017-08-08 13:11:00 UTC (rev 220401) @@ -1,3 +1,22 @@ +2017-08-06 Yusuke Suzuki+ +[Linux] Clear WasmMemory with madvice instead of memset +https://bugs.webkit.org/show_bug.cgi?id=175150 + +Reviewed by Filip Pizlo. + +In Linux, zeroing pages with memset populates backing store. +Instead, we should use madvise with MADV_DONTNEED. It discards +pages. And if you access these pages, on-demand-zero-pages will +be shown. + +We also commit grown pages in all OSes. + +* wasm/WasmMemory.cpp: +(JSC::Wasm::commitZeroPages): +(JSC::Wasm::Memory::create): +(JSC::Wasm::Memory::grow): + 2017-08-07 Robin Morisset GetOwnProperty of TypedArray indexed fields is wrongly configurable Modified: trunk/Source/_javascript_Core/wasm/WasmMemory.cpp (220400 => 220401) --- trunk/Source/_javascript_Core/wasm/WasmMemory.cpp 2017-08-08 13:05:22 UTC (rev 220400) +++ trunk/Source/_javascript_Core/wasm/WasmMemory.cpp 2017-08-08 13:11:00 UTC (rev 220401) @@ -255,6 +255,21 @@ dataLogLnIf(verbose, "Memory::Memory allocating ", *this); } +static void commitZeroPages(void* startAddress, size_t sizeInBytes) +{ +bool writable = true; +bool executable = false; +#if OS(LINUX) +// In Linux, MADV_DONTNEED clears backing pages with zero. Be Careful that MADV_DONTNEED shows different semantics in different OSes. +// For example, FreeBSD does not clear backing pages immediately. +while (madvise(startAddress, sizeInBytes, MADV_DONTNEED) == -1 && errno == EAGAIN) { } +OSAllocator::commit(startAddress, sizeInBytes, writable, executable); +#else +OSAllocator::commit(startAddress, sizeInBytes, writable, executable); +memset(startAddress, 0, sizeInBytes); +#endif +} + RefPtr Memory::create(VM& vm, PageCount initial, PageCount maximum) { ASSERT(initial); @@ -293,16 +308,14 @@ } if (fastMemory) { -bool writable = true; -bool executable = false; -OSAllocator::commit(fastMemory, initialBytes, writable, executable); if (mprotect(fastMemory + initialBytes, Memory::fastMappedBytes() - initialBytes, PROT_NONE)) { dataLog("mprotect failed: ", strerror(errno), "\n"); RELEASE_ASSERT_NOT_REACHED(); } + +commitZeroPages(fastMemory, initialBytes); -memset(fastMemory, 0, initialBytes); return adoptRef(new Memory(fastMemory, initial, maximum, Memory::fastMappedBytes(), MemoryMode::Signaling)); } @@ -400,7 +413,7 @@ dataLogLnIf(verbose, "Memory::grow in-place failed ", *this); return false; } -memset(startAddress, 0, extraBytes); +commitZeroPages(startAddress, extraBytes); m_size = desiredSize; return true; } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220400] trunk/Source/WebCore
Title: [220400] trunk/Source/WebCore Revision 220400 Author zandober...@gmail.com Date 2017-08-08 06:05:22 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Drop GC3D* type usage from TextureMapperPlatformLayer{Buffer,Proxy} https://bugs.webkit.org/show_bug.cgi?id=175314 Reviewed by Carlos Garcia Campos. Switch to using OpenGL types in the TextureMapperPlatformLayerBuffer and TextureMapperPlatformLayerProxy classes, instead of the equivalent GC3D* types provided in the GraphicsTypes3D.h header. No new tests -- no change in behavior. * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp: (WebCore::TextureMapperPlatformLayerBuffer::TextureMapperPlatformLayerBuffer): (WebCore::TextureMapperPlatformLayerBuffer::canReuseWithoutReset): * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h: * platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: (WebCore::TextureMapperPlatformLayerProxy::getAvailableBuffer): * platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.h Diff Modified: trunk/Source/WebCore/ChangeLog (220399 => 220400) --- trunk/Source/WebCore/ChangeLog 2017-08-08 13:04:40 UTC (rev 220399) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 13:05:22 UTC (rev 220400) @@ -1,5 +1,26 @@ 2017-08-08 Zan Dobersek+[TexMap] Drop GC3D* type usage from TextureMapperPlatformLayer{Buffer,Proxy} +https://bugs.webkit.org/show_bug.cgi?id=175314 + +Reviewed by Carlos Garcia Campos. + +Switch to using OpenGL types in the TextureMapperPlatformLayerBuffer and +TextureMapperPlatformLayerProxy classes, instead of the equivalent GC3D* +types provided in the GraphicsTypes3D.h header. + +No new tests -- no change in behavior. + +* platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp: +(WebCore::TextureMapperPlatformLayerBuffer::TextureMapperPlatformLayerBuffer): +(WebCore::TextureMapperPlatformLayerBuffer::canReuseWithoutReset): +* platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h: +* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: +(WebCore::TextureMapperPlatformLayerProxy::getAvailableBuffer): +* platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: + +2017-08-08 Zan Dobersek + [TexMap] Don't use GraphicsContext3D in ClipStack https://bugs.webkit.org/show_bug.cgi?id=174776 Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp (220399 => 220400) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp 2017-08-08 13:04:40 UTC (rev 220399) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp 2017-08-08 13:05:22 UTC (rev 220400) @@ -38,7 +38,7 @@ { } -TextureMapperPlatformLayerBuffer::TextureMapperPlatformLayerBuffer(GLuint textureID, const IntSize& size, TextureMapperGL::Flags flags, GC3Dint internalFormat) +TextureMapperPlatformLayerBuffer::TextureMapperPlatformLayerBuffer(GLuint textureID, const IntSize& size, TextureMapperGL::Flags flags, GLint internalFormat) : m_textureID(textureID) , m_size(size) , m_internalFormat(internalFormat) @@ -47,9 +47,9 @@ { } -bool TextureMapperPlatformLayerBuffer::canReuseWithoutReset(const IntSize& size, GC3Dint internalFormat) +bool TextureMapperPlatformLayerBuffer::canReuseWithoutReset(const IntSize& size, GLint internalFormat) { -return m_texture && (m_texture->size() == size) && (static_cast (m_texture.get())->internalFormat() == internalFormat || internalFormat == GraphicsContext3D::DONT_CARE); +return m_texture && (m_texture->size() == size) && (static_cast (m_texture.get())->internalFormat() == internalFormat || internalFormat == GL_DONT_CARE); } std::unique_ptr TextureMapperPlatformLayerBuffer::clone(TextureMapperGL& texmapGL) Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h (220399 => 220400) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h 2017-08-08 13:04:40 UTC (rev 220399) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h 2017-08-08 13:05:22 UTC (rev 220400) @@ -26,7 +26,7 @@ #pragma once #include "BitmapTextureGL.h" -#include "GraphicsTypes3D.h" +#include "TextureMapperGLHeaders.h" #include "TextureMapperPlatformLayer.h" #include @@ -39,13 +39,13 @@ WTF_MAKE_FAST_ALLOCATED(); public: TextureMapperPlatformLayerBuffer(RefPtr&&,
[webkit-changes] [220399] trunk/Source/WebCore
Title: [220399] trunk/Source/WebCore Revision 220399 Author zandober...@gmail.com Date 2017-08-08 06:04:40 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Don't use GraphicsContext3D in ClipStack https://bugs.webkit.org/show_bug.cgi?id=174776 Reviewed by Carlos Garcia Campos. Any GraphicsContext3D object that's passed to ClipStack methods is of the render-to-current-context nature, meaning there's no internally owned GL context that has to be properly handled and all calls are simply passed to OpenGL APIs. We should drop such (non-)usage of GraphicsContext3D in favor of direct OpenGL API invocations. This patch covers TextureMapper's ClipStack. Call sites to the apply() and applyIfNeeded() are modified to not pass a reference to any GraphicsContext3D object. Internally, OpenGL API entrypoints and constants are used instead of GraphicsContext3D invocations. No new tests -- no change in behavior. * platform/graphics/texmap/BitmapTextureGL.cpp: (WebCore::BitmapTextureGL::clearIfNeeded): (WebCore::BitmapTextureGL::bindAsSurface): * platform/graphics/texmap/ClipStack.cpp: (WebCore::ClipStack::apply): (WebCore::ClipStack::applyIfNeeded): * platform/graphics/texmap/ClipStack.h: * platform/graphics/texmap/TextureMapperGL.cpp: (WebCore::TextureMapperGL::bindDefaultSurface): (WebCore::TextureMapperGL::beginScissorClip): (WebCore::TextureMapperGL::beginClip): (WebCore::TextureMapperGL::endClip): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp trunk/Source/WebCore/platform/graphics/texmap/ClipStack.cpp trunk/Source/WebCore/platform/graphics/texmap/ClipStack.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220398 => 220399) --- trunk/Source/WebCore/ChangeLog 2017-08-08 12:22:33 UTC (rev 220398) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 13:04:40 UTC (rev 220399) @@ -1,3 +1,36 @@ +2017-08-08 Zan Dobersek+ +[TexMap] Don't use GraphicsContext3D in ClipStack +https://bugs.webkit.org/show_bug.cgi?id=174776 + +Reviewed by Carlos Garcia Campos. + +Any GraphicsContext3D object that's passed to ClipStack methods is of the +render-to-current-context nature, meaning there's no internally owned GL +context that has to be properly handled and all calls are simply passed to +OpenGL APIs. We should drop such (non-)usage of GraphicsContext3D in favor +of direct OpenGL API invocations. + +This patch covers TextureMapper's ClipStack. Call sites to the apply() and +applyIfNeeded() are modified to not pass a reference to any +GraphicsContext3D object. Internally, OpenGL API entrypoints and constants +are used instead of GraphicsContext3D invocations. + +No new tests -- no change in behavior. + +* platform/graphics/texmap/BitmapTextureGL.cpp: +(WebCore::BitmapTextureGL::clearIfNeeded): +(WebCore::BitmapTextureGL::bindAsSurface): +* platform/graphics/texmap/ClipStack.cpp: +(WebCore::ClipStack::apply): +(WebCore::ClipStack::applyIfNeeded): +* platform/graphics/texmap/ClipStack.h: +* platform/graphics/texmap/TextureMapperGL.cpp: +(WebCore::TextureMapperGL::bindDefaultSurface): +(WebCore::TextureMapperGL::beginScissorClip): +(WebCore::TextureMapperGL::beginClip): +(WebCore::TextureMapperGL::endClip): + 2017-08-08 Javier Fernandez Not possible to remove the 'li' element inside the table cell Modified: trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp (220398 => 220399) --- trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp 2017-08-08 12:22:33 UTC (rev 220398) +++ trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp 2017-08-08 13:04:40 UTC (rev 220399) @@ -288,7 +288,7 @@ return; m_clipStack.reset(IntRect(IntPoint::zero(), m_textureSize), ClipStack::YAxisMode::Default); -m_clipStack.applyIfNeeded(*m_context3D); +m_clipStack.applyIfNeeded(); m_context3D->clearColor(0, 0, 0, 0); m_context3D->clear(GraphicsContext3D::COLOR_BUFFER_BIT); m_shouldClear = false; @@ -312,7 +312,7 @@ context3D->bindFramebuffer(GraphicsContext3D::FRAMEBUFFER, m_fbo); context3D->viewport(0, 0, m_textureSize.width(), m_textureSize.height()); clearIfNeeded(); -m_clipStack.apply(*m_context3D); +m_clipStack.apply(); } BitmapTextureGL::~BitmapTextureGL() Modified: trunk/Source/WebCore/platform/graphics/texmap/ClipStack.cpp (220398 => 220399) --- trunk/Source/WebCore/platform/graphics/texmap/ClipStack.cpp 2017-08-08 12:22:33 UTC (rev 220398) +++ trunk/Source/WebCore/platform/graphics/texmap/ClipStack.cpp 2017-08-08 13:04:40 UTC (rev 220399) @@ -22,7 +22,7 @@ #include "config.h" #include "ClipStack.h" -#include "GraphicsContext3D.h" +#include
[webkit-changes] [220398] trunk
Title: [220398] trunk Revision 220398 Author jfernan...@igalia.com Date 2017-08-08 05:22:33 -0700 (Tue, 08 Aug 2017) Log Message Not possible to remove the 'li' element inside the table cell https://bugs.webkit.org/show_bug.cgi?id=173148 Reviewed by Ryosuke Niwa. Source/WebCore: We need to add a new case for breaking out empty list items when they are at the start of an editable area. Since list items can be also inside table cells, we need to consider this kind of elements as well. Tests: editing/deleting/delete-list-items-in-table-cell-1.html editing/deleting/delete-list-items-in-table-cell-2.html editing/deleting/delete-list-items-in-table-cell-3.html editing/deleting/delete-list-items-in-table-cell-4.html editing/deleting/delete-list-items-in-table-cell-5.html editing/deleting/delete-list-items-in-table-cell-6.html editing/deleting/delete-list-items-in-table-cell-7.html editing/deleting/delete-list-items-in-table-cell-8.html * editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): LayoutTests: Regression tests for different scenarios of list items removal. * editing/deleting/delete-list-items-in-table-cell-1-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-1.html: Added. * editing/deleting/delete-list-items-in-table-cell-2-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-2.html: Added. * editing/deleting/delete-list-items-in-table-cell-3-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-3.html: Added. * editing/deleting/delete-list-items-in-table-cell-4-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-4.html: Added. * editing/deleting/delete-list-items-in-table-cell-5-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-5.html: Added. * editing/deleting/delete-list-items-in-table-cell-6-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-6.html: Added. * editing/deleting/delete-list-items-in-table-cell-7-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-7.html: Added. * editing/deleting/delete-list-items-in-table-cell-8-expected.txt: Added. * editing/deleting/delete-list-items-in-table-cell-8.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/TypingCommand.cpp Added Paths trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-1-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-1.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-2-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-2.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-3-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-3.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-4-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-4.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-5-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-5.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-6-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-6.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-7-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-7.html trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-8-expected.txt trunk/LayoutTests/editing/deleting/delete-list-items-in-table-cell-8.html Diff Modified: trunk/LayoutTests/ChangeLog (220397 => 220398) --- trunk/LayoutTests/ChangeLog 2017-08-08 10:27:11 UTC (rev 220397) +++ trunk/LayoutTests/ChangeLog 2017-08-08 12:22:33 UTC (rev 220398) @@ -1,3 +1,29 @@ +2017-08-08 Javier Fernandez+ +Not possible to remove the 'li' element inside the table cell +https://bugs.webkit.org/show_bug.cgi?id=173148 + +Reviewed by Ryosuke Niwa. + +Regression tests for different scenarios of list items removal. + +* editing/deleting/delete-list-items-in-table-cell-1-expected.txt: Added. +* editing/deleting/delete-list-items-in-table-cell-1.html: Added. +* editing/deleting/delete-list-items-in-table-cell-2-expected.txt: Added. +* editing/deleting/delete-list-items-in-table-cell-2.html: Added. +* editing/deleting/delete-list-items-in-table-cell-3-expected.txt: Added. +* editing/deleting/delete-list-items-in-table-cell-3.html: Added. +* editing/deleting/delete-list-items-in-table-cell-4-expected.txt: Added. +* editing/deleting/delete-list-items-in-table-cell-4.html: Added. +* editing/deleting/delete-list-items-in-table-cell-5-expected.txt: Added. +* editing/deleting/delete-list-items-in-table-cell-5.html: Added. +*
[webkit-changes] [220397] trunk/Source/WebCore
Title: [220397] trunk/Source/WebCore Revision 220397 Author zandober...@gmail.com Date 2017-08-08 03:27:11 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Isolate the TextureMapperPlatformLayerProxyProvider class https://bugs.webkit.org/show_bug.cgi?id=175316 Reviewed by Carlos Garcia Campos. Move the TextureMapperPlatformLayerProxyProvider class (which is the type aliased to PlatformLayer for threaded CoordGraphics) into its own header file. This prevents including the TextureMapperPlatformLayerProxy.h header file in MediaPlayerPrivateGStreamerBase.h, avoiding spilling OpenGL types and function declarations before the GStreamer GL headers include them later in the MediaPlayerPrivateGStreamerBase implementation file. In the MediaPlayerPrivateGStreamerBase.h header file, only the new header is included, and a forward declaration of the TextureMapperPlatformLayerProxy class is used. proxy() and swapBuffersIfNeeded() methods are moved into the implementation file to avoid requiring the full definition of the TextureMapperPlatformLayerProxy class. Similar is done for the TextureMapperGC3DPlatformLayer class and the Cairo-specific implementation of the ImageBufferData class. The CoordinatedGraphicsLayer implementation file also gains an include of the TextureMapperPlatformLayerProxyProvider.h header since it requires the full definition of that class. No new tests -- no change in behavior. * platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBufferData::proxy const): * platform/graphics/cairo/ImageBufferDataCairo.h: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): (WebCore::MediaPlayerPrivateGStreamerBase::proxy const): (WebCore::MediaPlayerPrivateGStreamerBase::swapBuffersIfNeeded): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: * platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp: * platform/graphics/texmap/TextureMapperGC3DPlatformLayer.h: * platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: * platform/graphics/texmap/TextureMapperPlatformLayerProxyProvider.h: Added. * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp trunk/Source/WebCore/platform/graphics/cairo/ImageBufferDataCairo.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGC3DPlatformLayer.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp Added Paths trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxyProvider.h Diff Modified: trunk/Source/WebCore/ChangeLog (220396 => 220397) --- trunk/Source/WebCore/ChangeLog 2017-08-08 09:03:40 UTC (rev 220396) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 10:27:11 UTC (rev 220397) @@ -1,5 +1,47 @@ 2017-08-08 Zan Dobersek+[TexMap] Isolate the TextureMapperPlatformLayerProxyProvider class +https://bugs.webkit.org/show_bug.cgi?id=175316 + +Reviewed by Carlos Garcia Campos. + +Move the TextureMapperPlatformLayerProxyProvider class (which is the type +aliased to PlatformLayer for threaded CoordGraphics) into its own header +file. This prevents including the TextureMapperPlatformLayerProxy.h header +file in MediaPlayerPrivateGStreamerBase.h, avoiding spilling OpenGL types +and function declarations before the GStreamer GL headers include them +later in the MediaPlayerPrivateGStreamerBase implementation file. + +In the MediaPlayerPrivateGStreamerBase.h header file, only the new header +is included, and a forward declaration of the TextureMapperPlatformLayerProxy +class is used. proxy() and swapBuffersIfNeeded() methods are moved into +the implementation file to avoid requiring the full definition of the +TextureMapperPlatformLayerProxy class. + +Similar is done for the TextureMapperGC3DPlatformLayer class and the +Cairo-specific implementation of the ImageBufferData class. The +CoordinatedGraphicsLayer implementation file also gains an include of the +TextureMapperPlatformLayerProxyProvider.h header since it requires the full +definition of that class. + +No new tests -- no change in behavior. + +* platform/graphics/cairo/ImageBufferCairo.cpp: +(WebCore::ImageBufferData::proxy const): +* platform/graphics/cairo/ImageBufferDataCairo.h: +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +
[webkit-changes] [220396] trunk/Source/WebCore
Title: [220396] trunk/Source/WebCore Revision 220396 Author zandober...@gmail.com Date 2017-08-08 02:03:40 -0700 (Tue, 08 Aug 2017) Log Message Unreviewed. Follow-up to r220392 that fixes build on configurations that disable USE(GSTREAMER_GL). * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor): When creating the BitmapTextureGL object, also provide an initialized TextureMapperContextAttributes object. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220395 => 220396) --- trunk/Source/WebCore/ChangeLog 2017-08-08 08:36:38 UTC (rev 220395) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 09:03:40 UTC (rev 220396) @@ -1,5 +1,15 @@ 2017-08-08 Zan Dobersek+Unreviewed. Follow-up to r220392 that fixes build on configurations +that disable USE(GSTREAMER_GL). + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor): +When creating the BitmapTextureGL object, also provide an initialized +TextureMapperContextAttributes object. + +2017-08-08 Zan Dobersek + [TexMap] Group GL header file inclusions in a single header file https://bugs.webkit.org/show_bug.cgi?id=175313 Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (220395 => 220396) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2017-08-08 08:36:38 UTC (rev 220395) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2017-08-08 09:03:40 UTC (rev 220396) @@ -101,6 +101,7 @@ #if USE(TEXTURE_MAPPER_GL) #include "BitmapTextureGL.h" #include "BitmapTexturePool.h" +#include "TextureMapperContextAttributes.h" #include "TextureMapperGL.h" #include "TextureMapperPlatformLayerBuffer.h" #if USE(CAIRO) && ENABLE(ACCELERATED_2D_CANVAS) @@ -611,7 +612,10 @@ if (UNLIKELY(!m_context3D)) m_context3D = GraphicsContext3D::create(GraphicsContext3DAttributes(), nullptr, GraphicsContext3D::RenderToCurrentGLContext); -auto texture = BitmapTextureGL::create(*m_context3D); +TextureMapperContextAttributes contextAttributes; +contextAttributes.initialize(); + +auto texture = BitmapTextureGL::create(contextAttributes, *m_context3D); texture->reset(size, GST_VIDEO_INFO_HAS_ALPHA() ? BitmapTexture::SupportsAlpha : BitmapTexture::NoFlag); buffer = std::make_unique(WTFMove(texture)); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220395] trunk/Source/WebCore
Title: [220395] trunk/Source/WebCore Revision 220395 Author zandober...@gmail.com Date 2017-08-08 01:36:38 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Group GL header file inclusions in a single header file https://bugs.webkit.org/show_bug.cgi?id=175313 Reviewed by Carlos Garcia Campos. Add a helper header file to the TextureMapper subsystem that includes the OpenGL headers, properly addressing the build configuration to include headers as provided by either libepoxy, the OpenGL ES library, or the OpenGL library. TextureMapperContextAttributes implementation file is the only one that can leverage the header at the moment, but more will follow. * platform/graphics/texmap/TextureMapperContextAttributes.cpp: * platform/graphics/texmap/TextureMapperGLHeaders.h: Copied from Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp Added Paths trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGLHeaders.h Diff Modified: trunk/Source/WebCore/ChangeLog (220394 => 220395) --- trunk/Source/WebCore/ChangeLog 2017-08-08 08:29:19 UTC (rev 220394) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 08:36:38 UTC (rev 220395) @@ -1,3 +1,21 @@ +2017-08-08 Zan Dobersek+ +[TexMap] Group GL header file inclusions in a single header file +https://bugs.webkit.org/show_bug.cgi?id=175313 + +Reviewed by Carlos Garcia Campos. + +Add a helper header file to the TextureMapper subsystem that includes +the OpenGL headers, properly addressing the build configuration to +include headers as provided by either libepoxy, the OpenGL ES library, +or the OpenGL library. + +TextureMapperContextAttributes implementation file is the only one +that can leverage the header at the moment, but more will follow. + +* platform/graphics/texmap/TextureMapperContextAttributes.cpp: +* platform/graphics/texmap/TextureMapperGLHeaders.h: Copied from Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp. + 2017-08-08 Wenson Hsieh [iOS WK2] WKWebView schedules nonstop layout after pressing cmb+b,i,u inside a contenteditable div Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp (220394 => 220395) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp 2017-08-08 08:29:19 UTC (rev 220394) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp 2017-08-08 08:36:38 UTC (rev 220395) @@ -28,16 +28,9 @@ #if USE(TEXTURE_MAPPER_GL) +#include "TextureMapperGLHeaders.h" #include -#if USE(LIBEPOXY) -#include -#elif USE(OPENGL_ES_2) -#include -#else -#include "OpenGLShims.h" -#endif - namespace WebCore { void TextureMapperContextAttributes::initialize() Added: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGLHeaders.h (0 => 220395) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGLHeaders.h (rev 0) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGLHeaders.h 2017-08-08 08:36:38 UTC (rev 220395) @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2017 Igalia S.L. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ + +#pragma once + +#if USE(LIBEPOXY) +#include +#elif USE(OPENGL_ES_2) +#include +#else +#include "OpenGLShims.h" +#endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [220394] trunk/Source
Title: [220394] trunk/Source Revision 220394 Author carlo...@webkit.org Date 2017-08-08 01:29:19 -0700 (Tue, 08 Aug 2017) Log Message Web Automation: setUserInputForCurrentJavaScriptPrompt should fail if current dialog is not a prompt https://bugs.webkit.org/show_bug.cgi?id=175261 Reviewed by Brian Burg. Source/WebDriver: * CommandResult.cpp: (WebDriver::CommandResult::CommandResult): Handle ElementNotInteractable protocol error. Source/WebKit: According to the spec, send alert text command should fail if the current dialog is not a prompt. This patch adds _javascript_DialogType enum to API::AutomationSessionClient and a new virtual method to ask the client about the type of the current dialog. WebAutomationSession::setUserInputForCurrentJavaScriptPrompt() uses the new client method to check the type of the current dialog and fail in case it's not a prompt. Cocoa needs an implementation, for now it always returns Prompt as the type to keep compatibility. 18.4 Send Alert Text. https://w3c.github.io/webdriver/webdriver-spec.html#send-alert-text This fixes selenium test testSettingTheValueOfAnAlertThrows. * UIProcess/API/APIAutomationSessionClient.h: (API::AutomationSessionClient::typeOfCurrentJavaScriptDialogOnPage): * UIProcess/API/glib/WebKitAutomationSession.cpp: * UIProcess/API/glib/WebKitWebView.cpp: (webkitWebViewGetCurrentScriptDialogType): * UIProcess/API/glib/WebKitWebViewPrivate.h: * UIProcess/Automation/Automation.json: * UIProcess/Automation/WebAutomationSession.cpp: (WebKit::WebAutomationSession::setUserInputForCurrentJavaScriptPrompt): * UIProcess/Cocoa/AutomationSessionClient.h: * UIProcess/Cocoa/AutomationSessionClient.mm: (WebKit::AutomationSessionClient::typeOfCurrentJavaScriptDialogOnPage): Modified Paths trunk/Source/WebDriver/ChangeLog trunk/Source/WebDriver/CommandResult.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/APIAutomationSessionClient.h trunk/Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp trunk/Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp trunk/Source/WebKit/UIProcess/API/glib/WebKitWebViewPrivate.h trunk/Source/WebKit/UIProcess/Automation/Automation.json trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp trunk/Source/WebKit/UIProcess/Cocoa/AutomationSessionClient.h trunk/Source/WebKit/UIProcess/Cocoa/AutomationSessionClient.mm Diff Modified: trunk/Source/WebDriver/ChangeLog (220393 => 220394) --- trunk/Source/WebDriver/ChangeLog 2017-08-08 08:10:23 UTC (rev 220393) +++ trunk/Source/WebDriver/ChangeLog 2017-08-08 08:29:19 UTC (rev 220394) @@ -1,5 +1,15 @@ 2017-08-07 Carlos Garcia Campos+Web Automation: setUserInputForCurrentJavaScriptPrompt should fail if current dialog is not a prompt +https://bugs.webkit.org/show_bug.cgi?id=175261 + +Reviewed by Brian Burg. + +* CommandResult.cpp: +(WebDriver::CommandResult::CommandResult): Handle ElementNotInteractable protocol error. + +2017-08-07 Carlos Garcia Campos + WebDriver: implement unhandled prompt behavior https://bugs.webkit.org/show_bug.cgi?id=175184 Modified: trunk/Source/WebDriver/CommandResult.cpp (220393 => 220394) --- trunk/Source/WebDriver/CommandResult.cpp 2017-08-08 08:10:23 UTC (rev 220393) +++ trunk/Source/WebDriver/CommandResult.cpp 2017-08-08 08:29:19 UTC (rev 220394) @@ -88,6 +88,8 @@ m_errorCode = ErrorCode::NoSuchFrame; else if (errorName == "NotImplemented") m_errorCode = ErrorCode::UnsupportedOperation; +else if (errorName == "ElementNotInteractable") +m_errorCode = ErrorCode::ElementNotInteractable; else if (errorName == "_javascript_Error") m_errorCode = ErrorCode::_javascript_Error; else if (errorName == "_javascript_Timeout") Modified: trunk/Source/WebKit/ChangeLog (220393 => 220394) --- trunk/Source/WebKit/ChangeLog 2017-08-08 08:10:23 UTC (rev 220393) +++ trunk/Source/WebKit/ChangeLog 2017-08-08 08:29:19 UTC (rev 220394) @@ -1,3 +1,34 @@ +2017-08-07 Carlos Garcia Campos + +Web Automation: setUserInputForCurrentJavaScriptPrompt should fail if current dialog is not a prompt +https://bugs.webkit.org/show_bug.cgi?id=175261 + +Reviewed by Brian Burg. + +According to the spec, send alert text command should fail if the current dialog is not a prompt. This patch +adds _javascript_DialogType enum to API::AutomationSessionClient and a new virtual method to ask the client about +the type of the current dialog. WebAutomationSession::setUserInputForCurrentJavaScriptPrompt() uses the new +client method to check the type of the current dialog and fail in case it's not a prompt. Cocoa needs an +implementation, for now it always returns Prompt as the type to keep compatibility. + +18.4 Send Alert Text. +
[webkit-changes] [220393] trunk
Title: [220393] trunk Revision 220393 Author wenson_hs...@apple.com Date 2017-08-08 01:10:23 -0700 (Tue, 08 Aug 2017) Log Message [iOS WK2] WKWebView schedules nonstop layout after pressing cmb+b,i,u inside a contenteditable div https://bugs.webkit.org/show_bug.cgi?id=175116 Reviewed by Darin Adler and Ryosuke Niwa. Source/WebCore: WebCore support for WebPage::editorState refactoring. See WebKit ChangeLogs for more detail. Tests: EditorStateTests.TypingAttributesBold EditorStateTests.TypingAttributesItalic EditorStateTests.TypingAttributesUnderline EditorStateTests.TypingAttributesTextAlignmentAbsoluteAlignmentOptions EditorStateTests.TypingAttributesTextAlignmentStartEnd EditorStateTests.TypingAttributesTextAlignmentDirectionalText EditorStateTests.TypingAttributesTextColor EditorStateTests.TypingAttributesMixedStyles EditorStateTests.TypingAttributesLinkColor * css/StyleProperties.cpp: (WebCore::StyleProperties::propertyAsColor const): (WebCore::StyleProperties::propertyAsValueID const): Introduces some helper functions in StyleProperties to convert CSS property values to Color or a CSSValueID. * css/StyleProperties.h: * editing/EditingStyle.cpp: (WebCore::EditingStyle::hasStyle): Pull out logic in selectionStartHasStyle that asks for a style TriState into EditingStyle::hasStyle. This is because WebPage::editorState will now query for multiple styles at the selection start, but selectionStartHasStyle currently recomputes styleAtSelectionStart every time it is called. To prevent extra work from being done, we can just call selectionStartHasStyle once and use ask for EditingStyle::hasStyle on the computed EditingStyle at selection start. * editing/EditingStyle.h: * editing/Editor.cpp: (WebCore::Editor::selectionStartHasStyle const): Source/WebKit: Refactors WebPage::editorState to only use the StyleProperties derived from EditingStyle, instead of inserting and removing a temporary node to figure out the style. Also adds hooks to notify the UI delegate of EditorState changes. * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: * UIProcess/API/Cocoa/WKWebView.mm: (nsTextAlignment): (dictionaryRepresentationForEditorState): (-[WKWebView _didChangeEditorState]): Alerts the private UI delegate of UI-side EditorState updates. (-[WKWebView _web_editorStateDidChange]): (-[WKWebView _executeEditCommand:argument:completion:]): * UIProcess/API/Cocoa/WKWebViewInternal.h: * UIProcess/API/Cocoa/WKWebViewPrivate.h: * UIProcess/API/mac/WKView.mm: (-[WKView _web_editorStateDidChange]): * UIProcess/Cocoa/WebViewImpl.h: * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::WebViewImpl::selectionDidChange): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::executeEditCommand): Change executeEditCommand(name, callback) to executeEditCommand(name, argument, callback) and lift out of iOS platform code and into WebPage.cpp. * UIProcess/WebPageProxy.h: * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView executeEditCommandWithCallback:]): (-[WKContentView _selectionChanged]): * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::executeEditCommand): Deleted. Move the iOS-specific implementation of executeEditCommand that invokes a callback when the web process responds out of WebPageProxyIOS, and into cross-platform WebPageProxy code. Additionally, add a parameter for the edit command's argument. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::editorState const): Use EditingStyle::styleAtSelectionStart instead of Editor::styleForSelectionStart when computing an EditorState. Tweak bold, italic and underline to use EditingStyle TriStates. (WebKit::shouldEnsureEditorStateUpdateAfterExecutingCommand): (WebKit::WebPage::executeEditCommandWithCallback): * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::executeEditCommandWithCallback): Deleted. Tools: Introduces new testing infrastructure and API tests to test EditorState updates in the UI process. The new EditorStateTests run on both iOS and Mac. * TestWebKitAPI/EditingTestHarness.h: Added. * TestWebKitAPI/EditingTestHarness.mm: Added. EditingTestHarness is a helper object that API tests may use to apply editing commands and store EditorState history. This test harness adds sugaring around various editing commands, and simplifies the process of checking the state of the latest observed EditorState. (-[EditingTestHarness initWithWebView:]): (-[EditingTestHarness dealloc]): (-[EditingTestHarness webView]): (-[EditingTestHarness latestEditorState]): (-[EditingTestHarness editorStateHistory]): (-[EditingTestHarness insertText:andExpectEditorStateWith:]): (-[EditingTestHarness insertHTML:andExpectEditorStateWith:]): (-[EditingTestHarness selectAllAndExpectEditorStateWith:]): (-[EditingTestHarness moveBackwardAndExpectEditorStateWith:]): (-[EditingTestHarness moveWordBackwardAndExpectEditorStateWith:]):
[webkit-changes] [220392] trunk/Source/WebCore
Title: [220392] trunk/Source/WebCore Revision 220392 Author zandober...@gmail.com Date 2017-08-08 00:46:42 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Add TextureMapperContextAttributes https://bugs.webkit.org/show_bug.cgi?id=175311 Reviewed by Carlos Garcia Campos. Add and use TextureMapperContextAttributes, a slim struct that holds information about the type and extensions supported by the OpenGL context that's being used for one specific TextureMapperGL instance. This struct is initialized in the TextureMapperGL constructor for the OpenGL context that's been made current on that thread, and that will be used for that TextureMapperGL instance through its lifetime. The struct is then also copied into any BitmapTextureGL objects that have been created through this TextureMapperGL (or its texture pool). The struct is initialized with information about GLES2 support (which is at this point done through the USE_OPENGL_ES_2 macro) and about specific OpenGL extensions that are supported. These are then used in TextureMapperGL (NPOT textures) and BitmapTextureGL (BGRA support, sub-image unpacking) to deploy specific optimizations or workarounds. This ultimately serves as a replacement for clunky static functions that need to operate on GraphicsContext3D objects to retrieve this information. No new tests -- no change in behavior. * platform/TextureMapper.cmake: * platform/graphics/texmap/BitmapTextureGL.cpp: (WebCore::BitmapTextureGL::BitmapTextureGL): (WebCore::BitmapTextureGL::updateContentsNoSwizzle): (WebCore::BitmapTextureGL::updateContents): (WebCore::driverSupportsSubImage): Deleted. * platform/graphics/texmap/BitmapTextureGL.h: (WebCore::BitmapTextureGL::create): * platform/graphics/texmap/BitmapTexturePool.cpp: (WebCore::BitmapTexturePool::BitmapTexturePool): (WebCore::BitmapTexturePool::createTexture): * platform/graphics/texmap/BitmapTexturePool.h: * platform/graphics/texmap/TextureMapperContextAttributes.cpp: Added. (WebCore::TextureMapperContextAttributes::initialize): * platform/graphics/texmap/TextureMapperContextAttributes.h: Added. * platform/graphics/texmap/TextureMapperGL.cpp: (WebCore::TextureMapperGL::TextureMapperGL): (WebCore::TextureMapperGL::drawTexture): (WebCore::TextureMapperGL::drawTexturedQuadWithProgram): (WebCore::TextureMapperGL::createTexture): (WebCore::driverSupportsNPOTTextures): Deleted. * platform/graphics/texmap/TextureMapperGL.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/TextureMapper.cmake trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h Added Paths trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.h Diff Modified: trunk/Source/WebCore/ChangeLog (220391 => 220392) --- trunk/Source/WebCore/ChangeLog 2017-08-08 07:44:44 UTC (rev 220391) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 07:46:42 UTC (rev 220392) @@ -1,5 +1,57 @@ 2017-08-08 Zan Dobersek+[TexMap] Add TextureMapperContextAttributes +https://bugs.webkit.org/show_bug.cgi?id=175311 + +Reviewed by Carlos Garcia Campos. + +Add and use TextureMapperContextAttributes, a slim struct that holds +information about the type and extensions supported by the OpenGL +context that's being used for one specific TextureMapperGL instance. + +This struct is initialized in the TextureMapperGL constructor for the +OpenGL context that's been made current on that thread, and that will +be used for that TextureMapperGL instance through its lifetime. The +struct is then also copied into any BitmapTextureGL objects that have +been created through this TextureMapperGL (or its texture pool). + +The struct is initialized with information about GLES2 support (which +is at this point done through the USE_OPENGL_ES_2 macro) and about +specific OpenGL extensions that are supported. These are then used in +TextureMapperGL (NPOT textures) and BitmapTextureGL (BGRA support, +sub-image unpacking) to deploy specific optimizations or workarounds. + +This ultimately serves as a replacement for clunky static functions +that need to operate on GraphicsContext3D objects to retrieve this +information. + +No new tests -- no change in behavior. + +* platform/TextureMapper.cmake: +* platform/graphics/texmap/BitmapTextureGL.cpp: +(WebCore::BitmapTextureGL::BitmapTextureGL): +(WebCore::BitmapTextureGL::updateContentsNoSwizzle): +
[webkit-changes] [220391] trunk/Source
Title: [220391] trunk/Source Revision 220391 Author zandober...@gmail.com Date 2017-08-08 00:44:44 -0700 (Tue, 08 Aug 2017) Log Message [TexMap] Don't expose GraphicsContext3D object https://bugs.webkit.org/show_bug.cgi?id=175310 Reviewed by Carlos Garcia Campos. Source/WebCore: Remove the GraphicsContext3D getter from the TextureMapperGL class. Instead, the clearColor() method is added that's to be used by the CoordinatedGraphicsScene class which was accessing the GraphicsContext3D object for this purpose. * platform/graphics/texmap/TextureMapper.h: * platform/graphics/texmap/TextureMapperGL.cpp: (WebCore::TextureMapperGL::clearColor): * platform/graphics/texmap/TextureMapperGL.h: (WebCore::TextureMapperGL::graphicsContext3D const): Deleted. Source/WebKit: * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): Stop using GraphicsContext3D directly and instead use the TextureMapper::clearColor() method to achieve the same result. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (220390 => 220391) --- trunk/Source/WebCore/ChangeLog 2017-08-08 07:29:26 UTC (rev 220390) +++ trunk/Source/WebCore/ChangeLog 2017-08-08 07:44:44 UTC (rev 220391) @@ -1,3 +1,20 @@ +2017-08-08 Zan Dobersek+ +[TexMap] Don't expose GraphicsContext3D object +https://bugs.webkit.org/show_bug.cgi?id=175310 + +Reviewed by Carlos Garcia Campos. + +Remove the GraphicsContext3D getter from the TextureMapperGL class. Instead, +the clearColor() method is added that's to be used by the CoordinatedGraphicsScene +class which was accessing the GraphicsContext3D object for this purpose. + +* platform/graphics/texmap/TextureMapper.h: +* platform/graphics/texmap/TextureMapperGL.cpp: +(WebCore::TextureMapperGL::clearColor): +* platform/graphics/texmap/TextureMapperGL.h: +(WebCore::TextureMapperGL::graphicsContext3D const): Deleted. + 2017-08-07 Simon Fraser RenderStyle:diff() was inadvertently doing deep compares of StyleRareNonInheritedData etc Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h (220390 => 220391) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h 2017-08-08 07:29:26 UTC (rev 220390) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h 2017-08-08 07:44:44 UTC (rev 220391) @@ -72,6 +72,7 @@ virtual void drawTexture(const BitmapTexture&, const FloatRect& target, const TransformationMatrix& modelViewMatrix = TransformationMatrix(), float opacity = 1.0f, unsigned exposedEdges = AllEdges) = 0; virtual void drawSolidColor(const FloatRect&, const TransformationMatrix&, const Color&) = 0; +virtual void clearColor(const Color&) = 0; // makes a surface the target for the following drawTexture calls. virtual void bindSurface(BitmapTexture* surface) = 0; Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp (220390 => 220391) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp 2017-08-08 07:29:26 UTC (rev 220390) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp 2017-08-08 07:44:44 UTC (rev 220391) @@ -508,6 +508,12 @@ draw(rect, matrix, program.get(), GraphicsContext3D::TRIANGLE_FAN, flags); } +void TextureMapperGL::clearColor(const Color& color) +{ +m_context3D->clearColor(color.red() / 255.0f, color.green() / 255.0f, color.blue() / 255.0f, color.alpha() / 255.0f); +m_context3D->clear(GraphicsContext3D::COLOR_BUFFER_BIT); +} + void TextureMapperGL::drawEdgeTriangles(TextureMapperShaderProgram& program) { const GC3Dfloat left = 0; Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h (220390 => 220391) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h 2017-08-08 07:29:26 UTC (rev 220390) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h 2017-08-08 07:44:44 UTC (rev 220391) @@ -62,6 +62,7 @@ void drawTexture(const BitmapTexture&, const FloatRect&, const TransformationMatrix&, float opacity, unsigned exposedEdges) override; virtual void drawTexture(Platform3DObject texture, Flags, const IntSize& textureSize, const FloatRect& targetRect, const TransformationMatrix& modelViewMatrix, float opacity, unsigned exposedEdges = AllEdges); void drawSolidColor(const FloatRect&, const TransformationMatrix&, const Color&) override; +void clearColor(const Color&) override; void bindSurface(BitmapTexture* surface) override; BitmapTexture*
[webkit-changes] [220389] branches/safari-604-branch/Source/WebCore
Title: [220389] branches/safari-604-branch/Source/WebCore Revision 220389 Author jmarc...@apple.com Date 2017-08-08 00:29:22 -0700 (Tue, 08 Aug 2017) Log Message Cherry-pick r220247. rdar://problem/33754443 Modified Paths branches/safari-604-branch/Source/WebCore/ChangeLog branches/safari-604-branch/Source/WebCore/Modules/encryptedmedia/legacy/WebKitMediaKeySession.cpp branches/safari-604-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm branches/safari-604-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm Diff Modified: branches/safari-604-branch/Source/WebCore/ChangeLog (220388 => 220389) --- branches/safari-604-branch/Source/WebCore/ChangeLog 2017-08-08 06:43:25 UTC (rev 220388) +++ branches/safari-604-branch/Source/WebCore/ChangeLog 2017-08-08 07:29:22 UTC (rev 220389) @@ -1,3 +1,28 @@ +2017-08-08 Jason Marcell+ +Cherry-pick r220247. rdar://problem/33754443 + +2017-08-03 Jer Noble + +[EME][Mac] SecureStop left on disk in Private Browsing mode. +https://bugs.webkit.org/show_bug.cgi?id=175162 + +Reviewed by Eric Carlson. + +Return an empty string from mediaKeysStorageDirectory() when the page indicates that storage should +be ephemeral(). Previously, an empty string in this case would be treated as an error. Instead, treat +an empty string as valid, and do not try to store or retrieve session information to disk in that case. + +* Modules/encryptedmedia/legacy/WebKitMediaKeySession.cpp: +(WebCore::WebKitMediaKeySession::mediaKeysStorageDirectory const): +* platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm: +(WebCore::CDMSessionAVContentKeySession::releaseKeys): +(WebCore::CDMSessionAVContentKeySession::update): +(WebCore::CDMSessionAVContentKeySession::generateKeyReleaseMessage): +(WebCore::CDMSessionAVContentKeySession::contentKeySession): +* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm: +(WebCore::CDMSessionMediaSourceAVFObjC::storagePath const): + 2017-08-07 Jason Marcell Cherry-pick r220163. rdar://problem/33711032 Modified: branches/safari-604-branch/Source/WebCore/Modules/encryptedmedia/legacy/WebKitMediaKeySession.cpp (220388 => 220389) --- branches/safari-604-branch/Source/WebCore/Modules/encryptedmedia/legacy/WebKitMediaKeySession.cpp 2017-08-08 06:43:25 UTC (rev 220388) +++ branches/safari-604-branch/Source/WebCore/Modules/encryptedmedia/legacy/WebKitMediaKeySession.cpp 2017-08-08 07:29:22 UTC (rev 220389) @@ -32,6 +32,7 @@ #include "EventNames.h" #include "ExceptionCode.h" #include "FileSystem.h" +#include "Page.h" #include "SecurityOriginData.h" #include "Settings.h" #include "WebKitMediaKeyError.h" @@ -223,6 +224,10 @@ if (!document) return emptyString(); +auto* page = document->page(); +if (!page || page->usesEphemeralSession()) +return emptyString(); + auto storageDirectory = document->settings().mediaKeysStorageDirectory(); if (storageDirectory.isEmpty()) return emptyString(); Modified: branches/safari-604-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm (220388 => 220389) --- branches/safari-604-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm 2017-08-08 06:43:25 UTC (rev 220388) +++ branches/safari-604-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm 2017-08-08 07:29:22 UTC (rev 220389) @@ -45,8 +45,12 @@ SOFT_LINK_CLASS(AVFoundation, AVStreamDataParser); SOFT_LINK_CLASS_OPTIONAL(AVFoundation, AVContentKeySession); SOFT_LINK_CONSTANT_MAY_FAIL(AVFoundation, AVContentKeyRequestProtocolVersionsKey, NSString *) +SOFT_LINK_CONSTANT_MAY_FAIL(AVFoundation, AVContentKeySystemFairPlayStreaming, NSString *) +typedef NSString *AVContentKeySystem; + @interface AVContentKeySession : NSObject ++ (instancetype)contentKeySessionWithKeySystem:(AVContentKeySystem)keySystem; - (instancetype)initWithStorageDirectoryAtURL:(NSURL *)storageURL; @property (assign) id delegate; - (void)addStreamDataParser:(AVStreamDataParser *)streamDataParser; @@ -191,8 +195,12 @@ if (![getAVContentKeySessionClass() respondsToSelector:@selector(pendingExpiredSessionReportsWithAppIdentifier:storageDirectoryAtURL:)]) return; +auto storagePath = this->storagePath(); +if (storagePath.isEmpty()) +return; + RetainPtr certificateData = adoptNS([[NSData alloc] initWithBytes:m_certificate->data() length:m_certificate->length()]); -NSArray* expiredSessions = [getAVContentKeySessionClass() pendingExpiredSessionReportsWithAppIdentifier:certificateData.get()
[webkit-changes] [220390] branches/safari-604-branch/Source/WebCore
Title: [220390] branches/safari-604-branch/Source/WebCore Revision 220390 Author jmarc...@apple.com Date 2017-08-08 00:29:26 -0700 (Tue, 08 Aug 2017) Log Message Cherry-pick r220248. rdar://problem/33754458 Modified Paths branches/safari-604-branch/Source/WebCore/ChangeLog branches/safari-604-branch/Source/WebCore/platform/mac/WebVideoFullscreenController.mm Diff Modified: branches/safari-604-branch/Source/WebCore/ChangeLog (220389 => 220390) --- branches/safari-604-branch/Source/WebCore/ChangeLog 2017-08-08 07:29:22 UTC (rev 220389) +++ branches/safari-604-branch/Source/WebCore/ChangeLog 2017-08-08 07:29:26 UTC (rev 220390) @@ -1,5 +1,29 @@ 2017-08-08 Jason Marcell+Cherry-pick r220248. rdar://problem/33754458 + +2017-08-03 Jeremy Jones + +Improve WebKitLegacy video fullscreen animation begin and end rects. +https://bugs.webkit.org/show_bug.cgi?id=175152 +rdar://problem/32840576 + +Reviewed by Eric Carlson. + +No new tests, becuase this change has no effect on the DOM. + +This change uses different rects for fullscreen animation to prevent the animation +from failing, and to improve the aesthetics of the animation. + +* platform/mac/WebVideoFullscreenController.mm: +(frameExpandedToRatioOfFrame): +(-[WebVideoFullscreenController enterFullscreen:]): +(-[WebVideoFullscreenController exitFullscreen]): +(-[WebVideoFullscreenWindow animateFromRect:toRect:withSubAnimation:controllerAction:]): +(constrainFrameToRatioOfFrame): Deleted. + +2017-08-08 Jason Marcell + Cherry-pick r220247. rdar://problem/33754443 2017-08-03 Jer Noble Modified: branches/safari-604-branch/Source/WebCore/platform/mac/WebVideoFullscreenController.mm (220389 => 220390) --- branches/safari-604-branch/Source/WebCore/platform/mac/WebVideoFullscreenController.mm 2017-08-08 07:29:22 UTC (rev 220389) +++ branches/safari-604-branch/Source/WebCore/platform/mac/WebVideoFullscreenController.mm 2017-08-08 07:29:26 UTC (rev 220390) @@ -233,22 +233,24 @@ // MARK: - // MARK: Exposed Interface -static void constrainFrameToRatioOfFrame(NSRect *frameToConstrain, const NSRect *frame) +static NSRect frameExpandedToRatioOfFrame(NSRect frameToExpand, NSRect frame) { // Keep a constrained aspect ratio for the destination window -CGFloat originalRatio = frame->size.width / frame->size.height; -CGFloat newRatio = frameToConstrain->size.width / frameToConstrain->size.height; +NSRect result = frameToExpand; +CGFloat newRatio = frame.size.width / frame.size.height; +CGFloat originalRatio = frameToExpand.size.width / frameToExpand.size.height; if (newRatio > originalRatio) { -CGFloat newWidth = originalRatio * frameToConstrain->size.height; -CGFloat diff = frameToConstrain->size.width - newWidth; -frameToConstrain->size.width = newWidth; -frameToConstrain->origin.x += diff / 2; +CGFloat newWidth = newRatio * frameToExpand.size.height; +CGFloat diff = newWidth - frameToExpand.size.width; +result.size.width = newWidth; +result.origin.x -= diff / 2; } else { -CGFloat newHeight = frameToConstrain->size.width / originalRatio; -CGFloat diff = frameToConstrain->size.height - newHeight; -frameToConstrain->size.height = newHeight; -frameToConstrain->origin.y += diff / 2; -} +CGFloat newHeight = frameToExpand.size.width / newRatio; +CGFloat diff = newHeight - frameToExpand.size.height; +result.size.height = newHeight; +result.origin.y -= diff / 2; +} +return result; } static NSWindow *createBackgroundFullscreenWindow(NSRect frame, int level) @@ -277,9 +279,8 @@ if (!screen) screen = [NSScreen mainScreen]; -NSRect frame = [self videoElementRect]; NSRect endFrame = [screen frame]; -constrainFrameToRatioOfFrame(, ); +NSRect frame = frameExpandedToRatioOfFrame([self videoElementRect], endFrame); // Create a black window if needed if (!_backgroundFullscreenWindow) @@ -316,8 +317,11 @@ // If our owner releases us we could crash if this is not the case. // Balanced in windowDidExitFullscreen [self retain]; - -[[self fullscreenWindow] animateFromRect:[[self window] frame] toRect:endFrame withSubAnimation:_fadeAnimation controllerAction:@selector(windowDidExitFullscreen)]; + +NSRect startFrame = [[self window] frame]; +endFrame = frameExpandedToRatioOfFrame(endFrame, startFrame); + +[[self fullscreenWindow] animateFromRect:startFrame toRect:endFrame withSubAnimation:_fadeAnimation controllerAction:@selector(windowDidExitFullscreen)]; } - (void)applicationDidChangeScreenParameters:(NSNotification*)notification @@ -504,7
[webkit-changes] [220388] trunk/Source/WebDriver
Title: [220388] trunk/Source/WebDriver Revision 220388 Author carlo...@webkit.org Date 2017-08-07 23:43:25 -0700 (Mon, 07 Aug 2017) Log Message WebDriver: implement unhandled prompt behavior https://bugs.webkit.org/show_bug.cgi?id=175184 Reviewed by Brian Burg. Handle user prompts before running some of the commands according to the specification. * Capabilities.h: Add UnhandledPromptBehavior capability. * CommandResult.cpp: (WebDriver::CommandResult::httpStatusCode const): Add UnexpectedAlertOpen error. (WebDriver::CommandResult::errorString const): Ditto. * CommandResult.h: (WebDriver::CommandResult::setAdditonalErrorData): New method to set an additional data object that will be sent as part of the result error message. (WebDriver::CommandResult::additionalErrorData const): Return the additional data object. * Session.cpp: (WebDriver::Session::handleUserPrompts): Check if there's an active _javascript_ dialog and deal with it depeding on the unhandled prompt behavior. (WebDriver::Session::reportUnexpectedAlertOpen): Generate an error message with UnexpectedAlertOpen error and including the alert text as additional error data. (WebDriver::Session::go): Handle user prompts before running the command. (WebDriver::Session::getCurrentURL): Ditto. (WebDriver::Session::back): Ditto. (WebDriver::Session::forward): Ditto. (WebDriver::Session::refresh): Ditto. (WebDriver::Session::getTitle): Ditto. (WebDriver::Session::closeWindow): Ditto. (WebDriver::Session::switchToFrame): Ditto. (WebDriver::Session::switchToParentFrame): Ditto. (WebDriver::Session::isElementSelected): Ditto. (WebDriver::Session::getElementText): Ditto. (WebDriver::Session::getElementTagName): Ditto. (WebDriver::Session::getElementRect): Ditto. (WebDriver::Session::isElementEnabled): Ditto. (WebDriver::Session::isElementDisplayed): Ditto. (WebDriver::Session::getElementAttribute): Ditto. (WebDriver::Session::elementSendKeys): Ditto. (WebDriver::Session::elementSubmit): Ditto. (WebDriver::Session::executeScript): Ditto. * Session.h: * WebDriverService.cpp: (WebDriver::WebDriverService::sendResponse const): Send data object as part of the result error message if present. (WebDriver::deserializeUnhandledPromptBehavior): (WebDriver::WebDriverService::parseCapabilities const): (WebDriver::WebDriverService::validatedCapabilities const): (WebDriver::WebDriverService::newSession): Modified Paths trunk/Source/WebDriver/Capabilities.h trunk/Source/WebDriver/ChangeLog trunk/Source/WebDriver/CommandResult.cpp trunk/Source/WebDriver/CommandResult.h trunk/Source/WebDriver/Session.cpp trunk/Source/WebDriver/Session.h trunk/Source/WebDriver/WebDriverService.cpp Diff Modified: trunk/Source/WebDriver/Capabilities.h (220387 => 220388) --- trunk/Source/WebDriver/Capabilities.h 2017-08-08 06:25:23 UTC (rev 220387) +++ trunk/Source/WebDriver/Capabilities.h 2017-08-08 06:43:25 UTC (rev 220388) @@ -44,6 +44,12 @@ Eager }; +enum class UnhandledPromptBehavior { +Dismiss, +Accept, +Ignore +}; + struct Capabilities { std::optional browserName; std::optional browserVersion; @@ -51,6 +57,7 @@ std::optional acceptInsecureCerts; std::optional timeouts; std::optional pageLoadStrategy; +std::optional unhandledPromptBehavior; #if PLATFORM(GTK) std::optional browserBinary; std::optionalbrowserArguments; Modified: trunk/Source/WebDriver/ChangeLog (220387 => 220388) --- trunk/Source/WebDriver/ChangeLog 2017-08-08 06:25:23 UTC (rev 220387) +++ trunk/Source/WebDriver/ChangeLog 2017-08-08 06:43:25 UTC (rev 220388) @@ -1,5 +1,54 @@ 2017-08-07 Carlos Garcia Campos +WebDriver: implement unhandled prompt behavior +https://bugs.webkit.org/show_bug.cgi?id=175184 + +Reviewed by Brian Burg. + +Handle user prompts before running some of the commands according to the specification. + +* Capabilities.h: Add UnhandledPromptBehavior capability. +* CommandResult.cpp: +(WebDriver::CommandResult::httpStatusCode const): Add UnexpectedAlertOpen error. +(WebDriver::CommandResult::errorString const): Ditto. +* CommandResult.h: +(WebDriver::CommandResult::setAdditonalErrorData): New method to set an additional data object that will be sent +as part of the result error message. +(WebDriver::CommandResult::additionalErrorData const): Return the additional data object. +* Session.cpp: +(WebDriver::Session::handleUserPrompts): Check if there's an active _javascript_ dialog and deal with it depeding +on the unhandled prompt behavior. +(WebDriver::Session::reportUnexpectedAlertOpen): Generate an error message with UnexpectedAlertOpen error and +including the alert text as additional error data. +(WebDriver::Session::go): Handle user prompts before running the command. +(WebDriver::Session::getCurrentURL): Ditto. +
[webkit-changes] [220387] trunk/Source
Title: [220387] trunk/Source Revision 220387 Author carlo...@webkit.org Date 2017-08-07 23:25:23 -0700 (Mon, 07 Aug 2017) Log Message [GTK] Implement _javascript_ dialog methods of API::AutomationSessionClient https://bugs.webkit.org/show_bug.cgi?id=175259 Reviewed by Michael Catanzaro. Source/WebCore/platform/gtk/po: * POTFILES.in: Add WebKitScriptDialogGtk.cpp. Source/WebKit: Move the default implementation of WebKitScriptDialog from WebKitWebView platform specific files to their own files. Implement all _javascript_ dialog methods of API::AutomationSessionClient in WebKitAutomationSession. For now it only works when the user doesn't override WebKitWebView::script-dialog signal and default implementation is used. * PlatformGTK.cmake: Add new files to compilation. * PlatformWPE.cmake: Ditto. * UIProcess/API/glib/WebKitAutomationSession.cpp: (webkitAutomationSessionCreate): Pass the WebKitWebContext to the constructor and keep a pointer to it in session. * UIProcess/API/glib/WebKitAutomationSessionPrivate.h: * UIProcess/API/glib/WebKitScriptDialogPrivate.h: * UIProcess/API/glib/WebKitWebContext.cpp: * UIProcess/API/glib/WebKitWebView.cpp: (webkitWebViewRunJavaScriptAlert): Set the currently script dialog for the scope of the function. (webkitWebViewRunJavaScriptConfirm): Ditto. (webkitWebViewRunJavaScriptPrompt): Ditto. (webkitWebViewRunJavaScriptBeforeUnloadConfirm): Ditto. (webkitWebViewIsShowingScriptDialog): Ask current dialog if there's one. (webkitWebViewGetCurrentScriptDialogMessage): Ditto. (webkitWebViewSetCurrentScriptDialogUserInput): Ditto. (webkitWebViewAcceptCurrentScriptDialog): Ditto. (webkitWebViewDismissCurrentScriptDialog): Ditto. * UIProcess/API/glib/WebKitWebViewPrivate.h: * UIProcess/API/gtk/WebKitScriptDialogGtk.cpp: Added. (webkitWebViewCreateJavaScriptDialog): Moved from WebKitWebViewGtk.cpp. (webkitScriptDialogRun): Run the dialog, this code is moved from WebKitWebViewGtk.cpp. (webkitScriptDialogIsRunning): Return true if the script dialog has a native dialog running. (webkitScriptDialogAccept): Send Ok or Close response to the native dialog depending on the dialog type. (webkitScriptDialogDismiss): Send Close response to the native dialog. (webkitScriptDialogSetUserInput): Set the given text on the prompt dialog entry. * UIProcess/API/gtk/WebKitWebViewGtk.cpp: (webkitWebViewScriptDialog): Simply call webkitScriptDialogRun() now. * UIProcess/API/wpe/WebKitScriptDialogWPE.cpp: Copied from Source/WebKit/UIProcess/API/glib/WebKitAutomationSessionPrivate.h. (webkitScriptDialogRun): (webkitScriptDialogIsRunning): (webkitScriptDialogAccept): (webkitScriptDialogDismiss): (webkitScriptDialogSetUserInput): Modified Paths trunk/Source/WebCore/platform/gtk/po/ChangeLog trunk/Source/WebCore/platform/gtk/po/POTFILES.in trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/PlatformGTK.cmake trunk/Source/WebKit/PlatformWPE.cmake trunk/Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp trunk/Source/WebKit/UIProcess/API/glib/WebKitAutomationSessionPrivate.h trunk/Source/WebKit/UIProcess/API/glib/WebKitScriptDialogPrivate.h trunk/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp trunk/Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp trunk/Source/WebKit/UIProcess/API/glib/WebKitWebViewPrivate.h trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewGtk.cpp Added Paths trunk/Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogGtk.cpp trunk/Source/WebKit/UIProcess/API/wpe/WebKitScriptDialogWPE.cpp Diff Modified: trunk/Source/WebCore/platform/gtk/po/ChangeLog (220386 => 220387) --- trunk/Source/WebCore/platform/gtk/po/ChangeLog 2017-08-08 06:22:02 UTC (rev 220386) +++ trunk/Source/WebCore/platform/gtk/po/ChangeLog 2017-08-08 06:25:23 UTC (rev 220387) @@ -1,3 +1,12 @@ +2017-08-07 Carlos Garcia Campos+ +[GTK] Implement _javascript_ dialog methods of API::AutomationSessionClient +https://bugs.webkit.org/show_bug.cgi?id=175259 + +Reviewed by Michael Catanzaro. + +* POTFILES.in: Add WebKitScriptDialogGtk.cpp. + 2017-07-13 Matthew Hanson Fix the cMake builds (GTK and WPE.) Modified: trunk/Source/WebCore/platform/gtk/po/POTFILES.in (220386 => 220387) --- trunk/Source/WebCore/platform/gtk/po/POTFILES.in 2017-08-08 06:22:02 UTC (rev 220386) +++ trunk/Source/WebCore/platform/gtk/po/POTFILES.in 2017-08-08 06:25:23 UTC (rev 220387) @@ -30,6 +30,7 @@ ../../../WebKit/UIProcess/API/gtk/WebKitColorChooserRequest.cpp ../../../WebKit/UIProcess/API/gtk/WebKitPrintCustomWidget.cpp ../../../WebKit/UIProcess/API/gtk/WebKitPrintOperation.cpp +../../../WebKit/UIProcess/API/gtk/WebKitScriptDialogGtk.cpp ../../../WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp ../../../WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp ../../../WebKit/UIProcess/API/gtk/WebKitWebViewGtk.cpp Modified: trunk/Source/WebKit/ChangeLog (220386 => 220387) --- trunk/Source/WebKit/ChangeLog 2017-08-08 06:22:02 UTC
[webkit-changes] [220386] trunk/Source/WebDriver
Title: [220386] trunk/Source/WebDriver Revision 220386 Author carlo...@webkit.org Date 2017-08-07 23:22:02 -0700 (Mon, 07 Aug 2017) Log Message WebDriver: implement user prompt commands https://bugs.webkit.org/show_bug.cgi?id=174614 Reviewed by Brian Burg. * CommandResult.cpp: (WebDriver::CommandResult::CommandResult): Handle NoJavaScriptDialog protocol error. (WebDriver::CommandResult::httpStatusCode const): Add NoSuchAlert. (WebDriver::CommandResult::errorString const): Ditto. * CommandResult.h: * Session.cpp: (WebDriver::Session::dismissAlert): (WebDriver::Session::acceptAlert): (WebDriver::Session::getAlertText): (WebDriver::Session::sendAlertText): * Session.h: * WebDriverService.cpp: (WebDriver::WebDriverService::dismissAlert): (WebDriver::WebDriverService::acceptAlert): (WebDriver::WebDriverService::getAlertText): (WebDriver::WebDriverService::sendAlertText): * WebDriverService.h: Modified Paths trunk/Source/WebDriver/ChangeLog trunk/Source/WebDriver/CommandResult.cpp trunk/Source/WebDriver/CommandResult.h trunk/Source/WebDriver/Session.cpp trunk/Source/WebDriver/Session.h trunk/Source/WebDriver/WebDriverService.cpp trunk/Source/WebDriver/WebDriverService.h Diff Modified: trunk/Source/WebDriver/ChangeLog (220385 => 220386) --- trunk/Source/WebDriver/ChangeLog 2017-08-08 05:48:26 UTC (rev 220385) +++ trunk/Source/WebDriver/ChangeLog 2017-08-08 06:22:02 UTC (rev 220386) @@ -1,3 +1,28 @@ +2017-08-07 Carlos Garcia Campos+ +WebDriver: implement user prompt commands +https://bugs.webkit.org/show_bug.cgi?id=174614 + +Reviewed by Brian Burg. + +* CommandResult.cpp: +(WebDriver::CommandResult::CommandResult): Handle NoJavaScriptDialog protocol error. +(WebDriver::CommandResult::httpStatusCode const): Add NoSuchAlert. +(WebDriver::CommandResult::errorString const): Ditto. +* CommandResult.h: +* Session.cpp: +(WebDriver::Session::dismissAlert): +(WebDriver::Session::acceptAlert): +(WebDriver::Session::getAlertText): +(WebDriver::Session::sendAlertText): +* Session.h: +* WebDriverService.cpp: +(WebDriver::WebDriverService::dismissAlert): +(WebDriver::WebDriverService::acceptAlert): +(WebDriver::WebDriverService::getAlertText): +(WebDriver::WebDriverService::sendAlertText): +* WebDriverService.h: + 2017-08-05 Carlos Garcia Campos [GTK][WPE] Add API to provide browser information required by automation Modified: trunk/Source/WebDriver/CommandResult.cpp (220385 => 220386) --- trunk/Source/WebDriver/CommandResult.cpp 2017-08-08 05:48:26 UTC (rev 220385) +++ trunk/Source/WebDriver/CommandResult.cpp 2017-08-08 06:22:02 UTC (rev 220386) @@ -102,6 +102,8 @@ m_errorCode = ErrorCode::InvalidSelector; else if (errorName == "Timeout") m_errorCode = ErrorCode::Timeout; +else if (errorName == "NoJavaScriptDialog") +m_errorCode = ErrorCode::NoSuchAlert; break; } @@ -127,6 +129,7 @@ case ErrorCode::InvalidArgument: case ErrorCode::InvalidElementState: case ErrorCode::InvalidSelector: +case ErrorCode::NoSuchAlert: case ErrorCode::NoSuchElement: case ErrorCode::NoSuchFrame: case ErrorCode::NoSuchWindow: @@ -168,6 +171,8 @@ return ASCIILiteral("invalid session id"); case ErrorCode::_javascript_Error: return ASCIILiteral("_javascript_ error"); +case ErrorCode::NoSuchAlert: +return ASCIILiteral("no such alert"); case ErrorCode::NoSuchElement: return ASCIILiteral("no such element"); case ErrorCode::NoSuchFrame: Modified: trunk/Source/WebDriver/CommandResult.h (220385 => 220386) --- trunk/Source/WebDriver/CommandResult.h 2017-08-08 05:48:26 UTC (rev 220385) +++ trunk/Source/WebDriver/CommandResult.h 2017-08-08 06:22:02 UTC (rev 220386) @@ -46,6 +46,7 @@ InvalidSelector, InvalidSessionID, _javascript_Error, +NoSuchAlert, NoSuchElement, NoSuchFrame, NoSuchWindow, Modified: trunk/Source/WebDriver/Session.cpp (220385 => 220386) --- trunk/Source/WebDriver/Session.cpp 2017-08-08 05:48:26 UTC (rev 220385) +++ trunk/Source/WebDriver/Session.cpp 2017-08-08 06:22:02 UTC (rev 220386) @@ -1463,4 +1463,82 @@ }); } +void Session::dismissAlert(Function&& completionHandler) +{ +if (!m_toplevelBrowsingContext) { +completionHandler(CommandResult::fail(CommandResult::ErrorCode::NoSuchWindow)); +return; +} + +RefPtr parameters = InspectorObject::create(); +parameters->setString(ASCIILiteral("browsingContextHandle"), m_toplevelBrowsingContext.value()); +m_host->sendCommandToBackend(ASCIILiteral("dismissCurrentJavaScriptDialog"), WTFMove(parameters), [this, protectedThis = makeRef(*this), completionHandler =