[webkit-changes] [260557] trunk/Source/WebCore

2020-04-22 Thread simon . fraser
Title: [260557] trunk/Source/WebCore








Revision 260557
Author simon.fra...@apple.com
Date 2020-04-22 22:19:34 -0700 (Wed, 22 Apr 2020)


Log Message
Make it possible to eagerly apply scrolling tree state from the main thread
https://bugs.webkit.org/show_bug.cgi?id=210883

Reviewed by Tim Horton.

Work towards fixing webkit.org/b/210884: at the beginning of Page::updateRendering(),
we are going to need to pull the current state of the scrolling tree back to the
main thread, so that JS-exposed scroll offsets match scrolling tree state.

To this end, expose a scrolling tree traversal function from ScrollingTree, which
takes the lock and then calls a visitor function for each node. For scrolling nodes,
the visitor gets the scroll position and optional layout viewport origin. These
match the data passed back currently via AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll().

The new code is not called yet.

* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::synchronizeStateFromScrollingTree):
* page/scrolling/AsyncScrollingCoordinator.h:
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::synchronizeStateFromScrollingTree):
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::traverseScrollingTree):
(WebCore::ScrollingTree::traverseScrollingTreeRecursive):
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::currentScrollPositionChanged): applyLayerPositions() calls these two
functions, so just call it instead.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.h
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.h
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (260556 => 260557)

--- trunk/Source/WebCore/ChangeLog	2020-04-23 04:56:44 UTC (rev 260556)
+++ trunk/Source/WebCore/ChangeLog	2020-04-23 05:19:34 UTC (rev 260557)
@@ -1,3 +1,34 @@
+2020-04-22  Simon Fraser  
+
+Make it possible to eagerly apply scrolling tree state from the main thread
+https://bugs.webkit.org/show_bug.cgi?id=210883
+
+Reviewed by Tim Horton.
+
+Work towards fixing webkit.org/b/210884: at the beginning of Page::updateRendering(),
+we are going to need to pull the current state of the scrolling tree back to the
+main thread, so that JS-exposed scroll offsets match scrolling tree state.
+
+To this end, expose a scrolling tree traversal function from ScrollingTree, which
+takes the lock and then calls a visitor function for each node. For scrolling nodes,
+the visitor gets the scroll position and optional layout viewport origin. These
+match the data passed back currently via AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll().
+
+The new code is not called yet.
+
+* page/scrolling/AsyncScrollingCoordinator.cpp:
+(WebCore::AsyncScrollingCoordinator::synchronizeStateFromScrollingTree):
+* page/scrolling/AsyncScrollingCoordinator.h:
+* page/scrolling/ScrollingCoordinator.h:
+(WebCore::ScrollingCoordinator::synchronizeStateFromScrollingTree):
+* page/scrolling/ScrollingTree.cpp:
+(WebCore::ScrollingTree::traverseScrollingTree):
+(WebCore::ScrollingTree::traverseScrollingTreeRecursive):
+* page/scrolling/ScrollingTree.h:
+* page/scrolling/ScrollingTreeScrollingNode.cpp:
+(WebCore::ScrollingTreeScrollingNode::currentScrollPositionChanged): applyLayerPositions() calls these two
+functions, so just call it instead.
+
 2020-04-22  Commit Queue  
 
 Unreviewed, reverting r260535.


Modified: trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp (260556 => 260557)

--- trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2020-04-23 04:56:44 UTC (rev 260556)
+++ trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2020-04-23 05:19:34 UTC (rev 260557)
@@ -275,6 +275,18 @@
 m_scrollingTree->applyLayerPositions();
 }
 
+void AsyncScrollingCoordinator::synchronizeStateFromScrollingTree()
+{
+ASSERT(isMainThread());
+
+m_scrollingTree->traverseScrollingTree([&](ScrollingNodeID nodeID, ScrollingNodeType, Optional scrollPosition, Optional layoutViewportOrigin) {
+if (scrollPosition) {
+LOG_WITH_STREAM(Scrolling, stream << "AsyncScrollingCoordinator::synchronizeStateFromScrollingTree - node " << nodeID << " scroll position " << scrollPosition);
+updateScrollPositionAfterAsyncScroll(nodeID, scrollPosition.value(), layoutViewportOrigin, ScrollType::User, ScrollingLayerPositionAction::Set);
+}
+});

[webkit-changes] [260556] trunk

2020-04-22 Thread commit-queue
Title: [260556] trunk








Revision 260556
Author commit-qu...@webkit.org
Date 2020-04-22 21:56:44 -0700 (Wed, 22 Apr 2020)


Log Message
Unreviewed, reverting r260535.
https://bugs.webkit.org/show_bug.cgi?id=210897

Causes crashes in WK1 (Requested by smfr on #webkit).

Reverted changeset:

"[ Mac wk2 ] imported/w3c/web-platform-tests/notifications
/event-onclose.html is flaky failing."
https://bugs.webkit.org/show_bug.cgi?id=209483
https://trac.webkit.org/changeset/260535

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/notifications/Notification.cpp
trunk/Source/WebCore/Modules/notifications/Notification.h




Diff

Modified: trunk/LayoutTests/ChangeLog (260555 => 260556)

--- trunk/LayoutTests/ChangeLog	2020-04-23 04:46:14 UTC (rev 260555)
+++ trunk/LayoutTests/ChangeLog	2020-04-23 04:56:44 UTC (rev 260556)
@@ -1,3 +1,17 @@
+2020-04-22  Commit Queue  
+
+Unreviewed, reverting r260535.
+https://bugs.webkit.org/show_bug.cgi?id=210897
+
+Causes crashes in WK1 (Requested by smfr on #webkit).
+
+Reverted changeset:
+
+"[ Mac wk2 ] imported/w3c/web-platform-tests/notifications
+/event-onclose.html is flaky failing."
+https://bugs.webkit.org/show_bug.cgi?id=209483
+https://trac.webkit.org/changeset/260535
+
 2020-04-22  Diego Pino Garcia  
 
 [GTK] Gardening, update test expectations


Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (260555 => 260556)

--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-23 04:46:14 UTC (rev 260555)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-23 04:56:44 UTC (rev 260556)
@@ -1028,6 +1028,8 @@
 
 webkit.org/b/209295 [ Debug ] imported/w3c/web-platform-tests/service-workers/service-worker/respond-with-body-accessed-response.https.html  [ Pass Failure ]
 
+webkit.org/b/209483 imported/w3c/web-platform-tests/notifications/event-onclose.html [ Pass Failure ]
+
 webkit.org/b/209503 [ Debug ] http/tests/referrer-policy-anchor/origin/cross-origin-http.https.html [ Pass Crash ]
 
 webkit.org/b/209564 svg/as-image/svg-image-with-data-uri-background.html [ Pass ImageOnlyFailure ]


Modified: trunk/Source/WebCore/ChangeLog (260555 => 260556)

--- trunk/Source/WebCore/ChangeLog	2020-04-23 04:46:14 UTC (rev 260555)
+++ trunk/Source/WebCore/ChangeLog	2020-04-23 04:56:44 UTC (rev 260556)
@@ -1,3 +1,17 @@
+2020-04-22  Commit Queue  
+
+Unreviewed, reverting r260535.
+https://bugs.webkit.org/show_bug.cgi?id=210897
+
+Causes crashes in WK1 (Requested by smfr on #webkit).
+
+Reverted changeset:
+
+"[ Mac wk2 ] imported/w3c/web-platform-tests/notifications
+/event-onclose.html is flaky failing."
+https://bugs.webkit.org/show_bug.cgi?id=209483
+https://trac.webkit.org/changeset/260535
+
 2020-04-22  Darin Adler  
 
 [Cocoa] Build with UChar as char16_t even in builds that use Apple's internal SDK


Modified: trunk/Source/WebCore/Modules/notifications/Notification.cpp (260555 => 260556)

--- trunk/Source/WebCore/Modules/notifications/Notification.cpp	2020-04-23 04:46:14 UTC (rev 260555)
+++ trunk/Source/WebCore/Modules/notifications/Notification.cpp	2020-04-23 04:56:44 UTC (rev 260556)
@@ -64,6 +64,7 @@
 , m_body(options.body)
 , m_tag(options.tag)
 , m_state(Idle)
+, m_showNotificationTimer(, *this, ::show)
 {
 if (!options.icon.isEmpty()) {
 auto iconURL = document.completeURL(options.icon);
@@ -71,9 +72,8 @@
 m_icon = iconURL;
 }
 
-queueTaskKeepingObjectAlive(*this, TaskSource::UserInteraction, [this] {
-show();
-});
+m_showNotificationTimer.startOneShot(0_s);
+m_showNotificationTimer.suspendIfNeeded();
 }
 
 Notification::~Notification() = default;
@@ -94,8 +94,10 @@
 dispatchErrorEvent();
 return;
 }
-if (client.show(this))
+if (client.show(this)) {
 m_state = Showing;
+setPendingActivity(*this);
+}
 }
 
 void Notification::close()
@@ -141,16 +143,28 @@
 if (m_state == Closed)
 return;
 m_state = Closed;
+unsetPendingActivity(*this);
 }
 
+void Notification::queueTask(Function&& task)
+{
+auto* document = this->document();
+if (!document)
+return;
+
+document->eventLoop().queueTask(TaskSource::UserInteraction, WTFMove(task));
+}
+
 void Notification::dispatchShowEvent()
 {
-queueTaskToDispatchEvent(*this, TaskSource::UserInteraction, Event::create(eventNames().showEvent, Event::CanBubble::No, Event::IsCancelable::No));
+queueTask([this, pendingActivity = makePendingActivity(*this)] {
+dispatchEvent(Event::create(eventNames().showEvent, Event::CanBubble::No, Event::IsCancelable::No));
+});
 }
 
 void Notification::dispatchClickEvent()
 {
-queueTaskKeepingObjectAlive(*this, TaskSource::UserInteraction, [this] {
+

[webkit-changes] [260555] trunk/LayoutTests

2020-04-22 Thread dpino
Title: [260555] trunk/LayoutTests








Revision 260555
Author dp...@igalia.com
Date 2020-04-22 21:46:14 -0700 (Wed, 22 Apr 2020)


Log Message
[GTK] Gardening, update test expectations
https://bugs.webkit.org/show_bug.cgi?id=210896

Unreviewed gardening.

* platform/gtk/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (260554 => 260555)

--- trunk/LayoutTests/ChangeLog	2020-04-23 04:34:31 UTC (rev 260554)
+++ trunk/LayoutTests/ChangeLog	2020-04-23 04:46:14 UTC (rev 260555)
@@ -1,3 +1,12 @@
+2020-04-22  Diego Pino Garcia  
+
+[GTK] Gardening, update test expectations
+https://bugs.webkit.org/show_bug.cgi?id=210896
+
+Unreviewed gardening.
+
+* platform/gtk/TestExpectations:
+
 2020-04-22  Chris Dumez  
 
 [ Mac wk2 ] imported/w3c/web-platform-tests/notifications/event-onclose.html is flaky failing.


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (260554 => 260555)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-23 04:34:31 UTC (rev 260554)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-23 04:46:14 UTC (rev 260555)
@@ -1373,8 +1373,6 @@
 
 webkit.org/b/209727 fast/forms/placeholder-content-line-height.html [ ImageOnlyFailure ]
 
-webkit.org/b/209801 imported/w3c/web-platform-tests/xhr/header-user-agent-sync.htm [ Failure ]
-
 webkit.org/b/210226 imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-small.html [ Failure ]
 webkit.org/b/210226 imported/w3c/web-platform-tests/IndexedDB/large-requests-abort.html [ Failure ]
 webkit.org/b/210226 imported/w3c/web-platform-tests/IndexedDB/request-event-ordering.html [ Failure ]
@@ -1444,6 +1442,7 @@
 webkit.org/b/210796 http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion.html [ Failure ]
 
 webkit.org/b/210848 fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html [ Failure ]
+webkit.org/b/210848 compositing/video/video-border-radius-clipping.html [ ImageOnlyFailure ]
 
 webkit.org/b/210849 compositing/overflow/rtl-scrollbar-layer-positioning.html [ Failure ]
 
@@ -3284,8 +3283,6 @@
 
 webkit.org/b/193635 imported/w3c/web-platform-tests/resource-timing/resource_timing.worker.html [ Failure ]
 
-webkit.org/b/194629 http/tests/websocket/connection-refusal-in-frame-resource-load-statistics.html [ Failure ]
-
 webkit.org/b/137311 media/video-fullscreen-only-playback.html [ Timeout Crash ]
 
 webkit.org/b/195135 storage/indexeddb/IDBObject-leak.html [ Timeout Failure Pass ]






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260554] trunk

2020-04-22 Thread darin
Title: [260554] trunk








Revision 260554
Author da...@apple.com
Date 2020-04-22 21:34:31 -0700 (Wed, 22 Apr 2020)


Log Message
[Cocoa] Build with UChar as char16_t even in builds that use Apple's internal SDK
https://bugs.webkit.org/show_bug.cgi?id=210845

Reviewed by Anders Carlsson.

.:

* Source/cmake/OptionsCommon.cmake: Move ICU-configuring macros to Platform.h.
* Source/cmake/OptionsJSCOnly.cmake: Ditto.
* Source/cmake/OptionsMac.cmake: Ditto.

Source/_javascript_Core:

* Configurations/Base.xcconfig: Move ICU-configuring macros to Platform.h.

Source/WebCore:

* Configurations/WebCore.xcconfig: Move ICU-configuring macros to Platform.h.

* Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::connect): Get rid of an obsolete cast to unsigned to work
around uint16_t not being treated as a number by makeString.

* rendering/svg/SVGTextLayoutEngineBaseline.cpp:
(WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle const):
Remove deprecated U_EA_COUNT.

Source/WebKit:

* Configurations/BaseTarget.xcconfig: Move ICU-configuring macros to Platform.h.

* Platform/unix/EnvironmentUtilities.h: Removed unneeded includes.
This sidesteps a problem with Apple's internal InstallAPI tool that happens
if StringView.h is included and Platform.h is not included first.

* UIProcess/API/cpp/WKRetainPtr.h: Removed unneeded includes, and used
#pragma once.

* UIProcess/Cocoa/PreferenceObserver.h: Moved most things out of the header,
since they don't need to be there.
* UIProcess/Cocoa/PreferenceObserver.mm: Moved them here including using a
class extension for the data member of WKPreferenceObserver.

* UIProcess/ios/fullscreen/FullscreenTouchSecheuristicParameters.h:
Removed unneeded WTF prefix.

Source/WebKitLegacy/mac:

* Configurations/WebKitLegacy.xcconfig: Move ICU-configuring macros to Platform.h.

Source/WTF:

* Configurations/Base.xcconfig: Move ICU-configuring macros to Platform.h.

* wtf/Platform.h: Set macros here. The file says not to put things like this in it,
but in practice this is the right place to put something that we need set consistently
for all the WebKit projects.
- U_HIDE_DEPRECATED_API, to make sure we don't use it by accident.
- U_SHOW_CPLUSPLUS_API=0, to make sure we don't use it by accident.
- UCHAR_TYPE=char16_t when compiling C++, which is the default on most platforms,
  but not the default in Apple's internal SDK.
- U_DISABLE_RENAMING when building on Apple platforms, important so we can link
  to an older version of ICU and still load with a newer version.

* wtf/URL.cpp:
(WTF::URL::hostAndPort const): Get rid of an obsolete cast to unsigned to work
around uint16_t not being treated as a number by makeString.

* wtf/URLHelpers.cpp: Rework to not use deprecated USCRIPT_CODE_LIMIT.
(WTF::URLHelpers::whiteListIDNScript): Added overloads.
(WTF::URLHelpers::initializeDefaultIDNScriptWhiteList): Use an array of
UScriptCode instead of an array of strings.
(WTF::URLHelpers::allCharactersInIDNScriptWhiteList): Updated for the above.

* wtf/cocoa/NSURLExtras.mm:
(WTF::decodePercentEscapes): Use createCFString instead of converting to NString
and then typecasting.
(WTF::URLByTruncatingOneCharacterBeforeComponent): Updated to use a constexpr
instead of a macro.
(WTF::dataForURLComponentType): Ditto.
(WTF::URLByRemovingComponentAndSubsequentCharacter): Ditto.
(WTF::originalURLData): Ditto.

Tools:

* TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
(TestWebKitAPI::TEST): Get rid of an obsolete cast to unsigned to work
around uint16_t not being treated as a number by makeString.
* TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
(TestWebKitAPI::TEST): Ditto.
* TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(TestWebKitAPI::TEST): Ditto.
* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST): Ditto.

* TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
Add an include needed since EvironmentUtilities.h now includes less.

Modified Paths

trunk/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/Configurations/Base.xcconfig
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Configurations/Base.xcconfig
trunk/Source/WTF/wtf/Platform.h
trunk/Source/WTF/wtf/URL.cpp
trunk/Source/WTF/wtf/URLHelpers.cpp
trunk/Source/WTF/wtf/cocoa/NSURLExtras.mm
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Configurations/WebCore.xcconfig
trunk/Source/WebCore/Modules/websockets/WebSocket.cpp
trunk/Source/WebCore/rendering/svg/SVGTextLayoutEngineBaseline.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/BaseTarget.xcconfig
trunk/Source/WebKit/Platform/unix/EnvironmentUtilities.h
trunk/Source/WebKit/UIProcess/API/cpp/WKRetainPtr.h
trunk/Source/WebKit/UIProcess/Cocoa/PreferenceObserver.h
trunk/Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm
trunk/Source/WebKit/UIProcess/ios/fullscreen/FullscreenTouchSecheuristicParameters.h
trunk/Source/WebKitLegacy/mac/ChangeLog

[webkit-changes] [260553] trunk/Source/WebKit

2020-04-22 Thread nmouchtaris
Title: [260553] trunk/Source/WebKit








Revision 260553
Author nmouchta...@apple.com
Date 2020-04-22 21:05:27 -0700 (Wed, 22 Apr 2020)


Log Message
Soft link QuickLookThumbnailing framework
https://bugs.webkit.org/show_bug.cgi?id=210894

Reviewed by Tim Horton.

Soft link QuickLookThumbnailing framework to solve build error.

No new tests. Unnecessary.

* Configurations/WebKit.xcconfig:
* UIProcess/QuickLookThumbnailLoader.mm:
(-[WKQLThumbnailLoadOperation initWithURL:identifier:]):
(-[WKQLThumbnailLoadOperation start]):
* UIProcess/QuickLookThumbnailingSPI.h: Added.
* UIProcess/QuickLookThumbnailingSoftLink.h: Added.
* UIProcess/QuickLookThumbnailingSoftLink.mm: Added.
* WebKit.xcodeproj/project.pbxproj:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/WebKit.xcconfig
trunk/Source/WebKit/UIProcess/QuickLookThumbnailLoader.mm
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj


Added Paths

trunk/Source/WebKit/UIProcess/QuickLookThumbnailingSoftLink.h
trunk/Source/WebKit/UIProcess/QuickLookThumbnailingSoftLink.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (260552 => 260553)

--- trunk/Source/WebKit/ChangeLog	2020-04-23 03:17:45 UTC (rev 260552)
+++ trunk/Source/WebKit/ChangeLog	2020-04-23 04:05:27 UTC (rev 260553)
@@ -1,3 +1,23 @@
+2020-04-22  Nikos Mouchtaris  
+
+Soft link QuickLookThumbnailing framework
+https://bugs.webkit.org/show_bug.cgi?id=210894
+
+Reviewed by Tim Horton.
+
+Soft link QuickLookThumbnailing framework to solve build error.
+
+No new tests. Unnecessary.
+
+* Configurations/WebKit.xcconfig:
+* UIProcess/QuickLookThumbnailLoader.mm:
+(-[WKQLThumbnailLoadOperation initWithURL:identifier:]):
+(-[WKQLThumbnailLoadOperation start]):
+* UIProcess/QuickLookThumbnailingSPI.h: Added.
+* UIProcess/QuickLookThumbnailingSoftLink.h: Added.
+* UIProcess/QuickLookThumbnailingSoftLink.mm: Added.
+* WebKit.xcodeproj/project.pbxproj:
+
 2020-04-22  Daniel Bates  
 
 Support toggling debug overlay for touch action region and editable element region independent from non-fast scrollable region


Modified: trunk/Source/WebKit/Configurations/WebKit.xcconfig (260552 => 260553)

--- trunk/Source/WebKit/Configurations/WebKit.xcconfig	2020-04-23 03:17:45 UTC (rev 260552)
+++ trunk/Source/WebKit/Configurations/WebKit.xcconfig	2020-04-23 04:05:27 UTC (rev 260553)
@@ -124,15 +124,8 @@
 WK_AUTHKIT_LDFLAGS_macosx = $(WK_AUTHKIT_LDFLAGS$(WK_MACOS_1015));
 WK_AUTHKIT_LDFLAGS_MACOS_SINCE_1015 = -framework AuthKit;
 
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS = $(WK_QUICKLOOK_THUMBNAILING_LDFLAGS_$(WK_PLATFORM_NAME));
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS_macosx = $(WK_QUICKLOOK_THUMBNAILING_LDFLAGS$(WK_MACOS_1015));
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS_MACOS_SINCE_1015 = -framework QuickLookThumbnailing;
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS_iphoneos = -framework QuickLookThumbnailing;
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS_iphonesimulator = -framework QuickLookThumbnailing;
-WK_QUICKLOOK_THUMBNAILING_LDFLAGS_maccatalyst = -framework QuickLookThumbnailing;
+FRAMEWORK_AND_LIBRARY_LDFLAGS = -lobjc -framework CFNetwork -framework CoreAudio -framework CoreFoundation -framework CoreGraphics -framework CoreText -framework Foundation -framework ImageIO -framework IOKit -framework IOSurface -framework WebKitLegacy -lnetwork $(WK_ACCESSIBILITY_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_ASSERTION_SERVICES_LDFLAGS) $(WK_RUNNINGBOARD_SERVICES_LDFLAGS) $(WK_AUTHKIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_PREDICTION_LDFLAGS) $(WK_CORE_SERVICES_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_LIBSANDBOX_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_OPENGL_LDFLAGS) $(WK_PDFKIT_LDFLAGS) $(WK_SAFE_BROWSING_LDFLAGS) $(WK_SECURITY_INTERFACE_LDFLAGS) $(WK_UIKIT_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_WEBINSPECTORUI_LDFLAGS);
 
-FRAMEWORK_AND_LIBRARY_LDFLAGS = -lobjc -framework CFNetwork -framework CoreAudio -framework CoreFoundation -framework CoreGraphics -framework CoreText -framework Foundation -framework ImageIO -framework IOKit -framework IOSurface -framework WebKitLegacy -lnetwork $(WK_ACCESSIBILITY_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_ASSERTION_SERVICES_LDFLAGS) $(WK_RUNNINGBOARD_SERVICES_LDFLAGS) $(WK_AUTHKIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_PREDICTION_LDFLAGS) $(WK_CORE_SERVICES_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_LIBSANDBOX_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_OPENGL_LDFLAGS) $(WK_PDFKIT_LDFLAGS) $(WK_SAFE_BROWSING_LDFLAGS) $(WK_SECURITY_INTERFACE_LDFLAGS) $(WK_UIKIT_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_WEBINSPECTORUI_LDFLAGS) $(WK_QUICKLOOK_THUMBNAILING_LDFLAGS);
-
 // Prevent C++ standard library basic_stringstream, operator new, delete and their related exception types from being exported as weak symbols.
 UNEXPORTED_SYMBOL_LDFLAGS = -Wl,-unexported_symbol 

[webkit-changes] [260552] trunk/Tools

2020-04-22 Thread sbarati
Title: [260552] trunk/Tools








Revision 260552
Author sbar...@apple.com
Date 2020-04-22 20:17:45 -0700 (Wed, 22 Apr 2020)


Log Message
DumpRenderTree should have the JIT entitlement on Mac
https://bugs.webkit.org/show_bug.cgi?id=210887

Reviewed by Tim Horton.

* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/mac/Configurations/BaseTarget.xcconfig:
* DumpRenderTree/mac/Configurations/DumpRenderTree.entitlements: Added.
* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj
trunk/Tools/DumpRenderTree/mac/Configurations/BaseTarget.xcconfig
trunk/Tools/DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig


Added Paths

trunk/Tools/DumpRenderTree/mac/Configurations/DumpRenderTree.entitlements




Diff

Modified: trunk/Tools/ChangeLog (260551 => 260552)

--- trunk/Tools/ChangeLog	2020-04-23 03:11:02 UTC (rev 260551)
+++ trunk/Tools/ChangeLog	2020-04-23 03:17:45 UTC (rev 260552)
@@ -1,3 +1,15 @@
+2020-04-22  Saam Barati  
+
+DumpRenderTree should have the JIT entitlement on Mac
+https://bugs.webkit.org/show_bug.cgi?id=210887
+
+Reviewed by Tim Horton.
+
+* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
+* DumpRenderTree/mac/Configurations/BaseTarget.xcconfig:
+* DumpRenderTree/mac/Configurations/DumpRenderTree.entitlements: Added.
+* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
+
 2020-04-22  Chris Dumez  
 
 [iOS] Expose -_webView:willGoToBackForwardListItem:inPageCache:


Modified: trunk/Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj (260551 => 260552)

--- trunk/Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj	2020-04-23 03:11:02 UTC (rev 260551)
+++ trunk/Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj	2020-04-23 03:17:45 UTC (rev 260552)
@@ -323,6 +323,7 @@
 		5185F69F10714A57007AA393 /* HistoryDelegate.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = HistoryDelegate.mm; path = mac/HistoryDelegate.mm; sourceTree = ""; };
 		51CACBD715D96FD000EB53A2 /* EvaluateJSWithinNPP_New.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = EvaluateJSWithinNPP_New.cpp; path = TestNetscapePlugIn/Tests/EvaluateJSWithinNPP_New.cpp; sourceTree = SOURCE_ROOT; };
 		520206CE1A0ADA5900AD5154 /* SetMuted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SetMuted.cpp; sourceTree = ""; };
+		520D64B12451023700D6391F /* DumpRenderTree.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = DumpRenderTree.entitlements; path = mac/Configurations/DumpRenderTree.entitlements; sourceTree = ""; };
 		53CBB830134E42F3001CE6A4 /* CyclicRedundancyCheck.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CyclicRedundancyCheck.cpp; sourceTree = ""; };
 		53CBB831134E42F3001CE6A4 /* CyclicRedundancyCheck.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CyclicRedundancyCheck.h; sourceTree = ""; };
 		5DE8AE4313A2C15800D6A37D /* libWebCoreTestSupport.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = libWebCoreTestSupport.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -829,6 +830,7 @@
 BCB281EE0CFA713D007E533E /* Base.xcconfig */,
 A16CD20D18907A7D0092363E /* BaseTarget.xcconfig */,
 BCB282F40CFA7450007E533E /* DebugRelease.xcconfig */,
+520D64B12451023700D6391F /* DumpRenderTree.entitlements */,
 BCB281F00CFA713D007E533E /* DumpRenderTree.xcconfig */,
 A19317FD18928738001C52B1 /* DumpRenderTreeApp.xcconfig */,
 A134E5391890671C00901D06 /* DumpRenderTreeLibrary.xcconfig */,


Modified: trunk/Tools/DumpRenderTree/mac/Configurations/BaseTarget.xcconfig (260551 => 260552)

--- trunk/Tools/DumpRenderTree/mac/Configurations/BaseTarget.xcconfig	2020-04-23 03:11:02 UTC (rev 260551)
+++ trunk/Tools/DumpRenderTree/mac/Configurations/BaseTarget.xcconfig	2020-04-23 03:17:45 UTC (rev 260552)
@@ -21,6 +21,15 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 
+#include? "../../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
+
+USE_INTERNAL_SDK = $(USE_INTERNAL_SDK_$(CONFIGURATION));
+USE_INTERNAL_SDK_Production = YES;
+USE_INTERNAL_SDK_Debug = $(HAVE_INTERNAL_SDK);
+USE_INTERNAL_SDK_Release = $(HAVE_INTERNAL_SDK);
+
+WK_USE_RESTRICTED_ENTITLEMENTS = $(USE_INTERNAL_SDK);
+
 OTHER_CFLAGS = $(inherited) -iframework $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Frameworks;
 OTHER_CPLUSPLUSFLAGS = $(OTHER_CFLAGS);
 GCC_ENABLE_OBJC_EXCEPTIONS = YES;


Added: trunk/Tools/DumpRenderTree/mac/Configurations/DumpRenderTree.entitlements 

[webkit-changes] [260551] trunk

2020-04-22 Thread ysuzuki
Title: [260551] trunk








Revision 260551
Author ysuz...@apple.com
Date 2020-04-22 20:11:02 -0700 (Wed, 22 Apr 2020)


Log Message
[JSC] branchIfBigInt32 can use BigInt32Mask and remove branchIfNumber filter
https://bugs.webkit.org/show_bug.cgi?id=210870

Reviewed by Saam Barati.

JSTests:

* stress/anybigintuse-should-filter-number-correctly.js: Added.
(shouldBe):
(test):

Source/_javascript_Core:

By using BigInt32Mask, we can detect BigInt32 without filtering Numbers. In this patch,

1. Remove branchIfBigInt32KnownNotNumber and branchIfNotBigInt32KnownNotNumber. And always use branchBigInt32 and branchNotBigInt32 instead.
2. Remove branchIfNumber type filtering in DFG.
3. Use BigInt32Mask based scheme in FTL.
4. Add and64(TrustedImm64, RegisterID) implementations in MacroAssembler.
5. Add TagRegistersMode version in branchIfBigInt. We use numberTagRegister to produce really efficient code[1] by avoiding large constant materialization.

[1]: From
mov %rax, %rdx
mov $0xfffe0012, %r11
and %r11, %rdx
cmp $0x12, %rdx
 To
lea 0x12(%r14), %rdx
and %rax, %rdx
cmp $0x12, %rdx

* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::and64):
* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::and64):
* bytecode/ArithProfile.cpp:
(JSC::ArithProfile::emitObserveResult):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateBigInt32):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileToNumeric):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
(JSC::FTL::DFG::LowerDFGToB3::compileIsBigInt):
(JSC::FTL::DFG::LowerDFGToB3::boolify):
(JSC::FTL::DFG::LowerDFGToB3::buildTypeOf):
(JSC::FTL::DFG::LowerDFGToB3::lowBigInt32):
(JSC::FTL::DFG::LowerDFGToB3::isBigInt32):
(JSC::FTL::DFG::LowerDFGToB3::isNotBigInt32):
(JSC::FTL::DFG::LowerDFGToB3::isNotAnyBigInt):
(JSC::FTL::DFG::LowerDFGToB3::speculateBigInt32):
(JSC::FTL::DFG::LowerDFGToB3::speculateAnyBigInt):
(JSC::FTL::DFG::LowerDFGToB3::isBigInt32KnownNotCell): Deleted.
(JSC::FTL::DFG::LowerDFGToB3::isBigInt32KnownNotNumber): Deleted.
(JSC::FTL::DFG::LowerDFGToB3::isNotBigInt32KnownNotNumber): Deleted.
(JSC::FTL::DFG::LowerDFGToB3::isNotAnyBigIntKnownNotNumber): Deleted.
* jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::emitConvertValueToBoolean):
(JSC::AssemblyHelpers::branchIfValue):
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::branchIfBigInt32):
(JSC::AssemblyHelpers::branchIfNotBigInt32):
(JSC::AssemblyHelpers::emitTypeOf):
(JSC::AssemblyHelpers::branchIfBigInt32KnownNotNumber): Deleted.
(JSC::AssemblyHelpers::branchIfNotBigInt32KnownNotNumber): Deleted.

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/assembler/MacroAssemblerARM64.h
trunk/Source/_javascript_Core/assembler/MacroAssemblerX86_64.h
trunk/Source/_javascript_Core/bytecode/ArithProfile.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT64.cpp
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp
trunk/Source/_javascript_Core/jit/AssemblyHelpers.cpp
trunk/Source/_javascript_Core/jit/AssemblyHelpers.h


Added Paths

trunk/JSTests/stress/anybigintuse-should-filter-number-correctly.js




Diff

Modified: trunk/JSTests/ChangeLog (260550 => 260551)

--- trunk/JSTests/ChangeLog	2020-04-23 02:18:46 UTC (rev 260550)
+++ trunk/JSTests/ChangeLog	2020-04-23 03:11:02 UTC (rev 260551)
@@ -1,3 +1,14 @@
+2020-04-22  Yusuke Suzuki  
+
+[JSC] branchIfBigInt32 can use BigInt32Mask and remove branchIfNumber filter
+https://bugs.webkit.org/show_bug.cgi?id=210870
+
+Reviewed by Saam Barati.
+
+* stress/anybigintuse-should-filter-number-correctly.js: Added.
+(shouldBe):
+(test):
+
 2020-04-22  Saam Barati  
 
 BigInt32 parsing should be precise


Added: trunk/JSTests/stress/anybigintuse-should-filter-number-correctly.js (0 => 260551)

--- trunk/JSTests/stress/anybigintuse-should-filter-number-correctly.js	(rev 0)
+++ trunk/JSTests/stress/anybigintuse-should-filter-number-correctly.js	2020-04-23 03:11:02 UTC (rev 260551)
@@ -0,0 +1,25 @@
+function shouldBe(actual, expected) {
+if (actual !== expected)
+throw new Error('bad value: ' + actual);
+}
+
+function test(a, b)
+{
+return a === b;
+}
+noInline(test);
+
+for (var i = 0; i < 1e6; ++i) {
+if (i & 1) {
+test(0n, 0n);
+test(0n, 10n);
+} else {
+test(10n, 200n);
+test(10n, 10n);
+}
+}
+shouldBe(test(20, 20), true);
+shouldBe(test(20, 40), false);
+shouldBe(test(0.5, 0.5), true);
+shouldBe(test(0.5, 0.24), false);
+shouldBe(test(20.1 - 0.1, 20), true);


Modified: trunk/Source/_javascript_Core/ChangeLog (260550 => 260551)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-23 02:18:46 UTC (rev 260550)
+++ 

[webkit-changes] [260550] trunk

2020-04-22 Thread sbarati
Title: [260550] trunk








Revision 260550
Author sbar...@apple.com
Date 2020-04-22 19:18:46 -0700 (Wed, 22 Apr 2020)


Log Message
BigInt32 parsing should be precise
https://bugs.webkit.org/show_bug.cgi?id=210869

Reviewed by Robin Morisset.

JSTests:

* stress/big-int-32-parsing-should-be-precise.js: Added.

Source/_javascript_Core:

Our algorithm before was conservative, and might produce a heap big int even
if the value could be an int32. This patch makes the algorithm precise on
64-bit, always producing a bigint32 if the number is indeed an int32.

* jsc.cpp:
(functionUseBigInt32):
(functionIsBigInt32):
(functionIsHeapBigInt):
* runtime/JSBigInt.cpp:
(JSC::JSBigInt::parseInt):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/jsc.cpp
trunk/Source/_javascript_Core/runtime/JSBigInt.cpp


Added Paths

trunk/JSTests/stress/big-int-32-parsing-should-be-precise.js




Diff

Modified: trunk/JSTests/ChangeLog (260549 => 260550)

--- trunk/JSTests/ChangeLog	2020-04-23 02:14:22 UTC (rev 260549)
+++ trunk/JSTests/ChangeLog	2020-04-23 02:18:46 UTC (rev 260550)
@@ -1,3 +1,12 @@
+2020-04-22  Saam Barati  
+
+BigInt32 parsing should be precise
+https://bugs.webkit.org/show_bug.cgi?id=210869
+
+Reviewed by Robin Morisset.
+
+* stress/big-int-32-parsing-should-be-precise.js: Added.
+
 2020-04-22  Yusuke Suzuki  
 
 [JSC] JSBigInt inc operation does not produce right HeapBigInt zero


Added: trunk/JSTests/stress/big-int-32-parsing-should-be-precise.js (0 => 260550)

--- trunk/JSTests/stress/big-int-32-parsing-should-be-precise.js	(rev 0)
+++ trunk/JSTests/stress/big-int-32-parsing-should-be-precise.js	2020-04-23 02:18:46 UTC (rev 260550)
@@ -0,0 +1,30 @@
+function assert(b) {
+if (!b)
+throw new Error;
+}
+
+function assertIsBigInt32(arg) {
+if (useBigInt32())
+assert(isBigInt32(arg));
+else
+assert(isHeapBigInt(arg));
+}
+
+assertIsBigInt32(2147483647n);
+assertIsBigInt32(2147483646n);
+assertIsBigInt32(2127483646n);
+assertIsBigInt32(1127483646n);
+assertIsBigInt32(-2147483648n);
+assertIsBigInt32(-2147483647n);
+assertIsBigInt32(-1147483647n);
+assertIsBigInt32(0n);
+assertIsBigInt32(1n);
+assertIsBigInt32(-1n);
+assertIsBigInt32(42n);
+
+assert(isHeapBigInt(2147483648n));
+assert(isHeapBigInt(-2147483649n));
+assert(isHeapBigInt(3147483648n));
+assert(isHeapBigInt(9147483648n));
+assert(isHeapBigInt(-9147483649n));
+assert(isHeapBigInt(-2147583649n));


Modified: trunk/Source/_javascript_Core/ChangeLog (260549 => 260550)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-23 02:14:22 UTC (rev 260549)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-23 02:18:46 UTC (rev 260550)
@@ -1,5 +1,23 @@
 2020-04-22  Saam Barati  
 
+BigInt32 parsing should be precise
+https://bugs.webkit.org/show_bug.cgi?id=210869
+
+Reviewed by Robin Morisset.
+
+Our algorithm before was conservative, and might produce a heap big int even
+if the value could be an int32. This patch makes the algorithm precise on
+64-bit, always producing a bigint32 if the number is indeed an int32.
+
+* jsc.cpp:
+(functionUseBigInt32):
+(functionIsBigInt32):
+(functionIsHeapBigInt):
+* runtime/JSBigInt.cpp:
+(JSC::JSBigInt::parseInt):
+
+2020-04-22  Saam Barati  
+
 Edge use kind asserts are wrong for BigInt32 on ValueBitLShift
 https://bugs.webkit.org/show_bug.cgi?id=210872
 


Modified: trunk/Source/_javascript_Core/jsc.cpp (260549 => 260550)

--- trunk/Source/_javascript_Core/jsc.cpp	2020-04-23 02:14:22 UTC (rev 260549)
+++ trunk/Source/_javascript_Core/jsc.cpp	2020-04-23 02:18:46 UTC (rev 260550)
@@ -275,6 +275,9 @@
 #if USE(BIGINT32)
 static EncodedJSValue JSC_HOST_CALL functionCreateBigInt32(JSGlobalObject*, CallFrame*);
 #endif
+static EncodedJSValue JSC_HOST_CALL functionUseBigInt32(JSGlobalObject*, CallFrame*);
+static EncodedJSValue JSC_HOST_CALL functionIsBigInt32(JSGlobalObject*, CallFrame*);
+static EncodedJSValue JSC_HOST_CALL functionIsHeapBigInt(JSGlobalObject*, CallFrame*);
 
 static EncodedJSValue JSC_HOST_CALL functionPrintStdOut(JSGlobalObject*, CallFrame*);
 static EncodedJSValue JSC_HOST_CALL functionPrintStdErr(JSGlobalObject*, CallFrame*);
@@ -550,6 +553,9 @@
 #if USE(BIGINT32)
 addFunction(vm, "createBigInt32", functionCreateBigInt32, 1);
 #endif
+addFunction(vm, "useBigInt32", functionUseBigInt32, 0);
+addFunction(vm, "isBigInt32", functionIsBigInt32, 1);
+addFunction(vm, "isHeapBigInt", functionIsHeapBigInt, 1);
 
 addFunction(vm, "dumpTypesForAllVariables", functionDumpTypesForAllVariables , 0);
 
@@ -2300,6 +2306,30 @@
 }
 #endif
 
+EncodedJSValue JSC_HOST_CALL functionUseBigInt32(JSGlobalObject*, CallFrame*)
+{
+#if USE(BIGINT32)
+return JSValue::encode(jsBoolean(true));
+#else
+return 

[webkit-changes] [260549] trunk/Source/JavaScriptCore

2020-04-22 Thread sbarati
Title: [260549] trunk/Source/_javascript_Core








Revision 260549
Author sbar...@apple.com
Date 2020-04-22 19:14:22 -0700 (Wed, 22 Apr 2020)


Log Message
Edge use kind asserts are wrong for BigInt32 on ValueBitLShift
https://bugs.webkit.org/show_bug.cgi?id=210872

Reviewed by Yusuke Suzuki, Mark Lam, and Robin Morisset.

This is already covered by the v8 tests Yusuke checked in.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::emitUntypedOrAnyBigIntBitOp):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitLShift):
(JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (260548 => 260549)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-23 01:22:36 UTC (rev 260548)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-23 02:14:22 UTC (rev 260549)
@@ -1,3 +1,18 @@
+2020-04-22  Saam Barati  
+
+Edge use kind asserts are wrong for BigInt32 on ValueBitLShift
+https://bugs.webkit.org/show_bug.cgi?id=210872
+
+Reviewed by Yusuke Suzuki, Mark Lam, and Robin Morisset.
+
+This is already covered by the v8 tests Yusuke checked in.
+
+* dfg/DFGSpeculativeJIT.cpp:
+(JSC::DFG::SpeculativeJIT::emitUntypedOrAnyBigIntBitOp):
+* ftl/FTLLowerDFGToB3.cpp:
+(JSC::FTL::DFG::LowerDFGToB3::compileValueBitLShift):
+(JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet):
+
 2020-04-22  Yusuke Suzuki  
 
 [JSC] JSBigInt inc operation does not produce right HeapBigInt zero


Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (260548 => 260549)

--- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2020-04-23 01:22:36 UTC (rev 260548)
+++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2020-04-23 02:14:22 UTC (rev 260549)
@@ -3619,7 +3619,7 @@
 Edge& leftChild = node->child1();
 Edge& rightChild = node->child2();
 
-ASSERT(leftChild.useKind() == UntypedUse || leftChild.useKind() == AnyBigIntUse || rightChild.useKind() == UntypedUse || rightChild.useKind() == AnyBigIntUse);
+DFG_ASSERT(m_jit.graph(), node, node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse) || node->isBinaryUseKind(HeapBigIntUse) || node->isBinaryUseKind(BigInt32Use));
 
 if (isKnownNotNumber(leftChild.node()) || isKnownNotNumber(rightChild.node())) {
 JSValueOperand left(this, leftChild, ManualOperandSpeculation);


Modified: trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp (260548 => 260549)

--- trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp	2020-04-23 01:22:36 UTC (rev 260548)
+++ trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp	2020-04-23 02:14:22 UTC (rev 260549)
@@ -3470,7 +3470,7 @@
 return;
 }
 
-ASSERT(m_node->isBinaryUseKind(UntypedUse));
+DFG_ASSERT(m_graph, m_node, m_node->isBinaryUseKind(UntypedUse) || m_node->isBinaryUseKind(AnyBigIntUse) || m_node->isBinaryUseKind(BigInt32Use));
 emitBinaryBitOpSnippet(operationValueBitLShift);
 }
 
@@ -14752,7 +14752,7 @@
 {
 Node* node = m_node;
 
-ASSERT(node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse));
+DFG_ASSERT(m_graph, node, node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse) || node->isBinaryUseKind(BigInt32Use));
 LValue left = lowJSValue(node->child1(), ManualOperandSpeculation);
 LValue right = lowJSValue(node->child2(), ManualOperandSpeculation);
 speculate(node, node->child1());






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260548] trunk/Source/WebCore

2020-04-22 Thread andresg_22
Title: [260548] trunk/Source/WebCore








Revision 260548
Author andresg...@apple.com
Date 2020-04-22 18:22:36 -0700 (Wed, 22 Apr 2020)


Log Message
Add logging to core accessibility.
https://bugs.webkit.org/show_bug.cgi?id=210564


Reviewed by Simon Fraser and Chris Fleizach.

- Use LOG and LOG_WITH_STREAM macros instead of WTF::Logger directly.
- Added logging of AXCoreObjects.

* accessibility/AXLogger.cpp:
(WebCore::AXLogger::AXLogger):
(WebCore::AXLogger::~AXLogger):
(WebCore::AXLogger::log):
(WebCore::operator<<):
* accessibility/AXLogger.h:
* accessibility/AccessibilityObjectInterface.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AXLogger.cpp
trunk/Source/WebCore/accessibility/AXLogger.h
trunk/Source/WebCore/accessibility/AccessibilityObjectInterface.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (260547 => 260548)

--- trunk/Source/WebCore/ChangeLog	2020-04-23 00:42:45 UTC (rev 260547)
+++ trunk/Source/WebCore/ChangeLog	2020-04-23 01:22:36 UTC (rev 260548)
@@ -1,3 +1,22 @@
+2020-04-22  Andres Gonzalez  
+
+Add logging to core accessibility.
+https://bugs.webkit.org/show_bug.cgi?id=210564
+
+
+Reviewed by Simon Fraser and Chris Fleizach.
+
+- Use LOG and LOG_WITH_STREAM macros instead of WTF::Logger directly.
+- Added logging of AXCoreObjects.
+
+* accessibility/AXLogger.cpp:
+(WebCore::AXLogger::AXLogger):
+(WebCore::AXLogger::~AXLogger):
+(WebCore::AXLogger::log):
+(WebCore::operator<<):
+* accessibility/AXLogger.h:
+* accessibility/AccessibilityObjectInterface.h:
+
 2020-04-22  Daniel Bates  
 
 Support toggling debug overlay for touch action region and editable element region independent from non-fast scrollable region


Modified: trunk/Source/WebCore/accessibility/AXLogger.cpp (260547 => 260548)

--- trunk/Source/WebCore/accessibility/AXLogger.cpp	2020-04-23 00:42:45 UTC (rev 260547)
+++ trunk/Source/WebCore/accessibility/AXLogger.cpp	2020-04-23 01:22:36 UTC (rev 260548)
@@ -30,25 +30,517 @@
 #include "AXLogger.h"
 
 #include "Logging.h"
+#include 
 
 namespace WebCore {
 
-AXLogger::AXLogger(const char* methodName)
-: m_logger(Logger::create(this))
-, m_channel(*getLogChannel("Accessibility"))
-, m_methodName(methodName)
+AXLogger::AXLogger(const String& methodName)
+: m_methodName(methodName)
 {
-m_channel.state = WTFLogChannelState::On;
-m_channel.level = WTFLogLevel::Debug;
+if (auto* channel = getLogChannel("Accessibility"))
+channel->level = WTFLogLevel::Debug;
 
 if (!m_methodName.isEmpty())
-m_logger->debug(m_channel, m_methodName, " {");
+LOG_WITH_STREAM(Accessibility, stream << m_methodName << " {");
 }
 
 AXLogger::~AXLogger()
 {
 if (!m_methodName.isEmpty())
-m_logger->debug(m_channel, "} ", m_methodName);
+LOG_WITH_STREAM(Accessibility, stream << "} " << m_methodName);
 }
 
+void AXLogger::log(const String& message)
+{
+#if !LOG_DISABLED
+LOG(Accessibility, "%s", message.utf8().data());
+#else
+UNUSED_PARAM(message);
+#endif
+}
+
+void AXLogger::log(const AXCoreObject& object)
+{
+TextStream stream(TextStream::LineMode::MultipleLine);
+stream << object;
+LOG(Accessibility, "%s", stream.release().utf8().data());
+}
+
+TextStream& operator<<(TextStream& stream, AccessibilityRole role)
+{
+switch (role) {
+case AccessibilityRole::Annotation:
+stream << "Annotation";
+break;
+case AccessibilityRole::Application:
+stream << "Application";
+break;
+case AccessibilityRole::ApplicationAlert:
+stream << "ApplicationAlert";
+break;
+case AccessibilityRole::ApplicationAlertDialog:
+stream << "ApplicationAlertDialog";
+break;
+case AccessibilityRole::ApplicationDialog:
+stream << "ApplicationDialog";
+break;
+case AccessibilityRole::ApplicationGroup:
+stream << "ApplicationGroup";
+break;
+case AccessibilityRole::ApplicationLog:
+stream << "ApplicationLog";
+break;
+case AccessibilityRole::ApplicationMarquee:
+stream << "ApplicationMarquee";
+break;
+case AccessibilityRole::ApplicationStatus:
+stream << "ApplicationStatus";
+break;
+case AccessibilityRole::ApplicationTextGroup:
+stream << "ApplicationTextGroup";
+break;
+case AccessibilityRole::ApplicationTimer:
+stream << "ApplicationTimer";
+break;
+case AccessibilityRole::Audio:
+stream << "Audio";
+break;
+case AccessibilityRole::Blockquote:
+stream << "Blockquote";
+break;
+case AccessibilityRole::Browser:
+stream << "Browser";
+break;
+case AccessibilityRole::BusyIndicator:
+stream << "BusyIndicator";
+break;
+case AccessibilityRole::Button:
+stream << "Button";
+

[webkit-changes] [260547] trunk/Source

2020-04-22 Thread dbates
Title: [260547] trunk/Source








Revision 260547
Author dba...@webkit.org
Date 2020-04-22 17:42:45 -0700 (Wed, 22 Apr 2020)


Log Message
Support toggling debug overlay for touch action region and editable element region independent from non-fast scrollable region
https://bugs.webkit.org/show_bug.cgi?id=210774

Reviewed by Dean Jackson.

Source/WebCore:

Break out the touch action region and editable element region debug overlays into their own
flags that can be passed to Settings::setVisibleDebugOverlayRegions() to toggle these overlays,
respectively. Currently both of these overlays piggyback on whether the engine will paint the
non-fast scrollable region.

* page/SettingsBase.h: Add two more enumerators.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::invalidateEventRegion const): Update the code to be more precise now that
we can target the update paint overlay hack to when we are painting touch-action or editable
element regions.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintDebugOverlays): Condition the painting of touch action region
on one enumerator and the painting of editable element region on another.
(WebCore::RenderLayerBacking::paintContents): Update the code to be more precise.

Source/WebKit:

Expose two new enumerators to toggle touch action region and editable element region
overlay painting.

* UIProcess/API/C/WKPreferencesRef.h:
* UIProcess/API/Cocoa/WKPreferencesPrivate.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/SettingsBase.h
trunk/Source/WebCore/rendering/RenderLayer.cpp
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRef.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (260546 => 260547)

--- trunk/Source/WebCore/ChangeLog	2020-04-23 00:38:55 UTC (rev 260546)
+++ trunk/Source/WebCore/ChangeLog	2020-04-23 00:42:45 UTC (rev 260547)
@@ -1,3 +1,25 @@
+2020-04-22  Daniel Bates  
+
+Support toggling debug overlay for touch action region and editable element region independent from non-fast scrollable region
+https://bugs.webkit.org/show_bug.cgi?id=210774
+
+Reviewed by Dean Jackson.
+
+Break out the touch action region and editable element region debug overlays into their own
+flags that can be passed to Settings::setVisibleDebugOverlayRegions() to toggle these overlays,
+respectively. Currently both of these overlays piggyback on whether the engine will paint the
+non-fast scrollable region.
+
+* page/SettingsBase.h: Add two more enumerators.
+* rendering/RenderLayer.cpp:
+(WebCore::RenderLayer::invalidateEventRegion const): Update the code to be more precise now that
+we can target the update paint overlay hack to when we are painting touch-action or editable
+element regions.
+* rendering/RenderLayerBacking.cpp:
+(WebCore::RenderLayerBacking::paintDebugOverlays): Condition the painting of touch action region
+on one enumerator and the painting of editable element region on another.
+(WebCore::RenderLayerBacking::paintContents): Update the code to be more precise.
+
 2020-04-22  Chris Dumez  
 
 [ Mac wk2 ] imported/w3c/web-platform-tests/notifications/event-onclose.html is flaky failing.


Modified: trunk/Source/WebCore/page/SettingsBase.h (260546 => 260547)

--- trunk/Source/WebCore/page/SettingsBase.h	2020-04-23 00:38:55 UTC (rev 260546)
+++ trunk/Source/WebCore/page/SettingsBase.h	2020-04-23 00:42:45 UTC (rev 260547)
@@ -69,6 +69,8 @@
 enum DebugOverlayRegionFlags {
 NonFastScrollableRegion = 1 << 0,
 WheelEventHandlerRegion = 1 << 1,
+TouchActionRegion = 1 << 2,
+EditableElementRegion = 1 << 3,
 };
 
 enum class UserInterfaceDirectionPolicy {


Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (260546 => 260547)

--- trunk/Source/WebCore/rendering/RenderLayer.cpp	2020-04-23 00:38:55 UTC (rev 260546)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp	2020-04-23 00:42:45 UTC (rev 260547)
@@ -7022,7 +7022,7 @@
 if (reason == EventRegionInvalidationReason::NonCompositedFrame) {
 auto& view = renderer().view();
 view.setNeedsEventRegionUpdateForNonCompositedFrame();
-if (renderer().settings().visibleDebugOverlayRegions() & NonFastScrollableRegion)
+if (renderer().settings().visibleDebugOverlayRegions() & (TouchActionRegion | EditableElementRegion))
 view.setNeedsRepaintHackAfterCompositingLayerUpdateForDebugOverlaysOnly();
 view.compositor().scheduleCompositingLayerUpdate();
 }


Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (260546 => 260547)

--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp	2020-04-23 00:38:55 UTC (rev 260546)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp	2020-04-23 00:42:45 UTC (rev 260547)
@@ 

[webkit-changes] [260546] trunk

2020-04-22 Thread cdumez
Title: [260546] trunk








Revision 260546
Author cdu...@apple.com
Date 2020-04-22 17:38:55 -0700 (Wed, 22 Apr 2020)


Log Message
[iOS] Expose -_webView:willGoToBackForwardListItem:inPageCache:
https://bugs.webkit.org/show_bug.cgi?id=210878


Reviewed by Alex Christensen.

Source/WebKit:

Expose -_webView:willGoToBackForwardListItem:inPageCache: on iOS.

* UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::NavigationClient::willGoToBackForwardListItem):

Tools:

Enable corresponding API test on iOS.

* TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h
trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.h
trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (260545 => 260546)

--- trunk/Source/WebKit/ChangeLog	2020-04-23 00:27:58 UTC (rev 260545)
+++ trunk/Source/WebKit/ChangeLog	2020-04-23 00:38:55 UTC (rev 260546)
@@ -1,5 +1,21 @@
 2020-04-22  Chris Dumez  
 
+[iOS] Expose -_webView:willGoToBackForwardListItem:inPageCache:
+https://bugs.webkit.org/show_bug.cgi?id=210878
+
+
+Reviewed by Alex Christensen.
+
+Expose -_webView:willGoToBackForwardListItem:inPageCache: on iOS.
+
+* UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
+* UIProcess/Cocoa/NavigationState.h:
+* UIProcess/Cocoa/NavigationState.mm:
+(WebKit::NavigationState::setNavigationDelegate):
+(WebKit::NavigationState::NavigationClient::willGoToBackForwardListItem):
+
+2020-04-22  Chris Dumez  
+
 [iOS] Crash on RunningBoard process assertion invalidation
 https://bugs.webkit.org/show_bug.cgi?id=210873
 


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h (260545 => 260546)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h	2020-04-23 00:27:58 UTC (rev 260545)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h	2020-04-23 00:38:55 UTC (rev 260546)
@@ -117,7 +117,6 @@
 #else
 - (void)_webView:(WKWebView *)webView webGLLoadPolicyForURL:(NSURL *)url decisionHandler:(void (^)(_WKWebGLLoadPolicy))decisionHandler WK_API_AVAILABLE(macos(10.13.4));
 - (void)_webView:(WKWebView *)webView resolveWebGLLoadPolicyForURL:(NSURL *)url decisionHandler:(void (^)(_WKWebGLLoadPolicy))decisionHandler WK_API_AVAILABLE(macos(10.13.4));
-- (void)_webView:(WKWebView *)webView willGoToBackForwardListItem:(WKBackForwardListItem *)item inPageCache:(BOOL)inPageCache WK_API_AVAILABLE(macos(10.13.4));
 - (void)_webView:(WKWebView *)webView didFailToInitializePlugInWithInfo:(NSDictionary *)info WK_API_AVAILABLE(macos(10.13.4));
 - (void)_webView:(WKWebView *)webView didBlockInsecurePluginVersionWithInfo:(NSDictionary *)info WK_API_AVAILABLE(macos(10.14));
 - (void)_webView:(WKWebView *)webView decidePolicyForPluginLoadWithCurrentPolicy:(_WKPluginModuleLoadPolicy)policy pluginInfo:(NSDictionary *)info completionHandler:(void (^)(_WKPluginModuleLoadPolicy policy, NSString * unavailabilityDescription))completionHandler WK_API_AVAILABLE(macos(10.14.4));
@@ -124,6 +123,7 @@
 - (void)_webView:(WKWebView *)webView backForwardListItemAdded:(WKBackForwardListItem *)itemAdded removed:(NSArray *)itemsRemoved WK_API_AVAILABLE(macos(10.13.4));
 #endif
 
+- (void)_webView:(WKWebView *)webView willGoToBackForwardListItem:(WKBackForwardListItem *)item inPageCache:(BOOL)inPageCache WK_API_AVAILABLE(macos(10.13.4), ios(WK_IOS_TBA));
 - (void)_webView:(WKWebView *)webView decidePolicyForSOAuthorizationLoadWithCurrentPolicy:(_WKSOAuthorizationLoadPolicy)policy forExtension:(NSString *)extension completionHandler:(void (^)(_WKSOAuthorizationLoadPolicy policy))completionHandler WK_API_AVAILABLE(macos(10.15), ios(13.0));
 
 @end


Modified: trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.h (260545 => 260546)

--- trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.h	2020-04-23 00:27:58 UTC (rev 260545)
+++ trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.h	2020-04-23 00:38:55 UTC (rev 260546)
@@ -133,12 +133,12 @@
 #if PLATFORM(MAC)
 void webGLLoadPolicy(WebPageProxy&, const URL&, CompletionHandler&&) const final;
 void resolveWebGLLoadPolicy(WebPageProxy&, const URL&, CompletionHandler&&) const final;
-bool willGoToBackForwardListItem(WebPageProxy&, WebBackForwardListItem&, bool inBackForwardCache) final;
 bool didFailToInitializePlugIn(WebPageProxy&, API::Dictionary&) final;
 bool didBlockInsecurePluginVersion(WebPageProxy&, API::Dictionary&) final;
 void decidePolicyForPluginLoad(WebKit::WebPageProxy&, WebKit::PluginModuleLoadPolicy, API::Dictionary&, 

[webkit-changes] [260545] trunk/Source/WebKitLegacy/mac

2020-04-22 Thread darin
Title: [260545] trunk/Source/WebKitLegacy/mac








Revision 260545
Author da...@apple.com
Date 2020-04-22 17:27:58 -0700 (Wed, 22 Apr 2020)


Log Message
[Cocoa] REGRESSION (r260485): Crash in Legacy WebKit createMenu item function (reproducible under Asan)
https://bugs.webkit.org/show_bug.cgi?id=210888

Reviewed by Alex Christensen.

* WebView/WebHTMLView.mm:
(createMenuItem): Speculative fix: Go back to using a local variable. Apparently
the Objective-C for loop doesn't extend the lifetime of its argument the way the
C++ range-based for loop does, so the local variable is needed.

Modified Paths

trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm




Diff

Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (260544 => 260545)

--- trunk/Source/WebKitLegacy/mac/ChangeLog	2020-04-23 00:04:26 UTC (rev 260544)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog	2020-04-23 00:27:58 UTC (rev 260545)
@@ -1,3 +1,15 @@
+2020-04-22  Darin Adler  
+
+[Cocoa] REGRESSION (r260485): Crash in Legacy WebKit createMenu item function (reproducible under Asan)
+https://bugs.webkit.org/show_bug.cgi?id=210888
+
+Reviewed by Alex Christensen.
+
+* WebView/WebHTMLView.mm:
+(createMenuItem): Speculative fix: Go back to using a local variable. Apparently
+the Objective-C for loop doesn't extend the lifetime of its argument the way the
+C++ range-based for loop does, so the local variable is needed.
+
 2020-04-21  Peng Liu  
 
 Fix MACCATALYST build failures


Modified: trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm (260544 => 260545)

--- trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm	2020-04-23 00:04:26 UTC (rev 260544)
+++ trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm	2020-04-23 00:27:58 UTC (rev 260545)
@@ -3672,10 +3672,12 @@
 
 case WebCore::SubmenuType: {
 auto menu = adoptNS([[NSMenu alloc] init]);
+{
+auto submenuItems = createMenuItems(hitTestResult, item.subMenuItems());
+for (NSMenuItem *menuItem in submenuItems.get())
+[menu addItem:menuItem];
+}
 
-for (NSMenuItem *menuItem in createMenuItems(hitTestResult, item.subMenuItems()).get())
-[menu addItem:menuItem];
-
 auto menuItem = adoptNS([[NSMenuItem alloc] initWithTitle:item.title() action:nullptr keyEquivalent:@""]);
 
 if (auto tag = toTag(item.action()))






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260544] trunk/Source/WebKit

2020-04-22 Thread cdumez
Title: [260544] trunk/Source/WebKit








Revision 260544
Author cdu...@apple.com
Date 2020-04-22 17:04:26 -0700 (Wed, 22 Apr 2020)


Log Message
[iOS] Crash on RunningBoard process assertion invalidation
https://bugs.webkit.org/show_bug.cgi?id=210873


Reviewed by Darin Adler.

* UIProcess/ios/ProcessAssertionIOS.mm:
(-[WKRBSAssertionDelegate assertion:didInvalidateWithError:]):
Capture a weak pointer to self and make sure we only access the invalidation handler on
the main thread if |self| is still alive.

(WebKit::ProcessAssertion::~ProcessAssertion):
Null out the WKRBSAssertionDelegate's observer in the ProcessAssertion destructor, to
make sure processAssertionWasInvalidated() cannot get called after the ProcessAssertion
has been destroyed.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (260543 => 260544)

--- trunk/Source/WebKit/ChangeLog	2020-04-22 23:49:29 UTC (rev 260543)
+++ trunk/Source/WebKit/ChangeLog	2020-04-23 00:04:26 UTC (rev 260544)
@@ -1,3 +1,21 @@
+2020-04-22  Chris Dumez  
+
+[iOS] Crash on RunningBoard process assertion invalidation
+https://bugs.webkit.org/show_bug.cgi?id=210873
+
+
+Reviewed by Darin Adler.
+
+* UIProcess/ios/ProcessAssertionIOS.mm:
+(-[WKRBSAssertionDelegate assertion:didInvalidateWithError:]):
+Capture a weak pointer to self and make sure we only access the invalidation handler on
+the main thread if |self| is still alive.
+
+(WebKit::ProcessAssertion::~ProcessAssertion):
+Null out the WKRBSAssertionDelegate's observer in the ProcessAssertion destructor, to
+make sure processAssertionWasInvalidated() cannot get called after the ProcessAssertion
+has been destroyed.
+
 2020-04-22  David Kilzer  
 
 IPC::decodeSharedBuffer() should check the return value of SharedMemory::map()


Modified: trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm (260543 => 260544)

--- trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm	2020-04-22 23:49:29 UTC (rev 260543)
+++ trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm	2020-04-23 00:04:26 UTC (rev 260544)
@@ -286,9 +286,12 @@
 - (void)assertion:(RBSAssertion *)assertion didInvalidateWithError:(NSError *)error
 {
 RELEASE_LOG(ProcessSuspension, "%p - WKRBSAssertionDelegate: assertion was invalidated, error: %{public}@", error, self);
+
+__weak WKRBSAssertionDelegate *weakSelf = self;
 dispatch_async(dispatch_get_main_queue(), ^{
-if (_invalidationCallback)
-_invalidationCallback();
+WKRBSAssertionDelegate *strongSelf = weakSelf;
+if (strongSelf && strongSelf.invalidationCallback)
+strongSelf.invalidationCallback();
 });
 }
 @end
@@ -419,6 +422,9 @@
 RELEASE_LOG(ProcessSuspension, "%p - ~ProcessAssertion() Releasing process assertion for process with PID %d", this, m_pid);
 
 if (m_rbsAssertion) {
+m_delegate.get().invalidationCallback = nil;
+m_delegate = nil;
+
 [m_rbsAssertion removeObserver:m_delegate.get()];
 [m_rbsAssertion invalidate];
 } else {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260543] tags/Safari-609.2.7.2/

2020-04-22 Thread alancoon
Title: [260543] tags/Safari-609.2.7.2/








Revision 260543
Author alanc...@apple.com
Date 2020-04-22 16:49:29 -0700 (Wed, 22 Apr 2020)


Log Message
Tag Safari-609.2.7.2.

Added Paths

tags/Safari-609.2.7.2/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260542] branches/safari-609.2.7-branch

2020-04-22 Thread alancoon
Title: [260542] branches/safari-609.2.7-branch








Revision 260542
Author alanc...@apple.com
Date 2020-04-22 16:48:05 -0700 (Wed, 22 Apr 2020)


Log Message
Apply patch. rdar://problem/62083319

Modified Paths

branches/safari-609.2.7-branch/Source/WebKit/ChangeLog
branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h
branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
branches/safari-609.2.7-branch/Tools/ChangeLog
branches/safari-609.2.7-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm
branches/safari-609.2.7-branch/Tools/TestWebKitAPI/cocoa/HTTPServer.h
branches/safari-609.2.7-branch/Tools/TestWebKitAPI/cocoa/HTTPServer.mm




Diff

Modified: branches/safari-609.2.7-branch/Source/WebKit/ChangeLog (260541 => 260542)

--- branches/safari-609.2.7-branch/Source/WebKit/ChangeLog	2020-04-22 23:45:39 UTC (rev 260541)
+++ branches/safari-609.2.7-branch/Source/WebKit/ChangeLog	2020-04-22 23:48:05 UTC (rev 260542)
@@ -1,3 +1,34 @@
+2020-04-22  Russell Epstein  
+
+Apply patch. rdar://problem/62083319
+
+2020-04-22  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-16  Alan Coon  
 
 Cherry-pick r259814. rdar://problem/61888315


Modified: branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h (260541 => 260542)

--- branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h	2020-04-22 23:45:39 UTC (rev 260541)
+++ branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h	2020-04-22 23:48:05 UTC (rev 260542)
@@ -48,6 +48,7 @@
 enum class NegotiatedLegacyTLS : bool;
 class LegacyCustomProtocolManager;
 class NetworkSessionCocoa;
+using HostAndPort = std::pair;
 
 struct SessionWrapper : public CanMakeWeakPtr {
 void initialize(NSURLSessionConfiguration *, NetworkSessionCocoa&, WebCore::StoredCredentialsPolicy);
@@ -95,6 +96,11 @@
 
 SessionWrapper& sessionWrapperForTask(const WebCore::ResourceRequest&, WebCore::StoredCredentialsPolicy);
 
+void clientCertificateSuggestedForHost(NetworkDataTaskCocoa::TaskIdentifier, NSURLCredential *, const String& host, uint16_t port);
+void taskReceivedBytes(NetworkDataTaskCocoa::TaskIdentifier);
+void taskFailed(NetworkDataTaskCocoa::TaskIdentifier);
+NSURLCredential *successfulClientCertificateForHost(const String& host, uint16_t port) const;
+
 private:
 void invalidateAndCancel() override;
 void clearCredentials() override;
@@ -133,6 +139,14 @@
 Seconds m_loadThrottleLatency;
 bool m_fastServerTrustEvaluationEnabled { false };
 String m_dataConnectionServiceType;
+
+struct SuggestedClientCertificate {
+String host;
+uint16_t port { 0 };
+RetainPtr credential;
+};
+HashMap m_suggestedClientCertificates;
+HashMap> m_successfulClientCertificates;
 };
 
 } // namespace WebKit


Modified: branches/safari-609.2.7-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (260541 => 260542)

--- 

[webkit-changes] [260541] trunk/Tools

2020-04-22 Thread dbates
Title: [260541] trunk/Tools








Revision 260541
Author dba...@webkit.org
Date 2020-04-22 16:45:39 -0700 (Wed, 22 Apr 2020)


Log Message
Add a test for -focusTextInputContext on a field in detached frame
https://bugs.webkit.org/show_bug.cgi?id=210704

Reviewed by Wenson Hsieh.

Calling -focusTextInputContext on a field in a detached frame should not
cause a focus change. Add a test to ensure this behavior doesn't regress.

* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
(TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm




Diff

Modified: trunk/Tools/ChangeLog (260540 => 260541)

--- trunk/Tools/ChangeLog	2020-04-22 23:45:17 UTC (rev 260540)
+++ trunk/Tools/ChangeLog	2020-04-22 23:45:39 UTC (rev 260541)
@@ -1,3 +1,16 @@
+2020-04-22  Daniel Bates  
+
+Add a test for -focusTextInputContext on a field in detached frame
+https://bugs.webkit.org/show_bug.cgi?id=210704
+
+Reviewed by Wenson Hsieh.
+
+Calling -focusTextInputContext on a field in a detached frame should not
+cause a focus change. Add a test to ensure this behavior doesn't regress.
+
+* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
+(TEST):
+
 2020-04-22  Don Olmstead  
 
 [CMake] Use WEBKIT_EXECUTABLE in WebKitTestRunner


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm (260540 => 260541)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm	2020-04-22 23:45:17 UTC (rev 260540)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm	2020-04-22 23:45:39 UTC (rev 260541)
@@ -576,6 +576,33 @@
 EXPECT_LT([webView scrollView].zoomScale, 2);
 }
 
+TEST(RequestTextInputContext, TextInteraction_FocusElementInDetachedDocument)
+{
+IPhoneUserInterfaceSwizzler userInterfaceSwizzler;
+
+auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
+[configuration _setAllowUniversalAccessFromFileURLs:YES];
+auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 800, 600) configuration:configuration.get()]);
+webViewLoadHTMLStringAndWaitForAllFramesToPaint(webView.get(), applyIframe(@""));
+
+NSArray<_WKTextInputContext *> *contexts = [webView synchronouslyRequestTextInputContextsInRect:[webView bounds]];
+EXPECT_EQ(1UL, contexts.count);
+RetainPtr<_WKTextInputContext> inputElement = contexts[0];
+
+EXPECT_WK_STREQ("BODY", [webView stringByEvaluatingJavaScript:@"document.querySelector('iframe').contentDocument.activeElement.tagName"]);
+[webView scrollView].zoomScale = 2;
+
+// Save a reference to the framed document (to prevent its destruction when its frame is removed)
+// and remove the frame.
+[webView stringByEvaluatingJavaScript:@"g_framedDocument = document.querySelector('iframe').contentDocument; document.querySelector('iframe').remove()"];
+{
+TextInteractionForScope scope { webView, inputElement };
+EXPECT_NULL([webView synchronouslyFocusTextInputContext:inputElement.get() placeCaretAt:[inputElement boundingRect].origin]);
+}
+EXPECT_WK_STREQ("BODY", [webView stringByEvaluatingJavaScript:@"g_framedDocument.activeElement.tagName"]);
+EXPECT_EQ(2, [webView scrollView].zoomScale);
+}
+
 TEST(RequestTextInputContext, TextInteraction_FocusingElementChangesZoomScale)
 {
 IPhoneUserInterfaceSwizzler userInterfaceSwizzler;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260540] branches/safari-609.2.7-branch/Source

2020-04-22 Thread alancoon
Title: [260540] branches/safari-609.2.7-branch/Source








Revision 260540
Author alanc...@apple.com
Date 2020-04-22 16:45:17 -0700 (Wed, 22 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 (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -1,7 +1,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-609.2.7-branch/Source/WebKit/Configurations/Version.xcconfig (260539 => 260540)

--- branches/safari-609.2.7-branch/Source/WebKit/Configurations/Version.xcconfig	2020-04-22 23:41:38 UTC (rev 260539)
+++ branches/safari-609.2.7-branch/Source/WebKit/Configurations/Version.xcconfig	2020-04-22 23:45:17 UTC (rev 260540)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 609;
 MINOR_VERSION = 2;
 TINY_VERSION = 7;
-MICRO_VERSION = 1;
+MICRO_VERSION = 2;
 NANO_VERSION = 0;
 FULL_VERSION = 

[webkit-changes] [260539] trunk

2020-04-22 Thread don . olmstead
Title: [260539] trunk








Revision 260539
Author don.olmst...@sony.com
Date 2020-04-22 16:41:38 -0700 (Wed, 22 Apr 2020)


Log Message
[CMake] Use WEBKIT_EXECUTABLE in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=210132

Reviewed by Adrian Perez de Castro.

.:

Add a WebKitTestRunner derived sources directory.

* Source/cmake/WebKitFS.cmake:

Tools:

Modify CMake code to use WEBKIT_EXECUTABLE when creating WebKitTestRunner.

* WebKitTestRunner/CMakeLists.txt:
* WebKitTestRunner/PlatformFTW.cmake:
* WebKitTestRunner/PlatformGTK.cmake:
* WebKitTestRunner/PlatformWPE.cmake:
* WebKitTestRunner/PlatformWin.cmake:

Modified Paths

trunk/ChangeLog
trunk/Source/cmake/WebKitFS.cmake
trunk/Tools/ChangeLog
trunk/Tools/WebKitTestRunner/CMakeLists.txt
trunk/Tools/WebKitTestRunner/PlatformFTW.cmake
trunk/Tools/WebKitTestRunner/PlatformGTK.cmake
trunk/Tools/WebKitTestRunner/PlatformWPE.cmake
trunk/Tools/WebKitTestRunner/PlatformWin.cmake




Diff

Modified: trunk/ChangeLog (260538 => 260539)

--- trunk/ChangeLog	2020-04-22 23:09:57 UTC (rev 260538)
+++ trunk/ChangeLog	2020-04-22 23:41:38 UTC (rev 260539)
@@ -1,3 +1,14 @@
+2020-04-22  Don Olmstead  
+
+[CMake] Use WEBKIT_EXECUTABLE in WebKitTestRunner
+https://bugs.webkit.org/show_bug.cgi?id=210132
+
+Reviewed by Adrian Perez de Castro.
+
+Add a WebKitTestRunner derived sources directory.
+
+* Source/cmake/WebKitFS.cmake:
+
 2020-04-21  Adrian Perez de Castro  
 
 [GTK][CMake] Make gtk-unix-print a component of FindGTK.cmake


Modified: trunk/Source/cmake/WebKitFS.cmake (260538 => 260539)

--- trunk/Source/cmake/WebKitFS.cmake	2020-04-22 23:09:57 UTC (rev 260538)
+++ trunk/Source/cmake/WebKitFS.cmake	2020-04-22 23:41:38 UTC (rev 260539)
@@ -49,6 +49,7 @@
 set(WebInspectorUI_DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources/WebInspectorUI")
 set(MiniBrowser_DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources/MiniBrowser")
 set(DumpRenderTree_DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources/DumpRenderTree")
+set(WebKitTestRunner_DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources/WebKitTestRunner")
 
 set(FORWARDING_HEADERS_DIR ${DERIVED_SOURCES_DIR}/ForwardingHeaders)
 


Modified: trunk/Tools/ChangeLog (260538 => 260539)

--- trunk/Tools/ChangeLog	2020-04-22 23:09:57 UTC (rev 260538)
+++ trunk/Tools/ChangeLog	2020-04-22 23:41:38 UTC (rev 260539)
@@ -1,5 +1,20 @@
 2020-04-22  Don Olmstead  
 
+[CMake] Use WEBKIT_EXECUTABLE in WebKitTestRunner
+https://bugs.webkit.org/show_bug.cgi?id=210132
+
+Reviewed by Adrian Perez de Castro.
+
+Modify CMake code to use WEBKIT_EXECUTABLE when creating WebKitTestRunner.
+
+* WebKitTestRunner/CMakeLists.txt:
+* WebKitTestRunner/PlatformFTW.cmake:
+* WebKitTestRunner/PlatformGTK.cmake:
+* WebKitTestRunner/PlatformWPE.cmake:
+* WebKitTestRunner/PlatformWin.cmake:
+
+2020-04-22  Don Olmstead  
+
 [CMake] Add WebKit::WebCoreTestSupport target
 https://bugs.webkit.org/show_bug.cgi?id=210867
 


Modified: trunk/Tools/WebKitTestRunner/CMakeLists.txt (260538 => 260539)

--- trunk/Tools/WebKitTestRunner/CMakeLists.txt	2020-04-22 23:09:57 UTC (rev 260538)
+++ trunk/Tools/WebKitTestRunner/CMakeLists.txt	2020-04-22 23:41:38 UTC (rev 260539)
@@ -1,25 +1,26 @@
-set(WEBKIT_TESTRUNNER_DIR "${TOOLS_DIR}/WebKitTestRunner")
-set(WEBKIT_TESTRUNNER_INJECTEDBUNDLE_DIR "${TOOLS_DIR}/WebKitTestRunner/InjectedBundle")
-set(WEBKIT_TESTRUNNER_SHARED_DIR "${TOOLS_DIR}/TestRunnerShared/")
-set(WEBKIT_TESTRUNNER_UISCRIPTCONTEXT_DIR "${WEBKIT_TESTRUNNER_SHARED_DIR}/UIScriptContext")
-set(WEBKIT_TESTRUNNER_BINDINGS_DIR "${WEBKIT_TESTRUNNER_SHARED_DIR}/Bindings")
+set(WebKitTestRunner_DIR "${TOOLS_DIR}/WebKitTestRunner")
+set(WebKitTestRunner_SHARED_DIR "${TOOLS_DIR}/TestRunnerShared/")
+set(WebKitTestRunner_UISCRIPTCONTEXT_DIR "${WebKitTestRunner_SHARED_DIR}/UIScriptContext")
+set(WebKitTestRunner_BINDINGS_DIR "${WebKitTestRunner_SHARED_DIR}/Bindings")
 
-file(MAKE_DIRECTORY ${DERIVED_SOURCES_DIR}/InjectedBundle)
-file(MAKE_DIRECTORY ${DERIVED_SOURCES_DIR}/UIScriptContext)
+file(MAKE_DIRECTORY ${WebKitTestRunner_DERIVED_SOURCES_DIR}/InjectedBundle)
+file(MAKE_DIRECTORY ${WebKitTestRunner_DERIVED_SOURCES_DIR}/UIScriptContext)
 
 set(WebKitTestRunner_SOURCES
-${WEBKIT_TESTRUNNER_DIR}/CyclicRedundancyCheck.cpp
-${WEBKIT_TESTRUNNER_DIR}/GeolocationProviderMock.cpp
-${WEBKIT_TESTRUNNER_DIR}/Options.cpp
-${WEBKIT_TESTRUNNER_DIR}/PixelDumpSupport.cpp
-${WEBKIT_TESTRUNNER_DIR}/TestController.cpp
-${WEBKIT_TESTRUNNER_DIR}/TestInvocation.cpp
-${WEBKIT_TESTRUNNER_DIR}/TestOptions.cpp
-${WEBKIT_TESTRUNNER_DIR}/WebNotificationProvider.cpp
-${WEBKIT_TESTRUNNER_DIR}/WorkQueueManager.cpp
-${WEBKIT_TESTRUNNER_UISCRIPTCONTEXT_DIR}/UIScriptContext.cpp
-${WEBKIT_TESTRUNNER_UISCRIPTCONTEXT_DIR}/UIScriptController.cpp
-${WEBKIT_TESTRUNNER_BINDINGS_DIR}/JSWrapper.cpp
+

[webkit-changes] [260538] tags/Safari-609.2.9.1.2/

2020-04-22 Thread alancoon
Title: [260538] tags/Safari-609.2.9.1.2/








Revision 260538
Author alanc...@apple.com
Date 2020-04-22 16:09:57 -0700 (Wed, 22 Apr 2020)


Log Message
Tag Safari-609.2.9.1.2.

Added Paths

tags/Safari-609.2.9.1.2/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260537] branches/safari-609.2.9.1-branch/Source

2020-04-22 Thread alancoon
Title: [260537] branches/safari-609.2.9.1-branch/Source








Revision 260537
Author alanc...@apple.com
Date 2020-04-22 16:09:05 -0700 (Wed, 22 Apr 2020)


Log Message
Versioning.

Modified Paths

branches/safari-609.2.9.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/WebKit/Configurations/Version.xcconfig
branches/safari-609.2.9.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig




Diff

Modified: branches/safari-609.2.9.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-609.2.9.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-609.2.9.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-609.2.9.1-branch/Source/WebCore/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-609.2.9.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-609.2.9.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (260536 => 260537)

--- branches/safari-609.2.9.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-22 22:55:07 UTC (rev 260536)
+++ branches/safari-609.2.9.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-22 23:09:05 UTC (rev 260537)
@@ -2,7 +2,7 @@
 MINOR_VERSION = 2;
 TINY_VERSION = 9;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // 

[webkit-changes] [260536] tags/Safari-609.2.9.1.1/

2020-04-22 Thread alancoon
Title: [260536] tags/Safari-609.2.9.1.1/








Revision 260536
Author alanc...@apple.com
Date 2020-04-22 15:55:07 -0700 (Wed, 22 Apr 2020)


Log Message
Tag Safari-609.2.9.1.1.

Added Paths

tags/Safari-609.2.9.1.1/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260535] trunk

2020-04-22 Thread cdumez
Title: [260535] trunk








Revision 260535
Author cdu...@apple.com
Date 2020-04-22 15:45:00 -0700 (Wed, 22 Apr 2020)


Log Message
[ Mac wk2 ] imported/w3c/web-platform-tests/notifications/event-onclose.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209483


Reviewed by Geoffrey Garen.

Source/WebCore:

Align garbage collection of Notification JS wrapper with the specification:
- https://notifications.spec.whatwg.org/#garbage-collection [1]

In particular, the following changes were made:
1. Instead of using the legacy setPendingActivity() / unsetPendingActivity(), override
   ActiveDOMObject::virtualHasPendingActivity() to implement the behavior documented
   in the specification.
2. Keep the wrapper alive as long as the notification is showing and as long as there
   are relevant event listeners, as per [1]. Previously, we failed to check for event
   listeners, which was suboptimal.
3. Update the constructor to queue a task on the event loop in order to show the
   notification asynchronously, instead of relying on a SuspendableTimer for this
   purpose. Previously, the JS wrapper could get collected between construction and
   the notification getting shown, which was leading to the test flakiness.

No new tests, unskipped existing test.

* Modules/notifications/Notification.cpp:
(WebCore::Notification::Notification):
(WebCore::Notification::show):
(WebCore::Notification::finalize):
(WebCore::Notification::dispatchShowEvent):
(WebCore::Notification::dispatchClickEvent):
(WebCore::Notification::dispatchCloseEvent):
(WebCore::Notification::dispatchErrorEvent):
(WebCore::Notification::eventListenersDidChange):
(WebCore::Notification::virtualHasPendingActivity const):
* Modules/notifications/Notification.h:

LayoutTests:

Unskip test now that it is no longer flaky.

* platform/mac-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/notifications/Notification.cpp
trunk/Source/WebCore/Modules/notifications/Notification.h




Diff

Modified: trunk/LayoutTests/ChangeLog (260534 => 260535)

--- trunk/LayoutTests/ChangeLog	2020-04-22 22:16:31 UTC (rev 260534)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 22:45:00 UTC (rev 260535)
@@ -1,3 +1,15 @@
+2020-04-22  Chris Dumez  
+
+[ Mac wk2 ] imported/w3c/web-platform-tests/notifications/event-onclose.html is flaky failing.
+https://bugs.webkit.org/show_bug.cgi?id=209483
+
+
+Reviewed by Geoffrey Garen.
+
+Unskip test now that it is no longer flaky.
+
+* platform/mac-wk2/TestExpectations:
+
 2020-04-22  Myles C. Maxfield  
 
 Update dom/events/Event-dispatch-redispatch.html from upstream WPT


Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (260534 => 260535)

--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-22 22:16:31 UTC (rev 260534)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-22 22:45:00 UTC (rev 260535)
@@ -1028,8 +1028,6 @@
 
 webkit.org/b/209295 [ Debug ] imported/w3c/web-platform-tests/service-workers/service-worker/respond-with-body-accessed-response.https.html  [ Pass Failure ]
 
-webkit.org/b/209483 imported/w3c/web-platform-tests/notifications/event-onclose.html [ Pass Failure ]
-
 webkit.org/b/209503 [ Debug ] http/tests/referrer-policy-anchor/origin/cross-origin-http.https.html [ Pass Crash ]
 
 webkit.org/b/209564 svg/as-image/svg-image-with-data-uri-background.html [ Pass ImageOnlyFailure ]


Modified: trunk/Source/WebCore/ChangeLog (260534 => 260535)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 22:16:31 UTC (rev 260534)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 22:45:00 UTC (rev 260535)
@@ -1,3 +1,40 @@
+2020-04-22  Chris Dumez  
+
+[ Mac wk2 ] imported/w3c/web-platform-tests/notifications/event-onclose.html is flaky failing.
+https://bugs.webkit.org/show_bug.cgi?id=209483
+
+
+Reviewed by Geoffrey Garen.
+
+Align garbage collection of Notification JS wrapper with the specification:
+- https://notifications.spec.whatwg.org/#garbage-collection [1]
+
+In particular, the following changes were made:
+1. Instead of using the legacy setPendingActivity() / unsetPendingActivity(), override
+   ActiveDOMObject::virtualHasPendingActivity() to implement the behavior documented
+   in the specification.
+2. Keep the wrapper alive as long as the notification is showing and as long as there
+   are relevant event listeners, as per [1]. Previously, we failed to check for event
+   listeners, which was suboptimal.
+3. Update the constructor to queue a task on the event loop in order to show the
+   notification asynchronously, instead of relying on a SuspendableTimer for this
+   purpose. Previously, the JS wrapper could get collected between construction and
+   the notification 

[webkit-changes] [260534] trunk

2020-04-22 Thread don . olmstead
Title: [260534] trunk








Revision 260534
Author don.olmst...@sony.com
Date 2020-04-22 15:16:31 -0700 (Wed, 22 Apr 2020)


Log Message
[CMake] Add WebKit::WebCoreTestSupport target
https://bugs.webkit.org/show_bug.cgi?id=210867

Reviewed by Michael Catanzaro.

Source/WebCore:

Add the WebKit::WebCoreTestSupport target. Modify WebCoreTestSupport to only
have a dependency on WebCore if WebCore is built as a shared library.

* CMakeLists.txt:

Tools:

Use the WebKit::WebCoreTestSupport target in DumpRenderTree. Fix an
include for WPE in WebKitTestRunner.

* DumpRenderTree/CMakeLists.txt:
* DumpRenderTree/PlatformWin.cmake:
* WebKitTestRunner/PlatformWPE.cmake:

Modified Paths

trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/CMakeLists.txt
trunk/Tools/DumpRenderTree/PlatformWin.cmake
trunk/Tools/WebKitTestRunner/PlatformWPE.cmake




Diff

Modified: trunk/Source/WebCore/CMakeLists.txt (260533 => 260534)

--- trunk/Source/WebCore/CMakeLists.txt	2020-04-22 21:56:02 UTC (rev 260533)
+++ trunk/Source/WebCore/CMakeLists.txt	2020-04-22 22:16:31 UTC (rev 260534)
@@ -1261,9 +1261,6 @@
 WebKit::_javascript_Core
 WebKit::PAL
 )
-if (NOT WTF_OS_WINDOWS)
-list(APPEND WebCoreTestSupport_LIBRARIES WebCore)
-endif ()
 
 if (ENABLE_LEGACY_ENCRYPTED_MEDIA)
 list(APPEND WebCore_SOURCES
@@ -1704,7 +1701,13 @@
 set(WebCore_INTERFACE_LIBRARIES WebCore)
 set(WebCore_INTERFACE_INCLUDE_DIRECTORIES ${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR})
 
+set(WebCoreTestSupport_INTERFACE_LIBRARIES WebCoreTestSupport)
+set(WebCoreTestSupport_INTERFACE_INCLUDE_DIRECTORIES
+${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}/WebCoreTestSupport
+)
+
 WEBKIT_FRAMEWORK_DECLARE(WebCore)
+WEBKIT_FRAMEWORK_DECLARE(WebCoreTestSupport)
 WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
 
 # Generate CommandLineAPIModuleSource.h
@@ -2045,21 +2048,27 @@
 WEBKIT_ADD_PRECOMPILED_HEADER("WebCoreTestSupportPrefix.h" "testing/js/WebCoreTestSupportPrefix.cpp" WebCoreTestSupport_SOURCES)
 endif ()
 
-add_library(WebCoreTestSupport ${WebCoreTestSupport_LIBRARY_TYPE} ${WebCoreTestSupport_SOURCES})
-add_dependencies(WebCoreTestSupport WebCore WebCoreTestSupportBindings)
-target_compile_definitions(WebCoreTestSupport PRIVATE "BUILDING_WebCoreTestSupport")
-target_include_directories(WebCoreTestSupport PUBLIC ${WebCoreTestSupport_INCLUDE_DIRECTORIES} ${WebCore_INCLUDE_DIRECTORIES})
-target_include_directories(WebCoreTestSupport PRIVATE ${WebCoreTestSupport_PRIVATE_INCLUDE_DIRECTORIES} ${WebCore_PRIVATE_INCLUDE_DIRECTORIES})
-target_include_directories(WebCoreTestSupport SYSTEM PUBLIC ${WebCoreTestSupport_SYSTEM_INCLUDE_DIRECTORIES} ${WebCore_SYSTEM_INCLUDE_DIRECTORIES})
-target_link_libraries(WebCoreTestSupport PRIVATE ${WebCoreTestSupport_LIBRARIES})
+WEBKIT_COPY_FILES(Copy_WebCoreTestSupportPrivateHeaders
+DESTINATION ${WebCore_PRIVATE_FRAMEWORK_HEADERS_DIR}/WebCoreTestSupport
+FILES testing/js/WebCoreTestSupport.h
+FLATTENED
+)
+list(APPEND WebCoreTestSupport_INTERFACE_DEPENDENCIES Copy_WebCoreTestSupportPrivateHeaders)
 
-if (WebCoreTestSupport_OUTPUT_NAME)
-set_target_properties(WebCoreTestSupport PROPERTIES OUTPUT_NAME ${WebCoreTestSupport_OUTPUT_NAME})
-if (MSVC)
-add_compile_options(/WX-)
-endif ()
+list(APPEND WebCoreTestSupport_INCLUDE_DIRECTORIES ${WebCore_INCLUDE_DIRECTORIES})
+list(APPEND WebCoreTestSupport_PRIVATE_INCLUDE_DIRECTORIES ${WebCore_PRIVATE_INCLUDE_DIRECTORIES})
+list(APPEND WebCoreTestSupport_SYSTEM_INCLUDE_DIRECTORIES ${WebCore_SYSTEM_INCLUDE_DIRECTORIES})
+
+if (WebCore_LIBRARY_TYPE STREQUAL SHARED)
+list(APPEND WebCoreTestSupport_LIBRARIES WebCore)
+else ()
+list(APPEND WebCoreTestSupport_LIBRARIES ${WebCore_LIBRARIES})
+list(APPEND WebCoreTestSupport_PRIVATE_LIBRARIES ${WebCore_PRIVATE_LIBRARIES})
 endif ()
 
+WEBKIT_FRAMEWORK(WebCoreTestSupport)
+WEBKIT_FRAMEWORK_TARGET(WebCoreTestSupport)
+
 if (${WebCore_LIBRARY_TYPE} MATCHES "SHARED")
 set_target_properties(WebCore PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
 install(TARGETS WebCore DESTINATION "${LIB_INSTALL_DIR}")


Modified: trunk/Source/WebCore/ChangeLog (260533 => 260534)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 21:56:02 UTC (rev 260533)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 22:16:31 UTC (rev 260534)
@@ -1,3 +1,15 @@
+2020-04-22  Don Olmstead  
+
+[CMake] Add WebKit::WebCoreTestSupport target
+https://bugs.webkit.org/show_bug.cgi?id=210867
+
+Reviewed by Michael Catanzaro.
+
+Add the WebKit::WebCoreTestSupport target. Modify WebCoreTestSupport to only
+have a dependency on WebCore if WebCore is built as a shared library.
+
+* CMakeLists.txt:
+
 2020-04-22  Eric Carlson  
 
 fast/events/event-handler-detached-document-dispatchEvent.html is crashing


Modified: trunk/Tools/ChangeLog (260533 => 260534)

--- trunk/Tools/ChangeLog	2020-04-22 21:56:02 UTC (rev 

[webkit-changes] [260533] trunk/LayoutTests

2020-04-22 Thread mmaxfield
Title: [260533] trunk/LayoutTests








Revision 260533
Author mmaxfi...@apple.com
Date 2020-04-22 14:56:02 -0700 (Wed, 22 Apr 2020)


Log Message
Update dom/events/Event-dispatch-redispatch.html from upstream WPT
https://bugs.webkit.org/show_bug.cgi?id=210842


Reviewed by Jon Lee.

Pull in https://github.com/web-platform-tests/wpt/commit/e30e282ed7b1fb77f6d953fb05ef74a34985f472
to our local repo.

LayoutTests/imported/w3c:

* web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
* web-platform-tests/dom/events/Event-dispatch-redispatch.html:

LayoutTests:

* platform/gtk/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch.html
trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt
trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt
trunk/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (260532 => 260533)

--- trunk/LayoutTests/ChangeLog	2020-04-22 21:31:36 UTC (rev 260532)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 21:56:02 UTC (rev 260533)
@@ -1,3 +1,18 @@
+2020-04-22  Myles C. Maxfield  
+
+Update dom/events/Event-dispatch-redispatch.html from upstream WPT
+https://bugs.webkit.org/show_bug.cgi?id=210842
+
+
+Reviewed by Jon Lee.
+
+Pull in https://github.com/web-platform-tests/wpt/commit/e30e282ed7b1fb77f6d953fb05ef74a34985f472
+to our local repo.
+
+* platform/gtk/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
+* platform/ios-wk2/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
+* platform/wpe/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
+
 2020-04-22  Chris Dumez  
 
 Unreviewed, skip imported/w3c/web-platform-tests/html/cross-origin-opener-policy since we do not support this feature.


Modified: trunk/LayoutTests/imported/w3c/ChangeLog (260532 => 260533)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2020-04-22 21:31:36 UTC (rev 260532)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2020-04-22 21:56:02 UTC (rev 260533)
@@ -1,3 +1,17 @@
+2020-04-22  Myles C. Maxfield  
+
+Update dom/events/Event-dispatch-redispatch.html from upstream WPT
+https://bugs.webkit.org/show_bug.cgi?id=210842
+
+
+Reviewed by Jon Lee.
+
+Pull in https://github.com/web-platform-tests/wpt/commit/e30e282ed7b1fb77f6d953fb05ef74a34985f472
+to our local repo.
+
+* web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt:
+* web-platform-tests/dom/events/Event-dispatch-redispatch.html:
+
 2020-04-22  Antoine Quint  
 
 [Web Animations] Coordinate "update animations and send events" procedure across multiple timelines


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt (260532 => 260533)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt	2020-04-22 21:31:36 UTC (rev 260532)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch-expected.txt	2020-04-22 21:56:02 UTC (rev 260533)
@@ -3,5 +3,5 @@
 PASS Redispatching DOMContentLoaded event after being dispatched 
 PASS Redispatching mouseup event whose default action dispatches a click event 
 PASS Redispatching event which is being dispatched 
-PASS Synthesizing click on button... (button width / height: 62.734375 / 18) 
+PASS Synthesizing click on button... 
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch.html (260532 => 260533)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch.html	2020-04-22 21:31:36 UTC (rev 260532)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch.html	2020-04-22 21:56:02 UTC (rev 260533)
@@ -104,7 +104,7 @@
 
   await waitForLoad;
   let bounds = buttonElement.getBoundingClientRect();
-  test(() => { assert_true(true); }, `Synthesizing click on button... (button width / height: ${bounds.width} / ${bounds.height})`);
+  test(() => { assert_true(true); }, `Synthesizing click on button...`);
   new test_driver.Actions()
   .pointerMove(Math.floor(bounds.width / 5),
 

[webkit-changes] [260532] tags/Safari-609.2.9.0.1/

2020-04-22 Thread alancoon
Title: [260532] tags/Safari-609.2.9.0.1/








Revision 260532
Author alanc...@apple.com
Date 2020-04-22 14:31:36 -0700 (Wed, 22 Apr 2020)


Log Message
Tag Safari-609.2.9.0.1.

Added Paths

tags/Safari-609.2.9.0.1/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260531] trunk/LayoutTests

2020-04-22 Thread cdumez
Title: [260531] trunk/LayoutTests








Revision 260531
Author cdu...@apple.com
Date 2020-04-22 13:47:15 -0700 (Wed, 22 Apr 2020)


Log Message
Unreviewed, skip imported/w3c/web-platform-tests/html/cross-origin-opener-policy since we do not support this feature.

It is not worth spending time investigating failures / flakiness in the folder until we actually
implement this feature.

* TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (260530 => 260531)

--- trunk/LayoutTests/ChangeLog	2020-04-22 20:07:19 UTC (rev 260530)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 20:47:15 UTC (rev 260531)
@@ -1,3 +1,12 @@
+2020-04-22  Chris Dumez  
+
+Unreviewed, skip imported/w3c/web-platform-tests/html/cross-origin-opener-policy since we do not support this feature.
+
+It is not worth spending time investigating failures / flakiness in the folder until we actually
+implement this feature.
+
+* TestExpectations:
+
 2020-04-22  Antti Koivisto  
 
 REGRESSION (r249160): Deleting newline after pasting text ending in a newline results in a discontinuity


Modified: trunk/LayoutTests/TestExpectations (260530 => 260531)

--- trunk/LayoutTests/TestExpectations	2020-04-22 20:07:19 UTC (rev 260530)
+++ trunk/LayoutTests/TestExpectations	2020-04-22 20:47:15 UTC (rev 260531)
@@ -434,6 +434,9 @@
 imported/w3c/web-platform-tests/html/rendering/non-replaced-elements/form-controls/select-sizing-001.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/html/rendering/non-replaced-elements/phrasing-content-0/font-element-text-decoration-color/001-x.xhtml [ ImageOnlyFailure ]
 
+# Cross-Origin Opener Policy is not supported.
+imported/w3c/web-platform-tests/html/cross-origin-opener-policy [ Skip ]
+
 # Sometimes prints weird output at the beginning of the tests.
 imported/w3c/web-platform-tests/2dcontext/wide-gamut-canvas [ Failure Pass ]
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260530] trunk/Tools

2020-04-22 Thread sihui_liu
Title: [260530] trunk/Tools








Revision 260530
Author sihui_...@apple.com
Date 2020-04-22 13:07:19 -0700 (Wed, 22 Apr 2020)


Log Message
TextManipulation.CompleteTextManipulationAvoidCrashingWhenContentIsRemoved does not wait for result
https://bugs.webkit.org/show_bug.cgi?id=210871

Reviewed by Alex Christensen.

* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm




Diff

Modified: trunk/Tools/ChangeLog (260529 => 260530)

--- trunk/Tools/ChangeLog	2020-04-22 19:38:00 UTC (rev 260529)
+++ trunk/Tools/ChangeLog	2020-04-22 20:07:19 UTC (rev 260530)
@@ -1,3 +1,13 @@
+2020-04-22  Sihui Liu  
+
+TextManipulation.CompleteTextManipulationAvoidCrashingWhenContentIsRemoved does not wait for result
+https://bugs.webkit.org/show_bug.cgi?id=210871
+
+Reviewed by Alex Christensen.
+
+* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
+(TestWebKitAPI::TEST):
+
 2020-04-22  Alex Christensen  
 
 Add unit test for resuming downloads


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm (260529 => 260530)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm	2020-04-22 19:38:00 UTC (rev 260529)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm	2020-04-22 20:07:19 UTC (rev 260530)
@@ -872,6 +872,7 @@
 "paragraph.textContent = 'Hello world';"
 "document.body.appendChild(paragraph);"
 "setTimeout(() => { paragraph.remove(); webkit.messageHandlers.testHandler.postMessage('DoneRemovingParagraph') })"];
+TestWebKitAPI::Util::run();
 
 done = false;
 [webView _completeTextManipulationForItems:@[(_WKTextManipulationItem *)createItem(items[0].identifier, {
@@ -880,6 +881,7 @@
 EXPECT_EQ(errors, nil);
 done = true;
 }];
+TestWebKitAPI::Util::run();
 
 EXPECT_WK_STREQ("Simple HTML file!", [webView stringByEvaluatingJavaScript:@"document.body.textContent"]);
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260529] trunk/Source/WebCore

2020-04-22 Thread eric . carlson
Title: [260529] trunk/Source/WebCore








Revision 260529
Author eric.carl...@apple.com
Date 2020-04-22 12:38:00 -0700 (Wed, 22 Apr 2020)


Log Message
fast/events/event-handler-detached-document-dispatchEvent.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=210859


Reviewed by Jer Noble.

A media session may not have a Page when it is created, so register with the MediaUsageManager
in inActiveDocumentChanged if necessary.

No new tests, fixes an existing test.

* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::MediaElementSession):
(WebCore::MediaElementSession::~MediaElementSession):
(WebCore::MediaElementSession::addedMediaUsageManagerSessionIfNecessary):
(WebCore::MediaElementSession::inActiveDocumentChanged):
(WebCore::MediaElementSession::updateMediaUsageIfChanged):
* html/MediaElementSession.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/MediaElementSession.cpp
trunk/Source/WebCore/html/MediaElementSession.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (260528 => 260529)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 19:24:55 UTC (rev 260528)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 19:38:00 UTC (rev 260529)
@@ -1,3 +1,24 @@
+2020-04-22  Eric Carlson  
+
+fast/events/event-handler-detached-document-dispatchEvent.html is crashing
+https://bugs.webkit.org/show_bug.cgi?id=210859
+
+
+Reviewed by Jer Noble.
+
+A media session may not have a Page when it is created, so register with the MediaUsageManager
+in inActiveDocumentChanged if necessary.
+
+No new tests, fixes an existing test.
+
+* html/MediaElementSession.cpp:
+(WebCore::MediaElementSession::MediaElementSession):
+(WebCore::MediaElementSession::~MediaElementSession):
+(WebCore::MediaElementSession::addedMediaUsageManagerSessionIfNecessary):
+(WebCore::MediaElementSession::inActiveDocumentChanged):
+(WebCore::MediaElementSession::updateMediaUsageIfChanged):
+* html/MediaElementSession.h:
+
 2020-04-22  Antti Koivisto  
 
 REGRESSION (r249160): Deleting newline after pasting text ending in a newline results in a discontinuity


Modified: trunk/Source/WebCore/html/MediaElementSession.cpp (260528 => 260529)

--- trunk/Source/WebCore/html/MediaElementSession.cpp	2020-04-22 19:24:55 UTC (rev 260528)
+++ trunk/Source/WebCore/html/MediaElementSession.cpp	2020-04-22 19:38:00 UTC (rev 260529)
@@ -120,20 +120,33 @@
 , m_logIdentifier(element.logIdentifier())
 #endif
 {
-#if ENABLE(MEDIA_USAGE)
-if (auto page = m_element.document().page())
-page->chrome().client().addMediaUsageManagerSession(mediaSessionIdentifier(), m_element.sourceApplicationIdentifier(), m_element.document().url());
-#endif
+addedMediaUsageManagerSessionIfNecessary();
 }
 
 MediaElementSession::~MediaElementSession()
 {
 #if ENABLE(MEDIA_USAGE)
-if (auto page = m_element.document().page())
+auto page = m_element.document().page();
+if (page && m_haveAddedMediaUsageManagerSession)
 page->chrome().client().removeMediaUsageManagerSession(mediaSessionIdentifier());
 #endif
 }
 
+void MediaElementSession::addedMediaUsageManagerSessionIfNecessary()
+{
+#if ENABLE(MEDIA_USAGE)
+if (m_haveAddedMediaUsageManagerSession)
+return;
+
+auto page = m_element.document().page();
+if (!page)
+return;
+
+m_haveAddedMediaUsageManagerSession = true;
+page->chrome().client().addMediaUsageManagerSession(mediaSessionIdentifier(), m_element.sourceApplicationIdentifier(), m_element.document().url());
+#endif
+}
+
 void MediaElementSession::registerWithDocument(Document& document)
 {
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
@@ -200,6 +213,7 @@
 {
 m_elementIsHiddenBecauseItWasRemovedFromDOM = !m_element.inActiveDocument();
 scheduleClientDataBufferingCheck();
+addedMediaUsageManagerSessionIfNecessary();
 }
 
 void MediaElementSession::scheduleClientDataBufferingCheck()
@@ -1068,6 +1082,7 @@
 m_mediaUsageInfo = WTFMove(usage);
 
 #if ENABLE(MEDIA_USAGE)
+ASSERT(m_haveAddedMediaUsageManagerSession);
 page->chrome().client().updateMediaUsageManagerSessionState(mediaSessionIdentifier(), *m_mediaUsageInfo);
 #endif
 }


Modified: trunk/Source/WebCore/html/MediaElementSession.h (260528 => 260529)

--- trunk/Source/WebCore/html/MediaElementSession.h	2020-04-22 19:24:55 UTC (rev 260528)
+++ trunk/Source/WebCore/html/MediaElementSession.h	2020-04-22 19:38:00 UTC (rev 260529)
@@ -189,6 +189,8 @@
 void clientDataBufferingTimerFired();
 void updateClientDataBuffering();
 
+void addedMediaUsageManagerSessionIfNecessary();
+
 HTMLMediaElement& m_element;
 BehaviorRestrictions m_restrictions;
 
@@ -216,6 +218,10 @@
 #if !RELEASE_LOG_DISABLED
 const void* m_logIdentifier;
 #endif
+
+#if ENABLE(MEDIA_USAGE)
+bool m_haveAddedMediaUsageManagerSession { false };
+#endif
 };
 
 String convertEnumerationToString(const 

[webkit-changes] [260528] trunk

2020-04-22 Thread antti
Title: [260528] trunk








Revision 260528
Author an...@apple.com
Date 2020-04-22 12:24:55 -0700 (Wed, 22 Apr 2020)


Log Message
REGRESSION (r249160): Deleting newline after pasting text ending in a newline results in a discontinuity
https://bugs.webkit.org/show_bug.cgi?id=210677


Reviewed by Zalan Bujtas.

Source/WebCore:

Test: fast/text/delete-line-break-in-pre.html

* rendering/RenderTextLineBoxes.cpp:
(WebCore::RenderTextLineBoxes::dirtyRange):

r249160 changed InlineTextBox end offset to be consistently first-past-end.
The code here that updates lineBreakPos needs to take this into account too.

LayoutTests:

* fast/text/delete-line-break-in-pre-expected.html: Added.
* fast/text/delete-line-break-in-pre.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderTextLineBoxes.cpp


Added Paths

trunk/LayoutTests/fast/text/delete-line-break-in-pre-expected.html
trunk/LayoutTests/fast/text/delete-line-break-in-pre.html




Diff

Modified: trunk/LayoutTests/ChangeLog (260527 => 260528)

--- trunk/LayoutTests/ChangeLog	2020-04-22 19:14:59 UTC (rev 260527)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 19:24:55 UTC (rev 260528)
@@ -1,3 +1,14 @@
+2020-04-22  Antti Koivisto  
+
+REGRESSION (r249160): Deleting newline after pasting text ending in a newline results in a discontinuity
+https://bugs.webkit.org/show_bug.cgi?id=210677
+
+
+Reviewed by Zalan Bujtas.
+
+* fast/text/delete-line-break-in-pre-expected.html: Added.
+* fast/text/delete-line-break-in-pre.html: Added.
+
 2020-04-22  Chris Dumez  
 
 Add layout test to validate the User-Agent HTTP header of XMLHttpRequest


Added: trunk/LayoutTests/fast/text/delete-line-break-in-pre-expected.html (0 => 260528)

--- trunk/LayoutTests/fast/text/delete-line-break-in-pre-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/text/delete-line-break-in-pre-expected.html	2020-04-22 19:24:55 UTC (rev 260528)
@@ -0,0 +1,7 @@
+
+#text { white-space:pre-wrap; }
+
+
+
+text.textContent = "a\nb\nc\n";
+


Added: trunk/LayoutTests/fast/text/delete-line-break-in-pre.html (0 => 260528)

--- trunk/LayoutTests/fast/text/delete-line-break-in-pre.html	(rev 0)
+++ trunk/LayoutTests/fast/text/delete-line-break-in-pre.html	2020-04-22 19:24:55 UTC (rev 260528)
@@ -0,0 +1,9 @@
+
+#text { white-space:pre-wrap; }
+
+
+
+text.textContent = "a\nb\n\nc\n";
+text.offsetWidth;
+text.firstChild.deleteData(3, 1);
+


Modified: trunk/Source/WebCore/ChangeLog (260527 => 260528)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 19:14:59 UTC (rev 260527)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 19:24:55 UTC (rev 260528)
@@ -1,3 +1,19 @@
+2020-04-22  Antti Koivisto  
+
+REGRESSION (r249160): Deleting newline after pasting text ending in a newline results in a discontinuity
+https://bugs.webkit.org/show_bug.cgi?id=210677
+
+
+Reviewed by Zalan Bujtas.
+
+Test: fast/text/delete-line-break-in-pre.html
+
+* rendering/RenderTextLineBoxes.cpp:
+(WebCore::RenderTextLineBoxes::dirtyRange):
+
+r249160 changed InlineTextBox end offset to be consistently first-past-end.
+The code here that updates lineBreakPos needs to take this into account too.
+
 2020-04-22  Antoine Quint  
 
 [Web Animations] Coordinate "update animations and send events" procedure across multiple timelines


Modified: trunk/Source/WebCore/rendering/RenderTextLineBoxes.cpp (260527 => 260528)

--- trunk/Source/WebCore/rendering/RenderTextLineBoxes.cpp	2020-04-22 19:14:59 UTC (rev 260527)
+++ trunk/Source/WebCore/rendering/RenderTextLineBoxes.cpp	2020-04-22 19:24:55 UTC (rev 260528)
@@ -549,11 +549,13 @@
 firstRootBox->markDirty();
 dirtiedLines = true;
 }
+
 for (auto* current = firstRootBox; current && current != lastRootBox; current = current->nextRootBox()) {
-if (current->lineBreakObj() ==  && current->lineBreakPos() > end)
+auto lineBreakPos = current->lineBreakPos();
+if (current->lineBreakObj() ==  && (lineBreakPos > end || (start != end && lineBreakPos == end)))
 current->setLineBreakPos(current->lineBreakPos() + lengthDelta);
 }
-
+
 // If the text node is empty, dirty the line where new text will be inserted.
 if (!m_first && renderer.parent()) {
 renderer.parent()->dirtyLinesFromChangedChild(renderer);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260527] trunk/Source/WebKit

2020-04-22 Thread ddkilzer
Title: [260527] trunk/Source/WebKit








Revision 260527
Author ddkil...@apple.com
Date 2020-04-22 12:14:59 -0700 (Wed, 22 Apr 2020)


Log Message
IPC::decodeSharedBuffer() should check the return value of SharedMemory::map()



Reviewed by Geoffrey Garen.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::decodeSharedBuffer):
- Add nullptr check and early return.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (260526 => 260527)

--- trunk/Source/WebKit/ChangeLog	2020-04-22 18:59:39 UTC (rev 260526)
+++ trunk/Source/WebKit/ChangeLog	2020-04-22 19:14:59 UTC (rev 260527)
@@ -1,3 +1,15 @@
+2020-04-22  David Kilzer  
+
+IPC::decodeSharedBuffer() should check the return value of SharedMemory::map()
+
+
+
+Reviewed by Geoffrey Garen.
+
+* Shared/WebCoreArgumentCoders.cpp:
+(IPC::decodeSharedBuffer):
+- Add nullptr check and early return.
+
 2020-04-22  Brent Fulgham  
 
 Switch from debug ASSERT to RELEASE_ASSERT in toNPJSObject


Modified: trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp (260526 => 260527)

--- trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp	2020-04-22 18:59:39 UTC (rev 260526)
+++ trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp	2020-04-22 19:14:59 UTC (rev 260527)
@@ -175,6 +175,9 @@
 return false;
 
 auto sharedMemoryBuffer = SharedMemory::map(handle, SharedMemory::Protection::ReadOnly);
+if (!sharedMemoryBuffer)
+return false;
+
 buffer = SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), bufferSize);
 #endif
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260526] trunk/LayoutTests

2020-04-22 Thread cdumez
Title: [260526] trunk/LayoutTests








Revision 260526
Author cdu...@apple.com
Date 2020-04-22 11:59:39 -0700 (Wed, 22 Apr 2020)


Log Message
Add layout test to validate the User-Agent HTTP header of XMLHttpRequest
https://bugs.webkit.org/show_bug.cgi?id=210863

Reviewed by Youenn Fablet.

* http/tests/xmlhttprequest/xhr-user-agent-expected.txt: Added.
* http/tests/xmlhttprequest/xhr-user-agent.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog


Added Paths

trunk/LayoutTests/http/tests/xmlhttprequest/resources/echo-user-agent.php
trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent-expected.txt
trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent.html




Diff

Modified: trunk/LayoutTests/ChangeLog (260525 => 260526)

--- trunk/LayoutTests/ChangeLog	2020-04-22 18:47:36 UTC (rev 260525)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 18:59:39 UTC (rev 260526)
@@ -1,3 +1,13 @@
+2020-04-22  Chris Dumez  
+
+Add layout test to validate the User-Agent HTTP header of XMLHttpRequest
+https://bugs.webkit.org/show_bug.cgi?id=210863
+
+Reviewed by Youenn Fablet.
+
+* http/tests/xmlhttprequest/xhr-user-agent-expected.txt: Added.
+* http/tests/xmlhttprequest/xhr-user-agent.html: Added.
+
 2020-04-22  Antoine Quint  
 
 [Web Animations] Coordinate "update animations and send events" procedure across multiple timelines


Added: trunk/LayoutTests/http/tests/xmlhttprequest/resources/echo-user-agent.php (0 => 260526)

--- trunk/LayoutTests/http/tests/xmlhttprequest/resources/echo-user-agent.php	(rev 0)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/resources/echo-user-agent.php	2020-04-22 18:59:39 UTC (rev 260526)
@@ -0,0 +1 @@
+


Added: trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent-expected.txt (0 => 260526)

--- trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent-expected.txt	(rev 0)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent-expected.txt	2020-04-22 18:59:39 UTC (rev 260526)
@@ -0,0 +1,19 @@
+Validates User-Agent header of XMLHttpRequest
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+* Synchronous XHR
+PASS syncXHR.status is 200
+PASS syncXHRUserAgent.includes('AppleWebKit/') is true
+
+* Asynchronous XHR
+PASS asyncXHR.status is 200
+PASS asyncXHRUserAgent.includes('AppleWebKit/') is true
+
+PASS syncXHRUserAgent === asyncXHRUserAgent is true
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent.html (0 => 260526)

--- trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent.html	(rev 0)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/xhr-user-agent.html	2020-04-22 18:59:39 UTC (rev 260526)
@@ -0,0 +1,35 @@
+
+
+
+
+description("Validates User-Agent header of XMLHttpRequest");
+jsTestIsAsync = true;
+
+_onload_ = () => {
+debug ("* Synchronous XHR");
+syncXHR = new XMLHttpRequest();
+syncXHR.open("GET", 'resources/echo-user-agent.php', false);
+syncXHR.send("");
+shouldBe("syncXHR.status", "200");
+syncXHRUserAgent = syncXHR.responseText;
+shouldBeTrue("syncXHRUserAgent.includes('AppleWebKit/')");
+   
+debug("");
+asyncXHR = new XMLHttpRequest();
+asyncXHR._onload_ = () => {
+debug("* Asynchronous XHR");
+shouldBe("asyncXHR.status", "200");
+asyncXHRUserAgent = asyncXHR.responseText;
+shouldBeTrue("asyncXHRUserAgent.includes('AppleWebKit/')");
+debug("");
+shouldBeTrue("syncXHRUserAgent === asyncXHRUserAgent");
+debug("");
+finishJSTest();
+}
+asyncXHR.open("GET", 'resources/echo-user-agent.php', true);
+asyncXHR.send("");
+}
+
+
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260525] trunk

2020-04-22 Thread graouts
Title: [260525] trunk








Revision 260525
Author grao...@webkit.org
Date 2020-04-22 11:47:36 -0700 (Wed, 22 Apr 2020)


Log Message
[Web Animations] Coordinate "update animations and send events" procedure across multiple timelines
https://bugs.webkit.org/show_bug.cgi?id=202109


Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Mark a new test as PASS which shows that we correctly perform a single microstask checkpoint when updating multiple timelines.

* web-platform-tests/web-animations/timing-model/timelines/update-and-send-events-expected.txt:

Source/WebCore:

So far, although we did manage multiple animation timelines per document, we mostly operated
under the assumption that there really was a single timeline. In this patch we make the
"update animations and send events" procedure, which is central to the lifecycle of animations,
work with multiple timelines such that a single microtask checkpoint is performed even with multiple
timelines, whereas we would perform one per timeline before. To do this, we move much of the logic
DocumentTimeline::updateAnimationsAndSendEvents() to DocumentTimelinesController where each step is
run across each timeline, rather than running all steps for each timeline one after the other,
respecting the single microtask checkpoint in the middle of the process.

To minimize code churn at this stage, we still keep a fair bit of logic in DocumentTimeline and,
while we remove updateAnimationsAndSendEvents(), internalUpdateAnimationsAndSendEvents() and
updateCurrentTime(), we expose three methods that allow to run the pre-flight sequence in
documentWillUpdateAnimationsAndSendEvents(), collect pending events in
prepareForPendingAnimationEventsDispatch() and run the post-flight sequence
in documentDidUpdateAnimationsAndSendEvents().

None of the logic changes, this is just moving code around. In the future, more patches will move
code from DocumentTimeline up to DocumentTimelinesController such that events are enqueued there,
and animation scheduling as well. But this already lets us pass a new test that used to flakily
reject promises in the WPT test web-animations/timing-model/timelines/update-and-send-events.html.

* animation/AnimationTimeline.h:
(WebCore::AnimationTimeline::relevantAnimations const):
(WebCore::AnimationTimeline::allAnimations const):
* animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::documentWillUpdateAnimationsAndSendEvents):
(WebCore::DocumentTimeline::documentDidUpdateAnimationsAndSendEvents):
(WebCore::DocumentTimeline::prepareForPendingAnimationEventsDispatch):
(WebCore::DocumentTimeline::updateCurrentTime): Deleted.
(WebCore::DocumentTimeline::updateAnimationsAndSendEvents): Deleted.
(WebCore::DocumentTimeline::internalUpdateAnimationsAndSendEvents): Deleted.
* animation/DocumentTimeline.h:
* animation/DocumentTimelinesController.cpp:
(WebCore::DocumentTimelinesController::DocumentTimelinesController):
(WebCore::DocumentTimelinesController::updateAnimationsAndSendEvents):
* animation/DocumentTimelinesController.h:
* animation/WebAnimationTypes.h:
* dom/Document.cpp:
(WebCore::Document::ensureTimelinesController):

LayoutTests:

Remove the flaky expectation for the improved test.

* TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/timelines/update-and-send-events-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/animation/AnimationTimeline.h
trunk/Source/WebCore/animation/DocumentTimeline.cpp
trunk/Source/WebCore/animation/DocumentTimeline.h
trunk/Source/WebCore/animation/DocumentTimelinesController.cpp
trunk/Source/WebCore/animation/DocumentTimelinesController.h
trunk/Source/WebCore/animation/WebAnimationTypes.h
trunk/Source/WebCore/dom/Document.cpp




Diff

Modified: trunk/LayoutTests/ChangeLog (260524 => 260525)

--- trunk/LayoutTests/ChangeLog	2020-04-22 18:38:36 UTC (rev 260524)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 18:47:36 UTC (rev 260525)
@@ -1,5 +1,17 @@
 2020-04-22  Antoine Quint  
 
+[Web Animations] Coordinate "update animations and send events" procedure across multiple timelines
+https://bugs.webkit.org/show_bug.cgi?id=202109
+
+
+Reviewed by Dean Jackson.
+
+Remove the flaky expectation for the improved test.
+
+* TestExpectations:
+
+2020-04-22  Antoine Quint  
+
 [ Mojave wk1 Release ] animations/transition-and-animation-1.html is a flaky failure
 https://bugs.webkit.org/show_bug.cgi?id=210051
 


Modified: trunk/LayoutTests/TestExpectations (260524 => 260525)

--- trunk/LayoutTests/TestExpectations	2020-04-22 18:38:36 UTC (rev 260524)
+++ trunk/LayoutTests/TestExpectations	2020-04-22 18:47:36 UTC (rev 260525)
@@ -4064,8 +4064,6 @@
 
 webkit.org/b/207262 imported/w3c/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html [ Pass 

[webkit-changes] [260524] trunk/Source/WebCore

2020-04-22 Thread eric . carlson
Title: [260524] trunk/Source/WebCore








Revision 260524
Author eric.carl...@apple.com
Date 2020-04-22 11:38:36 -0700 (Wed, 22 Apr 2020)


Log Message
[iOS] Add a quirk to keep gizmodo videos visible when playing in fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=210857


Reviewed by Jer Noble.

* page/Quirks.cpp:
(WebCore::Quirks::needsFullscreenDisplayNoneQuirk const):
* page/Quirks.h:

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer): Drive-by fix: always
set the layer name to make debugging in release builds easier.

* platform/graphics/avfoundation/objc/VideoLayerManagerObjC.mm:
(WebCore::VideoLayerManagerObjC::setVideoLayer): Ditto.

* style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjustForSiteSpecificQuirks const): Change `display:none` into
`display:block` on div with class "instream-native-video--mobile" when child video
element with id "vjs_video_3_html5_api" is in fullscreen.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/Quirks.cpp
trunk/Source/WebCore/page/Quirks.h
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
trunk/Source/WebCore/platform/graphics/avfoundation/objc/VideoLayerManagerObjC.mm
trunk/Source/WebCore/style/StyleAdjuster.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (260523 => 260524)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 18:33:32 UTC (rev 260523)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 18:38:36 UTC (rev 260524)
@@ -1,3 +1,27 @@
+2020-04-22  Eric Carlson  
+
+[iOS] Add a quirk to keep gizmodo videos visible when playing in fullscreen.
+https://bugs.webkit.org/show_bug.cgi?id=210857
+
+
+Reviewed by Jer Noble.
+
+* page/Quirks.cpp:
+(WebCore::Quirks::needsFullscreenDisplayNoneQuirk const):
+* page/Quirks.h:
+
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer): Drive-by fix: always
+set the layer name to make debugging in release builds easier.
+
+* platform/graphics/avfoundation/objc/VideoLayerManagerObjC.mm:
+(WebCore::VideoLayerManagerObjC::setVideoLayer): Ditto.
+
+* style/StyleAdjuster.cpp:
+(WebCore::Style::Adjuster::adjustForSiteSpecificQuirks const): Change `display:none` into
+`display:block` on div with class "instream-native-video--mobile" when child video
+element with id "vjs_video_3_html5_api" is in fullscreen.
+
 2020-04-22  Chris Dumez  
 
 Unreviewed, commit updated xcfilelist files.


Modified: trunk/Source/WebCore/page/Quirks.cpp (260523 => 260524)

--- trunk/Source/WebCore/page/Quirks.cpp	2020-04-22 18:33:32 UTC (rev 260523)
+++ trunk/Source/WebCore/page/Quirks.cpp	2020-04-22 18:38:36 UTC (rev 260524)
@@ -573,6 +573,23 @@
 #endif
 }
 
+bool Quirks::needsFullscreenDisplayNoneQuirk() const
+{
+#if PLATFORM(IOS_FAMILY)
+if (!needsQuirks())
+return false;
+
+if (!m_needsFullscreenDisplayNoneQuirk) {
+auto host = m_document->topDocument().url().host();
+m_needsFullscreenDisplayNoneQuirk = equalLettersIgnoringASCIICase(host, "gizmodo.com") || host.endsWithIgnoringASCIICase(".gizmodo.com");
+}
+
+return *m_needsFullscreenDisplayNoneQuirk;
+#else
+return false;
+#endif
+}
+
 bool Quirks::shouldAvoidScrollingWhenFocusedContentIsVisible() const
 {
 if (!needsQuirks())


Modified: trunk/Source/WebCore/page/Quirks.h (260523 => 260524)

--- trunk/Source/WebCore/page/Quirks.h	2020-04-22 18:33:32 UTC (rev 260523)
+++ trunk/Source/WebCore/page/Quirks.h	2020-04-22 18:38:36 UTC (rev 260524)
@@ -82,6 +82,7 @@
 
 bool needsGMailOverflowScrollQuirk() const;
 bool needsYouTubeOverflowScrollQuirk() const;
+bool needsFullscreenDisplayNoneQuirk() const;
 
 bool shouldOpenAsAboutBlank(const String&) const;
 
@@ -116,6 +117,7 @@
 mutable Optional m_needsGMailOverflowScrollQuirk;
 mutable Optional m_needsYouTubeOverflowScrollQuirk;
 mutable Optional m_needsPreloadAutoQuirk;
+mutable Optional m_needsFullscreenDisplayNoneQuirk;
 #endif
 mutable Optional m_shouldDisableElementFullscreenQuirk;
 #if ENABLE(TOUCH_EVENTS)


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (260523 => 260524)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm	2020-04-22 18:33:32 UTC (rev 260523)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm	2020-04-22 18:38:36 UTC (rev 260524)
@@ -639,9 +639,7 @@
 m_videoLayer = adoptNS([PAL::allocAVPlayerLayerInstance() init]);
 [m_videoLayer setPlayer:m_avPlayer.get()];
 
-#ifndef NDEBUG
 [m_videoLayer setName:@"MediaPlayerPrivate AVPlayerLayer"];
-#endif
 [m_videoLayer 

[webkit-changes] [260523] trunk/Source/WebInspectorUI

2020-04-22 Thread drousso
Title: [260523] trunk/Source/WebInspectorUI








Revision 260523
Author drou...@apple.com
Date 2020-04-22 11:33:32 -0700 (Wed, 22 Apr 2020)


Log Message
Web Inspector: Storage: unable to filter cookies
https://bugs.webkit.org/show_bug.cgi?id=210837

Reviewed by Brian Burg.

* UserInterface/Views/CookieStorageContentView.js:
(WI.CookieStorageContentView):
(WI.CookieStorageContentView.prototype.get navigationItems):
(WI.CookieStorageContentView.prototype.get canFocusFilterBar): Added.
(WI.CookieStorageContentView.prototype.focusFilterBar): Added.
(WI.CookieStorageContentView.prototype.tableIndexForRepresentedObject):
(WI.CookieStorageContentView.prototype.tableRepresentedObjectForIndex):
(WI.CookieStorageContentView.prototype.tableNumberOfRows):
(WI.CookieStorageContentView.prototype.tableSortChanged):
(WI.CookieStorageContentView.prototype.tableCellContextMenuClicked):
(WI.CookieStorageContentView.prototype.tableDidRemoveRows):
(WI.CookieStorageContentView.prototype.tablePopulateCell):
(WI.CookieStorageContentView.prototype._getCookiesForHost): Renamed from `_filterCookies`.
(WI.CookieStorageContentView.prototype.async _willDismissCookiePopover):
(WI.CookieStorageContentView.prototype._handleFilterBarFilterDidChange): Added.
(WI.CookieStorageContentView.prototype._handleClearNavigationItemClicked):
(WI.CookieStorageContentView.prototype._reloadCookies):
(WI.CookieStorageContentView.prototype._updateFilteredCookies): Added.
(WI.CookieStorageContentView.prototype._updateEmptyFilterResultsMessage): Added.
(WI.CookieStorageContentView.prototype._cookiesAtIndexes):
(WI.CookieStorageContentView.prototype._filterCookies): Deleted.
* UserInterface/Views/CookieStorageContentView.css:
(.content-view.cookie-storage > .message-text-view): Added.
(.content-view.cookie-storage > .message-text-view > .message): Added.
(.content-view.cookie-storage > .data-grid): Deleted.
Add a filter bar to the navigation bar that checks the regex-ified filter text against the
formatted text of each cell for each cookie. Also hook it up to the global find shortcut.

* UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView.prototype.layout):
(WI.NetworkTableContentView.prototype._showEmptyFilterResultsMessage):
(WI.NetworkTableContentView.prototype._tableNameColumnDidChangeWidth):
(WI.NetworkTableContentView.prototype._positionEmptyFilterMessage): Deleted.
* UserInterface/Views/NetworkTableContentView.css:
(.content-view.network .message-text-view): Added.
Drive-by: instead of having the "No Filter Results" view only cover the "Name" column, it
  should cover the entire table so as to be as noticable as possible (not to mention
  the table will be empty anyways, so it's not like anything is being hidden).
Drive-by: ensure that the "No Filter Results" view doesn't cover the statistics.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/CookieStorageContentView.css
trunk/Source/WebInspectorUI/UserInterface/Views/CookieStorageContentView.js
trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.css
trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (260522 => 260523)

--- trunk/Source/WebInspectorUI/ChangeLog	2020-04-22 18:12:34 UTC (rev 260522)
+++ trunk/Source/WebInspectorUI/ChangeLog	2020-04-22 18:33:32 UTC (rev 260523)
@@ -1,3 +1,50 @@
+2020-04-22  Devin Rousso  
+
+Web Inspector: Storage: unable to filter cookies
+https://bugs.webkit.org/show_bug.cgi?id=210837
+
+Reviewed by Brian Burg.
+
+* UserInterface/Views/CookieStorageContentView.js:
+(WI.CookieStorageContentView):
+(WI.CookieStorageContentView.prototype.get navigationItems):
+(WI.CookieStorageContentView.prototype.get canFocusFilterBar): Added.
+(WI.CookieStorageContentView.prototype.focusFilterBar): Added.
+(WI.CookieStorageContentView.prototype.tableIndexForRepresentedObject):
+(WI.CookieStorageContentView.prototype.tableRepresentedObjectForIndex):
+(WI.CookieStorageContentView.prototype.tableNumberOfRows):
+(WI.CookieStorageContentView.prototype.tableSortChanged):
+(WI.CookieStorageContentView.prototype.tableCellContextMenuClicked):
+(WI.CookieStorageContentView.prototype.tableDidRemoveRows):
+(WI.CookieStorageContentView.prototype.tablePopulateCell):
+(WI.CookieStorageContentView.prototype._getCookiesForHost): Renamed from `_filterCookies`.
+(WI.CookieStorageContentView.prototype.async _willDismissCookiePopover):
+(WI.CookieStorageContentView.prototype._handleFilterBarFilterDidChange): Added.
+(WI.CookieStorageContentView.prototype._handleClearNavigationItemClicked):
+(WI.CookieStorageContentView.prototype._reloadCookies):
+(WI.CookieStorageContentView.prototype._updateFilteredCookies): Added.
+

[webkit-changes] [260522] trunk

2020-04-22 Thread ysuzuki
Title: [260522] trunk








Revision 260522
Author ysuz...@apple.com
Date 2020-04-22 11:12:34 -0700 (Wed, 22 Apr 2020)


Log Message
[JSC] JSBigInt inc operation does not produce right HeapBigInt zero
https://bugs.webkit.org/show_bug.cgi?id=210860

Reviewed by Mark Lam.

JSTests:

* stress/bigint-zero-canonicalized.js: Added.
(shouldBe):

Source/_javascript_Core:

JSBigInt::inc can produce signed HeapBigInt zero, which is not meeting the invariant of JSBigInt.
This patch fixes it by checking zero status before setting `setSign(true)`.

* runtime/JSBigInt.cpp:
(JSC::JSBigInt::inc):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::dumpInContextAssumingStructure const):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSBigInt.cpp
trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp


Added Paths

trunk/JSTests/stress/bigint-zero-canonicalized.js




Diff

Modified: trunk/JSTests/ChangeLog (260521 => 260522)

--- trunk/JSTests/ChangeLog	2020-04-22 18:08:18 UTC (rev 260521)
+++ trunk/JSTests/ChangeLog	2020-04-22 18:12:34 UTC (rev 260522)
@@ -1,3 +1,13 @@
+2020-04-22  Yusuke Suzuki  
+
+[JSC] JSBigInt inc operation does not produce right HeapBigInt zero
+https://bugs.webkit.org/show_bug.cgi?id=210860
+
+Reviewed by Mark Lam.
+
+* stress/bigint-zero-canonicalized.js: Added.
+(shouldBe):
+
 2020-04-22  Saam Barati  
 
 ValueBitNot is wrong in FTL with AnyBigIntUse


Added: trunk/JSTests/stress/bigint-zero-canonicalized.js (0 => 260522)

--- trunk/JSTests/stress/bigint-zero-canonicalized.js	(rev 0)
+++ trunk/JSTests/stress/bigint-zero-canonicalized.js	2020-04-22 18:12:34 UTC (rev 260522)
@@ -0,0 +1,10 @@
+function shouldBe(actual, expected) {
+if (actual !== expected)
+throw new Error('bad value: ' + actual);
+}
+
+var zero1 = createHeapBigInt(0n);
+var zero2 = createHeapBigInt(-1n);
+zero2++;
+
+shouldBe(zero1 === zero2, true);


Modified: trunk/Source/_javascript_Core/ChangeLog (260521 => 260522)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-22 18:08:18 UTC (rev 260521)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-22 18:12:34 UTC (rev 260522)
@@ -1,3 +1,18 @@
+2020-04-22  Yusuke Suzuki  
+
+[JSC] JSBigInt inc operation does not produce right HeapBigInt zero
+https://bugs.webkit.org/show_bug.cgi?id=210860
+
+Reviewed by Mark Lam.
+
+JSBigInt::inc can produce signed HeapBigInt zero, which is not meeting the invariant of JSBigInt.
+This patch fixes it by checking zero status before setting `setSign(true)`.
+
+* runtime/JSBigInt.cpp:
+(JSC::JSBigInt::inc):
+* runtime/JSCJSValue.cpp:
+(JSC::JSValue::dumpInContextAssumingStructure const):
+
 2020-04-22  Devin Rousso  
 
 Web Inspector: Debugger: Step Over should only step through comma expressions if they are comma statements


Modified: trunk/Source/_javascript_Core/runtime/JSBigInt.cpp (260521 => 260522)

--- trunk/Source/_javascript_Core/runtime/JSBigInt.cpp	2020-04-22 18:08:18 UTC (rev 260521)
+++ trunk/Source/_javascript_Core/runtime/JSBigInt.cpp	2020-04-22 18:12:34 UTC (rev 260522)
@@ -446,6 +446,8 @@
 if (!x->sign())
 return absoluteAddOne(globalObject, x, SignOption::Unsigned);
 JSBigInt* result = absoluteSubOne(globalObject, x, x->length());
+if (result->isZero())
+return result;
 result->setSign(true);
 return result;
 }


Modified: trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp (260521 => 260522)

--- trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp	2020-04-22 18:08:18 UTC (rev 260521)
+++ trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp	2020-04-22 18:12:34 UTC (rev 260522)
@@ -312,7 +312,7 @@
 else if (structure->classInfo()->isSubClassOf(Structure::info()))
 out.print("Structure: ", inContext(*jsCast(asCell()), context));
 else if (isHeapBigInt())
-out.print("BigInt[heap-allocated]: addr=", RawPointer(asCell()));
+out.print("BigInt[heap-allocated]: addr=", RawPointer(asCell()), ", length=", jsCast(asCell())->length(), ", sign=", jsCast(asCell())->sign());
 else if (structure->classInfo()->isSubClassOf(JSObject::info())) {
 out.print("Object: ", RawPointer(asCell()));
 out.print(" with butterfly ", RawPointer(asObject(asCell())->butterfly()));






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260521] trunk/LayoutTests

2020-04-22 Thread graouts
Title: [260521] trunk/LayoutTests








Revision 260521
Author grao...@webkit.org
Date 2020-04-22 11:08:18 -0700 (Wed, 22 Apr 2020)


Log Message
[ Mojave wk1 Release ] animations/transition-and-animation-1.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=210051


Unreviewed test gardening, forgot to rebaseline this test.

* animations/transition-and-animation-1-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/animations/transition-and-animation-1-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (260520 => 260521)

--- trunk/LayoutTests/ChangeLog	2020-04-22 17:24:14 UTC (rev 260520)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 18:08:18 UTC (rev 260521)
@@ -1,3 +1,13 @@
+2020-04-22  Antoine Quint  
+
+[ Mojave wk1 Release ] animations/transition-and-animation-1.html is a flaky failure
+https://bugs.webkit.org/show_bug.cgi?id=210051
+
+
+Unreviewed test gardening, forgot to rebaseline this test.
+
+* animations/transition-and-animation-1-expected.txt:
+
 2020-04-22  Devin Rousso  
 
 Web Inspector: Debugger: Step Over should only step through comma expressions if they are comma statements


Modified: trunk/LayoutTests/animations/transition-and-animation-1-expected.txt (260520 => 260521)

--- trunk/LayoutTests/animations/transition-and-animation-1-expected.txt	2020-04-22 17:24:14 UTC (rev 260520)
+++ trunk/LayoutTests/animations/transition-and-animation-1-expected.txt	2020-04-22 18:08:18 UTC (rev 260521)
@@ -1,3 +1,3 @@
 This test has a transition and animation on the same property (-webkit-transform). But the transition is never triggered, so nothing should be moving when the animation finishes.
-PASS - "webkitTransform" property for "box" element at 0.55s saw something close to: none
+PASS - "transform" property for "box" element at 0.55s saw something close to: none
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260520] trunk

2020-04-22 Thread drousso
Title: [260520] trunk








Revision 260520
Author drou...@apple.com
Date 2020-04-22 10:24:14 -0700 (Wed, 22 Apr 2020)


Log Message
Web Inspector: Debugger: Step Over should only step through comma expressions if they are comma statements
https://bugs.webkit.org/show_bug.cgi?id=210588

Reviewed by Brian Burg.

Source/_javascript_Core:

* parser/Nodes.h:
(JSC::ExpressionNode::isStatement const): Added.
(JSC::ExpressionNode::setIsStatement): Added.
* parser/NodeConstructors.h:
(JSC::ExprStatementNode::ExprStatementNode):
(JSC::DeclarationStatement::DeclarationStatement):
(JSC::ReturnNode::ReturnNode):
(JSC::ThrowNode::ThrowNode):
* bytecompiler/NodesCodegen.cpp:
(JSC::CommaNode::emitBytecode):
Only emit `WillExecuteStatement` debug hooks inside `CommaNode` if it's the only child of a
statement parent node (e.g. `a(), b(), c()` vs `true && (a(), b(), c()) && true`).

* parser/Parser.h:
* parser/Parser.cpp:
(JSC::Parser::parseReturnStatement):
(JSC::Parser::parseThrowStatement):
(JSC::Parser::parseExpressionOrLabelStatement):
(JSC::Parser::parseExpressionStatement):
(JSC::Parser::parseExpression):
Only record a pause location for each sub-_expression_ in a comma separated _expression_ if it's
the only child of a statement (e.g. `a(), b(), c()` vs `true && (a(), b(), c()) && true`).

LayoutTests:

* inspector/debugger/resources/log-pause-location.js:
(TestPage.registerInitializer.window.step):
* inspector/debugger/breakpoints/resources/dump-functions.js:
* inspector/debugger/breakpoints/resources/dump-general.js:
* inspector/debugger/breakpoints/resolved-dump-all-pause-locations-expected.txt:
* inspector/debugger/breakpoints/resolved-dump-each-line-expected.txt:
* inspector/debugger/stepping/stepInto.html:
* inspector/debugger/stepping/stepInto-expected.txt:
* inspector/debugger/stepping/stepNext.html:
* inspector/debugger/stepping/stepNext-expected.txt:
* inspector/debugger/stepping/stepOut.html:
* inspector/debugger/stepping/stepOut-expected.txt:
* inspector/debugger/stepping/stepOver.html:
* inspector/debugger/stepping/stepOver-expected.txt:
* inspector/debugger/stepping/stepping-control-flow.html:
* inspector/debugger/stepping/stepping-control-flow-expected.txt:
* inspector/debugger/stepping/stepping-loops.html:
* inspector/debugger/stepping/stepping-loops-expected.txt:
* inspector/formatting/resources/_javascript_-tests/arrow-functions.js:
* inspector/formatting/resources/_javascript_-tests/arrow-functions-expected.js:
* inspector/formatting/resources/_javascript_-tests/functions.js:
* inspector/formatting/resources/_javascript_-tests/functions-expected.js:
* inspector/formatting/resources/_javascript_-tests/try-catch-finally-statements.js:
* inspector/formatting/resources/_javascript_-tests/try-catch-finally-statements-expected.js:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/inspector/debugger/breakpoints/resolved-dump-all-pause-locations-expected.txt
trunk/LayoutTests/inspector/debugger/breakpoints/resolved-dump-each-line-expected.txt
trunk/LayoutTests/inspector/debugger/breakpoints/resources/dump-functions.js
trunk/LayoutTests/inspector/debugger/breakpoints/resources/dump-general.js
trunk/LayoutTests/inspector/debugger/resources/log-pause-location.js
trunk/LayoutTests/inspector/debugger/stepping/stepInto-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepInto.html
trunk/LayoutTests/inspector/debugger/stepping/stepNext-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepNext.html
trunk/LayoutTests/inspector/debugger/stepping/stepOut-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepOut.html
trunk/LayoutTests/inspector/debugger/stepping/stepOver-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepOver.html
trunk/LayoutTests/inspector/debugger/stepping/stepping-control-flow-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepping-control-flow.html
trunk/LayoutTests/inspector/debugger/stepping/stepping-loops-expected.txt
trunk/LayoutTests/inspector/debugger/stepping/stepping-loops.html
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/arrow-functions-expected.js
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/arrow-functions.js
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/functions-expected.js
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/functions.js
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/try-catch-finally-statements-expected.js
trunk/LayoutTests/inspector/formatting/resources/_javascript_-tests/try-catch-finally-statements.js
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp
trunk/Source/_javascript_Core/parser/NodeConstructors.h
trunk/Source/_javascript_Core/parser/Nodes.h
trunk/Source/_javascript_Core/parser/Parser.cpp
trunk/Source/_javascript_Core/parser/Parser.h




Diff

Modified: trunk/LayoutTests/ChangeLog (260519 => 260520)

--- trunk/LayoutTests/ChangeLog	

[webkit-changes] [260519] branches/safari-609.2.9.0-branch/Source/WebKit

2020-04-22 Thread repstein
Title: [260519] branches/safari-609.2.9.0-branch/Source/WebKit








Revision 260519
Author repst...@apple.com
Date 2020-04-22 10:17:43 -0700 (Wed, 22 Apr 2020)


Log Message
Cherry-pick r260474. rdar://problem/62083321

PiP buttons shows up in element fullscreen when PiP is disabled in WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=210813

Reviewed by Eric Carlson.

Not currently testable; entering fullscreen never completes in the iOS TestWebKitAPI app
because that process is not a UI Application.

* UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(-[WKFullScreenViewController videoControlsManagerDidChange]):

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

Modified Paths

branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog
branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm




Diff

Modified: branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog (260518 => 260519)

--- branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog	2020-04-22 16:56:00 UTC (rev 260518)
+++ branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog	2020-04-22 17:17:43 UTC (rev 260519)
@@ -1,3 +1,19 @@
+2020-04-22 Russell Epstein 
+
+Cherry-pick r260474. rdar://problem/62083321.
+
+2020-04-21  Jer Noble  
+
+PiP buttons shows up in element fullscreen when PiP is disabled in WKWebViewConfiguration
+https://bugs.webkit.org/show_bug.cgi?id=210813
+
+Not currently testable; entering fullscreen never completes in the iOS TestWebKitAPI app
+because that process is not a UI Application.
+
+* UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
+(-[WKFullScreenViewController videoControlsManagerDidChange]):
+
+
 2020-04-21  Alan Coon  
 
 Apply patch. rdar://problem/62083319


Modified: branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm (260518 => 260519)

--- branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm	2020-04-22 16:56:00 UTC (rev 260518)
+++ branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm	2020-04-22 17:17:43 UTC (rev 260519)
@@ -265,7 +265,7 @@
 
 WebCore::PlaybackSessionModel* playbackSessionModel = playbackSessionInterface ? playbackSessionInterface->playbackSessionModel() : nullptr;
 self.playing = playbackSessionModel ? playbackSessionModel->isPlaying() : NO;
-[_pipButton setHidden:!playbackSessionModel];
+[_pipButton setHidden:!playbackSessionModel || !playbackSessionModel->isPictureInPictureSupported()];
 }
 
 - (void)setPrefersStatusBarHidden:(BOOL)value






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260518] trunk/Tools

2020-04-22 Thread achristensen
Title: [260518] trunk/Tools








Revision 260518
Author achristen...@apple.com
Date 2020-04-22 09:56:00 -0700 (Wed, 22 Apr 2020)


Log Message
Add unit test for resuming downloads
https://bugs.webkit.org/show_bug.cgi?id=210852

Reviewed by Brady Eidson.

This is a test that we should've written years ago.
I made HTTPServer able to take a Function that takes a nw_connection_t to give it more power than declarative request/response pairs.
I made TestDownloadDelegate to be reused by future tests, like those I'm going to add for  bug 210313.

* TestWebKitAPI/SourcesCocoa.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(longString):
(TEST):
* TestWebKitAPI/cocoa/HTTPServer.h:
(TestWebKitAPI::HTTPServer::totalRequests const): Deleted.
* TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::RequestData::RequestData):
(TestWebKitAPI::HTTPServer::listenerParameters):
(TestWebKitAPI::startListening):
(TestWebKitAPI::HTTPServer::HTTPServer):
(TestWebKitAPI::HTTPServer::totalRequests const):
(TestWebKitAPI::dataFromString):
(TestWebKitAPI::nullTerminatedRequest):
(TestWebKitAPI::HTTPServer::respondToRequests):
* TestWebKitAPI/cocoa/TestDownloadDelegate.h: Added.
* TestWebKitAPI/cocoa/TestDownloadDelegate.mm: Added.
(-[TestDownloadDelegate _downloadDidStart:]):
(-[TestDownloadDelegate _download:didReceiveServerRedirectToURL:]):
(-[TestDownloadDelegate _download:didReceiveResponse:]):
(-[TestDownloadDelegate _download:didReceiveData:]):
(-[TestDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(-[TestDownloadDelegate _downloadDidFinish:]):
(-[TestDownloadDelegate _download:didFailWithError:]):
(-[TestDownloadDelegate _downloadDidCancel:]):
(-[TestDownloadDelegate _download:didReceiveAuthenticationChallenge:completionHandler:]):
(-[TestDownloadDelegate _download:didCreateDestination:]):
* TestWebKitAPI/cocoa/TestNavigationDelegate.h:
* TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
(-[TestNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/SourcesCocoa.txt
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Download.mm
trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.h
trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.mm
trunk/Tools/TestWebKitAPI/cocoa/TestNavigationDelegate.h
trunk/Tools/TestWebKitAPI/cocoa/TestNavigationDelegate.mm


Added Paths

trunk/Tools/TestWebKitAPI/cocoa/TestDownloadDelegate.h
trunk/Tools/TestWebKitAPI/cocoa/TestDownloadDelegate.mm




Diff

Modified: trunk/Tools/ChangeLog (260517 => 260518)

--- trunk/Tools/ChangeLog	2020-04-22 16:34:47 UTC (rev 260517)
+++ trunk/Tools/ChangeLog	2020-04-22 16:56:00 UTC (rev 260518)
@@ -1,3 +1,46 @@
+2020-04-22  Alex Christensen  
+
+Add unit test for resuming downloads
+https://bugs.webkit.org/show_bug.cgi?id=210852
+
+Reviewed by Brady Eidson.
+
+This is a test that we should've written years ago.
+I made HTTPServer able to take a Function that takes a nw_connection_t to give it more power than declarative request/response pairs.
+I made TestDownloadDelegate to be reused by future tests, like those I'm going to add for  bug 210313.
+
+* TestWebKitAPI/SourcesCocoa.txt:
+* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
+* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
+(longString):
+(TEST):
+* TestWebKitAPI/cocoa/HTTPServer.h:
+(TestWebKitAPI::HTTPServer::totalRequests const): Deleted.
+* TestWebKitAPI/cocoa/HTTPServer.mm:
+(TestWebKitAPI::HTTPServer::RequestData::RequestData):
+(TestWebKitAPI::HTTPServer::listenerParameters):
+(TestWebKitAPI::startListening):
+(TestWebKitAPI::HTTPServer::HTTPServer):
+(TestWebKitAPI::HTTPServer::totalRequests const):
+(TestWebKitAPI::dataFromString):
+(TestWebKitAPI::nullTerminatedRequest):
+(TestWebKitAPI::HTTPServer::respondToRequests):
+* TestWebKitAPI/cocoa/TestDownloadDelegate.h: Added.
+* TestWebKitAPI/cocoa/TestDownloadDelegate.mm: Added.
+(-[TestDownloadDelegate _downloadDidStart:]):
+(-[TestDownloadDelegate _download:didReceiveServerRedirectToURL:]):
+(-[TestDownloadDelegate _download:didReceiveResponse:]):
+(-[TestDownloadDelegate _download:didReceiveData:]):
+(-[TestDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
+(-[TestDownloadDelegate _downloadDidFinish:]):
+(-[TestDownloadDelegate _download:didFailWithError:]):
+(-[TestDownloadDelegate _downloadDidCancel:]):
+(-[TestDownloadDelegate _download:didReceiveAuthenticationChallenge:completionHandler:]):
+(-[TestDownloadDelegate _download:didCreateDestination:]):
+* 

[webkit-changes] [260517] trunk

2020-04-22 Thread sbarati
Title: [260517] trunk








Revision 260517
Author sbar...@apple.com
Date 2020-04-22 09:34:47 -0700 (Wed, 22 Apr 2020)


Log Message
ValueBitNot is wrong in FTL with AnyBigIntUse
https://bugs.webkit.org/show_bug.cgi?id=210846

Reviewed by Yusuke Suzuki.

JSTests:

* stress/big-int-value-bit-not-spec-any-big-int.js: Added.
(assert):
(foo):

Source/_javascript_Core:

We forgot to speculate.

* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitNot):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp


Added Paths

trunk/JSTests/stress/big-int-value-bit-not-spec-any-big-int.js




Diff

Modified: trunk/JSTests/ChangeLog (260516 => 260517)

--- trunk/JSTests/ChangeLog	2020-04-22 16:31:32 UTC (rev 260516)
+++ trunk/JSTests/ChangeLog	2020-04-22 16:34:47 UTC (rev 260517)
@@ -1,3 +1,14 @@
+2020-04-22  Saam Barati  
+
+ValueBitNot is wrong in FTL with AnyBigIntUse
+https://bugs.webkit.org/show_bug.cgi?id=210846
+
+Reviewed by Yusuke Suzuki.
+
+* stress/big-int-value-bit-not-spec-any-big-int.js: Added.
+(assert):
+(foo):
+
 2020-04-22  Yusuke Suzuki  
 
 [JSC] AI results of BigInt32 Bitwise shift operation does not match to runtime results


Added: trunk/JSTests/stress/big-int-value-bit-not-spec-any-big-int.js (0 => 260517)

--- trunk/JSTests/stress/big-int-value-bit-not-spec-any-big-int.js	(rev 0)
+++ trunk/JSTests/stress/big-int-value-bit-not-spec-any-big-int.js	2020-04-22 16:34:47 UTC (rev 260517)
@@ -0,0 +1,16 @@
+function assert(b) {
+if (!b)
+throw new Error;
+}
+function foo(x) {
+return ~x;
+}
+noInline(foo);
+
+for (let i = 0; i < 100; ++i) {
+let x = 1n;
+assert(foo(x) === (0n - x) - 1n);
+
+x = 10101010101010101010101010101010101010101010101010n;
+assert(foo(x) === (0n - x) - 1n);
+}


Modified: trunk/Source/_javascript_Core/ChangeLog (260516 => 260517)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-22 16:31:32 UTC (rev 260516)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-22 16:34:47 UTC (rev 260517)
@@ -1,3 +1,15 @@
+2020-04-22  Saam Barati  
+
+ValueBitNot is wrong in FTL with AnyBigIntUse
+https://bugs.webkit.org/show_bug.cgi?id=210846
+
+Reviewed by Yusuke Suzuki.
+
+We forgot to speculate.
+
+* ftl/FTLLowerDFGToB3.cpp:
+(JSC::FTL::DFG::LowerDFGToB3::compileValueBitNot):
+
 2020-04-22  Yusuke Suzuki  
 
 [JSC] AI results of BigInt32 Bitwise shift operation does not match to runtime results


Modified: trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp (260516 => 260517)

--- trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp	2020-04-22 16:31:32 UTC (rev 260516)
+++ trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp	2020-04-22 16:34:47 UTC (rev 260517)
@@ -3301,7 +3301,9 @@
 return;
 }
 
-LValue operand = lowJSValue(m_node->child1());
+DFG_ASSERT(m_graph, m_node, m_node->child1().useKind() == UntypedUse || m_node->child1().useKind() == AnyBigIntUse);
+LValue operand = lowJSValue(m_node->child1(), ManualOperandSpeculation);
+speculate(m_node, m_node->child1());
 LValue result = vmCall(Int64, operationValueBitNot, weakPointer(globalObject), operand);
 setJSValue(result);
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260516] trunk/Source/WebKit

2020-04-22 Thread bfulgham
Title: [260516] trunk/Source/WebKit








Revision 260516
Author bfulg...@apple.com
Date 2020-04-22 09:31:32 -0700 (Wed, 22 Apr 2020)


Log Message
Switch from debug ASSERT to RELEASE_ASSERT in toNPJSObject
https://bugs.webkit.org/show_bug.cgi?id=210823


Reviewed by David Kilzer.

* WebProcess/Plugins/Netscape/NPJSObject.h:
(WebKit::NPJSObject::toNPJSObject):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/Plugins/Netscape/NPJSObject.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (260515 => 260516)

--- trunk/Source/WebKit/ChangeLog	2020-04-22 16:22:38 UTC (rev 260515)
+++ trunk/Source/WebKit/ChangeLog	2020-04-22 16:31:32 UTC (rev 260516)
@@ -1,3 +1,14 @@
+2020-04-22  Brent Fulgham  
+
+Switch from debug ASSERT to RELEASE_ASSERT in toNPJSObject
+https://bugs.webkit.org/show_bug.cgi?id=210823
+
+
+Reviewed by David Kilzer.
+
+* WebProcess/Plugins/Netscape/NPJSObject.h:
+(WebKit::NPJSObject::toNPJSObject):
+
 2020-04-22  Youenn Fablet  
 
 Simplify SWServerWorker::whenActivated logic


Modified: trunk/Source/WebKit/WebProcess/Plugins/Netscape/NPJSObject.h (260515 => 260516)

--- trunk/Source/WebKit/WebProcess/Plugins/Netscape/NPJSObject.h	2020-04-22 16:22:38 UTC (rev 260515)
+++ trunk/Source/WebKit/WebProcess/Plugins/Netscape/NPJSObject.h	2020-04-22 16:31:32 UTC (rev 260516)
@@ -56,7 +56,7 @@
 
 static NPJSObject* toNPJSObject(NPObject* npObject)
 {
-ASSERT_WITH_SECURITY_IMPLICATION(isNPJSObject(npObject));
+RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(isNPJSObject(npObject));
 return static_cast(npObject);
 }
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260514] trunk/Source/WebCore

2020-04-22 Thread cdumez
Title: [260514] trunk/Source/WebCore








Revision 260514
Author cdu...@apple.com
Date 2020-04-22 09:22:07 -0700 (Wed, 22 Apr 2020)


Log Message
Unreviewed, commit updated xcfilelist files.

* DerivedSources-input.xcfilelist:
* DerivedSources-output.xcfilelist:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/DerivedSources-input.xcfilelist
trunk/Source/WebCore/DerivedSources-output.xcfilelist




Diff

Modified: trunk/Source/WebCore/ChangeLog (260513 => 260514)

--- trunk/Source/WebCore/ChangeLog	2020-04-22 16:21:37 UTC (rev 260513)
+++ trunk/Source/WebCore/ChangeLog	2020-04-22 16:22:07 UTC (rev 260514)
@@ -1,5 +1,12 @@
 2020-04-22  Chris Dumez  
 
+Unreviewed, commit updated xcfilelist files.
+
+* DerivedSources-input.xcfilelist:
+* DerivedSources-output.xcfilelist:
+
+2020-04-22  Chris Dumez  
+
 Unreviewed, reverting r259116.
 
 Broke login flow on some apple-internal sites


Modified: trunk/Source/WebCore/DerivedSources-input.xcfilelist (260513 => 260514)

--- trunk/Source/WebCore/DerivedSources-input.xcfilelist	2020-04-22 16:21:37 UTC (rev 260513)
+++ trunk/Source/WebCore/DerivedSources-input.xcfilelist	2020-04-22 16:22:07 UTC (rev 260514)
@@ -1113,6 +1113,11 @@
 $(PROJECT_DIR)/svg/svgattrs.in
 $(PROJECT_DIR)/svg/svgtags.in
 $(PROJECT_DIR)/svg/xlinkattrs.in
+$(PROJECT_DIR)/testing/FakeXRBoundsPoint.idl
+$(PROJECT_DIR)/testing/FakeXRButtonStateInit.idl
+$(PROJECT_DIR)/testing/FakeXRInputSourceInit.idl
+$(PROJECT_DIR)/testing/FakeXRRigidTransformInit.idl
+$(PROJECT_DIR)/testing/FakeXRViewInit.idl
 $(PROJECT_DIR)/testing/GCObservation.idl
 $(PROJECT_DIR)/testing/InternalSettings.idl
 $(PROJECT_DIR)/testing/Internals.idl
@@ -1130,6 +1135,10 @@
 $(PROJECT_DIR)/testing/MockWebAuthenticationConfiguration.idl
 $(PROJECT_DIR)/testing/ServiceWorkerInternals.idl
 $(PROJECT_DIR)/testing/TypeConversions.idl
+$(PROJECT_DIR)/testing/WebFakeXRDevice.idl
+$(PROJECT_DIR)/testing/WebFakeXRInputController.idl
+$(PROJECT_DIR)/testing/WebXRTest.idl
+$(PROJECT_DIR)/testing/XRSimulateUserActivationFunction.idl
 $(PROJECT_DIR)/workers/AbstractWorker.idl
 $(PROJECT_DIR)/workers/DedicatedWorkerGlobalScope.idl
 $(PROJECT_DIR)/workers/Worker.idl


Modified: trunk/Source/WebCore/DerivedSources-output.xcfilelist (260513 => 260514)

--- trunk/Source/WebCore/DerivedSources-output.xcfilelist	2020-04-22 16:21:37 UTC (rev 260513)
+++ trunk/Source/WebCore/DerivedSources-output.xcfilelist	2020-04-22 16:22:07 UTC (rev 260514)
@@ -548,6 +548,16 @@
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSExtendableEventInit.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSExtendableMessageEvent.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSExtendableMessageEvent.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRBoundsPoint.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRBoundsPoint.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRButtonStateInit.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRButtonStateInit.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRInputSourceInit.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRInputSourceInit.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRRigidTransformInit.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRRigidTransformInit.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRViewInit.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFakeXRViewInit.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFetchBody.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFetchBody.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSFetchEvent.cpp
@@ -1912,6 +1922,10 @@
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWaveShaperNode.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebAnimation.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebAnimation.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebFakeXRDevice.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebFakeXRDevice.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebFakeXRInputController.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebFakeXRInputController.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebGL2RenderingContext.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebGL2RenderingContext.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebGLActiveInfo.cpp
@@ -2088,6 +2102,8 @@
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRSpace.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRSystem.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRSystem.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRTest.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRTest.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRView.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRView.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSWebXRViewerPose.cpp
@@ -2172,6 +2188,8 @@
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSXRSessionInit.h
 

[webkit-changes] [260515] trunk/Tools

2020-04-22 Thread sbarati
Title: [260515] trunk/Tools








Revision 260515
Author sbar...@apple.com
Date 2020-04-22 09:22:38 -0700 (Wed, 22 Apr 2020)


Log Message
makeValueRefForValue should be robust against the type encoding of a NSNumber backed by a boolean
https://bugs.webkit.org/show_bug.cgi?id=210821


Reviewed by Tim Horton.

* DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
(makeValueRefForValue):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/mac/AccessibilityNotificationHandler.mm




Diff

Modified: trunk/Tools/ChangeLog (260514 => 260515)

--- trunk/Tools/ChangeLog	2020-04-22 16:22:07 UTC (rev 260514)
+++ trunk/Tools/ChangeLog	2020-04-22 16:22:38 UTC (rev 260515)
@@ -1,3 +1,14 @@
+2020-04-22  Saam Barati  
+
+makeValueRefForValue should be robust against the type encoding of a NSNumber backed by a boolean
+https://bugs.webkit.org/show_bug.cgi?id=210821
+
+
+Reviewed by Tim Horton.
+
+* DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
+(makeValueRefForValue):
+
 2020-04-21  Ryan Haddad  
 
 Unreviewed, reverting r260410.


Modified: trunk/Tools/DumpRenderTree/mac/AccessibilityNotificationHandler.mm (260514 => 260515)

--- trunk/Tools/DumpRenderTree/mac/AccessibilityNotificationHandler.mm	2020-04-22 16:22:07 UTC (rev 260514)
+++ trunk/Tools/DumpRenderTree/mac/AccessibilityNotificationHandler.mm	2020-04-22 16:22:38 UTC (rev 260515)
@@ -106,7 +106,7 @@
 if ([value isKindOfClass:[NSString class]])
 return JSValueMakeString(context, [value createJSStringRef].get());
 if ([value isKindOfClass:[NSNumber class]]) {
-if (!strcmp([value objCType], @encode(BOOL)))
+if (!strcmp([value objCType], @encode(BOOL)) || !strcmp([value objCType], "c"))
 return JSValueMakeBoolean(context, [value boolValue]);
 return JSValueMakeNumber(context, [value doubleValue]);
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [260513] trunk/LayoutTests

2020-04-22 Thread graouts
Title: [260513] trunk/LayoutTests








Revision 260513
Author grao...@webkit.org
Date 2020-04-22 09:21:37 -0700 (Wed, 22 Apr 2020)


Log Message
[ Mojave wk1 Release ] animations/transition-and-animation-1.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=210051


Reviewed by Simon Fraser.

The purpose of this test is to check that running an animation does not trigger a transition for the animated
property. The way this test was written is that it would use `setTimeout()` to set a timer at a time computed to
be 500ms after the completion of the animation. However, using a timer like this is flaky by design as the animation
could technically be still in flight if the system is under heavy load.

We rewrite this test to use an "animationend" event to determine the animation has really completed and then wait
another frame, using `requestAnimationFrame()` to check that the computed style is as expected.

* animations/transition-and-animation-1.html:
* resources/ui-helper.js:
(window.UIHelper.waitForEvent):

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/animations/transition-and-animation-1.html
trunk/LayoutTests/resources/ui-helper.js




Diff

Modified: trunk/LayoutTests/ChangeLog (260512 => 260513)

--- trunk/LayoutTests/ChangeLog	2020-04-22 15:40:06 UTC (rev 260512)
+++ trunk/LayoutTests/ChangeLog	2020-04-22 16:21:37 UTC (rev 260513)
@@ -1,3 +1,23 @@
+2020-04-22  Antoine Quint  
+
+[ Mojave wk1 Release ] animations/transition-and-animation-1.html is a flaky failure
+https://bugs.webkit.org/show_bug.cgi?id=210051
+
+
+Reviewed by Simon Fraser.
+
+The purpose of this test is to check that running an animation does not trigger a transition for the animated
+property. The way this test was written is that it would use `setTimeout()` to set a timer at a time computed to
+be 500ms after the completion of the animation. However, using a timer like this is flaky by design as the animation
+could technically be still in flight if the system is under heavy load.
+
+We rewrite this test to use an "animationend" event to determine the animation has really completed and then wait
+another frame, using `requestAnimationFrame()` to check that the computed style is as expected.
+
+* animations/transition-and-animation-1.html:
+* resources/ui-helper.js:
+(window.UIHelper.waitForEvent):
+
 2020-04-22  Jason Lawrence  
 
 [ iPadOS wk2 Release ] fast/css-custom-paint/constructor.html is flaky timing out.


Modified: trunk/LayoutTests/animations/transition-and-animation-1.html (260512 => 260513)

--- trunk/LayoutTests/animations/transition-and-animation-1.html	2020-04-22 15:40:06 UTC (rev 260512)
+++ trunk/LayoutTests/animations/transition-and-animation-1.html	2020-04-22 16:21:37 UTC (rev 260513)
@@ -1,4 +1,4 @@
-
+
 
 
 
@@ -12,28 +12,37 @@
 height: 100px;
 width: 100px;
 background-color: blue;
--webkit-animation-duration: 0.5s;
--webkit-animation-timing-function: linear;
--webkit-animation-name: "anim";
--webkit-transition-property: -webkit-transform;
--webkit-transition-duration: 10s;
+animation-duration: 0.5s;
+animation-timing-function: linear;
+animation-name: "anim";
+transition-property: transform;
+transition-duration: 10s;
 }
 @-webkit-keyframes "anim" {
-from { -webkit-transform: translateX(200px); }
-to   { -webkit-transform: translateX(300px); }
+from { transform: translateX(200px); }
+to   { transform: translateX(300px); }
 }
 
-
-
-
+