[webkit-changes] [260306] trunk/Source/WebKitLegacy/mac
Title: [260306] trunk/Source/WebKitLegacy/mac Revision 260306 Author ddkil...@apple.com Date 2020-04-17 20:04:46 -0700 (Fri, 17 Apr 2020) Log Message [iOS WK1] -[_WebSafeForwarder asyncForwarder] uses non-static dispatch_once_t predicate Reviewed by Daniel Bates. Remove use of dispatch_once to initialize _WebSafeForwarder._asyncForwarder, and modernize both _WebSafeForwarder and _WebSafeAsyncForwarder classes. * WebView/WebView.mm: (@interface _WebSafeAsyncForwarder): - Make `_forwarder` weak. It can't be strong or a retain cycle would be created between this object and _WebSafeForwarder. - Change return type from `id` to `instancetype` for -[_WebSafeAsyncForwarder initWithForwarder:]. (@interface _WebSafeForwarder): - Make `_target` weak and rename from `target`. - Make `_defaultTarget` weak and rename from `defaultTarget`. - Rename `_asyncForwarder` from `asyncForwarder`. - Delete unused `asyncForwarderPred`. - Replace -asyncForwarder method declaration with a @property definition. (-[_WebSafeForwarder initWithTarget:defaultTarget:]): - Update for instance variable renames. - Iniitalize `_asyncForwarder` here. There are (at most) eight _WebSafeForwarder objects created per WebView, so creating this object in the constructor seems reasonable. (-[_WebSafeForwarder asyncForwarder:]): - Delete this method (and use of dispatch_once, fixing the bug). Replace with @synthesize statement. (-[_WebSafeForwarder dealloc:]): - Update for instance variable renames, and assign nil to all instance variables. (-[_WebSafeForwarder forwardInvocation:]): (-[_WebSafeForwarder respondsToSelector:]): (-[_WebSafeForwarder methodSignatureForSelector:]): - Update for instance variable renames. (-[_WebSafeForwarder initWithForwarder:]): - Change return type from `id` to `instancetype`. Modified Paths trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/WebView/WebView.mm Diff Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (260305 => 260306) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2020-04-18 01:37:23 UTC (rev 260305) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2020-04-18 03:04:46 UTC (rev 260306) @@ -1,3 +1,45 @@ +2020-04-17 David Kilzer + +[iOS WK1] -[_WebSafeForwarder asyncForwarder] uses non-static dispatch_once_t predicate + + +Reviewed by Daniel Bates. + +Remove use of dispatch_once to initialize +_WebSafeForwarder._asyncForwarder, and modernize both +_WebSafeForwarder and _WebSafeAsyncForwarder classes. + +* WebView/WebView.mm: +(@interface _WebSafeAsyncForwarder): +- Make `_forwarder` weak. It can't be strong or a retain cycle + would be created between this object and _WebSafeForwarder. +- Change return type from `id` to `instancetype` for + -[_WebSafeAsyncForwarder initWithForwarder:]. +(@interface _WebSafeForwarder): +- Make `_target` weak and rename from `target`. +- Make `_defaultTarget` weak and rename from `defaultTarget`. +- Rename `_asyncForwarder` from `asyncForwarder`. +- Delete unused `asyncForwarderPred`. +- Replace -asyncForwarder method declaration with a @property + definition. +(-[_WebSafeForwarder initWithTarget:defaultTarget:]): +- Update for instance variable renames. +- Iniitalize `_asyncForwarder` here. There are (at most) eight + _WebSafeForwarder objects created per WebView, so creating + this object in the constructor seems reasonable. +(-[_WebSafeForwarder asyncForwarder:]): +- Delete this method (and use of dispatch_once, fixing the bug). + Replace with @synthesize statement. +(-[_WebSafeForwarder dealloc:]): +- Update for instance variable renames, and assign nil to all + instance variables. +(-[_WebSafeForwarder forwardInvocation:]): +(-[_WebSafeForwarder respondsToSelector:]): +(-[_WebSafeForwarder methodSignatureForSelector:]): +- Update for instance variable renames. +(-[_WebSafeForwarder initWithForwarder:]): +- Change return type from `id` to `instancetype`. + 2020-04-17 Rob Buis Move allowPlugins to FrameLoader Modified: trunk/Source/WebKitLegacy/mac/WebView/WebView.mm (260305 => 260306) --- trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2020-04-18 01:37:23 UTC (rev 260305) +++ trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2020-04-18 03:04:46 UTC (rev 260306) @@ -549,25 +549,24 @@ @class _WebSafeForwarder; @interface _WebSafeAsyncForwarder : NSObject { -_WebSafeForwarder *_forwarder; +__weak _WebSafeForwarder *_forwarder; } -- (id)initWithForwarder:(_WebSafeForwarder *)forwarder; +- (instancetype)initWithForwarder:(_WebSafeForwarder *)forwarder; @end #endif @interface _WebSafeForwarder : NSObject { -id target; // Non-retained. Don't retain delegates. -id defaultTarget; +__weak id
[webkit-changes] [260305] trunk
Title: [260305] trunk Revision 260305 Author simon.fra...@apple.com Date 2020-04-17 18:37:23 -0700 (Fri, 17 Apr 2020) Log Message Group overflow controls layers into a single container layer https://bugs.webkit.org/show_bug.cgi?id=210675 Reviewed by Zalan Bujtas. Source/WebCore: Overflow control layers are going to change z-order in a future change. To make this easier, group the overflow controls layer into their own container layer. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateDebugIndicators): (WebCore::RenderLayerBacking::updateGeometry): Size the overflow controls layer using paddingBoxRectIncludingScrollbar(). (WebCore::RenderLayerBacking::updateInternalHierarchy): New parenting. (WebCore::RenderLayerBacking::updateOverflowControlsLayers): Some refactoring with a nice lambda. (WebCore::RenderLayerBacking::positionOverflowControlsLayers): Lovely lambda here. Nice. * rendering/RenderLayerBacking.h: LayoutTests: Rebaselines. * compositing/clipping/border-radius-async-overflow-clipping-layer-expected.txt: * compositing/layer-creation/absolute-in-async-overflow-scroll-expected.txt: * compositing/layer-creation/clipping-scope/nested-scroller-overlap-expected.txt: * compositing/layer-creation/clipping-scope/overlap-constrained-inside-scroller-expected.txt: * compositing/layer-creation/clipping-scope/overlap-constrained-inside-stacking-context-scroller-expected.txt: * compositing/layer-creation/clipping-scope/scroller-with-negative-z-children-expected.txt: * compositing/layer-creation/clipping-scope/shared-layers-in-scroller-expected.txt: * compositing/overflow/overflow-auto-with-touch-expected.txt: * compositing/overflow/overflow-overlay-with-touch-expected.txt: * compositing/overflow/overflow-scrollbar-layer-positions-expected.txt: * compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: * compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt: * compositing/overflow/textarea-scroll-touch-expected.txt: * compositing/repaint/scroller-with-foreground-layer-repaints-expected.txt: * compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt: * compositing/scrolling/async-overflow-scrolling/clipped-layer-in-overflow-clipped-by-scroll-expected.txt: * compositing/scrolling/async-overflow-scrolling/clipped-layer-in-overflow-expected.txt: * compositing/scrolling/async-overflow-scrolling/clipped-layer-in-overflow-nested-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-for-negative-z-in-scroller-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-clip-to-hidden-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-clip-to-visible-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-gain-clipping-layer-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-in-clipped-expected.txt: * compositing/scrolling/async-overflow-scrolling/layer-in-overflow-lose-clipping-layer-expected.txt: * compositing/scrolling/async-overflow-scrolling/visibility-hidden-scrollers-expected.txt: * compositing/scrolling/overflow-scrolling-layers-are-self-painting-expected.txt: * compositing/shared-backing/overflow-scroll/absolute-in-stacking-relative-in-scroller-expected.txt: * compositing/shared-backing/overflow-scroll/composited-absolute-in-absolute-in-relative-in-scroller-expected.txt: * compositing/shared-backing/overflow-scroll/nested-absolute-with-clipping-in-stacking-overflow-expected.txt: * compositing/shared-backing/overflow-scroll/previous-sibling-prevents-inclusiveness-expected.txt: * compositing/shared-backing/overflow-scroll/relative-in-clipping-in-scroller-in-clipping-expected.txt: * compositing/shared-backing/overflow-scroll/relative-in-clipping-in-scroller-in-relative-clipping-expected.txt: * compositing/shared-backing/overflow-scroll/relative-in-div-in-overflow-scroll-expected.txt: * compositing/shared-backing/overflow-scroll/scrolled-contents-has-painted-content-expected.txt: * fast/scrolling/mac/event-region-scrolled-contents-layer-expected.txt: * platform/mac-wk1/compositing/clipping/border-radius-async-overflow-clipping-layer-expected.txt: * platform/mac/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt: * tiled-drawing/scrolling/overflow/overflow-scrolled-down-tile-coverage-expected.txt: * tiled-drawing/scrolling/overflow/overflow-scrolled-up-tile-coverage-expected.txt: * tiled-drawing/scrolling/overflow/overflow-tile-coverage-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/compositing/clipping/border-radius-async-overflow-clipping-layer-expected.txt trunk/LayoutTests/compositing/layer-creation/absolute-in-async-overflow-scroll-expected.txt trunk/LayoutTests/compositing/layer-creation/clipping-scope/nested-scroller-overlap-expected.txt
[webkit-changes] [260304] trunk/LayoutTests
Title: [260304] trunk/LayoutTests Revision 260304 Author mmaxfi...@apple.com Date 2020-04-17 18:26:32 -0700 (Fri, 17 Apr 2020) Log Message [Cocoa] Password obscuring dots drawn with the system font are too small https://bugs.webkit.org/show_bug.cgi?id=209692 Reviewed by Darin Adler. Addressing post-review comments. * platform/mac/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (260303 => 260304) --- trunk/LayoutTests/ChangeLog 2020-04-18 00:54:41 UTC (rev 260303) +++ trunk/LayoutTests/ChangeLog 2020-04-18 01:26:32 UTC (rev 260304) @@ -1,3 +1,14 @@ +2020-04-17 Myles C. Maxfield + +[Cocoa] Password obscuring dots drawn with the system font are too small +https://bugs.webkit.org/show_bug.cgi?id=209692 + +Reviewed by Darin Adler. + +Addressing post-review comments. + +* platform/mac/TestExpectations: + 2020-04-17 Ryan Haddad Unreviewed, reverting r260245. Modified: trunk/LayoutTests/platform/mac/TestExpectations (260303 => 260304) --- trunk/LayoutTests/platform/mac/TestExpectations 2020-04-18 00:54:41 UTC (rev 260303) +++ trunk/LayoutTests/platform/mac/TestExpectations 2020-04-18 01:26:32 UTC (rev 260304) @@ -1976,4 +1976,4 @@ webkit.org/b/210351 scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe.html [ Pass Timeout ] # Certain versions of macOS use different text security characters. -webkit.org/b/209692 [ Sierra HighSierra Mojave Catalina ] platform/mac/fast/text/text-security-disc-bullet-pua-mac.html [ ImageOnlyFailure ] +webkit.org/b/209692 [ Mojave Catalina ] platform/mac/fast/text/text-security-disc-bullet-pua-mac.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260303] trunk
Title: [260303] trunk Revision 260303 Author katherine_che...@apple.com Date 2020-04-17 17:54:41 -0700 (Fri, 17 Apr 2020) Log Message Enable service workers for app-bound domains https://bugs.webkit.org/show_bug.cgi?id=210451 Reviewed by Brent Fulgham. Source/WebCore: SWServer now retrieves the app-bound domains from the UI Process and only continues with the load if the proper entitlement is present or the load is coming from an app-bound domain. * workers/service/server/SWServer.cpp: (WebCore::SWServer::addRegistrationFromStore): (WebCore::SWServer::SWServer): (WebCore::SWServer::validateRegistrationDomain): (WebCore::SWServer::scheduleJob): * workers/service/server/SWServer.h: Source/WebKit: * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::createFetchTask): (WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad): (WebKit::NetworkConnectionToWebProcess::swConnection): (WebKit::NetworkConnectionToWebProcess::isServiceWorkerAllowed const): Deleted. * NetworkProcess/NetworkConnectionToWebProcess.h: Removed ASSERTS and service worker entitlement checks which are now done along with app-bound domain checks in SWServer.cpp. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess): (WebKit::NetworkProcess::addWebsiteDataStore): Remove the check for parentProcessHasServiceWorkerEntitlement() before adding a serviceWorkerSession. This doesn't do anything except add an entry to a map, and simplifies the case where we need a session for app-bound instances which should have service workers but have no entitlement. Pass the entitlement and a new callback to request app-bound domains from the UI Process to the SWServer. This will make sure the server checks for the entitlement or list of app-bound domains before completing a load. (WebKit::NetworkProcess::registerSWServerConnection): Remove unnecessary ASSERT for entitlement. * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * NetworkProcess/ios/NetworkProcessIOS.mm: (WebKit::NetworkProcess::parentProcessHasServiceWorkerEntitlement const): (WebKit::NetworkProcess::disableServiceWorkerEntitlement): (WebKit::NetworkProcess::clearServiceWorkerEntitlementOverride): In order to test this thoroughly, TestWebKitAPI needed a way to temporarily disable the service worker entitlement. This function overrides the check for the entitlement if the bool is set, disabling the entitlement. * Shared/WebPageCreationParameters.cpp: (WebKit::WebPageCreationParameters::encode const): (WebKit::WebPageCreationParameters::decode): * Shared/WebPageCreationParameters.h: WebPage needs to know if it is app-bound when created so it can update the service worker preferences key accordingly. * Shared/WebPreferences.yaml: * UIProcess/API/Cocoa/WKPreferences.mm: (-[WKPreferences _serviceWorkerEntitlementDisabledForTesting]): (-[WKPreferences _setServiceWorkerEntitlementDisabledForTesting:]): * UIProcess/API/Cocoa/WKPreferencesPrivate.h: Disable entitlement for testing. * UIProcess/API/APIPageConfiguration.cpp: (API::PageConfiguration::copy const): * UIProcess/API/APIPageConfiguration.h: (API::PageConfiguration::limitsNavigationsToAppBoundDomains const): (API::PageConfiguration::setLimitsNavigationsToAppBoundDomains): (API::PageConfiguration::limitsNavigationToAppBoundDomains const): Deleted. (API::PageConfiguration::setLimitsNavigationToAppBoundDomains): Deleted. (-[WKWebViewConfiguration limitsNavigationsToAppBoundDomains]): (-[WKWebViewConfiguration setLimitsNavigationsToAppBoundDomains:]): (-[WKWebViewConfiguration limitsNavigationToAppBoundDomains]): Deleted. (-[WKWebViewConfiguration setLimitsNavigationToAppBoundDomains:]): Deleted. * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: Inconsistent naming (Navigation vs Navigations). * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _setupPageConfiguration:]): Check for entitlement or app-bound webview. (-[WKWebView _serviceWorkersEnabled:]): (-[WKWebView _clearServiceWorkerEntitlementOverride:]): * UIProcess/API/Cocoa/WKWebViewPrivate.h: Testing SPIs. * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::getAppBoundDomains): * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/Network/NetworkProcessProxy.messages.in: Sends the app-bound domains to the Network Process. * UIProcess/WebPageProxy.cpp: (WebKit::m_limitsNavigationsToAppBoundDomains): (WebKit::m_limitsNavigationToAppBoundDomains): Deleted. Naming inconsistency. (WebKit::WebPageProxy::disableServiceWorkerEntitlementInNetworkProcess): (WebKit::WebPageProxy::clearServiceWorkerEntitlementOverride): * UIProcess/WebPageProxy.h: Disable entitlement for testing. * WebProcess/WebPage/WebPage.cpp: (WebKit::m_isNavigatingToAppBoundDomain): Set this parameter in the constructor so it will be accurate when updating preferences. (WebKit::WebPage::updatePreferences): * WebProcess/WebPage/WebPage.h:
[webkit-changes] [260302] trunk
Title: [260302] trunk Revision 260302 Author achristen...@apple.com Date 2020-04-17 16:40:39 -0700 (Fri, 17 Apr 2020) Log Message NetworkSessionCocoa should request client certificate only once per host/port https://bugs.webkit.org/show_bug.cgi?id=210626 Reviewed by Geoffrey Garen. Source/WebKit: NSURLSession creates more than one TCP connection to a server when using HTTP 1.1. Each TCP connection with TLS generates a didReceiveChallenge to do the server trust evaluation of the certificate chain. If the server requests a client certificate in the TLS handshake, it also generates a didReceiveChallenge to request client certificates as well. This is an implementation detail of our networking. We should not actually ask the WKNavigationDelegate for client certificates more than once per host/port. We should remember the credential and give it to NSURLSession immediately if we have used this credential in the past for a task that has received bytes (either a response or a redirect). If the TLS handshake fails, we should not reuse that same certificate automatically. * NetworkProcess/cocoa/NetworkSessionCocoa.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): (WebKit::NetworkSessionCocoa::clientCertificateSuggestedForHost): (WebKit::NetworkSessionCocoa::taskReceivedBytes): (WebKit::NetworkSessionCocoa::taskFailed): (WebKit::NetworkSessionCocoa::successfulClientCertificateForHost const): Tools: * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: (TestWebKitAPI::clientCertServerWithCertVerifier): (TestWebKitAPI::TEST): * TestWebKitAPI/cocoa/HTTPServer.h: (TestWebKitAPI::HTTPServer::HTTPResponse::HTTPResponse): * TestWebKitAPI/cocoa/HTTPServer.mm: (TestWebKitAPI::HTTPServer::HTTPServer): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.h trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260301 => 260302) --- trunk/Source/WebKit/ChangeLog 2020-04-17 23:30:33 UTC (rev 260301) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 23:40:39 UTC (rev 260302) @@ -1,3 +1,30 @@ +2020-04-17 Alex Christensen + +NetworkSessionCocoa should request client certificate only once per host/port +https://bugs.webkit.org/show_bug.cgi?id=210626 + + +Reviewed by Geoffrey Garen. + +NSURLSession creates more than one TCP connection to a server when using HTTP 1.1. +Each TCP connection with TLS generates a didReceiveChallenge to do the server trust evaluation of the certificate chain. +If the server requests a client certificate in the TLS handshake, it also generates a didReceiveChallenge to request client +certificates as well. This is an implementation detail of our networking. We should not actually ask the WKNavigationDelegate +for client certificates more than once per host/port. We should remember the credential and give it to NSURLSession immediately +if we have used this credential in the past for a task that has received bytes (either a response or a redirect). If the TLS +handshake fails, we should not reuse that same certificate automatically. + +* NetworkProcess/cocoa/NetworkSessionCocoa.h: +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): +(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): +(-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): +(-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): +(WebKit::NetworkSessionCocoa::clientCertificateSuggestedForHost): +(WebKit::NetworkSessionCocoa::taskReceivedBytes): +(WebKit::NetworkSessionCocoa::taskFailed): +(WebKit::NetworkSessionCocoa::successfulClientCertificateForHost const): + 2020-04-17 David Kilzer Bug 210646: REGRESSION (r260112): createArchiveList() leaks malloc memory on early returns due to an error Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h (260301 => 260302) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h 2020-04-17 23:30:33 UTC (rev 260301) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h 2020-04-17 23:40:39 UTC (rev 260302) @@ -48,6 +48,7 @@ enum class NegotiatedLegacyTLS : bool;
[webkit-changes] [260301] trunk/Source/WebCore
Title: [260301] trunk/Source/WebCore Revision 260301 Author d...@apple.com Date 2020-04-17 16:30:33 -0700 (Fri, 17 Apr 2020) Log Message [WebGL] Confirm there are no errors when setting up framebuffers https://bugs.webkit.org/show_bug.cgi?id=210632 Reviewed by Simon Fraser. We're seeing crashes on macOS inside GraphicsContextGL::reshape(). Specifically when we submit work at the end of the function via glFlush. At the moment the cause is a mystery, because we should bail out before then if the multisample renderbuffer was not complete. In the hope that it helps somewhat, add a call to glGetError to double check that there isn't anything horribly wrong before we talk to the GPU. * html/canvas/WebGL2RenderingContext.cpp: (WebCore::WebGL2RenderingContext::WebGL2RenderingContext): If the underlying GCGL context was marked as "LOST" during initialization, skip the rest of our initialization. * html/canvas/WebGLRenderingContext.cpp: Ditto. (WebCore::WebGLRenderingContext::WebGLRenderingContext): * html/canvas/WebGLRenderingContextBase.cpp: Ditto. (WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase): * platform/graphics/angle/GraphicsContextGLANGLE.cpp: Check for a GL error during setup and, if there is one, skip directly into a LOST state. (WebCore::GraphicsContextGLOpenGL::reshape): * platform/graphics/opengl/GraphicsContextGLOpenGLCommon.cpp: (WebCore::GraphicsContextGLOpenGL::reshape): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp trunk/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGLCommon.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260300 => 260301) --- trunk/Source/WebCore/ChangeLog 2020-04-17 23:13:56 UTC (rev 260300) +++ trunk/Source/WebCore/ChangeLog 2020-04-17 23:30:33 UTC (rev 260301) @@ -1,3 +1,36 @@ +2020-04-17 Dean Jackson + +[WebGL] Confirm there are no errors when setting up framebuffers +https://bugs.webkit.org/show_bug.cgi?id=210632 + + +Reviewed by Simon Fraser. + +We're seeing crashes on macOS inside GraphicsContextGL::reshape(). +Specifically when we submit work at the end of the function via +glFlush. + +At the moment the cause is a mystery, because we should bail out +before then if the multisample renderbuffer was not complete. In +the hope that it helps somewhat, add a call to glGetError to double +check that there isn't anything horribly wrong before we talk to +the GPU. + +* html/canvas/WebGL2RenderingContext.cpp: +(WebCore::WebGL2RenderingContext::WebGL2RenderingContext): If the underlying +GCGL context was marked as "LOST" during initialization, skip the rest of our +initialization. +* html/canvas/WebGLRenderingContext.cpp: Ditto. +(WebCore::WebGLRenderingContext::WebGLRenderingContext): +* html/canvas/WebGLRenderingContextBase.cpp: Ditto. +(WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase): + +* platform/graphics/angle/GraphicsContextGLANGLE.cpp: Check for a GL error during +setup and, if there is one, skip directly into a LOST state. +(WebCore::GraphicsContextGLOpenGL::reshape): +* platform/graphics/opengl/GraphicsContextGLOpenGLCommon.cpp: +(WebCore::GraphicsContextGLOpenGL::reshape): + 2020-04-17 Peng Liu Cleanup the macros for video fullscreen and picture-in-picture Modified: trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp (260300 => 260301) --- trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp 2020-04-17 23:13:56 UTC (rev 260300) +++ trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp 2020-04-17 23:30:33 UTC (rev 260301) @@ -96,6 +96,9 @@ WebGL2RenderingContext::WebGL2RenderingContext(CanvasBase& canvas, Ref&& context, GraphicsContextGLAttributes attributes) : WebGLRenderingContextBase(canvas, WTFMove(context), attributes) { +if (isContextLost()) +return; + initializeShaderExtensions(); initializeVertexArrayObjects(); initializeTransformFeedbackBufferCache(); Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp (260300 => 260301) --- trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp 2020-04-17 23:13:56 UTC (rev 260300) +++ trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp 2020-04-17 23:30:33 UTC (rev 260301) @@ -99,6 +99,9 @@ WebGLRenderingContext::WebGLRenderingContext(CanvasBase& canvas, Ref&& context, GraphicsContextGLAttributes attributes) : WebGLRenderingContextBase(canvas, WTFMove(context), attributes) { +if (isContextLost()) +return; + initializeVertexArrayObjects(); } Modified:
[webkit-changes] [260300] tags/Safari-609.2.7.1/
Title: [260300] tags/Safari-609.2.7.1/ Revision 260300 Author alanc...@apple.com Date 2020-04-17 16:13:56 -0700 (Fri, 17 Apr 2020) Log Message Tag Safari-609.2.7.1. Added Paths tags/Safari-609.2.7.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260298] trunk/Tools
Title: [260298] trunk/Tools Revision 260298 Author ddkil...@apple.com Date 2020-04-17 16:05:37 -0700 (Fri, 17 Apr 2020) Log Message Bug 210645: REGRESSION (r211095): [iOS] TestRunnerWKWebView leaks @property accessibilitySpeakSelectionContent Reviewed by Chris Fleizach. * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: (-[TestRunnerWKWebView dealloc]): - Release accessibilitySpeakSelectionContent in -dealloc. Modified Paths trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.mm Diff Modified: trunk/Tools/ChangeLog (260297 => 260298) --- trunk/Tools/ChangeLog 2020-04-17 23:01:41 UTC (rev 260297) +++ trunk/Tools/ChangeLog 2020-04-17 23:05:37 UTC (rev 260298) @@ -1,3 +1,15 @@ +2020-04-17 David Kilzer + +Bug 210645: REGRESSION (r211095): [iOS] TestRunnerWKWebView leaks @property accessibilitySpeakSelectionContent + + + +Reviewed by Chris Fleizach. + +* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: +(-[TestRunnerWKWebView dealloc]): +- Release accessibilitySpeakSelectionContent in -dealloc. + 2020-04-17 Brady Eidson Pass sandbox extensions for back/forward list navigations after the policy is decided at process-swap time. Modified: trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.mm (260297 => 260298) --- trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.mm 2020-04-17 23:01:41 UTC (rev 260297) +++ trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.mm 2020-04-17 23:05:37 UTC (rev 260298) @@ -120,6 +120,9 @@ [[NSNotificationCenter defaultCenter] removeObserver:self]; [self resetInteractionCallbacks]; +#if PLATFORM(IOS_FAMILY) +self.accessibilitySpeakSelectionContent = nil; +#endif self.zoomToScaleCompletionHandler = nil; self.retrieveSpeakSelectionContentCompletionHandler = nil; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260299] trunk/Source/WebKit
Title: [260299] trunk/Source/WebKit Revision 260299 Author ddkil...@apple.com Date 2020-04-17 16:06:59 -0700 (Fri, 17 Apr 2020) Log Message Bug 210646: REGRESSION (r260112): createArchiveList() leaks malloc memory on early returns due to an error Reviewed by Darin Adler. * Shared/mac/WebCoreArgumentCodersMac.mm: (IPC::createArchiveList): - Move early returns for protocolProperties, protocolProperties and mimeType above memory allocation to fix the memory leak. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260298 => 260299) --- trunk/Source/WebKit/ChangeLog 2020-04-17 23:05:37 UTC (rev 260298) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 23:06:59 UTC (rev 260299) @@ -1,3 +1,16 @@ +2020-04-17 David Kilzer + +Bug 210646: REGRESSION (r260112): createArchiveList() leaks malloc memory on early returns due to an error + + + +Reviewed by Darin Adler. + +* Shared/mac/WebCoreArgumentCodersMac.mm: +(IPC::createArchiveList): +- Move early returns for protocolProperties, protocolProperties + and mimeType above memory allocation to fix the memory leak. + 2020-04-17 Brady Eidson Pass sandbox extensions for back/forward list navigations after the policy is decided at process-swap time. Modified: trunk/Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm (260298 => 260299) --- trunk/Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm 2020-04-17 23:05:37 UTC (rev 260298) +++ trunk/Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm 2020-04-17 23:06:59 UTC (rev 260299) @@ -124,6 +124,13 @@ if (bufferSize.hasOverflowed()) return false; +if (!extractDictionaryValue(representation, CFSTR("protocolProperties"), protocolProperties)) +return false; +if (!extractDictionaryValue(representation, CFSTR("expectedContentLength"), expectedContentLength)) +return false; +if (!extractDictionaryValue(representation, CFSTR("mimeType"), mimeType)) +return false; + *objectCount = archiveListArrayCount; *objects = static_cast(malloc(bufferSize.unsafeGet())); @@ -133,13 +140,6 @@ (*objects)[i] = nullptr; } -if (!extractDictionaryValue(representation, CFSTR("protocolProperties"), protocolProperties)) -return false; -if (!extractDictionaryValue(representation, CFSTR("expectedContentLength"), expectedContentLength)) -return false; -if (!extractDictionaryValue(representation, CFSTR("mimeType"), mimeType)) -return false; - return true; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260297] trunk/Source/JavaScriptCore
Title: [260297] trunk/Source/_javascript_Core Revision 260297 Author commit-qu...@webkit.org Date 2020-04-17 16:01:41 -0700 (Fri, 17 Apr 2020) Log Message Unreviewed, reverting r260279. https://bugs.webkit.org/show_bug.cgi?id=210678 Throwing error would be more efficient, having a generic code is still worth doing (Requested by yusukesuzuki on #webkit). Reverted changeset: "[JSC] We do not need to have exit-check for Map/Set iterator functions" https://bugs.webkit.org/show_bug.cgi?id=210667 https://trac.webkit.org/changeset/260279 Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (260296 => 260297) --- trunk/Source/_javascript_Core/ChangeLog 2020-04-17 23:01:40 UTC (rev 260296) +++ trunk/Source/_javascript_Core/ChangeLog 2020-04-17 23:01:41 UTC (rev 260297) @@ -1,3 +1,18 @@ +2020-04-17 Commit Queue + +Unreviewed, reverting r260279. +https://bugs.webkit.org/show_bug.cgi?id=210678 + +Throwing error would be more efficient, having a generic code +is still worth doing (Requested by yusukesuzuki on #webkit). + +Reverted changeset: + +"[JSC] We do not need to have exit-check for Map/Set iterator +functions" +https://bugs.webkit.org/show_bug.cgi?id=210667 +https://trac.webkit.org/changeset/260279 + 2020-04-17 Saam Barati GetTypedArrayByteOffset is broken on arm64e Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (260296 => 260297) --- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2020-04-17 23:01:40 UTC (rev 260296) +++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2020-04-17 23:01:41 UTC (rev 260297) @@ -3188,6 +3188,9 @@ case JSMapValuesIntrinsic: case JSSetEntriesIntrinsic: case JSSetValuesIntrinsic: { +if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, BadCell) || m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, BadType)) +return false; + insertChecks(); IterationKind kind = IterationKind::Values; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260296] branches/safari-609.2.7-branch/Source
Title: [260296] branches/safari-609.2.7-branch/Source Revision 260296 Author alanc...@apple.com Date 2020-04-17 16:01:40 -0700 (Fri, 17 Apr 2020) Log Message Versioning. Modified Paths branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-609.2.7-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig (260295 => 260296) --- branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-17 22:55:10 UTC (rev 260295) +++ branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-17 23:01:40 UTC (rev 260296) @@ -24,9 +24,9 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; TINY_VERSION = 7; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (260295 => 260296) --- branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-17 22:55:10 UTC (rev 260295) +++ branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-17 23:01:40 UTC (rev 260296) @@ -24,9 +24,9 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; TINY_VERSION = 7; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (260295 => 260296) --- branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-17 22:55:10 UTC (rev 260295) +++ branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-17 23:01:40 UTC (rev 260296) @@ -24,9 +24,9 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; TINY_VERSION = 7; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig (260295 => 260296) --- branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-17 22:55:10 UTC (rev 260295) +++ branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-17 23:01:40 UTC (rev 260296) @@ -24,9 +24,9 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; TINY_VERSION = 7; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (260295 => 260296) --- branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-17 22:55:10 UTC (rev 260295) +++ branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-17 23:01:40 UTC (rev 260296) @@ -24,9 +24,9 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; TINY_VERSION = 7; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));
[webkit-changes] [260295] trunk
Title: [260295] trunk Revision 260295 Author beid...@apple.com Date 2020-04-17 15:55:10 -0700 (Fri, 17 Apr 2020) Log Message Pass sandbox extensions for back/forward list navigations after the policy is decided at process-swap time. and https://bugs.webkit.org/show_bug.cgi?id=210623 Reviewed by Geoff Garen. Source/WebKit: Covered by almost all existing tests, and a new API test. Instead of granting a sandbox extension when updating the back/forward cursor for a pending back/forward list traversal, do so after the client decides the policy. (Which is also along with a process swap in interesting cases) * Shared/PolicyDecision.h: (WebKit::PolicyDecision::encode const): (WebKit::PolicyDecision::decode): * Shared/WebPageCreationParameters.h: * UIProcess/API/APINavigation.cpp: (API::Navigation::Navigation): * UIProcess/API/APINavigation.h: (API::Navigation::create): (API::Navigation::reloadItem const): * UIProcess/ProvisionalPageProxy.cpp: (WebKit::ProvisionalPageProxy::backForwardGoToItem): * UIProcess/ProvisionalPageProxy.h: * UIProcess/WebNavigationState.cpp: (WebKit::WebNavigationState::createReloadNavigation): * UIProcess/WebNavigationState.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::launchProcessForReload): (WebKit::WebPageProxy::reload): (WebKit::WebPageProxy::receivedNavigationPolicyDecision): (WebKit::WebPageProxy::receivedPolicyDecision): * UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::receivedPolicyDecision): * UIProcess/WebPageProxy.messages.in: * WebProcess/WebPage/WebBackForwardListProxy.cpp: (WebKit::WebBackForwardListProxy::goToItem): * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::didReceivePolicyDecision): * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad): Tools: * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/PolicyDecision.h trunk/Source/WebKit/Shared/WebPageCreationParameters.h trunk/Source/WebKit/UIProcess/API/APINavigation.cpp trunk/Source/WebKit/UIProcess/API/APINavigation.h trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.h trunk/Source/WebKit/UIProcess/WebNavigationState.cpp trunk/Source/WebKit/UIProcess/WebNavigationState.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in trunk/Source/WebKit/WebProcess/WebPage/WebBackForwardListProxy.cpp trunk/Source/WebKit/WebProcess/WebPage/WebFrame.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260294 => 260295) --- trunk/Source/WebKit/ChangeLog 2020-04-17 22:45:29 UTC (rev 260294) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 22:55:10 UTC (rev 260295) @@ -1,3 +1,54 @@ +2020-04-17 Brady Eidson + +Pass sandbox extensions for back/forward list navigations after the policy is decided at process-swap time. + and https://bugs.webkit.org/show_bug.cgi?id=210623 + +Reviewed by Geoff Garen. + +Covered by almost all existing tests, and a new API test. + +Instead of granting a sandbox extension when updating the back/forward cursor for a pending +back/forward list traversal, do so after the client decides the policy. +(Which is also along with a process swap in interesting cases) + +* Shared/PolicyDecision.h: +(WebKit::PolicyDecision::encode const): +(WebKit::PolicyDecision::decode): + +* Shared/WebPageCreationParameters.h: + +* UIProcess/API/APINavigation.cpp: +(API::Navigation::Navigation): +* UIProcess/API/APINavigation.h: +(API::Navigation::create): +(API::Navigation::reloadItem const): + +* UIProcess/ProvisionalPageProxy.cpp: +(WebKit::ProvisionalPageProxy::backForwardGoToItem): +* UIProcess/ProvisionalPageProxy.h: + +* UIProcess/WebNavigationState.cpp: +(WebKit::WebNavigationState::createReloadNavigation): +* UIProcess/WebNavigationState.h: + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::launchProcessForReload): +(WebKit::WebPageProxy::reload): +(WebKit::WebPageProxy::receivedNavigationPolicyDecision): +(WebKit::WebPageProxy::receivedPolicyDecision): +* UIProcess/WebPageProxy.h: +(WebKit::WebPageProxy::receivedPolicyDecision): +* UIProcess/WebPageProxy.messages.in: + +* WebProcess/WebPage/WebBackForwardListProxy.cpp: +(WebKit::WebBackForwardListProxy::goToItem): + +* WebProcess/WebPage/WebFrame.cpp: +(WebKit::WebFrame::didReceivePolicyDecision): + +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad): + 2020-04-17 David
[webkit-changes] [260294] branches/safari-609.2.7-branch/
Title: [260294] branches/safari-609.2.7-branch/ Revision 260294 Author alanc...@apple.com Date 2020-04-17 15:45:29 -0700 (Fri, 17 Apr 2020) Log Message New branch. Added Paths branches/safari-609.2.7-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260293] trunk/Source/WebCore
Title: [260293] trunk/Source/WebCore Revision 260293 Author peng.l...@apple.com Date 2020-04-17 15:41:03 -0700 (Fri, 17 Apr 2020) Log Message Cleanup the macros for video fullscreen and picture-in-picture https://bugs.webkit.org/show_bug.cgi?id=210638 Reviewed by Eric Carlson. A follow-up patch to fix build failures of r260259. * platform/ios/VideoFullscreenInterfaceAVKit.h: * platform/ios/VideoFullscreenInterfaceAVKit.mm: * platform/ios/WebVideoFullscreenControllerAVKit.mm: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260292 => 260293) --- trunk/Source/WebCore/ChangeLog 2020-04-17 22:35:26 UTC (rev 260292) +++ trunk/Source/WebCore/ChangeLog 2020-04-17 22:41:03 UTC (rev 260293) @@ -1,3 +1,16 @@ +2020-04-17 Peng Liu + +Cleanup the macros for video fullscreen and picture-in-picture +https://bugs.webkit.org/show_bug.cgi?id=210638 + +Reviewed by Eric Carlson. + +A follow-up patch to fix build failures of r260259. + +* platform/ios/VideoFullscreenInterfaceAVKit.h: +* platform/ios/VideoFullscreenInterfaceAVKit.mm: +* platform/ios/WebVideoFullscreenControllerAVKit.mm: + 2020-04-17 David Kilzer REGRESSION (r234105): [iOS] WKColorButton leaks a UIColor Modified: trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h (260292 => 260293) --- trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h 2020-04-17 22:35:26 UTC (rev 260292) +++ trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h 2020-04-17 22:41:03 UTC (rev 260293) @@ -26,7 +26,7 @@ #pragma once -#if PLATFORM(IOS_FAMILY) +#if PLATFORM(IOS_FAMILY) && ENABLE(VIDEO_PRESENTATION_MODE) #include "EventListener.h" #include "HTMLMediaElementEnums.h" Modified: trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm (260292 => 260293) --- trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm 2020-04-17 22:35:26 UTC (rev 260292) +++ trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm 2020-04-17 22:41:03 UTC (rev 260293) @@ -26,14 +26,11 @@ #import "config.h" #import "VideoFullscreenInterfaceAVKit.h" -#if PLATFORM(IOS_FAMILY) +#if PLATFORM(IOS_FAMILY) && ENABLE(VIDEO_PRESENTATION_MODE) -#import "PictureInPictureSupport.h" - -#if HAVE(AVKIT) - #import "GeometryUtilities.h" #import "Logging.h" +#import "PictureInPictureSupport.h" #import "PlaybackSessionInterfaceAVKit.h" #import "RuntimeApplicationChecks.h" #import "TimeRanges.h" @@ -1551,8 +1548,6 @@ return hasMode(WebCore::HTMLMediaElementEnums::VideoFullscreenModePictureInPicture) && [playerController() isPlaying]; } -#endif // HAVE(AVKIT) - static Optional isPictureInPictureSupported; void WebCore::setSupportsPictureInPicture(bool isSupported) @@ -1571,4 +1566,4 @@ #endif } -#endif // PLATFORM(IOS_FAMILY) +#endif // PLATFORM(IOS_FAMILY) && ENABLE(VIDEO_PRESENTATION_MODE) Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm (260292 => 260293) --- trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm 2020-04-17 22:35:26 UTC (rev 260292) +++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm 2020-04-17 22:41:03 UTC (rev 260293) @@ -24,11 +24,10 @@ */ #import "config.h" +#import "WebVideoFullscreenControllerAVKit.h" #if PLATFORM(IOS_FAMILY) -#import "WebVideoFullscreenControllerAVKit.h" - #import "Logging.h" #import "MediaSelectionOption.h" #import "PlaybackSessionInterfaceAVKit.h" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260292] tags/Safari-610.1.10/
Title: [260292] tags/Safari-610.1.10/ Revision 260292 Author repst...@apple.com Date 2020-04-17 15:35:26 -0700 (Fri, 17 Apr 2020) Log Message Tag Safari-610.1.10. Added Paths tags/Safari-610.1.10/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260291] trunk/Source/WebInspectorUI
Title: [260291] trunk/Source/WebInspectorUI Revision 260291 Author drou...@apple.com Date 2020-04-17 15:33:05 -0700 (Fri, 17 Apr 2020) Log Message Web Inspector: REGRESSION(r242018): using `RegExp.prototype.test` with a global `RegExp` will ignore one potential match after each successful match https://bugs.webkit.org/show_bug.cgi?id=210671 Reviewed by Timothy Hatcher. * UserInterface/Base/SearchUtilities.js: (WI.SearchUtilities.searchRegExpForString): (WI.SearchUtilities.filterRegExpForString): (WI.SearchUtilities._regExpForString): (WI.SearchUtilities.regExpForString): Deleted. Many uses of `WI.SearchUtilities.regExpForString` use the returned `RegExp` multiple times, expecting each use to be done in isolation from every other use (e.g. filtering). In these cases, the global flag `g` should not be set on the `RegExp`, as otherwise it will keep a state of the last matched index, thereby breaking this isolation. As such, it is necessary to split `WI.SearchUtilities.regExpForString` into two versions, one for each use case. * UserInterface/Views/DOMTreeElement.js: (WI.DOMTreeElement.prototype._highlightSearchResults): * UserInterface/Views/LogContentView.js: (WI.LogContentView.prototype.performSearch): * UserInterface/Views/ResourceHeadersContentView.js: (WI.ResourceHeadersContentView.prototype._perfomSearchOnKeyValuePairs): * UserInterface/Views/ResourceSecurityContentView.js: (WI.ResourceSecurityContentView.prototype._perfomSearchOnKeyValuePairs): * UserInterface/Views/SearchSidebarPanel.js: (WI.SearchSidebarPanel.prototype.performSearch.forEachMatch): Use `WI.SearchUtilities.searchRegExpForString` as these views expect the search to maintain its current position throughout the contents of the view. * UserInterface/Views/DataGrid.js: (WI.DataGrid.prototype._updateFilter): * UserInterface/Views/IndexedDatabaseObjectStoreContentView.js: (WI.IndexedDatabaseObjectStoreContentView.prototype.dataGridMatchNodeAgainstCustomFilters): * UserInterface/Views/NetworkTableContentView.js: (WI.NetworkTableContentView.prototype._urlFilterDidChange): * UserInterface/Views/SourceCodeTextEditor.js: (WI.SourceCodeTextEditor.prototype.customPerformSearch.searchResultCallback): * UserInterface/Views/TextEditor.js: (WI.TextEditor.prototype.performSearch): Use `WI.SearchUtilities.filterRegExpForString` as these views expect each search to be done in isolation from every other search (e.g. filtering). Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Base/SearchUtilities.js trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js trunk/Source/WebInspectorUI/UserInterface/Views/DataGrid.js trunk/Source/WebInspectorUI/UserInterface/Views/IndexedDatabaseObjectStoreContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/ResourceHeadersContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/ResourceSecurityContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/SearchSidebarPanel.js trunk/Source/WebInspectorUI/UserInterface/Views/SourceCodeTextEditor.js trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (260290 => 260291) --- trunk/Source/WebInspectorUI/ChangeLog 2020-04-17 22:08:31 UTC (rev 260290) +++ trunk/Source/WebInspectorUI/ChangeLog 2020-04-17 22:33:05 UTC (rev 260291) @@ -1,5 +1,49 @@ 2020-04-17 Devin Rousso +Web Inspector: REGRESSION(r242018): using `RegExp.prototype.test` with a global `RegExp` will ignore one potential match after each successful match +https://bugs.webkit.org/show_bug.cgi?id=210671 + +Reviewed by Timothy Hatcher. + +* UserInterface/Base/SearchUtilities.js: +(WI.SearchUtilities.searchRegExpForString): +(WI.SearchUtilities.filterRegExpForString): +(WI.SearchUtilities._regExpForString): +(WI.SearchUtilities.regExpForString): Deleted. +Many uses of `WI.SearchUtilities.regExpForString` use the returned `RegExp` multiple times, +expecting each use to be done in isolation from every other use (e.g. filtering). In these +cases, the global flag `g` should not be set on the `RegExp`, as otherwise it will keep a +state of the last matched index, thereby breaking this isolation. As such, it is necessary +to split `WI.SearchUtilities.regExpForString` into two versions, one for each use case. + +* UserInterface/Views/DOMTreeElement.js: +(WI.DOMTreeElement.prototype._highlightSearchResults): +* UserInterface/Views/LogContentView.js: +(WI.LogContentView.prototype.performSearch): +* UserInterface/Views/ResourceHeadersContentView.js: +(WI.ResourceHeadersContentView.prototype._perfomSearchOnKeyValuePairs): +* UserInterface/Views/ResourceSecurityContentView.js: +
[webkit-changes] [260290] trunk/Source
Title: [260290] trunk/Source Revision 260290 Author ddkil...@apple.com Date 2020-04-17 15:08:31 -0700 (Fri, 17 Apr 2020) Log Message REGRESSION (r234105): [iOS] WKColorButton leaks a UIColor Reviewed by Darin Adler. Source/WebCore: * html/ColorInputType.cpp: (WebCore::ColorInputType::isKeyboardFocusable const): * page/Chrome.cpp: (WebCore::Chrome::createColorChooser): - Drive-by fix of unreachable code on PLATFORM(IOS_FAMILY). Source/WebKit: * UIProcess/ios/forms/WKFormColorPicker.mm: (-[WKColorButton dealloc]): Add. - Release _color instance variable to fix leak. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/ColorInputType.cpp trunk/Source/WebCore/page/Chrome.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/forms/WKFormColorPicker.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260289 => 260290) --- trunk/Source/WebCore/ChangeLog 2020-04-17 21:48:21 UTC (rev 260289) +++ trunk/Source/WebCore/ChangeLog 2020-04-17 22:08:31 UTC (rev 260290) @@ -1,3 +1,17 @@ +2020-04-17 David Kilzer + +REGRESSION (r234105): [iOS] WKColorButton leaks a UIColor + + + +Reviewed by Darin Adler. + +* html/ColorInputType.cpp: +(WebCore::ColorInputType::isKeyboardFocusable const): +* page/Chrome.cpp: +(WebCore::Chrome::createColorChooser): +- Drive-by fix of unreachable code on PLATFORM(IOS_FAMILY). + 2020-04-17 Don Olmstead [CMake] Add WebKit::WebCore target Modified: trunk/Source/WebCore/html/ColorInputType.cpp (260289 => 260290) --- trunk/Source/WebCore/html/ColorInputType.cpp 2020-04-17 21:48:21 UTC (rev 260289) +++ trunk/Source/WebCore/html/ColorInputType.cpp 2020-04-17 22:08:31 UTC (rev 260290) @@ -94,8 +94,9 @@ return false; return element()->isTextFormControlFocusable(); +#else +return false; #endif -return false; } bool ColorInputType::isColorControl() const Modified: trunk/Source/WebCore/page/Chrome.cpp (260289 => 260290) --- trunk/Source/WebCore/page/Chrome.cpp 2020-04-17 21:48:21 UTC (rev 260289) +++ trunk/Source/WebCore/page/Chrome.cpp 2020-04-17 22:08:31 UTC (rev 260290) @@ -421,10 +421,13 @@ std::unique_ptr Chrome::createColorChooser(ColorChooserClient& client, const Color& initialColor) { #if PLATFORM(IOS_FAMILY) +UNUSED_PARAM(client); +UNUSED_PARAM(initialColor); return nullptr; -#endif +#else notifyPopupOpeningObservers(); return m_client.createColorChooser(client, initialColor); +#endif } #endif Modified: trunk/Source/WebKit/ChangeLog (260289 => 260290) --- trunk/Source/WebKit/ChangeLog 2020-04-17 21:48:21 UTC (rev 260289) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 22:08:31 UTC (rev 260290) @@ -1,3 +1,15 @@ +2020-04-17 David Kilzer + +REGRESSION (r234105): [iOS] WKColorButton leaks a UIColor + + + +Reviewed by Darin Adler. + +* UIProcess/ios/forms/WKFormColorPicker.mm: +(-[WKColorButton dealloc]): Add. +- Release _color instance variable to fix leak. + 2020-04-17 Per Arne Vollan [iOS] Deny iokit open access of unused class in the WebContent sandbox Modified: trunk/Source/WebKit/UIProcess/ios/forms/WKFormColorPicker.mm (260289 => 260290) --- trunk/Source/WebKit/UIProcess/ios/forms/WKFormColorPicker.mm 2020-04-17 21:48:21 UTC (rev 260289) +++ trunk/Source/WebKit/UIProcess/ios/forms/WKFormColorPicker.mm 2020-04-17 22:08:31 UTC (rev 260290) @@ -75,6 +75,14 @@ return colorButton; } +- (void)dealloc +{ +[_color release]; +_color = nil; + +[super dealloc]; +} + @end #pragma mark - WKColorMatrixView ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260289] trunk
Title: [260289] trunk Revision 260289 Author sbar...@apple.com Date 2020-04-17 14:48:21 -0700 (Fri, 17 Apr 2020) Log Message GetTypedArrayByteOffset is broken on arm64e https://bugs.webkit.org/show_bug.cgi?id=210631 Reviewed by Mark Lam. JSTests: * stress/byte-offset-on-wasteful-neutered-arm64e.js: Added. (foo): (assert): (transferArrayBuffer.array.buffer): Source/_javascript_Core: The vector of JSArrayBufferView is signed even when null on arm64e. However, we were comparing against zero, which is wrong. This patch changes it so we do the right thing and instead compare against whatever constant (ptr=nullptr,size=0) signs as. * dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::compileGetTypedArrayByteOffset): * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileGetTypedArrayByteOffset): * runtime/CagedBarrierPtr.h: (JSC::CagedBarrierPtr::rawBits const): * runtime/JSArrayBufferView.h: (JSC::JSArrayBufferView::nullVectorPtr): Source/WTF: * wtf/CagedPtr.h: (WTF::CagedPtr::rawBits const): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp trunk/Source/_javascript_Core/runtime/CagedBarrierPtr.h trunk/Source/_javascript_Core/runtime/JSArrayBufferView.h trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/CagedPtr.h Added Paths trunk/JSTests/stress/byte-offset-on-wasteful-neutered-arm64e.js Diff Modified: trunk/JSTests/ChangeLog (260288 => 260289) --- trunk/JSTests/ChangeLog 2020-04-17 21:34:43 UTC (rev 260288) +++ trunk/JSTests/ChangeLog 2020-04-17 21:48:21 UTC (rev 260289) @@ -1,3 +1,15 @@ +2020-04-17 Saam Barati + +GetTypedArrayByteOffset is broken on arm64e +https://bugs.webkit.org/show_bug.cgi?id=210631 + +Reviewed by Mark Lam. + +* stress/byte-offset-on-wasteful-neutered-arm64e.js: Added. +(foo): +(assert): +(transferArrayBuffer.array.buffer): + 2020-04-17 Devin Rousso Rename NullishEq / NULLISHEQUAL to CoalesceEq / COALESCEEQUAL to match the spec Added: trunk/JSTests/stress/byte-offset-on-wasteful-neutered-arm64e.js (0 => 260289) --- trunk/JSTests/stress/byte-offset-on-wasteful-neutered-arm64e.js (rev 0) +++ trunk/JSTests/stress/byte-offset-on-wasteful-neutered-arm64e.js 2020-04-17 21:48:21 UTC (rev 260289) @@ -0,0 +1,21 @@ +function foo(o) { +return o.byteOffset; +} +noInline(foo); + +function assert(b) { +if (!b) +throw new Error; +} + +var array = new Int8Array(new ArrayBuffer(100)); + +for (let i = 0; i < 1000; ++i) { +assert(foo(array) === 0); +} + +transferArrayBuffer(array.buffer) + +for (let i = 0; i < 1; ++i) { +assert(foo(array) === 0); +} Modified: trunk/Source/_javascript_Core/ChangeLog (260288 => 260289) --- trunk/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:43 UTC (rev 260288) +++ trunk/Source/_javascript_Core/ChangeLog 2020-04-17 21:48:21 UTC (rev 260289) @@ -1,3 +1,23 @@ +2020-04-17 Saam Barati + +GetTypedArrayByteOffset is broken on arm64e +https://bugs.webkit.org/show_bug.cgi?id=210631 + +Reviewed by Mark Lam. + +The vector of JSArrayBufferView is signed even when null on arm64e. However, we were +comparing against zero, which is wrong. This patch changes it so we do the right thing +and instead compare against whatever constant (ptr=nullptr,size=0) signs as. + +* dfg/DFGSpeculativeJIT.cpp: +(JSC::DFG::SpeculativeJIT::compileGetTypedArrayByteOffset): +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetTypedArrayByteOffset): +* runtime/CagedBarrierPtr.h: +(JSC::CagedBarrierPtr::rawBits const): +* runtime/JSArrayBufferView.h: +(JSC::JSArrayBufferView::nullVectorPtr): + 2020-04-17 Yusuke Suzuki [JSC] We do not need to have exit-check for Map/Set iterator functions Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (260288 => 260289) --- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2020-04-17 21:34:43 UTC (rev 260288) +++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2020-04-17 21:48:21 UTC (rev 260289) @@ -6906,9 +6906,7 @@ m_jit.loadPtr(MacroAssembler::Address(baseGPR, JSArrayBufferView::offsetOfVector()), vectorGPR); -// FIXME: This should mask the PAC bits -// https://bugs.webkit.org/show_bug.cgi?id=197701 -JITCompiler::Jump nullVector = m_jit.branchTestPtr(JITCompiler::Zero, vectorGPR); +JITCompiler::Jump nullVector = m_jit.branchPtr(JITCompiler::Equal, vectorGPR, TrustedImmPtr(JSArrayBufferView::nullVectorPtr())); m_jit.loadPtr(MacroAssembler::Address(baseGPR, JSObject::butterflyOffset()), dataGPR); m_jit.cageWithoutUntagging(Gigacage::JSValue, dataGPR); @@ -6927,11 +6925,17 @@ JITCompiler::Jump done = m_jit.jump(); +#if CPU(ARM64E) +
[webkit-changes] [260285] branches/safari-609-branch/Source/JavaScriptCore
Title: [260285] branches/safari-609-branch/Source/_javascript_Core Revision 260285 Author alanc...@apple.com Date 2020-04-17 14:34:32 -0700 (Fri, 17 Apr 2020) Log Message Cherry-pick r259572. rdar://problem/61943713 [JSC] Put ensureStillAliveHere for Integer TypedArrays in GetByVal https://bugs.webkit.org/show_bug.cgi?id=210047 Reviewed by Mark Lam. While r258381 puts ensureStillAliveHere in FTL to keep base alive for float/double TypedArrays, we need to do the same thing for integer TypedArrays too. This patch places it. * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259572 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-609-branch/Source/_javascript_Core/ChangeLog branches/safari-609-branch/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp Diff Modified: branches/safari-609-branch/Source/_javascript_Core/ChangeLog (260284 => 260285) --- branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:29:48 UTC (rev 260284) +++ branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:32 UTC (rev 260285) @@ -1,3 +1,33 @@ +2020-04-17 Alan Coon + +Cherry-pick r259572. rdar://problem/61943713 + +[JSC] Put ensureStillAliveHere for Integer TypedArrays in GetByVal +https://bugs.webkit.org/show_bug.cgi?id=210047 + +Reviewed by Mark Lam. + +While r258381 puts ensureStillAliveHere in FTL to keep base alive for float/double TypedArrays, +we need to do the same thing for integer TypedArrays too. This patch places it. + +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259572 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2020-04-06 Yusuke Suzuki + +[JSC] Put ensureStillAliveHere for Integer TypedArrays in GetByVal +https://bugs.webkit.org/show_bug.cgi?id=210047 + +Reviewed by Mark Lam. + +While r258381 puts ensureStillAliveHere in FTL to keep base alive for float/double TypedArrays, +we need to do the same thing for integer TypedArrays too. This patch places it. + +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): + 2020-04-06 Alan Coon Cherry-pick r259424. rdar://problem/61352472 Modified: branches/safari-609-branch/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp (260284 => 260285) --- branches/safari-609-branch/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp 2020-04-17 21:29:48 UTC (rev 260284) +++ branches/safari-609-branch/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp 2020-04-17 21:34:32 UTC (rev 260285) @@ -4645,6 +4645,8 @@ if (isInt(type)) { LValue result = loadFromIntTypedArray(pointer, type); +// We have to keep base alive since that keeps storage alive. +ensureStillAliveHere(base); bool canSpeculate = true; setIntTypedArrayLoadResult(result, type, canSpeculate); return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260286] branches/safari-609-branch/Source/JavaScriptCore
Title: [260286] branches/safari-609-branch/Source/_javascript_Core Revision 260286 Author alanc...@apple.com Date 2020-04-17 14:34:36 -0700 (Fri, 17 Apr 2020) Log Message Cherry-pick r260180. rdar://problem/61943707 [JSC] Use ensureStillAliveHere in FTL when content of storage should be kept alive https://bugs.webkit.org/show_bug.cgi?id=210583 Reviewed by Mark Lam. The content of Butterfly / ArrayStorage is kept alive only when the owner JSCell is alive. This means that we should keep the owner JSCell alive if we are loading content of storage which includes JSCells. This patch inserts ensureStillAliveHere in FTL to ensure this invariant. * ftl/FTLJITCode.cpp: (JSC::FTL::JITCode::~JITCode): Found that we get crash with `dumpDisassembly` if FTL::JITCode is destroyed while it fails to generate code while testing this. * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): (JSC::FTL::DFG::LowerDFGToB3::compileArrayIndexOf): (JSC::FTL::DFG::LowerDFGToB3::compileArrayPop): (JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt): (JSC::FTL::DFG::LowerDFGToB3::compileStringCharCodeAt): (JSC::FTL::DFG::LowerDFGToB3::compileStringCodePointAt): (JSC::FTL::DFG::LowerDFGToB3::compileGetByOffset): (JSC::FTL::DFG::LowerDFGToB3::compileMultiGetByOffset): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260180 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-609-branch/Source/_javascript_Core/ChangeLog branches/safari-609-branch/Source/_javascript_Core/ftl/FTLJITCode.cpp branches/safari-609-branch/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp Diff Modified: branches/safari-609-branch/Source/_javascript_Core/ChangeLog (260285 => 260286) --- branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:32 UTC (rev 260285) +++ branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:36 UTC (rev 260286) @@ -1,5 +1,57 @@ 2020-04-17 Alan Coon +Cherry-pick r260180. rdar://problem/61943707 + +[JSC] Use ensureStillAliveHere in FTL when content of storage should be kept alive +https://bugs.webkit.org/show_bug.cgi?id=210583 + + +Reviewed by Mark Lam. + +The content of Butterfly / ArrayStorage is kept alive only when the owner JSCell is alive. +This means that we should keep the owner JSCell alive if we are loading content of storage +which includes JSCells. This patch inserts ensureStillAliveHere in FTL to ensure this invariant. + +* ftl/FTLJITCode.cpp: +(JSC::FTL::JITCode::~JITCode): Found that we get crash with `dumpDisassembly` if FTL::JITCode is destroyed while it fails to generate code while testing this. +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): +(JSC::FTL::DFG::LowerDFGToB3::compileArrayIndexOf): +(JSC::FTL::DFG::LowerDFGToB3::compileArrayPop): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCharCodeAt): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCodePointAt): +(JSC::FTL::DFG::LowerDFGToB3::compileGetByOffset): +(JSC::FTL::DFG::LowerDFGToB3::compileMultiGetByOffset): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260180 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2020-04-15 Yusuke Suzuki + +[JSC] Use ensureStillAliveHere in FTL when content of storage should be kept alive +https://bugs.webkit.org/show_bug.cgi?id=210583 + + +Reviewed by Mark Lam. + +The content of Butterfly / ArrayStorage is kept alive only when the owner JSCell is alive. +This means that we should keep the owner JSCell alive if we are loading content of storage +which includes JSCells. This patch inserts ensureStillAliveHere in FTL to ensure this invariant. + +* ftl/FTLJITCode.cpp: +(JSC::FTL::JITCode::~JITCode): Found that we get crash with `dumpDisassembly` if FTL::JITCode is destroyed while it fails to generate code while testing this. +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal): +(JSC::FTL::DFG::LowerDFGToB3::compileArrayIndexOf): +(JSC::FTL::DFG::LowerDFGToB3::compileArrayPop): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCharCodeAt): +(JSC::FTL::DFG::LowerDFGToB3::compileStringCodePointAt): +(JSC::FTL::DFG::LowerDFGToB3::compileGetByOffset): +(JSC::FTL::DFG::LowerDFGToB3::compileMultiGetByOffset): + +2020-04-17 Alan Coon + Cherry-pick r259572. rdar://problem/61943713 [JSC] Put ensureStillAliveHere for Integer TypedArrays in GetByVal Modified: branches/safari-609-branch/Source/_javascript_Core/ftl/FTLJITCode.cpp (260285 => 260286) ---
[webkit-changes] [260288] branches/safari-609-branch
Title: [260288] branches/safari-609-branch Revision 260288 Author alanc...@apple.com Date 2020-04-17 14:34:43 -0700 (Fri, 17 Apr 2020) Log Message Cherry-pick r260278. rdar://problem/61950220 Bring Fullscreen API + alert() behavior from iOS to macOS https://bugs.webkit.org/show_bug.cgi?id=210662 Reviewed by Eric Carlson. Source/WebKit: When a page is showing an alert(), all non-synchronous messages will be blocked until the sync XPC for alert() ends. And when exiting fullscreen, we block completing the fullscreen exit animation until a repaint XPC completes. So a page that is showing an alert() will never fully exit element fullscreen mode. On iOS, we fixed this behavior by exiting fullscreen mode whenever the page shows an alert() or prompt(). We should bring this behavior to macOS as well. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::runJavaScriptAlert): (WebKit::WebPageProxy::runJavaScriptConfirm): (WebKit::WebPageProxy::runJavaScriptPrompt): Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm: Added. (TestWebKitAPI::TEST): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260278 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-609-branch/Source/WebKit/ChangeLog branches/safari-609-branch/Source/WebKit/UIProcess/WebPageProxy.cpp branches/safari-609-branch/Tools/ChangeLog branches/safari-609-branch/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths branches/safari-609-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm Diff Modified: branches/safari-609-branch/Source/WebKit/ChangeLog (260287 => 260288) --- branches/safari-609-branch/Source/WebKit/ChangeLog 2020-04-17 21:34:39 UTC (rev 260287) +++ branches/safari-609-branch/Source/WebKit/ChangeLog 2020-04-17 21:34:43 UTC (rev 260288) @@ -1,3 +1,54 @@ +2020-04-17 Alan Coon + +Cherry-pick r260278. rdar://problem/61950220 + +Bring Fullscreen API + alert() behavior from iOS to macOS +https://bugs.webkit.org/show_bug.cgi?id=210662 + +Reviewed by Eric Carlson. + +Source/WebKit: + +When a page is showing an alert(), all non-synchronous messages will be blocked until the sync XPC for alert() +ends. And when exiting fullscreen, we block completing the fullscreen exit animation until a repaint XPC completes. +So a page that is showing an alert() will never fully exit element fullscreen mode. + +On iOS, we fixed this behavior by exiting fullscreen mode whenever the page shows an alert() or prompt(). We should +bring this behavior to macOS as well. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::runJavaScriptAlert): +(WebKit::WebPageProxy::runJavaScriptConfirm): +(WebKit::WebPageProxy::runJavaScriptPrompt): + +Tools: + +* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: +* TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm: Added. +(TestWebKitAPI::TEST): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260278 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2020-04-17 Jer Noble + +Bring Fullscreen API + alert() behavior from iOS to macOS +https://bugs.webkit.org/show_bug.cgi?id=210662 + +Reviewed by Eric Carlson. + +When a page is showing an alert(), all non-synchronous messages will be blocked until the sync XPC for alert() +ends. And when exiting fullscreen, we block completing the fullscreen exit animation until a repaint XPC completes. +So a page that is showing an alert() will never fully exit element fullscreen mode. + +On iOS, we fixed this behavior by exiting fullscreen mode whenever the page shows an alert() or prompt(). We should +bring this behavior to macOS as well. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::runJavaScriptAlert): +(WebKit::WebPageProxy::runJavaScriptConfirm): +(WebKit::WebPageProxy::runJavaScriptPrompt): + 2020-04-16 Alan Coon Cherry-pick r259814. rdar://problem/61888315 Modified: branches/safari-609-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (260287 => 260288) --- branches/safari-609-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-17 21:34:39 UTC (rev 260287) +++ branches/safari-609-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-17 21:34:43 UTC (rev 260288) @@ -5444,9 +5444,7 @@ WebFrameProxy* frame = m_process->webFrame(frameID); MESSAGE_CHECK(m_process, frame); -#if PLATFORM(IOS_FAMILY) exitFullscreenImmediately(); -#endif // Since runJavaScriptAlert() can spin a nested run loop we need to turn off the responsiveness timer. m_process->stopResponsivenessTimer(); @@ -5463,9 +5461,7 @@ WebFrameProxy* frame =
[webkit-changes] [260287] branches/safari-609-branch/Source/JavaScriptCore
Title: [260287] branches/safari-609-branch/Source/_javascript_Core Revision 260287 Author alanc...@apple.com Date 2020-04-17 14:34:39 -0700 (Fri, 17 Apr 2020) Log Message Cherry-pick r260246. rdar://problem/61943700 offlineasm is generating the wrong load/store for the "orh" instruction. https://bugs.webkit.org/show_bug.cgi?id=210639 Reviewed by Robin Morisset. For example, on ARM64E, the "orh" instruction was generating the following: "\tldr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 "\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 "\tstr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 i.e. a 32-bit load, followed by a 32-bit OR, followed by a 32-bit store. Instead, it should be generating the following: "\tldrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 "\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 "\tstrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 i.e. a 16-bit load, followed by a 32-bit OR, followed by a 16-bit store. This bug also affects ARM64, ARMv7, and MIPS (basically any backend that uses riscLowerMisplacedAddresses() from rise.rb). It does not affect x86, x86_64, and C_LOOP (which was written based on x86). * offlineasm/risc.rb: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260246 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-609-branch/Source/_javascript_Core/ChangeLog branches/safari-609-branch/Source/_javascript_Core/offlineasm/risc.rb Diff Modified: branches/safari-609-branch/Source/_javascript_Core/ChangeLog (260286 => 260287) --- branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:36 UTC (rev 260286) +++ branches/safari-609-branch/Source/_javascript_Core/ChangeLog 2020-04-17 21:34:39 UTC (rev 260287) @@ -1,5 +1,71 @@ 2020-04-17 Alan Coon +Cherry-pick r260246. rdar://problem/61943700 + +offlineasm is generating the wrong load/store for the "orh" instruction. +https://bugs.webkit.org/show_bug.cgi?id=210639 + + +Reviewed by Robin Morisset. + +For example, on ARM64E, the "orh" instruction was generating the following: + +"\tldr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\tstr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 + +i.e. a 32-bit load, followed by a 32-bit OR, followed by a 32-bit store. + +Instead, it should be generating the following: + +"\tldrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\tstrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 + +i.e. a 16-bit load, followed by a 32-bit OR, followed by a 16-bit store. + +This bug also affects ARM64, ARMv7, and MIPS (basically any backend that uses +riscLowerMisplacedAddresses() from rise.rb). It does not affect x86, x86_64, and +C_LOOP (which was written based on x86). + +* offlineasm/risc.rb: + + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260246 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2020-04-17 Mark Lam + +offlineasm is generating the wrong load/store for the "orh" instruction. +https://bugs.webkit.org/show_bug.cgi?id=210639 + + +Reviewed by Robin Morisset. + +For example, on ARM64E, the "orh" instruction was generating the following: + +"\tldr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\tstr w17, [x1, #0]\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 + +i.e. a 32-bit load, followed by a 32-bit OR, followed by a 32-bit store. + +Instead, it should be generating the following: + +"\tldrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\torr w17, w17, #64\n" // _javascript_Core/llint/LowLevelInterpreter64.asm:919 +"\tstrh w17, [x1, #0]\n"// _javascript_Core/llint/LowLevelInterpreter64.asm:919 + +i.e. a 16-bit load, followed by a 32-bit OR, followed by a 16-bit store. + +This bug also affects ARM64, ARMv7, and MIPS (basically any backend that uses +riscLowerMisplacedAddresses() from rise.rb). It does not affect x86, x86_64, and +C_LOOP (which was written based on x86). +
[webkit-changes] [260284] trunk/Source/WebKit
Title: [260284] trunk/Source/WebKit Revision 260284 Author pvol...@apple.com Date 2020-04-17 14:29:48 -0700 (Fri, 17 Apr 2020) Log Message [iOS] Deny iokit open access of unused class in the WebContent sandbox https://bugs.webkit.org/show_bug.cgi?id=210669 Reviewed by Brent Fulgham. Telemetry shows that iokit open access of an iokit class can be removed from the WebContent sandbox. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb Diff Modified: trunk/Source/WebKit/ChangeLog (260283 => 260284) --- trunk/Source/WebKit/ChangeLog 2020-04-17 21:20:25 UTC (rev 260283) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 21:29:48 UTC (rev 260284) @@ -1,3 +1,14 @@ +2020-04-17 Per Arne Vollan + +[iOS] Deny iokit open access of unused class in the WebContent sandbox +https://bugs.webkit.org/show_bug.cgi?id=210669 + +Reviewed by Brent Fulgham. + +Telemetry shows that iokit open access of an iokit class can be removed from the WebContent sandbox. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: + 2020-04-17 Chris Dumez [iOS] Refactor WebKit uploads process assertion logic to minimize chances of leaking them Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb (260283 => 260284) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb 2020-04-17 21:20:25 UTC (rev 260283) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb 2020-04-17 21:29:48 UTC (rev 260284) @@ -375,8 +375,7 @@ (global-name "com.apple.CARenderServer")) ; UIKit-required IOKit nodes. -(allow iokit-open (with report) (with telemetry) -(iokit-user-client-class "AppleJPEGDriverUserClient") +(deny iokit-open (with telemetry-backtrace) (iokit-user-client-class "IOSurfaceSendRight") ) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260282] trunk/Tools
Title: [260282] trunk/Tools Revision 260282 Author bfulg...@apple.com Date 2020-04-17 14:19:49 -0700 (Fri, 17 Apr 2020) Log Message Unreviewed build fix after r260269. * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: (TEST): Correct argument order. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm Diff Modified: trunk/Tools/ChangeLog (260281 => 260282) --- trunk/Tools/ChangeLog 2020-04-17 21:13:37 UTC (rev 260281) +++ trunk/Tools/ChangeLog 2020-04-17 21:19:49 UTC (rev 260282) @@ -1,3 +1,10 @@ +2020-04-17 Brent Fulgham + +Unreviewed build fix after r260269. + +* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: +(TEST): Correct argument order. + 2020-04-17 Jer Noble Bring Fullscreen API + alert() behavior from iOS to macOS Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm (260281 => 260282) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm 2020-04-17 21:13:37 UTC (rev 260281) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm 2020-04-17 21:19:49 UTC (rev 260282) @@ -375,7 +375,7 @@ [webView _test_waitForDidFinishNavigation]; RetainPtr<_WKUserContentWorld> world = [_WKUserContentWorld worldWithName:@"TestWorld"]; -RetainPtr<_WKUserStyleSheet> styleSheet = adoptNS([[_WKUserStyleSheet alloc] initWithSource:styleSheetSource forWKWebView:webView.get() level:_WKUserStyleUserLevel forMainFrameOnly:YES userContentWorld:world.get()]); +RetainPtr<_WKUserStyleSheet> styleSheet = adoptNS([[_WKUserStyleSheet alloc] initWithSource:styleSheetSource forWKWebView:webView.get() forMainFrameOnly:YES level:_WKUserStyleUserLevel userContentWorld:world.get()]); [[configuration userContentController] _addUserStyleSheet:styleSheet.get()]; expectScriptEvaluatesToColor(webView.get(), backgroundColorScript, redInRGB); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260283] trunk/Source/WebKit
Title: [260283] trunk/Source/WebKit Revision 260283 Author cdu...@apple.com Date 2020-04-17 14:20:25 -0700 (Fri, 17 Apr 2020) Log Message [iOS] Refactor WebKit uploads process assertion logic to minimize chances of leaking them https://bugs.webkit.org/show_bug.cgi?id=210664 Reviewed by Geoff Garen. To minimize chances of leaking "WebKit uploads" process assertion, the following refactoring was done: 1. WebKit upload assertions are now held by NetworkProcessProxy instead of the WebProcessPool. This makes more sense since uploads are tied to a particular network process. In base of a network process crash, we would not want those assertions to persist for example. 2. Store all upload assertions (UIProcess + NetworkProcess + WebProcesses) into a single UploadActivity data structure that can easily be cleared. Make sure we clear it on network process crash. 3. No longer on the WebProcess to send IPC whenever its has pending uploads or not. Instead, have the network process send such IPC. This makes more sense, especially now that all webkit upload process assertions are now stored on NetworkProcessProxy. It also makes it so that we deal properly with WebProcess crashes. In case of a WebProcess crash, its connection to the network process will get closed. NetworkConnectionToWebProcess::didClose() gets called and causes all NetworkResourceLoader objects for this connection to get destroyed. As a result, the network process will properly notify the UIProcess that this process no longer has any upload in progress. * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess): (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess): (WebKit::NetworkConnectionToWebProcess::hasUploadStateChanged): * NetworkProcess/NetworkConnectionToWebProcess.h: * NetworkProcess/NetworkResourceLoadMap.cpp: (WebKit::NetworkResourceLoadMap::NetworkResourceLoadMap): (WebKit::NetworkResourceLoadMap::~NetworkResourceLoadMap): (WebKit::NetworkResourceLoadMap::add): (WebKit::NetworkResourceLoadMap::clear): (WebKit::NetworkResourceLoadMap::take): (WebKit::NetworkResourceLoadMap::setHasUpload): * NetworkProcess/NetworkResourceLoadMap.h: (WebKit::NetworkResourceLoadMap::hasUpload const): * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::didClose): (WebKit::NetworkProcessProxy::setWebProcessHasUploads): * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/Network/NetworkProcessProxy.messages.in: * UIProcess/ProcessAssertion.cpp: (WebKit::ProcessAssertion::ProcessAssertion): * UIProcess/ProcessAssertion.h: (WebKit::ProcessAssertion::pid const): * UIProcess/WebProcessPool.cpp: * UIProcess/WebProcessPool.h: * UIProcess/WebProcessPool.messages.in: * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::~WebProcessProxy): * UIProcess/WebProcessProxy.h: * WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess): (WebKit::WebLoaderStrategy::remove): (WebKit::WebLoaderStrategy::loadResourceSynchronously): * WebProcess/Network/WebLoaderStrategy.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadMap.cpp trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadMap.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.messages.in trunk/Source/WebKit/UIProcess/ProcessAssertion.cpp trunk/Source/WebKit/UIProcess/ProcessAssertion.h trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebProcessPool.h trunk/Source/WebKit/UIProcess/WebProcessPool.messages.in trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp trunk/Source/WebKit/UIProcess/WebProcessProxy.h trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.h Diff Modified: trunk/Source/WebKit/ChangeLog (260282 => 260283) --- trunk/Source/WebKit/ChangeLog 2020-04-17 21:19:49 UTC (rev 260282) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 21:20:25 UTC (rev 260283) @@ -1,3 +1,63 @@ +2020-04-17 Chris Dumez + +[iOS] Refactor WebKit uploads process assertion logic to minimize chances of leaking them +https://bugs.webkit.org/show_bug.cgi?id=210664 + + +Reviewed by Geoff Garen. + +To minimize chances of leaking "WebKit uploads" process assertion, the following refactoring +was done: +1. WebKit upload assertions are now held by NetworkProcessProxy instead of the WebProcessPool. + This makes more sense since uploads are tied to a particular network process. In base of + a network process crash, we would not want those assertions to persist for
[webkit-changes] [260281] branches/safari-609-branch/Tools
Title: [260281] branches/safari-609-branch/Tools Revision 260281 Author ryanhad...@apple.com Date 2020-04-17 14:13:37 -0700 (Fri, 17 Apr 2020) Log Message Cherry-pick r258385. rdar://problem/61948294 Pull in JS tests from "Internal" when there are "Internal" tests in an adjacent directory https://bugs.webkit.org/show_bug.cgi?id=209038 Reviewed by Keith Miller. This allows us to automatically pull in some tests that are in non open sourced Apple checkouts. * Scripts/run-_javascript_core-tests: (runJSCStressTests): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258385 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-609-branch/Tools/ChangeLog branches/safari-609-branch/Tools/Scripts/run-_javascript_core-tests Diff Modified: branches/safari-609-branch/Tools/ChangeLog (260280 => 260281) --- branches/safari-609-branch/Tools/ChangeLog 2020-04-17 21:05:58 UTC (rev 260280) +++ branches/safari-609-branch/Tools/ChangeLog 2020-04-17 21:13:37 UTC (rev 260281) @@ -1,3 +1,34 @@ +2020-04-17 Ryan Haddad + +Cherry-pick r258385. rdar://problem/61948294 + +Pull in JS tests from "Internal" when there are "Internal" tests in an adjacent directory +https://bugs.webkit.org/show_bug.cgi?id=209038 + +Reviewed by Keith Miller. + +This allows us to automatically pull in some tests that are in non open sourced Apple +checkouts. + +* Scripts/run-_javascript_core-tests: +(runJSCStressTests): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258385 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2020-03-13 Saam Barati + +Pull in JS tests from "Internal" when there are "Internal" tests in an adjacent directory +https://bugs.webkit.org/show_bug.cgi?id=209038 + +Reviewed by Keith Miller. + +This allows us to automatically pull in some tests that are in non open sourced Apple +checkouts. + +* Scripts/run-_javascript_core-tests: +(runJSCStressTests): + 2020-04-10 Ryan Haddad Cherry-pick r259099. rdar://problem/59610140 Modified: branches/safari-609-branch/Tools/Scripts/run-_javascript_core-tests (260280 => 260281) --- branches/safari-609-branch/Tools/Scripts/run-_javascript_core-tests 2020-04-17 21:05:58 UTC (rev 260280) +++ branches/safari-609-branch/Tools/Scripts/run-_javascript_core-tests 2020-04-17 21:13:37 UTC (rev 260281) @@ -685,6 +685,13 @@ "JSTests/complex.yaml", "JSTests/ChakraCore.yaml", "JSTests/wasm.yaml"); + +my $internalTestsDir = File::Spec->catdir(dirname(sourceDir()), "Internal", "Tests", "InternalJSTests"); +if (-e $internalTestsDir and -d $internalTestsDir) { +push(@testList, File::Spec->catfile($internalTestsDir, "internal-js-tests.yaml")); +push(@testList, File::Spec->catfile($internalTestsDir, "regress.yaml")); +} + $hasTestsToRun = 1; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260280] branches/safari-609-branch/Source
Title: [260280] branches/safari-609-branch/Source Revision 260280 Author alanc...@apple.com Date 2020-04-17 14:05:58 -0700 (Fri, 17 Apr 2020) Log Message Versioning. Modified Paths branches/safari-609-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-609-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-609-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-609-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-609-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-609-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-609-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-609-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-609-branch/Source/_javascript_Core/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/WebCore/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -1,6 +1,6 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/WebKit/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/WebKit/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++ branches/safari-609-branch/Source/WebKit/Configurations/Version.xcconfig 2020-04-17 21:05:58 UTC (rev 260280) @@ -23,7 +23,7 @@ MAJOR_VERSION = 609; MINOR_VERSION = 2; -TINY_VERSION = 7; +TINY_VERSION = 8; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-609-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig (260279 => 260280) --- branches/safari-609-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2020-04-17 21:03:05 UTC (rev 260279) +++
[webkit-changes] [260279] trunk/Source/JavaScriptCore
Title: [260279] trunk/Source/_javascript_Core Revision 260279 Author ysuz...@apple.com Date 2020-04-17 14:03:05 -0700 (Fri, 17 Apr 2020) Log Message [JSC] We do not need to have exit-check for Map/Set iterator functions https://bugs.webkit.org/show_bug.cgi?id=210667 Reviewed by Michael Saboff. If the intrinsic's DFG node does not support general cases, we should check exit-frequency to avoid exit-recompile loop. However, Map/Set iterator creation functions (values, keys, entries) always require Map / Set types. And throwing an error when this is not met. So, the current DFG nodes for these intrinsic supports all the cases except for the case throwing an error, and error will exit anyway. So we do not need to have this exit-frequency guard here. This path is already tested by map-iterator-check-before-fail.js / set-iterator-check-before-fail.js. * dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::handleIntrinsicCall): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (260278 => 260279) --- trunk/Source/_javascript_Core/ChangeLog 2020-04-17 20:41:10 UTC (rev 260278) +++ trunk/Source/_javascript_Core/ChangeLog 2020-04-17 21:03:05 UTC (rev 260279) @@ -1,3 +1,20 @@ +2020-04-17 Yusuke Suzuki + +[JSC] We do not need to have exit-check for Map/Set iterator functions +https://bugs.webkit.org/show_bug.cgi?id=210667 + +Reviewed by Michael Saboff. + +If the intrinsic's DFG node does not support general cases, we should check exit-frequency to avoid exit-recompile loop. +However, Map/Set iterator creation functions (values, keys, entries) always require Map / Set types. And throwing an error +when this is not met. So, the current DFG nodes for these intrinsic supports all the cases except for the case throwing an +error, and error will exit anyway. So we do not need to have this exit-frequency guard here. + +This path is already tested by map-iterator-check-before-fail.js / set-iterator-check-before-fail.js. + +* dfg/DFGByteCodeParser.cpp: +(JSC::DFG::ByteCodeParser::handleIntrinsicCall): + 2020-04-17 Devin Rousso Rename NullishEq / NULLISHEQUAL to CoalesceEq / COALESCEEQUAL to match the spec Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (260278 => 260279) --- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2020-04-17 20:41:10 UTC (rev 260278) +++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2020-04-17 21:03:05 UTC (rev 260279) @@ -3188,9 +3188,6 @@ case JSMapValuesIntrinsic: case JSSetEntriesIntrinsic: case JSSetValuesIntrinsic: { -if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, BadCell) || m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, BadType)) -return false; - insertChecks(); IterationKind kind = IterationKind::Values; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260278] trunk
Title: [260278] trunk Revision 260278 Author jer.no...@apple.com Date 2020-04-17 13:41:10 -0700 (Fri, 17 Apr 2020) Log Message Bring Fullscreen API + alert() behavior from iOS to macOS https://bugs.webkit.org/show_bug.cgi?id=210662 Reviewed by Eric Carlson. Source/WebKit: When a page is showing an alert(), all non-synchronous messages will be blocked until the sync XPC for alert() ends. And when exiting fullscreen, we block completing the fullscreen exit animation until a repaint XPC completes. So a page that is showing an alert() will never fully exit element fullscreen mode. On iOS, we fixed this behavior by exiting fullscreen mode whenever the page shows an alert() or prompt(). We should bring this behavior to macOS as well. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::runJavaScriptAlert): (WebKit::WebPageProxy::runJavaScriptConfirm): (WebKit::WebPageProxy::runJavaScriptPrompt): Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm: Added. (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260277 => 260278) --- trunk/Source/WebKit/ChangeLog 2020-04-17 20:15:01 UTC (rev 260277) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 20:41:10 UTC (rev 260278) @@ -1,3 +1,22 @@ +2020-04-17 Jer Noble + +Bring Fullscreen API + alert() behavior from iOS to macOS +https://bugs.webkit.org/show_bug.cgi?id=210662 + +Reviewed by Eric Carlson. + +When a page is showing an alert(), all non-synchronous messages will be blocked until the sync XPC for alert() +ends. And when exiting fullscreen, we block completing the fullscreen exit animation until a repaint XPC completes. +So a page that is showing an alert() will never fully exit element fullscreen mode. + +On iOS, we fixed this behavior by exiting fullscreen mode whenever the page shows an alert() or prompt(). We should +bring this behavior to macOS as well. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::runJavaScriptAlert): +(WebKit::WebPageProxy::runJavaScriptConfirm): +(WebKit::WebPageProxy::runJavaScriptPrompt): + 2020-04-17 Don Olmstead [CMake] Add WebKit::WebCore target Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (260277 => 260278) --- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-17 20:15:01 UTC (rev 260277) +++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-17 20:41:10 UTC (rev 260278) @@ -5581,9 +5581,7 @@ WebFrameProxy* frame = m_process->webFrame(frameID); MESSAGE_CHECK(m_process, frame); -#if PLATFORM(IOS_FAMILY) exitFullscreenImmediately(); -#endif // Since runJavaScriptAlert() can spin a nested run loop we need to turn off the responsiveness timer. m_process->stopResponsivenessTimer(); @@ -5600,9 +5598,7 @@ WebFrameProxy* frame = m_process->webFrame(frameID); MESSAGE_CHECK(m_process, frame); -#if PLATFORM(IOS_FAMILY) exitFullscreenImmediately(); -#endif // Since runJavaScriptConfirm() can spin a nested run loop we need to turn off the responsiveness timer. m_process->stopResponsivenessTimer(); @@ -5620,9 +5616,8 @@ WebFrameProxy* frame = m_process->webFrame(frameID); MESSAGE_CHECK(m_process, frame); -#if PLATFORM(IOS_FAMILY) exitFullscreenImmediately(); -#endif + // Since runJavaScriptPrompt() can spin a nested run loop we need to turn off the responsiveness timer. m_process->stopResponsivenessTimer(); Modified: trunk/Tools/ChangeLog (260277 => 260278) --- trunk/Tools/ChangeLog 2020-04-17 20:15:01 UTC (rev 260277) +++ trunk/Tools/ChangeLog 2020-04-17 20:41:10 UTC (rev 260278) @@ -1,3 +1,14 @@ +2020-04-17 Jer Noble + +Bring Fullscreen API + alert() behavior from iOS to macOS +https://bugs.webkit.org/show_bug.cgi?id=210662 + +Reviewed by Eric Carlson. + +* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: +* TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm: Added. +(TestWebKitAPI::TEST): + 2020-04-17 Don Olmstead [CMake] Add WebKit::WebCore target Modified: trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (260277 => 260278) --- trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj 2020-04-17 20:15:01 UTC (rev 260277) +++ trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj 2020-04-17 20:41:10 UTC (rev 260278) @@ -977,6 +977,7 @@ CDC8E4971BC6F10800594FEC /* video-without-audio.mp4 in Copy Resources */ = {isa = PBXBuildFile; fileRef = CDC8E48C1BC5C96200594FEC /* video-without-audio.mp4 */; }; CDC9442E1EF1FC080059C3C4 /*
[webkit-changes] [260277] trunk
Title: [260277] trunk Revision 260277 Author don.olmst...@sony.com Date 2020-04-17 13:15:01 -0700 (Fri, 17 Apr 2020) Log Message [CMake] Add WebKit::WebCore target https://bugs.webkit.org/show_bug.cgi?id=210445 Reviewed by Michael Catanzaro. .: Add a target file for internal Apple Windows builds. * Source/cmake/target/WebCore.cmake: Added. Source/WebCore: Add a WebKit::WebCore target. Remove the WebCoreHeaderInterface target since the WebKit::WebCore target is functionaly the same. * CMakeLists.txt: Source/WebKit: Use the WebKit::WebCore target within the WebKit target. * CMakeLists.txt: * PlatformGTK.cmake: * PlatformWPE.cmake: * PlatformWin.cmake: Source/WebKitLegacy: Use the WebKit::WebCore target within WebKitLegacy. * CMakeLists.txt: * PlatformFTW.cmake: * PlatformWin.cmake: Tools: Use the WebKit::WebCore target within tests and developer tools. * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * MiniBrowser/wpe/CMakeLists.txt: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformGTK.cmake: * TestWebKitAPI/PlatformWPE.cmake: * TestWebKitAPI/PlatformWin.cmake: * TestWebKitAPI/glib/CMakeLists.txt: Modified Paths trunk/ChangeLog trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebKit/CMakeLists.txt trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/PlatformGTK.cmake trunk/Source/WebKit/PlatformWPE.cmake trunk/Source/WebKit/PlatformWin.cmake trunk/Source/WebKitLegacy/CMakeLists.txt trunk/Source/WebKitLegacy/ChangeLog trunk/Source/WebKitLegacy/PlatformFTW.cmake trunk/Source/WebKitLegacy/PlatformWin.cmake trunk/Tools/ChangeLog trunk/Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt trunk/Tools/MiniBrowser/wpe/CMakeLists.txt trunk/Tools/TestWebKitAPI/CMakeLists.txt trunk/Tools/TestWebKitAPI/PlatformGTK.cmake trunk/Tools/TestWebKitAPI/PlatformWPE.cmake trunk/Tools/TestWebKitAPI/PlatformWin.cmake trunk/Tools/TestWebKitAPI/glib/CMakeLists.txt Added Paths trunk/Source/cmake/target/WebCore.cmake Diff Modified: trunk/ChangeLog (260276 => 260277) --- trunk/ChangeLog 2020-04-17 20:04:59 UTC (rev 260276) +++ trunk/ChangeLog 2020-04-17 20:15:01 UTC (rev 260277) @@ -1,3 +1,14 @@ +2020-04-17 Don Olmstead + +[CMake] Add WebKit::WebCore target +https://bugs.webkit.org/show_bug.cgi?id=210445 + +Reviewed by Michael Catanzaro. + +Add a target file for internal Apple Windows builds. + +* Source/cmake/target/WebCore.cmake: Added. + 2020-04-16 Carlos Garcia Campos [GTK4] Disable netscape plugins API Modified: trunk/Source/WebCore/CMakeLists.txt (260276 => 260277) --- trunk/Source/WebCore/CMakeLists.txt 2020-04-17 20:04:59 UTC (rev 260276) +++ trunk/Source/WebCore/CMakeLists.txt 2020-04-17 20:15:01 UTC (rev 260277) @@ -1681,16 +1681,12 @@ set(WORKLETGLOBALSCOPE_CONSTRUCTORS_FILE ${WebCore_DERIVED_SOURCES_DIR}/WorkletGlobalScopeConstructors.idl) set(PAINTWORKLETGLOBALSCOPE_CONSTRUCTORS_FILE ${WebCore_DERIVED_SOURCES_DIR}/PaintWorkletGlobalScopeConstructors.idl) +set(WebCore_INTERFACE_LIBRARIES WebCore) +set(WebCore_INTERFACE_INCLUDE_DIRECTORIES ${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}) + WEBKIT_FRAMEWORK_DECLARE(WebCore) WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS() -WEBKIT_MAKE_FORWARDING_HEADERS(WebCore -TARGET_NAME WebCorePrivateFrameworkHeaders -DESTINATION ${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}/WebCore -FILES ${WebCore_PRIVATE_FRAMEWORK_HEADERS} -FLATTENED -) - # Generate CommandLineAPIModuleSource.h add_custom_command( OUTPUT ${WebCore_DERIVED_SOURCES_DIR}/CommandLineAPIModuleSource.h ${WebCore_DERIVED_SOURCES_DIR}/CommandLineAPIModuleSource.min.js @@ -1864,6 +1860,7 @@ --serviceWorkerGlobalScopeConstructorsFile ${SERVICEWORKERGLOBALSCOPE_CONSTRUCTORS_FILE} --workletGlobalScopeConstructorsFile ${WORKLETGLOBALSCOPE_CONSTRUCTORS_FILE} --paintWorkletGlobalScopeConstructorsFile ${PAINTWORKLETGLOBALSCOPE_CONSTRUCTORS_FILE}) +list(APPEND WebCore_DEPENDENCIES WebCoreBindings) GENERATE_BINDINGS(WebCoreTestSupportBindings OUTPUT_SOURCE WebCoreTestSupport_SOURCES @@ -2002,11 +1999,16 @@ WEBKIT_ADD_PRECOMPILED_HEADER("WebCorePrefix.h" "WebCorePrefix.cpp" WebCore_SOURCES) endif () +WEBKIT_COPY_FILES(WebCore_CopyPrivateHeaders +DESTINATION ${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}/WebCore +FILES ${WebCore_PRIVATE_FRAMEWORK_HEADERS} +FLATTENED +) +list(APPEND WebCore_INTERFACE_DEPENDENCIES WebCore_CopyPrivateHeaders) + WEBKIT_FRAMEWORK(WebCore) +WEBKIT_FRAMEWORK_TARGET(WebCore) -add_dependencies(WebCore WebCoreBindings) -add_dependencies(WebCorePrivateFrameworkHeaders WebCoreBindings) - if (APPLE) set_target_properties(WebCore PROPERTIES LINK_FLAGS "-sub_library libobjc -umbrella WebKit -allowable_client WebCoreTestSupport -allowable_client WebKit2 -allowable_client WebKitLegacy") endif () @@ -2019,15 +2021,6 @@ WEBKIT_ADD_TARGET_CXX_FLAGS(WebCore -fno-tree-sra) endif () -# Include paths of WebCore
[webkit-changes] [260276] trunk/Source/WebKit
Title: [260276] trunk/Source/WebKit Revision 260276 Author simon.fra...@apple.com Date 2020-04-17 13:04:59 -0700 (Fri, 17 Apr 2020) Log Message Turn async frame and overflow scrolling on by default on macOS https://bugs.webkit.org/show_bug.cgi?id=210661 rdar://problem/60420037 Reviewed by Tim Horton. Flip the plist value and the default value for macOS which is outside of the feature flag #ifdef. Testing keeps async overflow scrolling off by default, so this should not affect testing. This only impacts WebKit2. * FeatureFlags/WebKit.plist: * Shared/WebPreferencesDefaultValues.cpp: (WebKit::defaultAsyncFrameAndOverflowScrollingEnabled): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/FeatureFlags/WebKit.plist trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (260275 => 260276) --- trunk/Source/WebKit/ChangeLog 2020-04-17 19:46:55 UTC (rev 260275) +++ trunk/Source/WebKit/ChangeLog 2020-04-17 20:04:59 UTC (rev 260276) @@ -1,3 +1,21 @@ +2020-04-17 Simon Fraser + +Turn async frame and overflow scrolling on by default on macOS +https://bugs.webkit.org/show_bug.cgi?id=210661 +rdar://problem/60420037 + +Reviewed by Tim Horton. + +Flip the plist value and the default value for macOS which is outside of the feature flag #ifdef. + +Testing keeps async overflow scrolling off by default, so this should not affect testing. + +This only impacts WebKit2. + +* FeatureFlags/WebKit.plist: +* Shared/WebPreferencesDefaultValues.cpp: +(WebKit::defaultAsyncFrameAndOverflowScrollingEnabled): + 2020-04-17 Per Arne Vollan [iOS] Add telemetry to some mach lookup sandbox extensions Modified: trunk/Source/WebKit/FeatureFlags/WebKit.plist (260275 => 260276) --- trunk/Source/WebKit/FeatureFlags/WebKit.plist 2020-04-17 19:46:55 UTC (rev 260275) +++ trunk/Source/WebKit/FeatureFlags/WebKit.plist 2020-04-17 20:04:59 UTC (rev 260276) @@ -5,7 +5,7 @@ async_frame_and_overflow_scrolling Enabled - + canvas_and_media_in_gpu_process Modified: trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (260275 => 260276) --- trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2020-04-17 19:46:55 UTC (rev 260275) +++ trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2020-04-17 20:04:59 UTC (rev 260276) @@ -88,6 +88,10 @@ return os_feature_enabled(WebKit, async_frame_and_overflow_scrolling); #endif +#if PLATFORM(MAC) +return true; +#endif + return false; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260275] trunk
Title: [260275] trunk Revision 260275 Author drou...@apple.com Date 2020-04-17 12:46:55 -0700 (Fri, 17 Apr 2020) Log Message Rename NullishEq / NULLISHEQUAL to CoalesceEq / COALESCEEQUAL to match the spec https://bugs.webkit.org/show_bug.cgi?id=210663 Reviewed by Ross Kirsling. JSTests: * stress/logical-assignment-operator-coalesce.js: Renamed from stress/logical-assignment-operator-nullish.js. Source/_javascript_Core: * bytecompiler/NodesCodegen.cpp: (JSC::emitShortCircuitAssignment): * parser/ASTBuilder.h: (JSC::ASTBuilder::makeAssignNode): * parser/Lexer.cpp: (JSC::Lexer::lexWithoutClearingLineTerminator): * parser/Nodes.h: * parser/Parser.cpp: (JSC::Parser::parseAssignmentExpression): * parser/ParserTokens.h: Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp trunk/Source/_javascript_Core/parser/ASTBuilder.h trunk/Source/_javascript_Core/parser/Lexer.cpp trunk/Source/_javascript_Core/parser/Nodes.h trunk/Source/_javascript_Core/parser/Parser.cpp trunk/Source/_javascript_Core/parser/ParserTokens.h Added Paths trunk/JSTests/stress/logical-assignment-operator-coalesce.js Removed Paths trunk/JSTests/stress/logical-assignment-operator-nullish.js Diff Modified: trunk/JSTests/ChangeLog (260274 => 260275) --- trunk/JSTests/ChangeLog 2020-04-17 19:32:41 UTC (rev 260274) +++ trunk/JSTests/ChangeLog 2020-04-17 19:46:55 UTC (rev 260275) @@ -1,5 +1,14 @@ 2020-04-17 Devin Rousso +Rename NullishEq / NULLISHEQUAL to CoalesceEq / COALESCEEQUAL to match the spec +https://bugs.webkit.org/show_bug.cgi?id=210663 + +Reviewed by Ross Kirsling. + +* stress/logical-assignment-operator-coalesce.js: Renamed from stress/logical-assignment-operator-nullish.js. + +2020-04-17 Devin Rousso + Implement Promise.any and AggregateError https://bugs.webkit.org/show_bug.cgi?id=202566 Copied: trunk/JSTests/stress/logical-assignment-operator-coalesce.js (from rev 260274, trunk/JSTests/stress/logical-assignment-operator-nullish.js) (0 => 260275) --- trunk/JSTests/stress/logical-assignment-operator-coalesce.js (rev 0) +++ trunk/JSTests/stress/logical-assignment-operator-coalesce.js 2020-04-17 19:46:55 UTC (rev 260275) @@ -0,0 +1,1699 @@ +//@ runLogicalAssignmentOperatorsEnabled + +function shouldBe(func, expected) { +let actual = func(); +if (typeof expected === "function" ? !(actual instanceof expected) : actual !== expected) +throw new Error(`expected ${JSON.stringify(expected)} but got ${JSON.stringify(actual)}`); +} + +function shouldThrow(func, errorType) { +let error; +try { +func(); +} catch (e) { +error = e; +} + +if (!(error instanceof errorType)) +throw new Error(`Expected ${errorType.name} but saw ${error && error.name}!`); +} + +function shouldThrowSyntaxError(script) { +let error; +try { +eval(script); +} catch (e) { +error = e; +} + +if (!(error instanceof SyntaxError)) +throw new Error(`Expected SyntaxError but saw ${error && error.name}!`); +} + +shouldBe(function() { +let x; +return x ??= 42; +}, 42); + +shouldBe(function() { +let x; +x ??= 42; +return x; +}, 42); + +shouldBe(function() { +let x = undefined; +return x ??= 42; +}, 42); + +shouldBe(function() { +let x = undefined; +x ??= 42; +return x; +}, 42); + +shouldBe(function() { +let x = null; +return x ??= 42; +}, 42); + +shouldBe(function() { +let x = null; +x ??= 42; +return x; +}, 42); + +shouldBe(function() { +let x = true; +return x ??= 42; +}, true); + +shouldBe(function() { +let x = true; +x ??= 42; +return x; +}, true); + +shouldBe(function() { +let x = false; +return x ??= 42; +}, false); + +shouldBe(function() { +let x = false; +x ??= 42; +return x; +}, false); + +shouldBe(function() { +let x = 0; +return x ??= 42; +}, 0); + +shouldBe(function() { +let x = 0; +x ??= 42; +return x; +}, 0); + +shouldBe(function() { +let x = 1; +return x ??= 42; +}, 1); + +shouldBe(function() { +let x = 1; +x ??= 42; +return x; +}, 1); + +shouldBe(function() { +let x = ""; +return x ??= 42; +}, ""); + +shouldBe(function() { +let x = ""; +x ??= 42; +return x; +}, ""); + +shouldBe(function() { +let x = "test"; +return x ??= 42; +}, "test"); + +shouldBe(function() { +let x = "test"; +x ??= 42; +return x; +}, "test"); + +shouldBe(function() { +let x = {}; +return x ??= 42; +}, Object); + +shouldBe(function() { +let x = {}; +x ??= 42; +return x; +}, Object); + +shouldBe(function() { +let x = []; +return x ??= 42; +}, Array); + +shouldBe(function() { +let x = []; +x ??= 42; +return x; +}, Array); + + + +shouldThrow(function() { +const x = undefined; +return x
[webkit-changes] [260274] trunk
Title: [260274] trunk Revision 260274 Author ryanhad...@apple.com Date 2020-04-17 12:32:41 -0700 (Fri, 17 Apr 2020) Log Message Unreviewed, reverting r260245. The tests added with this change are frequently failing on macOS bots. Reverted changeset: "Safari doesn't apply frameRate limit when request stream from Camera" https://bugs.webkit.org/show_bug.cgi?id=210186 https://trac.webkit.org/changeset/260245 Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/webrtc/routines.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.h trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp trunk/Source/WebCore/testing/Internals.cpp Removed Paths trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing-expected.txt trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing.html trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-increasing-expected.txt trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-increasing.html trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-decreasing-expected.txt trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-decreasing.html trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-increasing-expected.txt trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-increasing.html Diff Modified: trunk/LayoutTests/ChangeLog (260273 => 260274) --- trunk/LayoutTests/ChangeLog 2020-04-17 19:31:08 UTC (rev 260273) +++ trunk/LayoutTests/ChangeLog 2020-04-17 19:32:41 UTC (rev 260274) @@ -1,3 +1,17 @@ +2020-04-17 Ryan Haddad + +Unreviewed, reverting r260245. + +The tests added with this change are frequently failing on +macOS bots. + +Reverted changeset: + +"Safari doesn't apply frameRate limit when request stream from +Camera" +https://bugs.webkit.org/show_bug.cgi?id=210186 +https://trac.webkit.org/changeset/260245 + 2020-04-16 Ryan Haddad REGRESSION (r259463): [ Mojave Debug ] http/tests/IndexedDB/collect-IDB-objects.https.html is flaky failing and timing out Deleted: trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing-expected.txt (260273 => 260274) --- trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing-expected.txt 2020-04-17 19:31:08 UTC (rev 260273) +++ trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing-expected.txt 2020-04-17 19:32:41 UTC (rev 260274) @@ -1,4 +0,0 @@ - - -PASS clone and applyConstraints to decrease frame rate - Deleted: trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing.html (260273 => 260274) --- trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing.html 2020-04-17 19:31:08 UTC (rev 260273) +++ trunk/LayoutTests/fast/mediastream/mediastreamtrack-video-frameRate-clone-decreasing.html 2020-04-17 19:32:41 UTC (rev 260274) @@ -1,32 +0,0 @@ - - - - -Adapt camera track framerate - - - -