[webkit-changes] [259705] trunk

2020-04-07 Thread carlosgc
Title: [259705] trunk








Revision 259705
Author carlo...@webkit.org
Date 2020-04-07 23:19:23 -0700 (Tue, 07 Apr 2020)


Log Message
[GTK][WPE] WTR: fix handling of WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=210106

Reviewed by Adrian Perez de Castro.

Source/WebKit:

Add WKContextSetPrimaryWebsiteDataStore() to expose WebProcessPool::setPrimaryDataStore().

* UIProcess/API/C/WKContext.cpp:
(WKContextSetPrimaryWebsiteDataStore):
* UIProcess/API/C/WKContextPrivate.h:

Tools:

The TestController::defaultWebsiteDataStore() is created and used but never really assigned to the
context. Since we are not assigning a WebsiteDataStore to the context, and we don't use the default
WebsiteDataStore, when a new page is created, we end up creating the default one (with the default config,
instead of the one created by WTR).

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::platformAdjustContext): Set defaultWebsiteDataStore() as the primary data store of the
context like the GLib API does.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp
trunk/Source/WebKit/UIProcess/API/C/WKContextPrivate.h
trunk/Tools/ChangeLog
trunk/Tools/WebKitTestRunner/TestController.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259704 => 259705)

--- trunk/Source/WebKit/ChangeLog	2020-04-08 05:46:25 UTC (rev 259704)
+++ trunk/Source/WebKit/ChangeLog	2020-04-08 06:19:23 UTC (rev 259705)
@@ -1,3 +1,16 @@
+2020-04-07  Carlos Garcia Campos  
+
+[GTK][WPE] WTR: fix handling of WebsiteDataStore
+https://bugs.webkit.org/show_bug.cgi?id=210106
+
+Reviewed by Adrian Perez de Castro.
+
+Add WKContextSetPrimaryWebsiteDataStore() to expose WebProcessPool::setPrimaryDataStore().
+
+* UIProcess/API/C/WKContext.cpp:
+(WKContextSetPrimaryWebsiteDataStore):
+* UIProcess/API/C/WKContextPrivate.h:
+
 2020-04-07  Per Arne Vollan  
 
 [iOS] Deny mach lookup access to the runningboard service in the WebContent process


Modified: trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp (259704 => 259705)

--- trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp	2020-04-08 05:46:25 UTC (rev 259704)
+++ trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp	2020-04-08 06:19:23 UTC (rev 259705)
@@ -670,3 +670,8 @@
 {
 WebKit::toImpl(contextRef)->setUseSeparateServiceWorkerProcess(useSeparateServiceWorkerProcess);
 }
+
+void WKContextSetPrimaryWebsiteDataStore(WKContextRef contextRef, WKWebsiteDataStoreRef websiteDataStore)
+{
+WebKit::toImpl(contextRef)->setPrimaryDataStore(*WebKit::toImpl(websiteDataStore));
+}


Modified: trunk/Source/WebKit/UIProcess/API/C/WKContextPrivate.h (259704 => 259705)

--- trunk/Source/WebKit/UIProcess/API/C/WKContextPrivate.h	2020-04-08 05:46:25 UTC (rev 259704)
+++ trunk/Source/WebKit/UIProcess/API/C/WKContextPrivate.h	2020-04-08 06:19:23 UTC (rev 259705)
@@ -119,6 +119,8 @@
 
 WK_EXPORT void WKContextSetUseSeparateServiceWorkerProcess(WKContextRef context, bool forceServiceWorkerProcess);
 
+WK_EXPORT void WKContextSetPrimaryWebsiteDataStore(WKContextRef context, WKWebsiteDataStoreRef websiteDataStore);
+
 #ifdef __cplusplus
 }
 #endif


Modified: trunk/Tools/ChangeLog (259704 => 259705)

--- trunk/Tools/ChangeLog	2020-04-08 05:46:25 UTC (rev 259704)
+++ trunk/Tools/ChangeLog	2020-04-08 06:19:23 UTC (rev 259705)
@@ -1,3 +1,19 @@
+2020-04-07  Carlos Garcia Campos  
+
+[GTK][WPE] WTR: fix handling of WebsiteDataStore
+https://bugs.webkit.org/show_bug.cgi?id=210106
+
+Reviewed by Adrian Perez de Castro.
+
+The TestController::defaultWebsiteDataStore() is created and used but never really assigned to the
+context. Since we are not assigning a WebsiteDataStore to the context, and we don't use the default
+WebsiteDataStore, when a new page is created, we end up creating the default one (with the default config,
+instead of the one created by WTR).
+
+* WebKitTestRunner/TestController.cpp:
+(WTR::TestController::platformAdjustContext): Set defaultWebsiteDataStore() as the primary data store of the
+context like the GLib API does.
+
 2020-04-07  Fujii Hironori  
 
 [Clang 10] Fix -Wimplicit-int-float-conversion compilation warnings in TestWebKitAPI


Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (259704 => 259705)

--- trunk/Tools/WebKitTestRunner/TestController.cpp	2020-04-08 05:46:25 UTC (rev 259704)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp	2020-04-08 06:19:23 UTC (rev 259705)
@@ -3111,7 +3111,12 @@
 
 WKContextRef TestController::platformAdjustContext(WKContextRef context, WKContextConfigurationRef contextConfiguration)
 {
+#if PLATFORM(GTK) || PLATFORM(WPE)
+WKWebsiteDataStoreSetResourceLoadStatisticsEnabled(defaultWebsiteDataStore(), true);
+WKContextSetPrimaryWebsiteDataStore(context, defaultWebsiteDataStore());
+#else
 WKWebsiteDataStoreSetResourceLoadStatisticsEnabled(WKContext

[webkit-changes] [259704] trunk/Tools

2020-04-07 Thread Hironori . Fujii
Title: [259704] trunk/Tools








Revision 259704
Author hironori.fu...@sony.com
Date 2020-04-07 22:46:25 -0700 (Tue, 07 Apr 2020)


Log Message
[Clang 10] Fix -Wimplicit-int-float-conversion compilation warnings in TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=210067

Reviewed by Darin Adler.

There are test cases for overflow, non-overflow, underflow and
non-underflow edge cases in WTF.clampToIntegerFloat test.
maxPlusOne can be used for overflow edge case, INT_MIN for
non-underflow. This change added code to calculate values for
non-overflow and underflow cases.

* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST(WTF.clampToIntegerFloat)):
* TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
(TestWebKitAPI::TEST(FloatRect.EnclosingIntRect)): Replaced
shiftMaxXEdgeTo(INT_MAX) with shiftMaxXEdgeTo(0) because it also
causes overflow for enclosingIntRect.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp
trunk/Tools/TestWebKitAPI/Tests/WebCore/FloatRect.cpp




Diff

Modified: trunk/Tools/ChangeLog (259703 => 259704)

--- trunk/Tools/ChangeLog	2020-04-08 04:45:45 UTC (rev 259703)
+++ trunk/Tools/ChangeLog	2020-04-08 05:46:25 UTC (rev 259704)
@@ -1,3 +1,23 @@
+2020-04-07  Fujii Hironori  
+
+[Clang 10] Fix -Wimplicit-int-float-conversion compilation warnings in TestWebKitAPI
+https://bugs.webkit.org/show_bug.cgi?id=210067
+
+Reviewed by Darin Adler.
+
+There are test cases for overflow, non-overflow, underflow and
+non-underflow edge cases in WTF.clampToIntegerFloat test.
+maxPlusOne can be used for overflow edge case, INT_MIN for
+non-underflow. This change added code to calculate values for
+non-overflow and underflow cases.
+
+* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
+(TestWebKitAPI::TEST(WTF.clampToIntegerFloat)):
+* TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
+(TestWebKitAPI::TEST(FloatRect.EnclosingIntRect)): Replaced
+shiftMaxXEdgeTo(INT_MAX) with shiftMaxXEdgeTo(0) because it also
+causes overflow for enclosingIntRect.
+
 2020-04-07  Aakash Jain  
 
 [ews] Add unit tests for layout tests factories


Modified: trunk/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp (259703 => 259704)

--- trunk/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp	2020-04-08 04:45:45 UTC (rev 259703)
+++ trunk/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp	2020-04-08 05:46:25 UTC (rev 259704)
@@ -93,20 +93,24 @@
 // This test is inaccurate as floats will round the min / max integer
 // due to the narrow mantissa. However it will properly checks within
 // (close to the extreme) and outside the integer range.
-float maxInt = std::numeric_limits::max();
+float overflowInt = maxPlusOne;
+float maxInt = overflowInt;
+for (int i = 0; overflowInt == maxInt; i++)
+maxInt = overflowInt - i;
+
 float minInt = std::numeric_limits::min();
-float overflowInt = maxInt * 1.1;
-float underflowInt = minInt * 1.1;
+float underflowInt = minInt;
+for (int i = 0; underflowInt == minInt; i++)
+underflowInt = minInt - i;
 
 EXPECT_GT(overflowInt, maxInt);
 EXPECT_LT(underflowInt, minInt);
 
-// If maxInt == 2^31 - 1 (ie on I32 architecture), the closest float used to represent it is 2^31.
-EXPECT_NEAR(clampToInteger(maxInt), maxInt, 1);
-EXPECT_EQ(clampToInteger(minInt), minInt);
+EXPECT_EQ(clampToInteger(maxInt), static_cast(maxInt));
+EXPECT_EQ(clampToInteger(minInt), std::numeric_limits::min());
 
-EXPECT_NEAR(clampToInteger(overflowInt), maxInt, 1);
-EXPECT_EQ(clampToInteger(underflowInt), minInt);
+EXPECT_EQ(clampToInteger(overflowInt), std::numeric_limits::max());
+EXPECT_EQ(clampToInteger(underflowInt), std::numeric_limits::min());
 }
 
 TEST(WTF, clampToIntegerDouble)


Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/FloatRect.cpp (259703 => 259704)

--- trunk/Tools/TestWebKitAPI/Tests/WebCore/FloatRect.cpp	2020-04-08 04:45:45 UTC (rev 259703)
+++ trunk/Tools/TestWebKitAPI/Tests/WebCore/FloatRect.cpp	2020-04-08 05:46:25 UTC (rev 259704)
@@ -770,8 +770,8 @@
 EXPECT_EQ(789, enclosed.maxY());
 
 WebCore::FloatRect maxIntRect(INT_MIN, INT_MIN, 0, 0);
-maxIntRect.shiftMaxXEdgeTo(INT_MAX);
-maxIntRect.shiftMaxYEdgeTo(INT_MAX);
+maxIntRect.shiftMaxXEdgeTo(30);
+maxIntRect.shiftMaxYEdgeTo(30);
 
 auto enclosed2 = WebCore::enclosingIntRect(maxIntRect);
 






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


[webkit-changes] [259703] trunk

2020-04-07 Thread commit-queue
Title: [259703] trunk








Revision 259703
Author commit-qu...@webkit.org
Date 2020-04-07 21:45:45 -0700 (Tue, 07 Apr 2020)


Log Message
[css-values-4] Support font-relative lh and rlh unit
https://bugs.webkit.org/show_bug.cgi?id=195180

Patch by Tyler Wilcock  on 2020-04-07
Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Pass all 'lh' and 'rlh' tests, minus the '2rlh in font-size on root' test which may be a bug in the test itself: https://github.com/web-platform-tests/wpt/issues/22055

* web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt:

Source/WebCore:

Implement support for 'lh' and 'rlh' units.
https://www.w3.org/TR/css-values-4/#font-relative-lengths

* css/CSSCalculationValue.cpp:
(WebCore::calcUnitCategory):
(WebCore::calculationCategoryForCombination):
(WebCore::hasDoubleValue):
* css/CSSGradientValue.cpp:
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::createGradient):
(WebCore::CSSConicGradientValue::createGradient):
* css/CSSPrimitiveValue.cpp:
(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::isStringType):
(WebCore::CSSPrimitiveValue::cleanup):
(WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble):
(WebCore::CSSPrimitiveValue::unitTypeString):
(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const):
(WebCore::CSSPrimitiveValue::equals const):
(WebCore::CSSPrimitiveValue::collectDirectComputationalDependencies const):
(WebCore::CSSPrimitiveValue::collectDirectRootComputationalDependencies const):
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isFontRelativeLength):
(WebCore::CSSPrimitiveValue::isLength):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::convertingToLengthRequiresNonNullStyle const):
* css/CSSToLengthConversionData.cpp:
(WebCore::CSSToLengthConversionData::viewportWidthFactor const):
(WebCore::CSSToLengthConversionData::viewportHeightFactor const):
(WebCore::CSSToLengthConversionData::viewportMinFactor const):
(WebCore::CSSToLengthConversionData::viewportMaxFactor const):
* css/CSSToLengthConversionData.h: Replace bool 'm_computingFontSize' with Optional that indicates the property being computed, where none means the property being computed is unknown or unimportant to know.
(WebCore::CSSToLengthConversionData::CSSToLengthConversionData): Add 'parentStyle' parameter, necessary for calculating lh/rlh unit values.
(WebCore::CSSToLengthConversionData::parentStyle const):
(WebCore::CSSToLengthConversionData::computingFontSize const):
(WebCore::CSSToLengthConversionData::computingLineHeight const):
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoom const):
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoomAndPropertyToCompute const):
* css/CSSUnits.cpp:
(WebCore::operator<<):
* css/CSSUnits.h:
* css/MediaQueryEvaluator.cpp:
(WebCore::MediaQueryEvaluator::evaluate const):
* css/parser/CSSParserToken.cpp:
(WebCore::cssPrimitiveValueUnitFromTrie):
* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeLength):
* css/parser/SizesAttributeParser.cpp:
(WebCore::SizesAttributeParser::computeLength):
(WebCore::SizesAttributeParser::effectiveSizeDefaultValue):
* html/shadow/TextControlInnerElements.cpp:
(WebCore::TextControlInnerElement::resolveCustomStyle):
* rendering/RenderElement.h:
(WebCore::RenderElement::parentStyle const):
* rendering/RenderThemeIOS.mm:
(WebCore::applyCommonButtonPaddingToStyle):
(WebCore::RenderThemeIOS::adjustButtonStyle const):
* rendering/style/RenderStyle.cpp: Extract 'computedLineHeight' behavior into separate 'computeLineHeight' function so logic can be reused elsewhere.
(WebCore::RenderStyle::computedLineHeight const):
(WebCore::RenderStyle::computeLineHeight const):
* rendering/style/RenderStyle.h:
* style/StyleBuilderConverter.h: Extract zoom calculation logic out of 'csstoLengthConversionDataWithTextZoomFactor' into separate 'zoomWithTextZoomFactor' function so logic can be reused elsewhere.
(WebCore::Style::zoomWithTextZoomFactor):
(WebCore::Style::BuilderConverter::csstoLengthConversionDataWithTextZoomFactor):
(WebCore::Style::BuilderConverter::convertLineHeight):
* style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueFontSize):
* style/StyleBuilderState.cpp:
(WebCore::Style::BuilderState::BuilderState):

LayoutTests:

Implement support for the font-relative 'lh' and 'rlh' units.
https://www.w3.org/TR/css-values-4/#font-relative-lengths

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt
trunk/LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSCalculationValue.cpp
trunk/Source/WebCore/css/CSSGradientValue.cpp
trunk/Source/WebCore/css/CSSPrimitiveValue.cpp
trunk/Source/WebCore/css/CSSPrimitiveValue.h
trunk/Sourc

[webkit-changes] [259702] trunk/LayoutTests

2020-04-07 Thread ryanhaddad
Title: [259702] trunk/LayoutTests








Revision 259702
Author ryanhad...@apple.com
Date 2020-04-07 20:59:00 -0700 (Tue, 07 Apr 2020)


Log Message
[iOS] webrtc/h265.html is consistently timing out
https://bugs.webkit.org/show_bug.cgi?id=210173

Unreviewed test gardening.

* platform/ios/TestExpectations: Skip the test on iOS.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259701 => 259702)

--- trunk/LayoutTests/ChangeLog	2020-04-08 03:36:05 UTC (rev 259701)
+++ trunk/LayoutTests/ChangeLog	2020-04-08 03:59:00 UTC (rev 259702)
@@ -1,3 +1,12 @@
+2020-04-07  Ryan Haddad  
+
+[iOS] webrtc/h265.html is consistently timing out
+https://bugs.webkit.org/show_bug.cgi?id=210173
+
+Unreviewed test gardening.
+
+* platform/ios/TestExpectations: Skip the test on iOS.
+
 2020-04-07  Zalan Bujtas  
 
 fastclick.com: A Gradient banner is missing


Modified: trunk/LayoutTests/platform/ios/TestExpectations (259701 => 259702)

--- trunk/LayoutTests/platform/ios/TestExpectations	2020-04-08 03:36:05 UTC (rev 259701)
+++ trunk/LayoutTests/platform/ios/TestExpectations	2020-04-08 03:59:00 UTC (rev 259702)
@@ -2897,6 +2897,8 @@
 
 webkit.org/b/177401 webrtc/captureCanvas-webrtc.html [ Pass Timeout Failure ]
 
+webkit.org/b/210173 webrtc/h265.html [ Skip ]
+
 webkit.org/b/177323 imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative.sub.html [ Pass Failure ]
 
 webkit.org/b/177445 fast/loader/form-submission-after-beforeunload-cancel.html [ Pass Timeout ]






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


[webkit-changes] [259701] trunk

2020-04-07 Thread zalan
Title: [259701] trunk








Revision 259701
Author za...@apple.com
Date 2020-04-07 20:36:05 -0700 (Tue, 07 Apr 2020)


Log Message
fastclick.com: A Gradient banner is missing
https://bugs.webkit.org/show_bug.cgi?id=210169


Reviewed by Simon Fraser.

Source/WebCore:

This patch ensures that if the non-fixed specified size for the background content computes to be a close-to-zero value, we produce at least one device pixel size content.
(and this is similar to what we do for FillSizeType::Contain/Cover.)

Test: fast/backgrounds/generated-bck-image-with-small-relative-size.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateFillTileSize const):

LayoutTests:

* fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html: Added.
* fast/backgrounds/generated-bck-image-with-small-relative-size.html: Added.

Modified Paths

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


Added Paths

trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html
trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size.html




Diff

Modified: trunk/LayoutTests/ChangeLog (259700 => 259701)

--- trunk/LayoutTests/ChangeLog	2020-04-08 02:38:42 UTC (rev 259700)
+++ trunk/LayoutTests/ChangeLog	2020-04-08 03:36:05 UTC (rev 259701)
@@ -1,3 +1,14 @@
+2020-04-07  Zalan Bujtas  
+
+fastclick.com: A Gradient banner is missing
+https://bugs.webkit.org/show_bug.cgi?id=210169
+
+
+Reviewed by Simon Fraser.
+
+* fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html: Added.
+* fast/backgrounds/generated-bck-image-with-small-relative-size.html: Added.
+
 2020-04-07  Per Arne Vollan  
 
 [iOS] Deny mach lookup access to the runningboard service in the WebContent process


Added: trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html (0 => 259701)

--- trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html	2020-04-08 03:36:05 UTC (rev 259701)
@@ -0,0 +1,8 @@
+
+div {
+background-color: green;
+}
+
+This tests that generated background images with relatively small size show up.
+
+


Added: trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size.html (0 => 259701)

--- trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size.html	(rev 0)
+++ trunk/LayoutTests/fast/backgrounds/generated-bck-image-with-small-relative-size.html	2020-04-08 03:36:05 UTC (rev 259701)
@@ -0,0 +1,8 @@
+
+div {
+background: linear-gradient(green, green);
+}
+
+This tests that generated background images with relatively small size show up.
+
+


Modified: trunk/Source/WebCore/ChangeLog (259700 => 259701)

--- trunk/Source/WebCore/ChangeLog	2020-04-08 02:38:42 UTC (rev 259700)
+++ trunk/Source/WebCore/ChangeLog	2020-04-08 03:36:05 UTC (rev 259701)
@@ -1,3 +1,19 @@
+2020-04-07  Zalan Bujtas  
+
+fastclick.com: A Gradient banner is missing
+https://bugs.webkit.org/show_bug.cgi?id=210169
+
+
+Reviewed by Simon Fraser.
+
+This patch ensures that if the non-fixed specified size for the background content computes to be a close-to-zero value, we produce at least one device pixel size content.
+(and this is similar to what we do for FillSizeType::Contain/Cover.)
+
+Test: fast/backgrounds/generated-bck-image-with-small-relative-size.html
+
+* rendering/RenderBoxModelObject.cpp:
+(WebCore::RenderBoxModelObject::calculateFillTileSize const):
+
 2020-04-07  Joonghun Park  
 
 Unreviewed. remove the build warning below since r243033.


Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (259700 => 259701)

--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp	2020-04-08 02:38:42 UTC (rev 259700)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp	2020-04-08 03:36:05 UTC (rev 259701)
@@ -1069,6 +1069,7 @@
 {
 StyleImage* image = fillLayer.image();
 FillSizeType type = fillLayer.size().type;
+auto devicePixelSize = LayoutUnit { 1.0 / document().deviceScaleFactor() };
 
 LayoutSize imageIntrinsicSize;
 if (image) {
@@ -1086,13 +1087,19 @@
 
 if (layerWidth.isFixed())
 tileSize.setWidth(layerWidth.value());
-else if (layerWidth.isPercentOrCalculated())
-tileSize.setWidth(valueForLength(layerWidth, positioningAreaSize.width()));
+else if (layerWidth.isPercentOrCalculated()) {
+auto resolvedWidth = valueForLength(layerWidth, positioningAreaSize.width());
+// Non-zero resolved value should always produce some content.
+tileSize.setWidth(!resolvedWidth ? reso

[webkit-changes] [259700] trunk

2020-04-07 Thread pvollan
Title: [259700] trunk








Revision 259700
Author pvol...@apple.com
Date 2020-04-07 19:38:42 -0700 (Tue, 07 Apr 2020)


Log Message
[iOS] Deny mach lookup access to the runningboard service in the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=209933

Reviewed by Chris Dumez.

Source/WebKit:

Creating the dependency process assertion in the WebContent process requires access to runningboard, but since
this is only done on process startup, we can issue a temporary extension to the runningboard service, which
will be immediately revoked after the process assertion has been created.

Test: fast/sandbox/ios/sandbox-mach-lookup.html

* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

LayoutTests:

* fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
* fast/sandbox/ios/sandbox-mach-lookup.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup-expected.txt
trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup.html
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb
trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp
trunk/Source/WebKit/Shared/WebProcessCreationParameters.h
trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
trunk/Source/WebKit/WebProcess/WebProcess.cpp
trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm




Diff

Modified: trunk/LayoutTests/ChangeLog (259699 => 259700)

--- trunk/LayoutTests/ChangeLog	2020-04-08 01:38:41 UTC (rev 259699)
+++ trunk/LayoutTests/ChangeLog	2020-04-08 02:38:42 UTC (rev 259700)
@@ -1,3 +1,13 @@
+2020-04-07  Per Arne Vollan  
+
+[iOS] Deny mach lookup access to the runningboard service in the WebContent process
+https://bugs.webkit.org/show_bug.cgi?id=209933
+
+Reviewed by Chris Dumez.
+
+* fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
+* fast/sandbox/ios/sandbox-mach-lookup.html:
+
 2020-04-07  Chris Fleizach  
 
 AX: VoiceOver can't activate combobox when textfield is inside it


Modified: trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup-expected.txt (259699 => 259700)

--- trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup-expected.txt	2020-04-08 01:38:41 UTC (rev 259699)
+++ trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup-expected.txt	2020-04-08 02:38:42 UTC (rev 259700)
@@ -27,3 +27,4 @@
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.iconservices") is false
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.lsd.mapdb") is false
 PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.frontboard.systemappservices") is false
+PASS internals.hasSandboxMachLookupAccessToGlobalName("com.apple.WebKit.WebContent", "com.apple.runningboard") is false


Modified: trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup.html (259699 => 259700)

--- trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup.html	2020-04-08 01:38:41 UTC (rev 259699)
+++ trunk/LayoutTests/fast/sandbox/ios/sandbox-mach-lookup.html	2020-04-08 02:38:42 UTC (rev 259700)
@@ -30,6 +30,7 @@
 shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.iconservices\")");
 shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.lsd.mapdb\")");
 shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.frontboard.systemappservices\")");
+shouldBeFalse("internals.hasSandboxMachLookupAccessToGlobalName(\"com.apple.WebKit.WebContent\", \"com.apple.runningboard\")");
 }
 
 


Modified: trunk/Source/WebKit/ChangeLog (259699 => 259700)

--- trunk/Source/WebKit/ChangeLog	2020-04-08 01:38:41 UTC (rev 259699)
+++ trunk/Source/WebKit/ChangeLog	2020-04-08 02:38:42 UTC (rev 259700)
@@ -1,3 +1,28 @@
+2020-04-07  Per Arne Vollan  
+
+[iOS] Deny mach lookup access to the runningboard service in the WebContent process
+https://bugs.webkit.org/show_bug.cgi?id=209933
+
+Reviewed by Chris Dumez.
+
+Creating the dependency process assertion in the WebContent process requires access to runningboard, but since
+this is only done on process startup, we can issue a temporary extension to the runningboard service, which
+will be immediately revoked after the process assertion has been created.
+
+Test: fast/sandbox/ios

[webkit-changes] [259699] trunk/Tools

2020-04-07 Thread aakash_jain
Title: [259699] trunk/Tools








Revision 259699
Author aakash_j...@apple.com
Date 2020-04-07 18:38:41 -0700 (Tue, 07 Apr 2020)


Log Message
[ews] Add unit tests for layout tests factories
https://bugs.webkit.org/show_bug.cgi?id=210150

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-build/factories_unittest.py:
(TestLayoutTestsFactory):
(TestLayoutTestsFactory.test_macos_wk1_release_factory): Added unit-test.
(TestLayoutTestsFactory.test_macos_wk1_debug_factory): Ditto.
(TestLayoutTestsFactory.test_macos_wk2_factory): Ditto.
(TestLayoutTestsFactory.test_ios_wk2_factory): Ditto.
(TestGTKFactory): Renamed.

Modified Paths

trunk/Tools/BuildSlaveSupport/ews-build/factories_unittest.py
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/ews-build/factories_unittest.py (259698 => 259699)

--- trunk/Tools/BuildSlaveSupport/ews-build/factories_unittest.py	2020-04-08 00:59:37 UTC (rev 259698)
+++ trunk/Tools/BuildSlaveSupport/ews-build/factories_unittest.py	2020-04-08 01:38:41 UTC (rev 259699)
@@ -203,7 +203,71 @@
 ])
 
 
-class TestGTKFactory(TestCase):
+class TestLayoutTestsFactory(TestCase):
+def test_macos_wk1_release_factory(self):
+factory = factories.macOSWK1Factory(platform='mac-mojave', configuration='release', architectures=["x86_64"])
+self.assertBuildSteps(factory.steps, [
+_BuildStepFactory(steps.ConfigureBuild, platform='mac-mojave', configuration='release', architectures=["x86_64"], buildOnly=False, triggers=None, remotes=None, additionalArguments=None),
+_BuildStepFactory(steps.ValidatePatch),
+_BuildStepFactory(steps.PrintConfiguration),
+_BuildStepFactory(steps.CheckOutSource),
+_BuildStepFactory(steps.CheckOutSpecificRevision),
+_BuildStepFactory(steps.ApplyPatch),
+_BuildStepFactory(steps.DownloadBuiltProduct),
+_BuildStepFactory(steps.ExtractBuiltProduct),
+_BuildStepFactory(steps.KillOldProcesses),
+_BuildStepFactory(steps.RunWebKit1Tests),
+_BuildStepFactory(steps.SetBuildSummary),
+])
+
+def test_macos_wk1_debug_factory(self):
+factory = factories.macOSWK1Factory(platform='mac-mojave', configuration='debug', architectures=["x86_64"])
+self.assertBuildSteps(factory.steps, [
+_BuildStepFactory(steps.ConfigureBuild, platform='mac-mojave', configuration='debug', architectures=["x86_64"], buildOnly=False, triggers=None, remotes=None, additionalArguments=None),
+_BuildStepFactory(steps.ValidatePatch),
+_BuildStepFactory(steps.PrintConfiguration),
+_BuildStepFactory(steps.CheckOutSource),
+_BuildStepFactory(steps.CheckOutSpecificRevision),
+_BuildStepFactory(steps.ApplyPatch),
+_BuildStepFactory(steps.DownloadBuiltProduct),
+_BuildStepFactory(steps.ExtractBuiltProduct),
+_BuildStepFactory(steps.KillOldProcesses),
+_BuildStepFactory(steps.RunWebKit1Tests),
+_BuildStepFactory(steps.SetBuildSummary),
+])
+
+def test_macos_wk2_factory(self):
+factory = factories.macOSWK2Factory(platform='mac-mojave', configuration='release', architectures=["x86_64"])
+self.assertBuildSteps(factory.steps, [
+_BuildStepFactory(steps.ConfigureBuild, platform='mac-mojave', configuration='release', architectures=["x86_64"], buildOnly=False, triggers=None, remotes=None, additionalArguments=None),
+_BuildStepFactory(steps.ValidatePatch),
+_BuildStepFactory(steps.PrintConfiguration),
+_BuildStepFactory(steps.CheckOutSource),
+_BuildStepFactory(steps.CheckOutSpecificRevision),
+_BuildStepFactory(steps.ApplyPatch),
+_BuildStepFactory(steps.DownloadBuiltProduct),
+_BuildStepFactory(steps.ExtractBuiltProduct),
+_BuildStepFactory(steps.KillOldProcesses),
+_BuildStepFactory(steps.RunWebKitTests),
+_BuildStepFactory(steps.SetBuildSummary),
+])
+
+def test_ios_wk2_factory(self):
+factory = factories.iOSTestsFactory(platform='ios-simulator-13', configuration='release', architectures=["x86_64"])
+self.assertBuildSteps(factory.steps, [
+_BuildStepFactory(steps.ConfigureBuild, platform='ios-simulator-13', configuration='release', architectures=["x86_64"], buildOnly=False, triggers=None, remotes=None, additionalArguments=None),
+_BuildStepFactory(steps.ValidatePatch),
+_BuildStepFactory(steps.PrintConfiguration),
+_BuildStepFactory(steps.CheckOutSource),
+_BuildStepFactory(steps.CheckOutSpecificRevision),
+_BuildStepFactory(steps.ApplyPatch),
+_BuildStepFactory(steps.DownloadBuiltProduct),
+_BuildStepFactory(steps.ExtractBuiltProduct),
+_BuildStepFactory(steps.KillOldProcesses),
+_BuildStepFa

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

2020-04-07 Thread jh718 . park
Title: [259698] trunk/Source/WebCore








Revision 259698
Author jh718.p...@samsung.com
Date 2020-04-07 17:59:37 -0700 (Tue, 07 Apr 2020)


Log Message
Unreviewed. remove the build warning below since r243033.
warning: unused parameter ‘pageMuted’ [-Wunused-parameter]

No new tests, no new behaviors.

* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::setInterrupted):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259697 => 259698)

--- trunk/Source/WebCore/ChangeLog	2020-04-08 00:43:18 UTC (rev 259697)
+++ trunk/Source/WebCore/ChangeLog	2020-04-08 00:59:37 UTC (rev 259698)
@@ -1,3 +1,13 @@
+2020-04-07  Joonghun Park  
+
+Unreviewed. remove the build warning below since r243033.
+warning: unused parameter ‘pageMuted’ [-Wunused-parameter]
+
+No new tests, no new behaviors.
+
+* platform/mediastream/RealtimeMediaSource.cpp:
+(WebCore::RealtimeMediaSource::setInterrupted):
+
 2020-04-07  Chris Fleizach  
 
 AX: VoiceOver can't activate combobox when textfield is inside it


Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp (259697 => 259698)

--- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp	2020-04-08 00:43:18 UTC (rev 259697)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp	2020-04-08 00:59:37 UTC (rev 259698)
@@ -76,6 +76,10 @@
 
 void RealtimeMediaSource::setInterrupted(bool interrupted, bool pageMuted)
 {
+#if RELEASE_LOG_DISABLED
+UNUSED_PARAM(pageMuted);
+#endif
+
 ALWAYS_LOG_IF(m_logger, LOGIDENTIFIER, interrupted, ", page muted : ", pageMuted);
 setMuted(interrupted);
 }






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


[webkit-changes] [259697] branches/safari-610.1.9-branch

2020-04-07 Thread repstein
Title: [259697] branches/safari-610.1.9-branch








Revision 259697
Author repst...@apple.com
Date 2020-04-07 17:43:18 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259655. rdar://problem/61360282

Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124


Reviewed by Brent Fulgham.

Source/WebKit:

No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.

* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
Remove the flag checking if In-App Browser Privacy is enabled. We
should return an app-bound session if WKAppBoundDomains is empty so
we no longer need to check the flag here.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
* UIProcess/WebPageProxy.h:
As described above, we no longer need to check the flag in this
instance as we are determining behavior based on the WKAppBoundDomains
list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
so it should take an Optional (WTF::nullopt indicates an empty list).

* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
Use the flag to enable internal debugging for testing purposes.

* UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::filterAppBoundCookies):
Flag no longer needed. This should be gated by whether the domains
list is empty or not.

Tools:

Cleaned up tests to turn the flag on at the start of each In-App
Browser Privacy test.

* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(cleanUpInAppBrowserPrivacyTestSettings):
(initializeInAppBrowserPrivacyTestSettings):
(TEST):

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

Modified Paths

branches/safari-610.1.9-branch/Source/WebKit/ChangeLog
branches/safari-610.1.9-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebPageProxy.cpp
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebPageProxy.h
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm
branches/safari-610.1.9-branch/Tools/ChangeLog
branches/safari-610.1.9-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm




Diff

Modified: branches/safari-610.1.9-branch/Source/WebKit/ChangeLog (259696 => 259697)

--- branches/safari-610.1.9-branch/Source/WebKit/ChangeLog	2020-04-08 00:43:15 UTC (rev 259696)
+++ branches/safari-610.1.9-branch/Source/WebKit/ChangeLog	2020-04-08 00:43:18 UTC (rev 259697)
@@ -1,5 +1,94 @@
 2020-04-07  Alan Coon  
 
+Cherry-pick r259655. rdar://problem/61360282
+
+Return app-bound sessions for instances where WKAppBoundDomains is
+empty
+https://bugs.webkit.org/show_bug.cgi?id=210124
+
+
+Reviewed by Brent Fulgham.
+
+Source/WebKit:
+
+No new tests. Behavior confirmed by existing In-App Browser Privacy
+tests.
+
+* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
+Remove the flag checking if In-App Browser Privacy is enabled. We
+should return an app-bound session if WKAppBoundDomains is empty so
+we no longer need to check the flag here.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
+(WebKit::WebPageProxy::decidePolicyForNavigationAction):
+* UIProcess/WebPageProxy.h:
+As described above, we no longer need to check the flag in this
+instance as we are determining behavior based on the WKAppBoundDomains
+list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
+so it should take an Optional (WTF::nullopt indicates an empty list).
+
+* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+(WebKit::WebsiteDataStore::initializeAppBoundDomains):
+Use the flag to enable internal debugging for testing purposes.
+
+* UIProcess/API/APIHTTPCookieStore.cpp:
+(API::HTTPCookieStore::filterAppBoundCookies):
+Flag no longer needed. This should be gated by whether the domains
+list is empty or not.
+
+Tools:
+
+Cleaned up tests to turn the flag on at the start of each In-App
+Browser Privacy test.
+
+* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
+(cleanUpInAppBrowserPrivacyTestSettings):
+(initializeInAppBrowserPrivacyTestSettings):
+(TEST):
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+202

[webkit-changes] [259695] branches/safari-610.1.9-branch/Source/WebKit

2020-04-07 Thread repstein
Title: [259695] branches/safari-610.1.9-branch/Source/WebKit








Revision 259695
Author repst...@apple.com
Date 2020-04-07 17:43:11 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259615. rdar://problem/61360282

Create a way to signal if the WKAppBoundDomains list is empty
https://bugs.webkit.org/show_bug.cgi?id=210074


Reviewed by Brent Fulgham.

Updates the WebFramePolicyListener to return an Optional
to signal if the WKAppBoundDomains list is empty. If so, we don't want to update
any app-bound domain parameters in WebPageProxy.

* UIProcess/WebFramePolicyListenerProxy.cpp:
(WebKit::WebFramePolicyListenerProxy::didReceiveAppBoundDomainResult):
* UIProcess/WebFramePolicyListenerProxy.h:
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::setUpPolicyListenerProxy):
* UIProcess/WebFrameProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
(WebKit::WebPageProxy::decidePolicyForResponseShared):
* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::beginAppBoundDomainCheck):
Changed the WebFramePolicyListener to take a NavigatingToAppBoundDomain
type as opposed to a boolean to allow it to handle the empty value.

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

Modified Paths

branches/safari-610.1.9-branch/Source/WebKit/ChangeLog
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebFramePolicyListenerProxy.cpp
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebFramePolicyListenerProxy.h
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebFrameProxy.cpp
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebFrameProxy.h
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebPageProxy.cpp
branches/safari-610.1.9-branch/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm




Diff

Modified: branches/safari-610.1.9-branch/Source/WebKit/ChangeLog (259694 => 259695)

--- branches/safari-610.1.9-branch/Source/WebKit/ChangeLog	2020-04-08 00:38:33 UTC (rev 259694)
+++ branches/safari-610.1.9-branch/Source/WebKit/ChangeLog	2020-04-08 00:43:11 UTC (rev 259695)
@@ -1,3 +1,62 @@
+2020-04-07  Alan Coon  
+
+Cherry-pick r259615. rdar://problem/61360282
+
+Create a way to signal if the WKAppBoundDomains list is empty
+https://bugs.webkit.org/show_bug.cgi?id=210074
+
+
+Reviewed by Brent Fulgham.
+
+Updates the WebFramePolicyListener to return an Optional
+to signal if the WKAppBoundDomains list is empty. If so, we don't want to update
+any app-bound domain parameters in WebPageProxy.
+
+* UIProcess/WebFramePolicyListenerProxy.cpp:
+(WebKit::WebFramePolicyListenerProxy::didReceiveAppBoundDomainResult):
+* UIProcess/WebFramePolicyListenerProxy.h:
+* UIProcess/WebFrameProxy.cpp:
+(WebKit::WebFrameProxy::setUpPolicyListenerProxy):
+* UIProcess/WebFrameProxy.h:
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::decidePolicyForNavigationAction):
+(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
+(WebKit::WebPageProxy::decidePolicyForResponseShared):
+* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+(WebKit::WebsiteDataStore::beginAppBoundDomainCheck):
+Changed the WebFramePolicyListener to take a NavigatingToAppBoundDomain
+type as opposed to a boolean to allow it to handle the empty value.
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-06  Kate Cheney  
+
+Create a way to signal if the WKAppBoundDomains list is empty
+https://bugs.webkit.org/show_bug.cgi?id=210074
+
+
+Reviewed by Brent Fulgham.
+
+Updates the WebFramePolicyListener to return an Optional
+to signal if the WKAppBoundDomains list is empty. If so, we don't want to update
+any app-bound domain parameters in WebPageProxy.
+
+* UIProcess/WebFramePolicyListenerProxy.cpp:
+(WebKit::WebFramePolicyListenerProxy::didReceiveAppBoundDomainResult):
+* UIProcess/WebFramePolicyListenerProxy.h:
+* UIProcess/WebFrameProxy.cpp:
+(WebKit::WebFrameProxy::setUpPolicyListenerProxy):
+* UIProcess/WebFrameProxy.h:
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::decidePolicyForNavigationAction):
+(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
+(WebKit::WebPageProxy::decidePolicyForResponseShared):
+* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+(WebKit::WebsiteDataStore::beginAppBoundDomainCheck):
+Changed the WebFramePolicyListener to take a NavigatingToAppBoundDomain
+type as opposed to a bo

[webkit-changes] [259696] branches/safari-610.1.9-branch

2020-04-07 Thread repstein
Title: [259696] branches/safari-610.1.9-branch








Revision 259696
Author repst...@apple.com
Date 2020-04-07 17:43:15 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259650. rdar://problem/61419505

WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
https://bugs.webkit.org/show_bug.cgi?id=210131
rdar://problem/61368446

Reviewed by Brady Eidson.

Source/WebCore:

If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
and never being injected (since Page::notifyToInjectUserScripts() will not be called again).

* page/Page.cpp:
(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.

Tools:

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

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

Modified Paths

branches/safari-610.1.9-branch/Source/WebCore/ChangeLog
branches/safari-610.1.9-branch/Source/WebCore/page/Page.cpp
branches/safari-610.1.9-branch/Tools/ChangeLog
branches/safari-610.1.9-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm




Diff

Modified: branches/safari-610.1.9-branch/Source/WebCore/ChangeLog (259695 => 259696)

--- branches/safari-610.1.9-branch/Source/WebCore/ChangeLog	2020-04-08 00:43:11 UTC (rev 259695)
+++ branches/safari-610.1.9-branch/Source/WebCore/ChangeLog	2020-04-08 00:43:15 UTC (rev 259696)
@@ -1,3 +1,45 @@
+2020-04-07  Alan Coon  
+
+Cherry-pick r259650. rdar://problem/61419505
+
+WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
+https://bugs.webkit.org/show_bug.cgi?id=210131
+rdar://problem/61368446
+
+Reviewed by Brady Eidson.
+
+Source/WebCore:
+
+If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
+m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
+and never being injected (since Page::notifyToInjectUserScripts() will not be called again).
+
+* page/Page.cpp:
+(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.
+
+Tools:
+
+* TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
+(TEST):
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-07  Timothy Hatcher  
+
+WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
+https://bugs.webkit.org/show_bug.cgi?id=210131
+rdar://problem/61368446
+
+Reviewed by Brady Eidson.
+
+If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
+m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
+and never being injected (since Page::notifyToInjectUserScripts() will not be called again).
+
+* page/Page.cpp:
+(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.
+
 2020-04-04  Rob Buis  
 
 Remove LockHistory parameter from loadWithNavigationAction


Modified: branches/safari-610.1.9-branch/Source/WebCore/page/Page.cpp (259695 => 259696)

--- branches/safari-610.1.9-branch/Source/WebCore/page/Page.cpp	2020-04-08 00:43:11 UTC (rev 259695)
+++ branches/safari-610.1.9-branch/Source/WebCore/page/Page.cpp	2020-04-08 00:43:15 UTC (rev 259696)
@@ -2479,10 +2479,13 @@
 
 void Page::notifyToInjectUserScripts()
 {
+m_hasBeenNotifiedToInjectUserScripts = true;
+
 for (auto* frame = &mainFrame(); frame; frame = frame->tree().traverseNext()) {
 for (const auto& pair : m_userScriptsAwaitingNotification)
 frame->injectUserScriptImmediately(pair.first, pair.second.get());
 }
+
 m_userScriptsAwaitingNotification.clear();
 }
 


Modified: branches/safari-610.1.9-branch/Tools/ChangeLog (259695 => 259696)

--- branches/safari-610.1.9-branch/Tools/ChangeLog	2020-04-08 00:43:11 UTC (rev 259695)
+++ branches/safari-610.1.9-branch/Tools/ChangeLog	2020-04-08 00:43:15 UTC (rev 259696)
@@ -1,3 +1,41 @@
+2020-04-07  Alan Coon  
+
+Cherry-pick r259650. rdar://problem/61419505
+
+WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
+https://bugs.webkit.org/show_bug.cgi?id=210131
+rdar://problem/61368446
+
+Reviewed by Brady Eidson.
+
+Source/WebCore:
+
+If Page::notifyToInjectUserScripts() is called early, before Fr

[webkit-changes] [259694] trunk/Tools

2020-04-07 Thread aakash_jain
Title: [259694] trunk/Tools








Revision 259694
Author aakash_j...@apple.com
Date 2020-04-07 17:38:33 -0700 (Tue, 07 Apr 2020)


Log Message
[ews] Improve summary for CheckPatchRelevance build step
https://bugs.webkit.org/show_bug.cgi?id=210146

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance): Improved success message.
(CheckPatchRelevance.start):
(CheckPatchRelevance.getResultSummary): Improved failure message.
* BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Updated accordingly.

Modified Paths

trunk/Tools/BuildSlaveSupport/ews-app/ews/views/statusbubble.py
trunk/Tools/BuildSlaveSupport/ews-build/steps.py
trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/ews-app/ews/views/statusbubble.py (259693 => 259694)

--- trunk/Tools/BuildSlaveSupport/ews-app/ews/views/statusbubble.py	2020-04-08 00:34:20 UTC (rev 259693)
+++ trunk/Tools/BuildSlaveSupport/ews-app/ews/views/statusbubble.py	2020-04-08 00:38:33 UTC (rev 259694)
@@ -62,7 +62,7 @@
  '^Downloaded built product$', '^Extracted built product$',
  '^Cleaned and updated working directory$', '^Checked out required revision$', '^Updated working directory$',
  '^Validated patch$', '^Killed old processes$', '^Configured build$', '^OS:.*Xcode:', '(skipped)',
- '^Printed configuration$', '^Checked patch relevance$', '^Deleted .git/index.lock$',
+ '^Printed configuration$', '^Patch contains relevant changes$', '^Deleted .git/index.lock$',
  '^triggered.*$', '^Found modified ChangeLogs$', '^Created local git commit$', '^Set build summary$',
  '^Validated commiter$', '^Validated commiter and reviewer$', '^Validated ChangeLog and Reviewer$',
  '^Removed flags on bugzilla patch$', '^Checked patch status on other queues$']


Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps.py (259693 => 259694)

--- trunk/Tools/BuildSlaveSupport/ews-build/steps.py	2020-04-08 00:34:20 UTC (rev 259693)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps.py	2020-04-08 00:38:33 UTC (rev 259694)
@@ -243,7 +243,7 @@
 class CheckPatchRelevance(buildstep.BuildStep):
 name = 'check-patch-relevance'
 description = ['check-patch-relevance running']
-descriptionDone = ['Checked patch relevance']
+descriptionDone = ['Patch contains relevant changes']
 flunkOnFailure = True
 haltOnFailure = True
 
@@ -332,12 +332,16 @@
 self.finished(SUCCESS)
 return None
 
-self._addToLog('stdio', 'This patch does not have relevant changes.')
+self._addToLog('stdio', 'This patch does not contain relevant changes.')
 self.finished(FAILURE)
 self.build.results = SKIPPED
-self.build.buildFinished(['Patch {} doesn\'t have relevant changes'.format(self.getProperty('patch_id', ''))], SKIPPED)
+self.build.buildFinished(['Patch {} doesn\'t contain relevant changes'.format(self.getProperty('patch_id', ''))], SKIPPED)
 return None
 
+def getResultSummary(self):
+if self.results == FAILURE:
+return {u'step': u'Patch doesn\'t contain relevant changes'}
+return super(CheckPatchRelevance, self).getResultSummary()
 
 class BugzillaMixin(object):
 addURLs = False


Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py (259693 => 259694)

--- trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-04-08 00:34:20 UTC (rev 259693)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-04-08 00:38:33 UTC (rev 259694)
@@ -2165,7 +2165,7 @@
 self.setProperty('buildername', 'JSC-Tests-EWS')
 self.assertEqual(CheckPatchRelevance.haltOnFailure, True)
 self.assertEqual(CheckPatchRelevance.flunkOnFailure, True)
-self.expectOutcome(result=SUCCESS, state_string='Checked patch relevance')
+self.expectOutcome(result=SUCCESS, state_string='Patch contains relevant changes')
 return self.runStep()
 
 def test_queue_without_relevance_info(self):
@@ -2173,7 +2173,7 @@
 self.setupStep(CheckPatchRelevance())
 self.setProperty('buildername', 'Commit-Queue')
 CheckPatchStatusOnEWSQueues.get_patch_status = lambda cls, patch_id, queue: FAILURE
-self.expectOutcome(result=SUCCESS, state_string='Checked patch relevance')
+self.expectOutcome(result=SUCCESS, state_string='Patch contains relevant changes')
 return self.runStep()
 
 def test_non_relevant_patch(self):
@@ -2182,7 +2182,7 @@
 self.setProperty('buildername', 'JSC-Tests-EWS')
 self.setProperty('patch_id', '1234')
 CheckPatchStatusOnEWSQueues.get_patch_status = lambda cls, patch_id, queue: FAILURE
-self.expectOutcome(result=FAILURE, state_s

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

2020-04-07 Thread wilander
Title: [259693] trunk/Source/WebKit








Revision 259693
Author wilan...@apple.com
Date 2020-04-07 17:34:20 -0700 (Tue, 07 Apr 2020)


Log Message
ITP Debug Mode logs should be more generic now that it blocks all third-party cookies by default
https://bugs.webkit.org/show_bug.cgi?id=210133


Reviewed by Brent Fulgham.

No new tests. Just a change of logging.

* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
Now logs if either vector has entries and uses more generic language.
* NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
Now logs if either vector has entries and uses more generic language.
* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches):
Removed hard-coded references to third-party cookie blocking and parameterized it instead.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp
trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp
trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259692 => 259693)

--- trunk/Source/WebKit/ChangeLog	2020-04-08 00:32:39 UTC (rev 259692)
+++ trunk/Source/WebKit/ChangeLog	2020-04-08 00:34:20 UTC (rev 259693)
@@ -1,3 +1,23 @@
+2020-04-07  John Wilander  
+
+ITP Debug Mode logs should be more generic now that it blocks all third-party cookies by default
+https://bugs.webkit.org/show_bug.cgi?id=210133
+
+
+Reviewed by Brent Fulgham.
+
+No new tests. Just a change of logging.
+
+* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
+(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
+Now logs if either vector has entries and uses more generic language.
+* NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
+(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
+Now logs if either vector has entries and uses more generic language.
+* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
+(WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches):
+Removed hard-coded references to third-party cookie blocking and parameterized it instead.
+
 2020-04-07  Joonghun Park  
 
 Move the misplaced statement to the proper place where in


Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp (259692 => 259693)

--- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp	2020-04-08 00:32:39 UTC (rev 259692)
+++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp	2020-04-08 00:34:20 UTC (rev 259693)
@@ -2272,8 +2272,8 @@
 
 RegistrableDomainsToBlockCookiesFor domainsToBlock { domainsToBlockAndDeleteCookiesFor, domainsToBlockButKeepCookiesFor, domainsWithUserInteractionAsFirstParty };
 
-if (debugLoggingEnabled() && !domainsToBlockAndDeleteCookiesFor.isEmpty() && !domainsToBlockButKeepCookiesFor.isEmpty())
-debugLogDomainsInBatches("block", domainsToBlock);
+if (debugLoggingEnabled() && (!domainsToBlockAndDeleteCookiesFor.isEmpty() || !domainsToBlockButKeepCookiesFor.isEmpty()))
+debugLogDomainsInBatches("Applying cross-site tracking restrictions", domainsToBlock);
 
 RunLoop::main().dispatch([weakThis = makeWeakPtr(*this), store = makeRef(store()), domainsToBlock = crossThreadCopy(domainsToBlock), completionHandler = WTFMove(completionHandler)] () mutable {
 store->callUpdatePrevalentDomainsToBlockCookiesForHandler(domainsToBlock, [weakThis = WTFMove(weakThis), store = store.copyRef(), completionHandler = WTFMove(completionHandler)]() mutable {
@@ -2284,8 +2284,8 @@
 return;
 
 if (UNLIKELY(weakThis->debugLoggingEnabled())) {
-RELEASE_LOG_INFO(ITPDebug, "Done updating cookie blocking.");
-weakThis->debugBroadcastConsoleMessage(MessageSource::ITPDebug, MessageLevel::Info, "[ITP] Done updating cookie blocking."_s);
+RELEASE_LOG_INFO(ITPDebug, "Done applying cross-site tracking restrictions.");
+weakThis->debugBroadcastConsoleMessage(MessageSource::ITPDebug, MessageLevel::Info, "[ITP] Done applying cross-site tracking restrictions."_s);
 }
 });
 });


Modified: trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp (259692 => 259693)

--- trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp	2020-04-08 00:32:39 UTC (rev 259692)
+++ trunk/Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemo

[webkit-changes] [259692] branches/safari-609-branch/Source/WebCore

2020-04-07 Thread alancoon
Title: [259692] branches/safari-609-branch/Source/WebCore








Revision 259692
Author alanc...@apple.com
Date 2020-04-07 17:32:39 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259388. rdar://problem/61269730

[iOS] Allow WebKit to use camera in multi-tasking mode
https://bugs.webkit.org/show_bug.cgi?id=209904

Reviewed by Youenn Fablet.

Source/WebCore:

* platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::setupSession):

Source/WebCore/PAL:

* pal/cocoa/AVFoundationSoftLink.h:
* pal/cocoa/AVFoundationSoftLink.mm:

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

Modified Paths

branches/safari-609-branch/Source/WebCore/ChangeLog
branches/safari-609-branch/Source/WebCore/PAL/ChangeLog
branches/safari-609-branch/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h
branches/safari-609-branch/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.mm
branches/safari-609-branch/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm




Diff

Modified: branches/safari-609-branch/Source/WebCore/ChangeLog (259691 => 259692)

--- branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:35 UTC (rev 259691)
+++ branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:39 UTC (rev 259692)
@@ -1,5 +1,36 @@
 2020-04-07  Russell Epstein  
 
+Cherry-pick r259388. rdar://problem/61269730
+
+[iOS] Allow WebKit to use camera in multi-tasking mode
+https://bugs.webkit.org/show_bug.cgi?id=209904
+
+Reviewed by Youenn Fablet.
+
+Source/WebCore:
+
+* platform/mediastream/mac/AVVideoCaptureSource.mm:
+(WebCore::AVVideoCaptureSource::setupSession):
+
+Source/WebCore/PAL:
+
+* pal/cocoa/AVFoundationSoftLink.h:
+* pal/cocoa/AVFoundationSoftLink.mm:
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-02  Eric Carlson  
+
+[iOS] Allow WebKit to use camera in multi-tasking mode
+https://bugs.webkit.org/show_bug.cgi?id=209904
+
+Reviewed by Youenn Fablet.
+
+* platform/mediastream/mac/AVVideoCaptureSource.mm:
+(WebCore::AVVideoCaptureSource::setupSession):
+
+2020-04-07  Russell Epstein  
+
 Cherry-pick r259363. rdar://problem/61269736
 
 CRASH in MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer(), uncaught ObjC exception


Modified: branches/safari-609-branch/Source/WebCore/PAL/ChangeLog (259691 => 259692)

--- branches/safari-609-branch/Source/WebCore/PAL/ChangeLog	2020-04-08 00:32:35 UTC (rev 259691)
+++ branches/safari-609-branch/Source/WebCore/PAL/ChangeLog	2020-04-08 00:32:39 UTC (rev 259692)
@@ -1,3 +1,34 @@
+2020-04-07  Russell Epstein  
+
+Cherry-pick r259388. rdar://problem/61269730
+
+[iOS] Allow WebKit to use camera in multi-tasking mode
+https://bugs.webkit.org/show_bug.cgi?id=209904
+
+Reviewed by Youenn Fablet.
+
+Source/WebCore:
+
+* platform/mediastream/mac/AVVideoCaptureSource.mm:
+(WebCore::AVVideoCaptureSource::setupSession):
+
+Source/WebCore/PAL:
+
+* pal/cocoa/AVFoundationSoftLink.h:
+* pal/cocoa/AVFoundationSoftLink.mm:
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-02  Eric Carlson  
+
+[iOS] Allow WebKit to use camera in multi-tasking mode
+https://bugs.webkit.org/show_bug.cgi?id=209904
+
+Reviewed by Youenn Fablet.
+
+* pal/cocoa/AVFoundationSoftLink.h:
+* pal/cocoa/AVFoundationSoftLink.mm:
+
 2020-02-17  Alan Coon  
 
 Cherry-pick r255881. rdar://problem/59447271


Modified: branches/safari-609-branch/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h (259691 => 259692)

--- branches/safari-609-branch/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h	2020-04-08 00:32:35 UTC (rev 259691)
+++ branches/safari-609-branch/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h	2020-04-08 00:32:39 UTC (rev 259692)
@@ -290,6 +290,11 @@
 #define AVRouteDetectorMultipleRoutesDetectedDidChangeNotification PAL::get_AVFoundation_AVRouteDetectorMultipleRoutesDetectedDidChangeNotification()
 SOFT_LINK_CONSTANT_FOR_HEADER(PAL, AVFoundation, AVAudioSessionMediaServicesWereResetNotification, NSString *)
 #define AVAudioSessionMediaServicesWereResetNotification PAL::get_AVFoundation_AVAudioSessionMediaServicesWereResetNotification()
-#endif //  PLATFORM(IOS_FAMILY)
+#endif // PLATFORM(IOS_FAMILY)
 
+#if PLATFORM(IOS_FAMILY) && !PLATFORM(WATCHOS) && !PLATFORM(APPLETV)
+SOFT_LINK_FUNCTION_FOR_HEADER(PAL, AVFoundation, AVCaptureSessionSetAuthorizedToUseCameraInMultipleForegroundAppLayout, void, (AVCaptureSession *session), (session))
+#define AVCaptureSessionSetAuthorizedToUseCameraInMultipleForegroundAppLayout softLink_AVFoundation_AVCaptureSessio

[webkit-changes] [259691] branches/safari-609-branch/Source/WebCore

2020-04-07 Thread alancoon
Title: [259691] branches/safari-609-branch/Source/WebCore








Revision 259691
Author alanc...@apple.com
Date 2020-04-07 17:32:35 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259363. rdar://problem/61269736

CRASH in MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer(), uncaught ObjC exception
https://bugs.webkit.org/show_bug.cgi?id=209827


Reviewed by Eric Carlson.

-[AVSampleBufferAudioRenderer init] can, in exceptional conditions, return nil. Passing a
nil object, or another object that AVSampleBufferRenderSynchronizer considers "invalid", into
-[AVSampleBufferRenderSynchronizer addRenderer:] will throw an exception. Protect against this
scenario in two ways:

- Check the return value of -[AVSampleBufferAudioRenderer init], and if nil, log an error,
  log to console, and set the network state to "DecodeError".
- Wrap calls to -addRenderer: in @try/@catch blocks, which if caught, log an error, assert,
  and set the network state to "DecodeError".

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::failedToCreateRenderer):
* Modules/mediasource/MediaSource.h:
* platform/graphics/MediaSourcePrivateClient.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::failedToCreateAudioRenderer):
(WebCore::MediaSourcePrivateAVFObjC::failedToCreateVideoRenderer):
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):

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

Modified Paths

branches/safari-609-branch/Source/WebCore/ChangeLog
branches/safari-609-branch/Source/WebCore/Modules/mediasource/MediaSource.cpp
branches/safari-609-branch/Source/WebCore/Modules/mediasource/MediaSource.h
branches/safari-609-branch/Source/WebCore/platform/graphics/MediaSourcePrivateClient.h
branches/safari-609-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
branches/safari-609-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h
branches/safari-609-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm
branches/safari-609-branch/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm




Diff

Modified: branches/safari-609-branch/Source/WebCore/ChangeLog (259690 => 259691)

--- branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:31 UTC (rev 259690)
+++ branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:35 UTC (rev 259691)
@@ -1,5 +1,71 @@
 2020-04-07  Russell Epstein  
 
+Cherry-pick r259363. rdar://problem/61269736
+
+CRASH in MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer(), uncaught ObjC exception
+https://bugs.webkit.org/show_bug.cgi?id=209827
+
+
+Reviewed by Eric Carlson.
+
+-[AVSampleBufferAudioRenderer init] can, in exceptional conditions, return nil. Passing a
+nil object, or another object that AVSampleBufferRenderSynchronizer considers "invalid", into
+-[AVSampleBufferRenderSynchronizer addRenderer:] will throw an exception. Protect against this
+scenario in two ways:
+
+- Check the return value of -[AVSampleBufferAudioRenderer init], and if nil, log an error,
+  log to console, and set the network state to "DecodeError".
+- Wrap calls to -addRenderer: in @try/@catch blocks, which if caught, log an error, assert,
+  and set the network state to "DecodeError".
+
+* Modules/mediasource/MediaSource.cpp:
+(WebCore::MediaSource::failedToCreateRenderer):
+* Modules/mediasource/MediaSource.h:
+* platform/graphics/MediaSourcePrivateClient.h:
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
+* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
+* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
+(WebCore::MediaSourcePrivateAVFObjC::failedToCreateAudioRenderer):
+(WebCore::MediaSourcePrivateAVFObjC::failedToCreateVideoRenderer):
+* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
+(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259363 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-01  Jer Noble  
+
+CRASH in MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer(), uncaught ObjC exception
+https://bugs.webkit.org/show_bug.cgi?id=209827
+
+
+Reviewed by Eric

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

2020-04-07 Thread jh718 . park
Title: [259688] trunk/Source/WebKit








Revision 259688
Author jh718.p...@samsung.com
Date 2020-04-07 17:32:13 -0700 (Tue, 07 Apr 2020)


Log Message
Move the misplaced statement to the proper place where in
RESOURCE_LOAD_STATISTICS macro.

This patch removes the build warning below since r259275.
warning: unused variable ‘sameSiteStrictEnforcementEnabled’ [-Wunused-variable]

No new tests, no new behavior changes.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/WebProcessPool.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259687 => 259688)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 23:43:29 UTC (rev 259687)
+++ trunk/Source/WebKit/ChangeLog	2020-04-08 00:32:13 UTC (rev 259688)
@@ -1,3 +1,16 @@
+2020-04-07  Joonghun Park  
+
+Move the misplaced statement to the proper place where in
+RESOURCE_LOAD_STATISTICS macro.
+
+This patch removes the build warning below since r259275.
+warning: unused variable ‘sameSiteStrictEnforcementEnabled’ [-Wunused-variable]
+
+No new tests, no new behavior changes.
+
+* UIProcess/WebProcessPool.cpp:
+(WebKit::WebProcessPool::ensureNetworkProcess):
+
 2020-04-07  Jiewen Tan  
 
 [WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts


Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (259687 => 259688)

--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-04-07 23:43:29 UTC (rev 259687)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-04-08 00:32:13 UTC (rev 259688)
@@ -600,9 +600,9 @@
 bool enableResourceLoadStatisticsDebugMode = false;
 #if ENABLE(RESOURCE_LOAD_STATISTICS)
 WebCore::ThirdPartyCookieBlockingMode thirdPartyCookieBlockingMode = WebCore::ThirdPartyCookieBlockingMode::All;
+WebCore::SameSiteStrictEnforcementEnabled sameSiteStrictEnforcementEnabled = WebCore::SameSiteStrictEnforcementEnabled::No;
 #endif
 WebCore::FirstPartyWebsiteDataRemovalMode firstPartyWebsiteDataRemovalMode = WebCore::FirstPartyWebsiteDataRemovalMode::AllButCookies;
-WebCore::SameSiteStrictEnforcementEnabled sameSiteStrictEnforcementEnabled = WebCore::SameSiteStrictEnforcementEnabled::No;
 WebCore::RegistrableDomain manualPrevalentResource { };
 WEB_PROCESS_POOL_ADDITIONS_2
 if (withWebsiteDataStore) {






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


[webkit-changes] [259690] branches/safari-609-branch/Source

2020-04-07 Thread alancoon
Title: [259690] branches/safari-609-branch/Source








Revision 259690
Author alanc...@apple.com
Date 2020-04-07 17:32:31 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259338. rdar://problem/61269727

Support resolution of IPv6 STUN/TURN addresses
https://bugs.webkit.org/show_bug.cgi?id=209808

Reviewed by Eric Carlson.

Source/WebCore:

Add family access to IPAddress to support both IPv4 and IPv6.
Store IPAddress internal value as IPv6 and cast them to IPv4 on demand.

* platform/network/DNS.h:
* platform/network/soup/DNSResolveQueueSoup.cpp:
(WebCore::resolvedWithObserverCallback):

Source/WebKit:

Update code to support IPv6 addresses when doing DNS resolution of TURN/STUN servers.
Refactor code to share more code between Cocoa ports and non Cocoa ports.
Manually tested with external IPv6 TURN servers.

* NetworkProcess/webrtc/NetworkRTCProvider.cpp:
(WebKit::NetworkRTCProvider::createResolver):
* NetworkProcess/webrtc/NetworkRTCResolverCocoa.cpp:
(WebKit::resolvedName):

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

Modified Paths

branches/safari-609-branch/Source/WebCore/ChangeLog
branches/safari-609-branch/Source/WebCore/platform/network/DNS.h
branches/safari-609-branch/Source/WebCore/platform/network/soup/DNSResolveQueueSoup.cpp
branches/safari-609-branch/Source/WebKit/ChangeLog
branches/safari-609-branch/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp
branches/safari-609-branch/Source/WebKit/NetworkProcess/webrtc/NetworkRTCResolverCocoa.cpp




Diff

Modified: branches/safari-609-branch/Source/WebCore/ChangeLog (259689 => 259690)

--- branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:26 UTC (rev 259689)
+++ branches/safari-609-branch/Source/WebCore/ChangeLog	2020-04-08 00:32:31 UTC (rev 259690)
@@ -1,5 +1,50 @@
 2020-04-07  Russell Epstein  
 
+Cherry-pick r259338. rdar://problem/61269727
+
+Support resolution of IPv6 STUN/TURN addresses
+https://bugs.webkit.org/show_bug.cgi?id=209808
+
+Reviewed by Eric Carlson.
+
+Source/WebCore:
+
+Add family access to IPAddress to support both IPv4 and IPv6.
+Store IPAddress internal value as IPv6 and cast them to IPv4 on demand.
+
+* platform/network/DNS.h:
+* platform/network/soup/DNSResolveQueueSoup.cpp:
+(WebCore::resolvedWithObserverCallback):
+
+Source/WebKit:
+
+Update code to support IPv6 addresses when doing DNS resolution of TURN/STUN servers.
+Refactor code to share more code between Cocoa ports and non Cocoa ports.
+Manually tested with external IPv6 TURN servers.
+
+* NetworkProcess/webrtc/NetworkRTCProvider.cpp:
+(WebKit::NetworkRTCProvider::createResolver):
+* NetworkProcess/webrtc/NetworkRTCResolverCocoa.cpp:
+(WebKit::resolvedName):
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-04-01  youenn fablet  
+
+Support resolution of IPv6 STUN/TURN addresses
+https://bugs.webkit.org/show_bug.cgi?id=209808
+
+Reviewed by Eric Carlson.
+
+Add family access to IPAddress to support both IPv4 and IPv6.
+Store IPAddress internal value as IPv6 and cast them to IPv4 on demand.
+
+* platform/network/DNS.h:
+* platform/network/soup/DNSResolveQueueSoup.cpp:
+(WebCore::resolvedWithObserverCallback):
+
+2020-04-07  Russell Epstein  
+
 Cherry-pick r259316. rdar://problem/61269751
 
 IndexedDB: destroy WebIDBServer when session is removed in network process


Modified: branches/safari-609-branch/Source/WebCore/platform/network/DNS.h (259689 => 259690)

--- branches/safari-609-branch/Source/WebCore/platform/network/DNS.h	2020-04-08 00:32:26 UTC (rev 259689)
+++ branches/safari-609-branch/Source/WebCore/platform/network/DNS.h	2020-04-08 00:32:31 UTC (rev 259690)
@@ -27,35 +27,56 @@
 
 #if OS(WINDOWS)
 #include 
+#include 
 #else
 #include 
 #endif
 
 #include 
+#include 
+#include 
 
 namespace WebCore {
 
-class WEBCORE_EXPORT IPAddress {
+class IPAddress {
 public:
-explicit IPAddress(const struct sockaddr_in& address)
+static Optional fromSockAddrIn6(const struct sockaddr_in6&);
+explicit IPAddress(const struct in_addr& address)
+: m_address(address)
 {
-memset(&m_address, 0, sizeof(struct sockaddr_in));
-m_address = address;
 }
 
-const struct in_addr& getSinAddr() { return m_address.sin_addr; };
+explicit IPAddress(const struct in6_addr& address)
+: m_address(address)
+{
+}
 
+bool isIPv4() const { return WTF::holds_alternative(m_address); }
+bool isIPv6() const { return WTF::holds_alternative(m_address); }
+
+const struct in_addr& ipv4Address() const { return WTF::get(m_address); }
+const struct in6_addr& ipv6Address() const { 

[webkit-changes] [259689] branches/safari-609-branch/Source

2020-04-07 Thread alancoon
Title: [259689] branches/safari-609-branch/Source








Revision 259689
Author alanc...@apple.com
Date 2020-04-07 17:32:26 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r259316. rdar://problem/61269751

IndexedDB: destroy WebIDBServer when session is removed in network process
https://bugs.webkit.org/show_bug.cgi?id=209606


Reviewed by Geoffrey Garen.

Source/WebCore:

Rename immediateCloseForUserDelete to immediateClose as we now use it in destructor of IDBServer to make sure
everything in database finishes correctly.

* Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::~IDBServer):
(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesModifiedSince):
(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesForOrigins):
* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::immediateClose):
(WebCore::IDBServer::UniqueIDBDatabase::immediateCloseForUserDelete): Deleted.
* Modules/indexeddb/server/UniqueIDBDatabase.h:

Source/WebKit:

Tested manually to verify WebIDBServer is removed and its thread ends when session is removed.

* NetworkProcess/IndexedDB/WebIDBServer.cpp:
(WebKit::WebIDBServer::~WebIDBServer):
(WebKit::WebIDBServer::addConnection):
(WebKit::WebIDBServer::removeConnection):
(WebKit::WebIDBServer::close):
* NetworkProcess/IndexedDB/WebIDBServer.h:
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::destroySession):
(WebKit::NetworkProcess::connectionToWebProcessClosed):

Source/WTF:

Add function to kill CrossThreadTaskHandler and make thread finish. Also add a callback to be called before
thread finishes.

* wtf/CrossThreadTaskHandler.cpp:
(WTF::CrossThreadTaskHandler::CrossThreadTaskHandler):
(WTF::CrossThreadTaskHandler::setCompletionCallback):
(WTF::CrossThreadTaskHandler::kill):
* wtf/CrossThreadTaskHandler.h:

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

Modified Paths

branches/safari-609-branch/Source/WTF/ChangeLog
branches/safari-609-branch/Source/WTF/wtf/CrossThreadTaskHandler.cpp
branches/safari-609-branch/Source/WTF/wtf/CrossThreadTaskHandler.h
branches/safari-609-branch/Source/WebCore/ChangeLog
branches/safari-609-branch/Source/WebCore/Modules/indexeddb/server/IDBServer.cpp
branches/safari-609-branch/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp
branches/safari-609-branch/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.h
branches/safari-609-branch/Source/WebKit/ChangeLog
branches/safari-609-branch/Source/WebKit/NetworkProcess/IndexedDB/WebIDBServer.cpp
branches/safari-609-branch/Source/WebKit/NetworkProcess/IndexedDB/WebIDBServer.h
branches/safari-609-branch/Source/WebKit/NetworkProcess/NetworkProcess.cpp




Diff

Modified: branches/safari-609-branch/Source/WTF/ChangeLog (259688 => 259689)

--- branches/safari-609-branch/Source/WTF/ChangeLog	2020-04-08 00:32:13 UTC (rev 259688)
+++ branches/safari-609-branch/Source/WTF/ChangeLog	2020-04-08 00:32:26 UTC (rev 259689)
@@ -1,3 +1,71 @@
+2020-04-07  Russell Epstein  
+
+Cherry-pick r259316. rdar://problem/61269751
+
+IndexedDB: destroy WebIDBServer when session is removed in network process
+https://bugs.webkit.org/show_bug.cgi?id=209606
+
+
+Reviewed by Geoffrey Garen.
+
+Source/WebCore:
+
+Rename immediateCloseForUserDelete to immediateClose as we now use it in destructor of IDBServer to make sure
+everything in database finishes correctly.
+
+* Modules/indexeddb/server/IDBServer.cpp:
+(WebCore::IDBServer::IDBServer::~IDBServer):
+(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesModifiedSince):
+(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesForOrigins):
+* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
+(WebCore::IDBServer::UniqueIDBDatabase::immediateClose):
+(WebCore::IDBServer::UniqueIDBDatabase::immediateCloseForUserDelete): Deleted.
+* Modules/indexeddb/server/UniqueIDBDatabase.h:
+
+Source/WebKit:
+
+Tested manually to verify WebIDBServer is removed and its thread ends when session is removed.
+
+* NetworkProcess/IndexedDB/WebIDBServer.cpp:
+(WebKit::WebIDBServer::~WebIDBServer):
+(WebKit::WebIDBServer::addConnection):
+(WebKit::WebIDBServer::removeConnection):
+(WebKit::WebIDBServer::close):
+* NetworkProcess/IndexedDB/WebIDBServer.h:
+* NetworkProcess/NetworkProcess.cpp:
+(WebKit::NetworkProcess::destroySession):
+(WebKit::NetworkProcess::connectionToWebProcessClosed):
+
+Source/WTF:
+
+Add function to kill CrossThreadTaskHandler and make thread finish. Also add a callback to be called before
+thread finishes.
+
+* wtf/CrossThreadTaskHandler.cpp:
+(WTF::CrossThreadTaskHandler::CrossThreadTaskHandler):
+(WTF::CrossThreadTaskHandler::setComplet

[webkit-changes] [259687] trunk

2020-04-07 Thread cfleizach
Title: [259687] trunk








Revision 259687
Author cfleiz...@apple.com
Date 2020-04-07 16:43:29 -0700 (Tue, 07 Apr 2020)


Log Message
AX: VoiceOver can't activate combobox when textfield is inside it
https://bugs.webkit.org/show_bug.cgi?id=210081

Reviewed by Joanmarie Diggs.

Source/WebCore:

Change accessKeyAction to return whether a simulated click event was dispatched.
Accessibility uses that information to decide whether it should sent an event afterwards, because
some objects accessKeyAction is only to focus(). AX is expected here to press on the object (and possibly focus).

Test: accessibility/activation-of-input-field-inside-other-element.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
* dom/Element.h:
(WebCore::Element::accessKeyAction):
* html/BaseCheckableInputType.cpp:
(WebCore::BaseCheckableInputType::accessKeyAction):
* html/BaseCheckableInputType.h:
* html/BaseChooserOnlyDateAndTimeInputType.cpp:
(WebCore::BaseChooserOnlyDateAndTimeInputType::accessKeyAction):
* html/BaseChooserOnlyDateAndTimeInputType.h:
* html/BaseClickableWithKeyInputType.cpp:
(WebCore::BaseClickableWithKeyInputType::accessKeyAction):
* html/BaseClickableWithKeyInputType.h:
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::accessKeyAction):
* html/HTMLAnchorElement.h:
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::accessKeyAction):
* html/HTMLButtonElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::accessKeyAction):
* html/HTMLElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::accessKeyAction):
* html/HTMLInputElement.h:
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::accessKeyAction):
* html/HTMLLabelElement.h:
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::accessKeyAction):
* html/HTMLLegendElement.h:
* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::accessKeyAction):
* html/HTMLOptGroupElement.h:
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::accessKeyAction):
* html/HTMLOptionElement.h:
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::accessKeyAction):
* html/HTMLSelectElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::accessKeyAction):
* html/HTMLTextAreaElement.h:
* html/HiddenInputType.cpp:
(WebCore::HiddenInputType::accessKeyAction):
* html/HiddenInputType.h:
* html/InputType.cpp:
(WebCore::InputType::accessKeyAction):
* html/InputType.h:
* html/RangeInputType.cpp:
(WebCore::RangeInputType::accessKeyAction):
* html/RangeInputType.h:
* svg/SVGElement.cpp:
(WebCore::SVGElement::accessKeyAction):
* svg/SVGElement.h:

LayoutTests:

* accessibility/activation-of-input-field-inside-other-element-expected.txt: Added.
* accessibility/activation-of-input-field-inside-other-element.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityObject.cpp
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/dom/Element.h
trunk/Source/WebCore/dom/SimulatedClick.cpp
trunk/Source/WebCore/dom/SimulatedClick.h
trunk/Source/WebCore/html/BaseCheckableInputType.cpp
trunk/Source/WebCore/html/BaseCheckableInputType.h
trunk/Source/WebCore/html/BaseChooserOnlyDateAndTimeInputType.cpp
trunk/Source/WebCore/html/BaseChooserOnlyDateAndTimeInputType.h
trunk/Source/WebCore/html/BaseClickableWithKeyInputType.cpp
trunk/Source/WebCore/html/BaseClickableWithKeyInputType.h
trunk/Source/WebCore/html/HTMLAnchorElement.cpp
trunk/Source/WebCore/html/HTMLAnchorElement.h
trunk/Source/WebCore/html/HTMLButtonElement.cpp
trunk/Source/WebCore/html/HTMLButtonElement.h
trunk/Source/WebCore/html/HTMLElement.cpp
trunk/Source/WebCore/html/HTMLElement.h
trunk/Source/WebCore/html/HTMLInputElement.cpp
trunk/Source/WebCore/html/HTMLInputElement.h
trunk/Source/WebCore/html/HTMLLabelElement.cpp
trunk/Source/WebCore/html/HTMLLabelElement.h
trunk/Source/WebCore/html/HTMLLegendElement.cpp
trunk/Source/WebCore/html/HTMLLegendElement.h
trunk/Source/WebCore/html/HTMLOptGroupElement.cpp
trunk/Source/WebCore/html/HTMLOptGroupElement.h
trunk/Source/WebCore/html/HTMLOptionElement.cpp
trunk/Source/WebCore/html/HTMLOptionElement.h
trunk/Source/WebCore/html/HTMLSelectElement.cpp
trunk/Source/WebCore/html/HTMLSelectElement.h
trunk/Source/WebCore/html/HTMLTextAreaElement.cpp
trunk/Source/WebCore/html/HTMLTextAreaElement.h
trunk/Source/WebCore/html/HiddenInputType.cpp
trunk/Source/WebCore/html/HiddenInputType.h
trunk/Source/WebCore/html/InputType.cpp
trunk/Source/WebCore/html/InputType.h
trunk/Source/WebCore/html/RangeInputType.cpp
trunk/Source/WebCore/html/RangeInputType.h
trunk/Source/WebCore/svg/SVGElement.cpp
trunk/Source/WebCore/svg/SVGElement.h


Added Paths

trunk/LayoutTests/accessibility/activation-of-input-field-inside-other-element-expected.txt
trunk/LayoutTests/accessibility/activation-of-input-field-inside-other-element.html




Diff

Modified: trunk/LayoutTests/ChangeLog (259686 => 259687)

--- trunk/LayoutTests/ChangeLog	2020-04

[webkit-changes] [259686] trunk/LayoutTests

2020-04-07 Thread lawrence . j
Title: [259686] trunk/LayoutTests








Revision 259686
Author lawrenc...@apple.com
Date 2020-04-07 16:42:34 -0700 (Tue, 07 Apr 2020)


Log Message
[ iOS ] http/tests/security/appcache-in-private-browsing.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=206750

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259685 => 259686)

--- trunk/LayoutTests/ChangeLog	2020-04-07 23:36:04 UTC (rev 259685)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 23:42:34 UTC (rev 259686)
@@ -1,5 +1,14 @@
 2020-04-07  Jason Lawrence  
 
+[ iOS ] http/tests/security/appcache-in-private-browsing.html is flaky timing out
+https://bugs.webkit.org/show_bug.cgi?id=206750
+
+Unreviewed test gardening.
+
+* platform/ios-wk2/TestExpectations:
+
+2020-04-07  Jason Lawrence  
+
 [ Catalina wk2 ] webrtc/peer-connection-audio-mute2.html is flaky timing out.
 https://bugs.webkit.org/show_bug.cgi?id=210165
 


Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (259685 => 259686)

--- trunk/LayoutTests/platform/ios-wk2/TestExpectations	2020-04-07 23:36:04 UTC (rev 259685)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations	2020-04-07 23:42:34 UTC (rev 259686)
@@ -1759,4 +1759,6 @@
 
 webkit.org/b/209869 crypto/subtle/rsa-indexeddb-non-exportable-private.html [ Pass Timeout ]
 
-webkit.org/b/209908 svg/custom/animate-initial-pause-unpause.html [ Pass Timeout ]
\ No newline at end of file
+webkit.org/b/209908 svg/custom/animate-initial-pause-unpause.html [ Pass Timeout ]
+
+webkit.org/b/206750 http/tests/security/appcache-in-private-browsing.html [ Pass Timeout ]
\ No newline at end of file






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


[webkit-changes] [259685] branches/safari-609-branch/Source/WebKit

2020-04-07 Thread alancoon
Title: [259685] branches/safari-609-branch/Source/WebKit








Revision 259685
Author alanc...@apple.com
Date 2020-04-07 16:36:04 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r257222. rdar://problem/61414891

Protect WebProcessPool from null weak pointers in m_serviceWorkerProcesses map
https://bugs.webkit.org/show_bug.cgi?id=208143
rdar://problem/58285589

Reviewed by Alex Christensen.

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createWebPage):
(WebKit::WebProcessPool::updateServiceWorkerUserAgent):
(WebKit::WebProcessPool::updateProcessAssertions):
When iterating through the map, make sure it does not have a null entry.

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

Modified Paths

branches/safari-609-branch/Source/WebKit/ChangeLog
branches/safari-609-branch/Source/WebKit/UIProcess/WebProcessPool.cpp




Diff

Modified: branches/safari-609-branch/Source/WebKit/ChangeLog (259684 => 259685)

--- branches/safari-609-branch/Source/WebKit/ChangeLog	2020-04-07 23:25:33 UTC (rev 259684)
+++ branches/safari-609-branch/Source/WebKit/ChangeLog	2020-04-07 23:36:04 UTC (rev 259685)
@@ -1,3 +1,36 @@
+2020-04-07  Russell Epstein  
+
+Cherry-pick r257222. rdar://problem/61414891
+
+Protect WebProcessPool from null weak pointers in m_serviceWorkerProcesses map
+https://bugs.webkit.org/show_bug.cgi?id=208143
+rdar://problem/58285589
+
+Reviewed by Alex Christensen.
+
+* UIProcess/WebProcessPool.cpp:
+(WebKit::WebProcessPool::createWebPage):
+(WebKit::WebProcessPool::updateServiceWorkerUserAgent):
+(WebKit::WebProcessPool::updateProcessAssertions):
+When iterating through the map, make sure it does not have a null entry.
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-02-24  Youenn Fablet  
+
+Protect WebProcessPool from null weak pointers in m_serviceWorkerProcesses map
+https://bugs.webkit.org/show_bug.cgi?id=208143
+rdar://problem/58285589
+
+Reviewed by Alex Christensen.
+
+* UIProcess/WebProcessPool.cpp:
+(WebKit::WebProcessPool::createWebPage):
+(WebKit::WebProcessPool::updateServiceWorkerUserAgent):
+(WebKit::WebProcessPool::updateProcessAssertions):
+When iterating through the map, make sure it does not have a null entry.
+
 2020-04-06  Alan Coon  
 
 Cherry-pick r259580. rdar://problem/61352477


Modified: branches/safari-609-branch/Source/WebKit/UIProcess/WebProcessPool.cpp (259684 => 259685)

--- branches/safari-609-branch/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-04-07 23:25:33 UTC (rev 259684)
+++ branches/safari-609-branch/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-04-07 23:36:04 UTC (rev 259685)
@@ -1266,8 +1266,10 @@
 #if ENABLE(SERVICE_WORKER)
 if (!m_serviceWorkerPreferences) {
 m_serviceWorkerPreferences = page->preferencesStore();
-for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values())
-serviceWorkerProcess->updateServiceWorkerPreferencesStore(*m_serviceWorkerPreferences);
+for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
+if (serviceWorkerProcess)
+serviceWorkerProcess->updateServiceWorkerPreferencesStore(*m_serviceWorkerPreferences);
+}
 }
 if (userContentController)
 m_userContentControllerIDForServiceWorker = userContentController->identifier();
@@ -1297,8 +1299,10 @@
 if (m_serviceWorkerUserAgent == userAgent)
 return;
 m_serviceWorkerUserAgent = userAgent;
-for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values())
-serviceWorkerProcess->setServiceWorkerUserAgent(m_serviceWorkerUserAgent);
+for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
+if (serviceWorkerProcess)
+serviceWorkerProcess->setServiceWorkerUserAgent(m_serviceWorkerUserAgent);
+}
 }
 #endif
 
@@ -2101,8 +2105,10 @@
 if (!weakThis)
 return;
 #if ENABLE(SERVICE_WORKER)
-for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values())
-serviceWorkerProcess->updateServiceWorkerProcessAssertion();
+for (auto& serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
+if (serviceWorkerProcess)
+serviceWorkerProcess->updateServiceWorkerProcessAssertion();
+}
 #endif
 });
 }






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


[webkit-changes] [259684] trunk/LayoutTests

2020-04-07 Thread lawrence . j
Title: [259684] trunk/LayoutTests








Revision 259684
Author lawrenc...@apple.com
Date 2020-04-07 16:25:33 -0700 (Tue, 07 Apr 2020)


Log Message
[ Catalina wk2 ] webrtc/peer-connection-audio-mute2.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=210165

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259683 => 259684)

--- trunk/LayoutTests/ChangeLog	2020-04-07 23:24:52 UTC (rev 259683)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 23:25:33 UTC (rev 259684)
@@ -1,3 +1,12 @@
+2020-04-07  Jason Lawrence  
+
+[ Catalina wk2 ] webrtc/peer-connection-audio-mute2.html is flaky timing out.
+https://bugs.webkit.org/show_bug.cgi?id=210165
+
+Unreviewed test gardening.
+
+* platform/mac-wk2/TestExpectations:
+
 2020-04-07  Jacob Uphoff  
 
 [ iOS wk2 ] http/wpt/cache-storage/cache-put-keys.https.any.html is flaky failing.


Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (259683 => 259684)

--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-07 23:24:52 UTC (rev 259683)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-07 23:25:33 UTC (rev 259684)
@@ -1042,4 +1042,6 @@
 
 webkit.org/b/209769 [ Catalina ] tiled-drawing/scrolling/frames/frameset-nested-frame-scrollability.html [ Pass Failure ]
 
-webkit.org/b/209878  [ Debug ] webrtc/datachannel/multiple-connections.html [ Slow ]
\ No newline at end of file
+webkit.org/b/209878  [ Debug ] webrtc/datachannel/multiple-connections.html [ Slow ]
+
+webkit.org/b/210165 [ Catalina ] webrtc/peer-connection-audio-mute2.html [ Pass Timeout Failure ]
\ No newline at end of file






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


[webkit-changes] [259683] trunk

2020-04-07 Thread ysuzuki
Title: [259683] trunk








Revision 259683
Author ysuz...@apple.com
Date 2020-04-07 16:24:52 -0700 (Tue, 07 Apr 2020)


Log Message
[JSC] Collect-continuously thread should take m_collectContinuouslyLock while it is waking up concurrent collector thread
https://bugs.webkit.org/show_bug.cgi?id=210163

Reviewed by Saam Barati.

JSTests:

* stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js: Added.
(let.theCode):

Source/_javascript_Core:

Collect-Continuously thread has fancy race issue.

In Heap::preventCollection, we first take m_collectContinuouslyLock to ensure collect-continuously thread is not working, and then
we ensure collector thread is stopped by using waitForCollector. However our collect-continuously thread is implemented like this.

while (!m_shouldStopCollectingContinuously) {
{ // (A)
LockHolder locker(*m_threadLock);
if (m_requests.isEmpty()) {
m_requests.append(WTF::nullopt);
m_lastGrantedTicket++;
m_threadCondition->notifyOne(locker);  // (B) WAKING UP concurrent collector thread.
}
}

{
LockHolder locker(m_collectContinuouslyLock);
...
while (!hasElapsed(timeToWakeUp) && !m_shouldStopCollectingContinuously)
m_collectContinuouslyCondition.waitUntil(m_collectContinuouslyLock, timeToWakeUp);
}
}

Even if m_collectContinuouslyLock is taken, collect-continuously thread is still able to wake up concurrent collector thread
since (B)'s code is not guarded by m_collectContinuouslyLock. The following sequence can happen,

1. The main thread calls Heap::preventCollection to ensure all collection is stopped.
2. The collect-continuously thread is at (A) point.
3. The main thread takes m_collectContinuouslyLock. This is OK.
4. The main thread calls waitForCollector to ensure that concurrent collector thread is stopped.
5. The collect-continuously thread executes (B). It is allowed since this is not guarded by m_collectContinuouslyLock. So, concurrent collector starts working.
6. While the main thread called Heap::preventCollection, concurrent collector starts collection!

We should guard (A)'s block with m_collectContinuouslyLock too.

* heap/Heap.cpp:
(JSC::Heap::notifyIsSafeToCollect):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/heap/Heap.cpp


Added Paths

trunk/JSTests/stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js




Diff

Modified: trunk/JSTests/ChangeLog (259682 => 259683)

--- trunk/JSTests/ChangeLog	2020-04-07 23:12:58 UTC (rev 259682)
+++ trunk/JSTests/ChangeLog	2020-04-07 23:24:52 UTC (rev 259683)
@@ -1,3 +1,13 @@
+2020-04-07  Yusuke Suzuki  
+
+[JSC] Collect-continuously thread should take m_collectContinuouslyLock while it is waking up concurrent collector thread
+https://bugs.webkit.org/show_bug.cgi?id=210163
+
+Reviewed by Saam Barati.
+
+* stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js: Added.
+(let.theCode):
+
 2020-04-07  Saam Barati  
 
 Delete ICs can't cache dictionaries


Added: trunk/JSTests/stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js (0 => 259683)

--- trunk/JSTests/stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js	(rev 0)
+++ trunk/JSTests/stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js	2020-04-07 23:24:52 UTC (rev 259683)
@@ -0,0 +1,22 @@
+//@ runDefault("--maxPerThreadStackUsage=1572864", "--forceMiniVMMode=1", "--stealEmptyBlocksFromOtherAllocators=0", "--collectContinuously=1", "--watchdog=3000", "--watchdog-exception-ok")
+// Reproducing the crash with this test is very hard. You should execute something like this.
+// while true; do for x in {0..4}; do DYLD_FRAMEWORK_PATH=$VM $VM/jsc --maxPerThreadStackUsage=1572864 --forceMiniVMMode=1 --stealEmptyBlocksFromOtherAllocators=0 --collectContinuously=1 collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js --watchdog=3000&; done; wait; sleep 0.1; done
+
+array = [];
+for (var i = 0; i < 800; ++i) {
+  array[i] = new DataView(new ArrayBuffer());
+}
+
+let theCode = `
+for (let j = 0; j < 100; j++) {
+  generateHeapSnapshotForGCDebugging();
+}
+`
+
+for (let i=0; i<5; i++) {
+  $.agent.start(theCode);
+}
+
+for (let i=0; i<3; i++) {
+  runString(theCode);
+}


Modified: trunk/Source/_javascript_Core/ChangeLog (259682 => 259683)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 23:12:58 UTC (rev 259682)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 2

[webkit-changes] [259682] trunk/LayoutTests

2020-04-07 Thread jacob_uphoff
Title: [259682] trunk/LayoutTests








Revision 259682
Author jacob_uph...@apple.com
Date 2020-04-07 16:12:58 -0700 (Tue, 07 Apr 2020)


Log Message
[ iOS wk2 ] http/wpt/cache-storage/cache-put-keys.https.any.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207496

Unreviewed test gardening.

* platform/ios-simulator-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259681 => 259682)

--- trunk/LayoutTests/ChangeLog	2020-04-07 23:11:21 UTC (rev 259681)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 23:12:58 UTC (rev 259682)
@@ -1,3 +1,12 @@
+2020-04-07  Jacob Uphoff  
+
+[ iOS wk2 ] http/wpt/cache-storage/cache-put-keys.https.any.html is flaky failing.
+https://bugs.webkit.org/show_bug.cgi?id=207496
+
+Unreviewed test gardening.
+
+* platform/ios-simulator-wk2/TestExpectations:
+
 2020-04-07  Jiewen Tan  
 
 [WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts


Modified: trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations (259681 => 259682)

--- trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2020-04-07 23:11:21 UTC (rev 259681)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2020-04-07 23:12:58 UTC (rev 259682)
@@ -49,7 +49,6 @@
 
 http/wpt/cache-storage/quota-third-party.https.html [ Slow ]
 http/wpt/fetch/response-opaque-clone.html [ Slow ]
-http/wpt/cache-storage/cache-put-keys.https.any.html [ Skip ]
 http/wpt/cache-storage/cache-quota-after-restart.any.html [ Slow ]
 http/wpt/cache-storage/cache-quota.any.html [ Slow ]
 http/wpt/cache-storage/a-cache-open.https.html [ Slow ]
@@ -99,3 +98,5 @@
 webkit.org/b/208840 editing/selection/selection-change-in-mutation-event-by-remove-children.html [ Pass Timeout ]
 
 webkit.org/b/209234 [ Release ] platform/ios/ios/plugin/youtube-flash-plugin-iframe-no-height-or-width.html [ Pass Failure ]
+
+webkit.org/b/207496 http/wpt/cache-storage/cache-put-keys.https.any.html [ Pass Failure ]
\ No newline at end of file






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


[webkit-changes] [259681] trunk

2020-04-07 Thread sbarati
Title: [259681] trunk








Revision 259681
Author sbar...@apple.com
Date 2020-04-07 16:11:21 -0700 (Tue, 07 Apr 2020)


Log Message
Delete ICs can't cache dictionaries
https://bugs.webkit.org/show_bug.cgi?id=210147


Reviewed by Tadeu Zagallo.

JSTests:

* stress/dont-cache-delete-ic-on-dictionary-2.js: Added.
(assert):
(makeDictionary):
(foo):
* stress/dont-cache-delete-ic-on-dictionary.js: Added.
(assert):
(foo):

Source/_javascript_Core:

We were happily caching delete IC cases on a dictionary object.
This is clearly wrong, as we might cache a miss on a dictionary
on a property "P", even though we might add "P" to the structure
without transitioning it.

* jit/Repatch.cpp:
(JSC::tryCacheDeleteBy):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/jit/Repatch.cpp


Added Paths

trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary-2.js
trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary.js




Diff

Modified: trunk/JSTests/ChangeLog (259680 => 259681)

--- trunk/JSTests/ChangeLog	2020-04-07 23:01:20 UTC (rev 259680)
+++ trunk/JSTests/ChangeLog	2020-04-07 23:11:21 UTC (rev 259681)
@@ -1,3 +1,19 @@
+2020-04-07  Saam Barati  
+
+Delete ICs can't cache dictionaries
+https://bugs.webkit.org/show_bug.cgi?id=210147
+
+
+Reviewed by Tadeu Zagallo.
+
+* stress/dont-cache-delete-ic-on-dictionary-2.js: Added.
+(assert):
+(makeDictionary):
+(foo):
+* stress/dont-cache-delete-ic-on-dictionary.js: Added.
+(assert):
+(foo):
+
 2020-04-07  Tadeu Zagallo  
 
 Not using strict mode within ClassDeclaration statement


Added: trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary-2.js (0 => 259681)

--- trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary-2.js	(rev 0)
+++ trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary-2.js	2020-04-07 23:11:21 UTC (rev 259681)
@@ -0,0 +1,25 @@
+function assert(b) {
+if (!b)
+throw new Error;
+}
+
+function makeDictionary() {
+let o = {};
+for (let i = 0; i < 1000; ++i)
+o["f" + i] = 42;
+return o;
+}
+
+function foo(o) {
+delete o.x;
+}
+
+let d = makeDictionary();
+for (let i = 0; i < 150; ++i) {
+foo(d);
+}
+
+d.x = 42;
+foo(d);
+
+assert(!d.x);


Added: trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary.js (0 => 259681)

--- trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary.js	(rev 0)
+++ trunk/JSTests/stress/dont-cache-delete-ic-on-dictionary.js	2020-04-07 23:11:21 UTC (rev 259681)
@@ -0,0 +1,17 @@
+//@ runDefault("--repatchBufferingCountdown=8", "--useDFGJIT=0", "--jitPolicyScale=0", "--useConcurrentJIT=0")
+
+function assert(b) {
+if (!b)
+throw new Error;
+}
+
+function foo(i) {
+Object.defineProperty(Reflect, "get", {});
+for (let i = 0; i < 2; i++) {
+delete Reflect.get;
+}
+}
+
+for (let i=0; i<100; i++) {
+foo(i);
+}


Modified: trunk/Source/_javascript_Core/ChangeLog (259680 => 259681)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 23:01:20 UTC (rev 259680)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 23:11:21 UTC (rev 259681)
@@ -1,3 +1,19 @@
+2020-04-07  Saam Barati  
+
+Delete ICs can't cache dictionaries
+https://bugs.webkit.org/show_bug.cgi?id=210147
+
+
+Reviewed by Tadeu Zagallo.
+
+We were happily caching delete IC cases on a dictionary object.
+This is clearly wrong, as we might cache a miss on a dictionary
+on a property "P", even though we might add "P" to the structure
+without transitioning it.
+
+* jit/Repatch.cpp:
+(JSC::tryCacheDeleteBy):
+
 2020-04-07  Tadeu Zagallo  
 
 Not using strict mode within ClassDeclaration statement


Modified: trunk/Source/_javascript_Core/jit/Repatch.cpp (259680 => 259681)

--- trunk/Source/_javascript_Core/jit/Repatch.cpp	2020-04-07 23:01:20 UTC (rev 259680)
+++ trunk/Source/_javascript_Core/jit/Repatch.cpp	2020-04-07 23:11:21 UTC (rev 259681)
@@ -756,6 +756,16 @@
 if (!slot.isCacheableDelete())
 return GiveUpOnCache;
 
+if (baseValue.asCell()->structure()->isDictionary()) {
+if (baseValue.asCell()->structure()->hasBeenFlattenedBefore())
+return GiveUpOnCache;
+jsCast(baseValue)->flattenDictionaryObject(vm);
+return RetryCacheLater;
+}
+
+if (oldStructure->isDictionary())
+return RetryCacheLater;
+
 std::unique_ptr newCase;
 
 if (slot.isDeleteHit()) {






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


[webkit-changes] [259680] trunk

2020-04-07 Thread jiewen_tan
Title: [259680] trunk








Revision 259680
Author jiewen_...@apple.com
Date 2020-04-07 16:01:20 -0700 (Tue, 07 Apr 2020)


Log Message
[WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts
https://bugs.webkit.org/show_bug.cgi?id=209923


Reviewed by Brent Fulgham.

Source/WebCore:

Covered by new tests within existing test files.

* testing/MockWebAuthenticationConfiguration.h:
(WebCore::MockWebAuthenticationConfiguration::LocalConfiguration::encode const):
(WebCore::MockWebAuthenticationConfiguration::LocalConfiguration::decode):
* testing/MockWebAuthenticationConfiguration.idl:
Adds a new parameter to reflect user cancellations on LocalAuthentication UI.

Source/WebKit:

This patch intents to streamline WebAuthn local authenticator UX a bit more. Here, we should treat user
cancellation of the LocalAuthentication UI as if it were being done on the UI Client's WebAuthn UI.

* UIProcess/WebAuthentication/Authenticator.h:
* UIProcess/WebAuthentication/AuthenticatorManager.cpp:
(WebKit::AuthenticatorManager::cancelRequest):
* UIProcess/WebAuthentication/AuthenticatorManager.h:
* UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h:
* UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification):
(WebKit::LocalAuthenticator::continueGetAssertionAfterUserVerification):
(WebKit::LocalAuthenticator::validateUserVerification const):
* UIProcess/WebAuthentication/Cocoa/LocalConnection.h:
* UIProcess/WebAuthentication/Cocoa/LocalConnection.mm:
(WebKit::LocalConnection::verifyUser const):
* UIProcess/WebAuthentication/Mock/MockLocalConnection.mm:
(WebKit::MockLocalConnection::MockLocalConnection):
(WebKit::MockLocalConnection::verifyUser const):
(WebKit::MockLocalConnection::filterResponses const):
* WebKit.xcodeproj/project.pbxproj:

Tools:

Modifies existing tests to accommodate changes in MockWebAuthenticationConfiguration.idl.

* TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-la.html:
* TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-duplicate-credential.html:
* TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-error.html:
* TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la.html:

LayoutTests:

Adds a new test for the change and modifies existing tests to accommodate changes in MockWebAuthenticationConfiguration.idl.

* http/wpt/webauthn/public-key-credential-create-failure-local-silent.https.html:
* http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-local.https.html:
* http/wpt/webauthn/public-key-credential-create-success-local.https.html:
* http/wpt/webauthn/public-key-credential-get-failure-local-silent.https.html:
* http/wpt/webauthn/public-key-credential-get-failure-local.https.html:
* http/wpt/webauthn/public-key-credential-get-success-local.https.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local-silent.https.html
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https.html
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-local.https.html
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-local-silent.https.html
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-local.https.html
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-success-local.https.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/testing/MockWebAuthenticationConfiguration.h
trunk/Source/WebCore/testing/MockWebAuthenticationConfiguration.idl
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/WebAuthentication/Authenticator.h
trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp
trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h
trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h
trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm
trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalConnection.h
trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalConnection.mm
trunk/Source/WebKit/UIProcess/WebAuthentication/Mock/MockLocalConnection.mm
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-la.html
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-duplicate-credential.html
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-error.html
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la.html




Diff

Modified: trunk/LayoutTests/ChangeLog (259679 => 259680)

--- trunk/LayoutTests/ChangeLog	2020-04-07 22:50:

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

2020-04-07 Thread commit-queue
Title: [259679] trunk/Source/WebKit








Revision 259679
Author commit-qu...@webkit.org
Date 2020-04-07 15:50:50 -0700 (Tue, 07 Apr 2020)


Log Message
[ macOS ] Update sandbox rules for storage
https://bugs.webkit.org/show_bug.cgi?id=210120


Patch by Sihui Liu  on 2020-04-07
Reviewed by Geoffrey Garen.

This direcotry is used for cookie storage.

* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in




Diff

Modified: trunk/Source/WebKit/ChangeLog (259678 => 259679)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 22:41:24 UTC (rev 259678)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 22:50:50 UTC (rev 259679)
@@ -1,3 +1,15 @@
+2020-04-07  Sihui Liu  
+
+[ macOS ] Update sandbox rules for storage
+https://bugs.webkit.org/show_bug.cgi?id=210120
+
+
+Reviewed by Geoffrey Garen.
+
+This direcotry is used for cookie storage.
+
+* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
+
 2020-04-07  Ryan Haddad  
 
 Unreviewed, reverting r259655.


Modified: trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in (259678 => 259679)

--- trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in	2020-04-07 22:41:24 UTC (rev 259678)
+++ trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in	2020-04-07 22:50:50 UTC (rev 259679)
@@ -446,3 +446,6 @@
 ;; Needed for TCC.
 (allow mach-lookup
 (global-name "com.apple.tccd"))
+
+(allow file-read* file-write*
+(home-subpath "/Library/HTTPStorages"))






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


[webkit-changes] [259678] trunk/LayoutTests

2020-04-07 Thread jacob_uphoff
Title: [259678] trunk/LayoutTests








Revision 259678
Author jacob_uph...@apple.com
Date 2020-04-07 15:41:24 -0700 (Tue, 07 Apr 2020)


Log Message
[ macOS debug ] REGRESSION (r259463): http/tests/media/clearkey/collect-webkit-media-session.html is failing
https://bugs.webkit.org/show_bug.cgi?id=209989

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259677 => 259678)

--- trunk/LayoutTests/ChangeLog	2020-04-07 22:39:45 UTC (rev 259677)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 22:41:24 UTC (rev 259678)
@@ -1,3 +1,12 @@
+2020-04-07  Jacob Uphoff  
+
+[ macOS debug ] REGRESSION (r259463): http/tests/media/clearkey/collect-webkit-media-session.html is failing
+https://bugs.webkit.org/show_bug.cgi?id=209989
+
+Unreviewed test gardening.
+
+* platform/mac-wk2/TestExpectations:
+
 2020-04-07  Tadeu Zagallo  
 
 Not using strict mode within ClassDeclaration statement


Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (259677 => 259678)

--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-07 22:39:45 UTC (rev 259677)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2020-04-07 22:41:24 UTC (rev 259678)
@@ -959,6 +959,7 @@
 webkit.org/b/206699 http/tests/media/now-playing-info.html [ Pass Failure ]
 
 webkit.org/b/209989 [ Mojave Debug ] http/tests/media/clearkey/collect-webkit-media-session.html [ Failure ]
+webkit.org/b/209989 [ Mojave Debug ] http/tests/media/media-stream/collect-media-devices.https.html [ Pass Failure ]
 
 webkit.org/b/207779 webgpu/whlsl/dereference-pointer-should-type-check.html [ Pass ImageOnlyFailure ]
 






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


[webkit-changes] [259677] branches/safari-609-branch/Source/WebCore/html/ HTMLMediaElement.cpp

2020-04-07 Thread repstein
Title: [259677] branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp








Revision 259677
Author repst...@apple.com
Date 2020-04-07 15:39:45 -0700 (Tue, 07 Apr 2020)


Log Message
Unreviewed build fix, rdar://problem/61352465

No viable conversion from 'WebCore::HTMLMediaElement' to 'WebCore::HTMLMediaElement *'

Modified Paths

branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp




Diff

Modified: branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp (259676 => 259677)

--- branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp	2020-04-07 22:32:21 UTC (rev 259676)
+++ branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp	2020-04-07 22:39:45 UTC (rev 259677)
@@ -6359,7 +6359,7 @@
 #if ENABLE(MEDIA_CONTROLS_SCRIPT)
 ensureMediaControlsShadowRoot();
 if (!m_mediaControlsHost)
-m_mediaControlsHost = MediaControlsHost::create(*this);
+m_mediaControlsHost = MediaControlsHost::create(this);
 m_mediaControlsHost->updateTextTrackRepresentationImageIfNeeded();
 #else
 if (!hasMediaControls() && !createMediaControls())






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


[webkit-changes] [259675] trunk

2020-04-07 Thread ryanhaddad
Title: [259675] trunk








Revision 259675
Author ryanhad...@apple.com
Date 2020-04-07 15:27:35 -0700 (Tue, 07 Apr 2020)


Log Message
Unreviewed, reverting r259655.

Caused assertion failures and timeouts on iOS bots

Reverted changeset:

"Return app-bound sessions for instances where
WKAppBoundDomains is"
https://bugs.webkit.org/show_bug.cgi?id=210124
https://trac.webkit.org/changeset/259655

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (259674 => 259675)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 22:09:36 UTC (rev 259674)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 22:27:35 UTC (rev 259675)
@@ -1,3 +1,16 @@
+2020-04-07  Ryan Haddad  
+
+Unreviewed, reverting r259655.
+
+Caused assertion failures and timeouts on iOS bots
+
+Reverted changeset:
+
+"Return app-bound sessions for instances where
+WKAppBoundDomains is"
+https://bugs.webkit.org/show_bug.cgi?id=210124
+https://trac.webkit.org/changeset/259655
+
 2020-04-07  Chris Dumez  
 
 Merge DependencyAssertion into ProcessAssertion


Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (259674 => 259675)

--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2020-04-07 22:09:36 UTC (rev 259674)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2020-04-07 22:27:35 UTC (rev 259675)
@@ -63,6 +63,7 @@
 #include 
 #else
 #define NETWORK_SESSION_COCOA_ADDITIONS_1
+#define NETWORK_SESSION_COCOA_ADDITIONS_2 false
 #endif
 
 #import "DeviceManagementSoftLink.h"
@@ -1210,8 +1211,10 @@
 ASSERT_NOT_REACHED();
 #endif
 
-if (isNavigatingToAppBoundDomain == NavigatingToAppBoundDomain::Yes)
-return appBoundSession(storedCredentialsPolicy);
+if (isNavigatingToAppBoundDomain == NavigatingToAppBoundDomain::Yes) {
+if (m_isInAppBrowserPrivacyEnabled || NETWORK_SESSION_COCOA_ADDITIONS_2)
+return appBoundSession(storedCredentialsPolicy);
+}
 
 switch (storedCredentialsPolicy) {
 case WebCore::StoredCredentialsPolicy::Use:


Modified: trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp (259674 => 259675)

--- trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp	2020-04-07 22:09:36 UTC (rev 259674)
+++ trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp	2020-04-07 22:27:35 UTC (rev 259675)
@@ -38,6 +38,7 @@
 #if USE(APPLE_INTERNAL_SDK)
 #include 
 #else
+#define IN_APP_BROWSER_PRIVACY_ENABLED false
 #define IMPLEMENT_IN_APP_BROWSER_PRIVACY_ENABLED
 #endif
 
@@ -65,8 +66,8 @@
 {
 Vector appBoundCookies;
 #if PLATFORM(IOS_FAMILY)
-m_owningDataStore->getAppBoundDomains([cookies, appBoundCookies = WTFMove(appBoundCookies), completionHandler = WTFMove(completionHandler)] (auto& domains) mutable {
-if (!domains.isEmpty()) {
+m_owningDataStore->getAppBoundDomains([this, protectedThis = makeRef(*this), cookies, appBoundCookies = WTFMove(appBoundCookies), completionHandler = WTFMove(completionHandler)] (auto& domains) mutable {
+if (m_owningDataStore->parameters().networkSessionParameters.isInAppBrowserPrivacyEnabled || IN_APP_BROWSER_PRIVACY_ENABLED) {
 IMPLEMENT_IN_APP_BROWSER_PRIVACY_ENABLED
 for (auto& cookie : cookies) {
 if (domains.contains(WebCore::RegistrableDomain::uncheckedCreateFromHost(cookie.domain)))


Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (259674 => 259675)

--- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2020-04-07 22:09:36 UTC (rev 259674)
+++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2020-04-07 22:27:35 UTC (rev 259675)
@@ -282,6 +282,7 @@
 #include 
 #else
 #define WEB_PAGE_PROXY_ADDITIONS_SETISNAVIGATINGTOAPPBOUNDDOMAIN
+#define WEB_PAGE_PROXY_ADDITIONS_SETISNAVIGATINGTOAPPBOUNDDOMAIN_2 false
 #endif
 
 // This controls what strategy we use for mouse wheel coalescing.
@@ -3118,18 +3119,14 @@
 PolicyCheckIdentifier m_identifier;
 };
 
-void WebPageProxy::setIsNavigatingToAppBoundDomain(bool isMainFrame, const URL& requestURL, Optional isNavigatingToAppBoundDomain)
+void WebPageProxy::setIsNavigatingToAppBoundDomain(bool isMainFrame, const URL& requestURL, NavigatingToAppBoundDomain isNavigatingToAppBoundDomain)
 {
 #if PLATFORM(IOS_FAMILY)
-if (isMainFrame) {
-WEB_PAGE_PROXY_ADDITIONS_SETISNAVIGATINGTOAPPBOUNDDOMAIN
-if (!isNavigatingToAppBoundDomain) {
-m_isNavigatingToAppBoundDomain = NavigatingToAppBoundDomain::Yes;
-return;
-}
+if (isMainFrame && (m_preferences->isInAppBrowserPrivacyEnabled() || WEB_PA

[webkit-changes] [259674] trunk/Source

2020-04-07 Thread cdumez
Title: [259674] trunk/Source








Revision 259674
Author cdu...@apple.com
Date 2020-04-07 15:09:36 -0700 (Tue, 07 Apr 2020)


Log Message
Merge DependencyAssertion into ProcessAssertion
https://bugs.webkit.org/show_bug.cgi?id=210076

Reviewed by Alex Christensen.

Source/WebKit:

Merge DependencyAssertion into ProcessAssertion. After r259610, ProcessAssertion can use
RunningBoard assertions so there is no longer any need to a separate DependencyAssertion
class. We can simply introduce a new assertion type to ProcessAssertion.

* Shared/DependencyProcessAssertion.cpp: Removed.
* Shared/DependencyProcessAssertion.h: Removed.
* Shared/ios/DependencyProcessAssertionIOS.mm: Removed.
* Sources.txt:
* SourcesCocoa.txt:
* UIProcess/ProcessAssertion.h:
* UIProcess/ios/ProcessAssertionIOS.mm:
(-[WKProcessAssertionBackgroundTaskManager init]):
(-[WKProcessAssertionBackgroundTaskManager _hasBackgroundTask]):
(-[WKProcessAssertionBackgroundTaskManager _updateBackgroundTask]):
(-[WKProcessAssertionBackgroundTaskManager _releaseBackgroundTask]):
(WebKit::runningBoardNameForAssertionType):
* WebKit.xcodeproj/project.pbxproj:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
* WebProcess/WebProcess.h:

Source/WTF:

* wtf/PlatformHave.h:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/PlatformHave.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Sources.txt
trunk/Source/WebKit/SourcesCocoa.txt
trunk/Source/WebKit/UIProcess/ProcessAssertion.h
trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp
trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
trunk/Source/WebKit/WebProcess/WebProcess.cpp
trunk/Source/WebKit/WebProcess/WebProcess.h


Removed Paths

trunk/Source/WebKit/Shared/DependencyProcessAssertion.cpp
trunk/Source/WebKit/Shared/DependencyProcessAssertion.h
trunk/Source/WebKit/Shared/ios/DependencyProcessAssertionIOS.mm




Diff

Modified: trunk/Source/WTF/ChangeLog (259673 => 259674)

--- trunk/Source/WTF/ChangeLog	2020-04-07 22:07:54 UTC (rev 259673)
+++ trunk/Source/WTF/ChangeLog	2020-04-07 22:09:36 UTC (rev 259674)
@@ -1,3 +1,12 @@
+2020-04-07  Chris Dumez  
+
+Merge DependencyAssertion into ProcessAssertion
+https://bugs.webkit.org/show_bug.cgi?id=210076
+
+Reviewed by Alex Christensen.
+
+* wtf/PlatformHave.h:
+
 2020-04-07  Saam Barati  
 
 RAMification should have a way of gathering vmmaps for each test at the end of each run


Modified: trunk/Source/WTF/wtf/PlatformHave.h (259673 => 259674)

--- trunk/Source/WTF/wtf/PlatformHave.h	2020-04-07 22:07:54 UTC (rev 259673)
+++ trunk/Source/WTF/wtf/PlatformHave.h	2020-04-07 22:09:36 UTC (rev 259674)
@@ -459,7 +459,7 @@
 #if (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 14) \
 || (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MIN_REQUIRED >= 7) \
 || (PLATFORM(APPLETV) && __TV_OS_VERSION_MIN_REQUIRED >= 14)
-#define HAVE_RUNNINGBOARD_WEBKIT_ASSERTIONS 1
+#define HAVE_RUNNINGBOARD_VISIBILITY_ASSERTIONS 1
 #endif
 
 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500


Modified: trunk/Source/WebKit/ChangeLog (259673 => 259674)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 22:07:54 UTC (rev 259673)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 22:09:36 UTC (rev 259674)
@@ -1,3 +1,31 @@
+2020-04-07  Chris Dumez  
+
+Merge DependencyAssertion into ProcessAssertion
+https://bugs.webkit.org/show_bug.cgi?id=210076
+
+Reviewed by Alex Christensen.
+
+Merge DependencyAssertion into ProcessAssertion. After r259610, ProcessAssertion can use
+RunningBoard assertions so there is no longer any need to a separate DependencyAssertion
+class. We can simply introduce a new assertion type to ProcessAssertion.
+
+* Shared/DependencyProcessAssertion.cpp: Removed.
+* Shared/DependencyProcessAssertion.h: Removed.
+* Shared/ios/DependencyProcessAssertionIOS.mm: Removed.
+* Sources.txt:
+* SourcesCocoa.txt:
+* UIProcess/ProcessAssertion.h:
+* UIProcess/ios/ProcessAssertionIOS.mm:
+(-[WKProcessAssertionBackgroundTaskManager init]):
+(-[WKProcessAssertionBackgroundTaskManager _hasBackgroundTask]):
+(-[WKProcessAssertionBackgroundTaskManager _updateBackgroundTask]):
+(-[WKProcessAssertionBackgroundTaskManager _releaseBackgroundTask]):
+(WebKit::runningBoardNameForAssertionType):
+* WebKit.xcodeproj/project.pbxproj:
+* WebProcess/WebProcess.cpp:
+(WebKit::WebProcess::initializeConnection):
+* WebProcess/WebProcess.h:
+
 2020-04-07  Alex Christensen  
 
 Simplify and fortify network getNetworkProcessConnection and getGPUProcessConnection


Deleted: trunk/Source/WebKit/Shared/DependencyProcessAssertion.cpp (259673 => 259674)

--- trunk/Source/WebKit/Shared/DependencyProcessAssertion.cpp	2020-04-07 22:07:54 UTC (rev 259673)
+++ trunk/Source/Web

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

2020-04-07 Thread commit-queue
Title: [259673] trunk/Source/WebKit








Revision 259673
Author commit-qu...@webkit.org
Date 2020-04-07 15:07:54 -0700 (Tue, 07 Apr 2020)


Log Message
Simplify and fortify network getNetworkProcessConnection and getGPUProcessConnection
https://bugs.webkit.org/show_bug.cgi?id=210142


Patch by Alex Christensen  on 2020-04-07
Reviewed by Youenn Fablet.

We have reports of hangs inside WebKit::getNetworkProcessConnection that seem to last forever.
Some of the reports indicate the network process is being suspended while a connection is being established with it.

To fix this issue we do three things:
1. We take a foregroundActivity when sending an async message to establish a connection.
2. We use sendWithAsyncReply which already has logic to handle the case where we are currently launching the process.
   Instead of the complicated retry logic, we add a retry attempt in WebProcessPool if the connection identifier is invalid.
3. Add some release logging so we can better diagnose problems with this flow in the future.

The functional change is adding the foreground activity, which should prevent some hangs.
The rest is just to make this code more sane to understand and debug.
I do the same changes to NetworkProcess and GPUProcess because they are intended to be the same.  The latter is based on the former.

The API test WebKit.NetworkProcessCrashWithPendingConnection covers what happens when the network process crashes during connection establishment.
It fails if we don't retry somewhere, which I did in WebProcessPool.  We also need to try again in getNetworkProcessConnection and getGPUProcessConnection.
If it fails twice, there's nothing we can do, and we crash the web process to avoid a crash loop.

* UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::getGPUProcessConnection):
(WebKit::GPUProcessProxy::didFinishLaunching):
(WebKit::GPUProcessProxy::~GPUProcessProxy): Deleted.
(WebKit::GPUProcessProxy::openGPUProcessConnection): Deleted.
* UIProcess/GPU/GPUProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::~NetworkProcessProxy):
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
(WebKit::NetworkProcessProxy::networkProcessCrashed):
(WebKit::NetworkProcessProxy::didFinishLaunching):
(WebKit::NetworkProcessProxy::openNetworkProcessConnection): Deleted.
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::networkProcessCrashed):
(WebKit::WebProcessPool::getNetworkProcessConnection):
(WebKit::WebProcessPool::getGPUProcessConnection):
* UIProcess/WebProcessPool.h:
* WebProcess/GPU/GPUProcessConnectionInfo.h:
(WebKit::GPUProcessConnectionInfo::identifier const):
(WebKit::GPUProcessConnectionInfo::identifier): Deleted.
* WebProcess/Network/NetworkProcessConnectionInfo.h:
(WebKit::NetworkProcessConnectionInfo::identifier const):
(WebKit::NetworkProcessConnectionInfo::identifier): Deleted.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.h
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
trunk/Source/WebKit/UIProcess/WebProcessPool.cpp
trunk/Source/WebKit/UIProcess/WebProcessPool.h
trunk/Source/WebKit/WebProcess/GPU/GPUProcessConnectionInfo.h
trunk/Source/WebKit/WebProcess/Network/NetworkProcessConnectionInfo.h
trunk/Source/WebKit/WebProcess/WebProcess.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259672 => 259673)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 21:33:04 UTC (rev 259672)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 22:07:54 UTC (rev 259673)
@@ -1,3 +1,53 @@
+2020-04-07  Alex Christensen  
+
+Simplify and fortify network getNetworkProcessConnection and getGPUProcessConnection
+https://bugs.webkit.org/show_bug.cgi?id=210142
+
+
+Reviewed by Youenn Fablet.
+
+We have reports of hangs inside WebKit::getNetworkProcessConnection that seem to last forever.
+Some of the reports indicate the network process is being suspended while a connection is being established with it.
+
+To fix this issue we do three things:
+1. We take a foregroundActivity when sending an async message to establish a connection.
+2. We use sendWithAsyncReply which already has logic to handle the case where we are currently launching the process.
+   Instead of the complicated retry logic, we add a retry attempt in WebProcessPool if the connection identifier is invalid.
+3. Add some release logging so we can better diagnose problems with this flow in the future.
+
+The functional change is adding the foreground activity, which should prevent some hangs.
+The rest is just to make this code more sane to understand and debug.
+I do the same changes to NetworkProcess and GPUProcess because they are intended to be the same.  The latter is based o

[webkit-changes] [259672] trunk/Source

2020-04-07 Thread simon . fraser
Title: [259672] trunk/Source








Revision 259672
Author simon.fra...@apple.com
Date 2020-04-07 14:33:04 -0700 (Tue, 07 Apr 2020)


Log Message
Use RectEdges<> in some scrolling tree code
https://bugs.webkit.org/show_bug.cgi?id=210141

Reviewed by Tim Horton.
Source/WebCore:

Add utility functions on ScrollingTreeScrollingNode to get pinned and rubberband state.
Use them to push main frame state to the scrolling tree (which we do so we can safely
access the state from the EventDispatcher thread).

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::setMainFramePinnedState):
(WebCore::ScrollingTree::setMainFrameCanRubberBand):
(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
(WebCore::ScrollingTree::setMainFramePinState): Deleted.
(WebCore::ScrollingTree::setCanRubberBandState): Deleted.
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::edgePinnedState const):
(WebCore::ScrollingTreeScrollingNode::isRubberBanding const):
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateMainFramePinAndRubberbandState):

Source/WebKit:

Construct a RectEdges<>. Order is top, right, bottom, left.

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.h
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259671 => 259672)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 21:14:16 UTC (rev 259671)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 21:33:04 UTC (rev 259672)
@@ -1,3 +1,28 @@
+2020-04-07  Simon Fraser  
+
+Use RectEdges<> in some scrolling tree code
+https://bugs.webkit.org/show_bug.cgi?id=210141
+
+Reviewed by Tim Horton.
+
+Add utility functions on ScrollingTreeScrollingNode to get pinned and rubberband state.
+Use them to push main frame state to the scrolling tree (which we do so we can safely
+access the state from the EventDispatcher thread).
+
+* page/scrolling/ScrollingTree.cpp:
+(WebCore::ScrollingTree::setMainFramePinnedState):
+(WebCore::ScrollingTree::setMainFrameCanRubberBand):
+(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
+(WebCore::ScrollingTree::setMainFramePinState): Deleted.
+(WebCore::ScrollingTree::setCanRubberBandState): Deleted.
+* page/scrolling/ScrollingTree.h:
+* page/scrolling/ScrollingTreeScrollingNode.cpp:
+(WebCore::ScrollingTreeScrollingNode::edgePinnedState const):
+(WebCore::ScrollingTreeScrollingNode::isRubberBanding const):
+* page/scrolling/ScrollingTreeScrollingNode.h:
+* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
+(WebCore::ScrollingTreeFrameScrollingNodeMac::updateMainFramePinAndRubberbandState):
+
 2020-04-07  Joanmarie Diggs  
 
 AX: Change ATK mapping of the ARIA alert and alertdialog roles


Modified: trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp (259671 => 259672)

--- trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp	2020-04-07 21:14:16 UTC (rev 259671)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp	2020-04-07 21:33:04 UTC (rev 259672)
@@ -383,24 +383,18 @@
 m_treeState.mainFrameIsScrollSnapping = isScrollSnapping;
 }
 
-void ScrollingTree::setMainFramePinState(bool pinnedToTheLeft, bool pinnedToTheRight, bool pinnedToTheTop, bool pinnedToTheBottom)
+void ScrollingTree::setMainFramePinnedState(RectEdges edgePinningState)
 {
 LockHolder locker(m_swipeStateMutex);
 
-m_swipeState.mainFramePinnedToTheLeft = pinnedToTheLeft;
-m_swipeState.mainFramePinnedToTheRight = pinnedToTheRight;
-m_swipeState.mainFramePinnedToTheTop = pinnedToTheTop;
-m_swipeState.mainFramePinnedToTheBottom = pinnedToTheBottom;
+m_swipeState.mainFramePinnedState = edgePinningState;
 }
 
-void ScrollingTree::setCanRubberBandState(bool canRubberBandAtLeft, bool canRubberBandAtRight, bool canRubberBandAtTop, bool canRubberBandAtBottom)
+void ScrollingTree::setMainFrameCanRubberBand(RectEdges canRubberBand)
 {
 LockHolder locker(m_swipeStateMutex);
 
-m_swipeState.rubberBandsAtLeft = canRubberBandAtLeft;
-m_swipeState.rubberBandsAtRight = canRubberBandAtRight;
-m_swipeState.rubberBandsAtTop = canRubberBandAtTop;
-m_swipeState.rubberBandsAtBottom = canRubberBandAtBottom;
+m_swipeState.canRubberBand = canRubberBand;
 }
 
 // Can be called from the main thread.
@@ -425,13 +419,13 @@
 
 Lo

[webkit-changes] [259671] trunk

2020-04-07 Thread jdiggs
Title: [259671] trunk








Revision 259671
Author jdi...@igalia.com
Date 2020-04-07 14:14:16 -0700 (Tue, 07 Apr 2020)


Log Message
AX: Change ATK mapping of the ARIA alert and alertdialog roles
https://bugs.webkit.org/show_bug.cgi?id=210121

Reviewed by Chris Fleizach.

Source/WebCore:

The ARIA alert role is a live region; not a dialog/message box. In contrast,
the ATK alert role is for dialogs such as a warning message which should be
presented immediately to the user. Because of the similarity in role names,
the original mappings in the Core-AAM were not ideal. They have recently
been fixed so we need to update our implementation accordingly.

Changed mappings
- alertdialog from ATK_ROLE_DIALOG to ATK_ROLE_ALERT
- alert from ATK_ROLE_ALERT to ATK_ROLE_NOTIFICATION

Updated existing tests to reflect this change.

* accessibility/atk/WebKitAccessible.cpp:
(atkRole):

Tools:

Add support for ATK_ROLE_NOTIFICATION.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

LayoutTests:

* accessibility/aria-mappings-expected.txt: Updated.
* accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
* platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
* platform/gtk/accessibility/roles-exposed-expected.txt: Updated.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/accessibility/aria-mappings-expected.txt
trunk/LayoutTests/accessibility/gtk/xml-roles-exposed-expected.txt
trunk/LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt
trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/atk/WebKitAccessible.cpp
trunk/Tools/ChangeLog
trunk/Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp




Diff

Modified: trunk/LayoutTests/ChangeLog (259670 => 259671)

--- trunk/LayoutTests/ChangeLog	2020-04-07 21:09:43 UTC (rev 259670)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 21:14:16 UTC (rev 259671)
@@ -1,3 +1,15 @@
+2020-04-07  Joanmarie Diggs  
+
+AX: Change ATK mapping of the ARIA alert and alertdialog roles
+https://bugs.webkit.org/show_bug.cgi?id=210121
+
+Reviewed by Chris Fleizach.
+
+* accessibility/aria-mappings-expected.txt: Updated.
+* accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
+* platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
+* platform/gtk/accessibility/roles-exposed-expected.txt: Updated.
+
 2020-04-07  Wenson Hsieh  
 
 Preventing touch events should not prevent gestures installed above WKWebView from recognizing


Modified: trunk/LayoutTests/accessibility/aria-mappings-expected.txt (259670 => 259671)

--- trunk/LayoutTests/accessibility/aria-mappings-expected.txt	2020-04-07 21:09:43 UTC (rev 259670)
+++ trunk/LayoutTests/accessibility/aria-mappings-expected.txt	2020-04-07 21:14:16 UTC (rev 259671)
@@ -17,11 +17,11 @@
 
 
 role="alert" should give a message with important, and usually time-sensitive, information.
-Role for 'alert' div is: AXRole: AXAlert
+Role for 'alert' div is: AXRole: AXNotification
 
 
 role="alertdialog" is a dialog which contains an alert message.
-Role for 'alertdialog' div is: AXRole: AXDialog
+Role for 'alertdialog' div is: AXRole: AXAlert
 
 
 role="article" is a  section of a page that consists of a composition that forms an independent part of a document, page, or site


Modified: trunk/LayoutTests/accessibility/gtk/xml-roles-exposed-expected.txt (259670 => 259671)

--- trunk/LayoutTests/accessibility/gtk/xml-roles-exposed-expected.txt	2020-04-07 21:09:43 UTC (rev 259670)
+++ trunk/LayoutTests/accessibility/gtk/xml-roles-exposed-expected.txt	2020-04-07 21:14:16 UTC (rev 259671)
@@ -3,7 +3,7 @@
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-AXRole: AXAlert
+AXRole: AXNotification
 AXParent: AXWebArea
 AXChildren: 0
 AXPosition:  { 0.0, 0.0 }
@@ -19,10 +19,10 @@
 AXEnabled: 1
 AXExpanded: 0
 AXRequired: 0
-AXChecked: 0
+AXChecked: 0q
 AXPlatformAttributes: atomic:true, relevant:additions text, live:assertive, container-live-role:alert, container-atomic:true, container-relevant:additions text, container-live:assertive, computed-role:alert, xml-roles:alert, tag:div, toolkit:WebKitGtk
 
-AXRole: AXDialog
+AXRole: AXAlert
 AXParent: AXWebArea
 AXChildren: 0
 AXPosition:  { 0.0, 0.0 }


Modified: trunk/LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt (259670 => 259671)

--- trunk/LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt	2020-04-07 21:09:43 UTC (rev 259670)
+++ trunk/LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt	2020-04-07 21:14:16 UTC (rev 259671)
@@ -3,7 +3,7 @@
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-AXRole: AXAlert
+AXRole: AXNotification
 AXParent: AXWebArea
 AXChildren: 0
 AXPosition:  { 0.0, 0.

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

2020-04-07 Thread lmoura
Title: [259670] trunk/Source/WebKit








Revision 259670
Author lmo...@igalia.com
Date 2020-04-07 14:09:43 -0700 (Tue, 07 Apr 2020)


Log Message
[GLIB] Avoid potential segfault in getPlatformEditorState
https://bugs.webkit.org/show_bug.cgi?id=210149

Reviewed by Carlos Alberto Lopez Perez.

Avoid potential surroundingRange dereference segfault.

* WebProcess/WebPage/glib/WebPageGLib.cpp:
(WebKit::WebPage::getPlatformEditorState const):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebPage/glib/WebPageGLib.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259669 => 259670)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 21:00:49 UTC (rev 259669)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 21:09:43 UTC (rev 259670)
@@ -1,3 +1,15 @@
+2020-04-07  Lauro Moura  
+
+[GLIB] Avoid potential segfault in getPlatformEditorState
+https://bugs.webkit.org/show_bug.cgi?id=210149
+
+Reviewed by Carlos Alberto Lopez Perez.
+
+Avoid potential surroundingRange dereference segfault.
+
+* WebProcess/WebPage/glib/WebPageGLib.cpp:
+(WebKit::WebPage::getPlatformEditorState const):
+
 2020-04-07  Wenson Hsieh  
 
 Preventing touch events should not prevent gestures installed above WKWebView from recognizing


Modified: trunk/Source/WebKit/WebProcess/WebPage/glib/WebPageGLib.cpp (259669 => 259670)

--- trunk/Source/WebKit/WebProcess/WebPage/glib/WebPageGLib.cpp	2020-04-07 21:00:49 UTC (rev 259669)
+++ trunk/Source/WebKit/WebProcess/WebPage/glib/WebPageGLib.cpp	2020-04-07 21:09:43 UTC (rev 259670)
@@ -109,7 +109,7 @@
 auto surroundingEnd = endOfEditableContent(selectionStart);
 auto surroundingRange = makeRange(surroundingStart, surroundingEnd);
 auto compositionRange = frame.editor().compositionRange();
-if (compositionRange && surroundingRange->contains(*compositionRange)) {
+if (compositionRange && surroundingRange && surroundingRange->contains(*compositionRange)) {
 auto clonedRange = surroundingRange->cloneRange();
 surroundingRange->setEnd(compositionRange->startPosition());
 clonedRange->setStart(compositionRange->endPosition());






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


[webkit-changes] [259669] trunk

2020-04-07 Thread wenson_hsieh
Title: [259669] trunk








Revision 259669
Author wenson_hs...@apple.com
Date 2020-04-07 14:00:49 -0700 (Tue, 07 Apr 2020)


Log Message
Preventing touch events should not prevent gestures installed above WKWebView from recognizing
https://bugs.webkit.org/show_bug.cgi?id=210080


Reviewed by Tim Horton.

Source/WebKit:

Makes a small adjustment to native gesture deferral logic, so that gestures installed above WKWebView (in the
view hierarchy) are not prevented from recognizing by WKDeferringGestureRecognizer. This makes it possible for
WebKit clients to install custom gestures outside of WKWebView that cannot be prevented by web content, without
having to create a separate window and pass touches through to the WKWebView.

Test: fast/events/touch/ios/prevent-default-with-window-tap-gesture.html

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]):

Tools:

Add a UIScriptController helper method that allows a test to install a tap gesture recognizer on the UIWindow
containing the web view. This method additionally takes a _javascript_ callback, which is invoked when the tap
gesture is recognized.

* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptContext.h:
* TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::installTapGestureOnWindow):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView resetInteractionCallbacks]):
(-[TestRunnerWKWebView didRecognizeTapOnWindow]):
(-[TestRunnerWKWebView windowTapRecognizedCallback]):
(-[TestRunnerWKWebView setWindowTapRecognizedCallback:]):
(-[TestRunnerWKWebView willMoveToWindow:]):
(-[TestRunnerWKWebView didMoveToWindow]):
(-[TestRunnerWKWebView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
* WebKitTestRunner/ios/UIScriptControllerIOS.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::installTapGestureOnWindow):

LayoutTests:

Add a new layout test to verify that calling preventDefault() on touchstart doesn't prevent gesture recognizers
installed above the WKWebView from recognizing. To do this, we use the new UIScriptController method to add a
gesture recognizer to the window containing the web view, and then simulate a tap over an element that prevents
the touchstart event.

* fast/events/touch/ios/prevent-default-with-window-tap-gesture-expected.txt: Added.
* fast/events/touch/ios/prevent-default-with-window-tap-gesture.html: Added.
* resources/ui-helper.js:
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.return.new.Promise.):
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.return.new.Promise):
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow):
(window.UIHelper):

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/resources/ui-helper.js
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
trunk/Tools/ChangeLog
trunk/Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl
trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptContext.h
trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.h
trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.h
trunk/Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.mm
trunk/Tools/WebKitTestRunner/ios/UIScriptControllerIOS.h
trunk/Tools/WebKitTestRunner/ios/UIScriptControllerIOS.mm


Added Paths

trunk/LayoutTests/fast/events/touch/ios/prevent-default-with-window-tap-gesture-expected.txt
trunk/LayoutTests/fast/events/touch/ios/prevent-default-with-window-tap-gesture.html




Diff

Modified: trunk/LayoutTests/ChangeLog (259668 => 259669)

--- trunk/LayoutTests/ChangeLog	2020-04-07 20:49:06 UTC (rev 259668)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 21:00:49 UTC (rev 259669)
@@ -1,3 +1,24 @@
+2020-04-07  Wenson Hsieh  
+
+Preventing touch events should not prevent gestures installed above WKWebView from recognizing
+https://bugs.webkit.org/show_bug.cgi?id=210080
+
+
+Reviewed by Tim Horton.
+
+Add a new layout test to verify that calling preventDefault() on touchstart doesn't prevent gesture recognizers
+installed above the WKWebView from recognizing. To do this, we use the new UIScriptController method to add a
+gesture recognizer to the window containing the web view, and then simulate a tap over an element that prevents
+the touchstart event.
+
+* fast/events/touch/ios/prevent-default-with-window-tap-gesture-expected.txt: Added.
+* fast/events/touch/ios/prevent-default-with-window-tap-gesture.html: Added.
+* resources/ui-helper.js:
+(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.return.new.Promise.):
+(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.retur

[webkit-changes] [259668] trunk

2020-04-07 Thread shvaikalesh
Title: [259668] trunk








Revision 259668
Author shvaikal...@gmail.com
Date 2020-04-07 13:49:06 -0700 (Tue, 07 Apr 2020)


Log Message
test262/Runner.pm ignores "async" flag
https://bugs.webkit.org/show_bug.cgi?id=210127

Reviewed by Ross Kirsling.

JSTests:

* test262/expectations.yaml: Mark 56 test cases as failing.

Tools:

This change adds dereferencing for `$data->{flags}` array, making `grep` work as
expected. Other flags are correctly handled by `getScenarios` function, which
gets a dereferenced array as an argument.

* Scripts/test262/Runner.pm:
(runTest):

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/test262/expectations.yaml
trunk/Tools/ChangeLog
trunk/Tools/Scripts/test262/Runner.pm




Diff

Modified: trunk/JSTests/ChangeLog (259667 => 259668)

--- trunk/JSTests/ChangeLog	2020-04-07 20:23:50 UTC (rev 259667)
+++ trunk/JSTests/ChangeLog	2020-04-07 20:49:06 UTC (rev 259668)
@@ -1,3 +1,12 @@
+2020-04-07  Alexey Shvayka  
+
+test262/Runner.pm ignores "async" flag
+https://bugs.webkit.org/show_bug.cgi?id=210127
+
+Reviewed by Ross Kirsling.
+
+* test262/expectations.yaml: Mark 56 test cases as failing.
+
 2020-04-07  Ross Kirsling  
 
 Update JSTests to assume ICU 60+


Modified: trunk/JSTests/test262/expectations.yaml (259667 => 259668)

--- trunk/JSTests/test262/expectations.yaml	2020-04-07 20:23:50 UTC (rev 259667)
+++ trunk/JSTests/test262/expectations.yaml	2020-04-07 20:49:06 UTC (rev 259668)
@@ -609,6 +609,9 @@
   default: 'Test262Error: An initialized binding is not created prior to evaluation Expected a ReferenceError to be thrown but no exception was thrown at all'
 test/annexB/language/global-code/switch-dflt-global-skip-early-err.js:
   default: "SyntaxError: Cannot declare a function that shadows a let/const/class/function variable 'f' in strict mode."
+test/annexB/language/statements/for-await-of/iterator-close-return-emulates-undefined-throws-when-called.js:
+  default: "Test262:AsyncTestFailure:Test262Error: Test262Error: expected TypeError because `iter[Symbol.asyncIterator]() returned a non-object: Test262Error: shouldn't touch Symbol.iterator Expected SameValue(«function Test262Error(message) {"
+  strict mode: "Test262:AsyncTestFailure:Test262Error: Test262Error: expected TypeError because `iter[Symbol.asyncIterator]() returned a non-object: Test262Error: shouldn't touch Symbol.iterator Expected SameValue(«function Test262Error(message) {"
 test/annexB/language/statements/for-of/iterator-close-return-emulates-undefined-throws-when-called.js:
   default: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
   strict mode: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
@@ -723,6 +726,15 @@
 test/built-ins/ArrayIteratorPrototype/next/detach-typedarray-in-progress.js:
   default: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all (Testing with Float64Array.)'
   strict mode: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all (Testing with Float64Array.)'
+test/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js:
+  default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
+  strict mode: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
+test/built-ins/AsyncFromSyncIteratorPrototype/return/absent-value-not-passed.js:
+  default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
+  strict mode: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
+test/built-ins/AsyncFromSyncIteratorPrototype/throw/absent-value-not-passed.js:
+  default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Promise should be rejected, got: undefined'
+  strict mode: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Promise should be rejected, got: undefined'
 test/built-ins/AsyncFunction/proto-from-ctor-realm.js:
   default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object AsyncFunction]», «[object AsyncFunction]») to be true'
   strict mode: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object AsyncFunction]», «[object AsyncFunction]») to be true'
@@ -729,6 +741,9 @@
 test/built-ins/AsyncGeneratorFunction/proto-from-ctor-realm.js:
   default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object AsyncGeneratorFunction]», «[object AsyncGeneratorFunction]») to be true'
   strict mode: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object AsyncGeneratorFunction]», «[object AsyncGeneratorFunction]») to be true'
+test/built-ins/AsyncGeneratorPrototype/return/return-suspendedYield-promise.js:
+  default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: AsyncGeneratorResolve(generator, resultValue, true) Expected SameValue(«[o

[webkit-changes] [259667] trunk/Tools

2020-04-07 Thread tsavell
Title: [259667] trunk/Tools








Revision 259667
Author tsav...@apple.com
Date 2020-04-07 13:23:50 -0700 (Tue, 07 Apr 2020)


Log Message
Unreviewed, reverting r259446.

Broke Windows testing

Reverted changeset:

"[Windows] Ignore render tree dump based results on Windows"
https://bugs.webkit.org/show_bug.cgi?id=209897
https://trac.webkit.org/changeset/259446

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py
trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py




Diff

Modified: trunk/Tools/ChangeLog (259666 => 259667)

--- trunk/Tools/ChangeLog	2020-04-07 20:17:53 UTC (rev 259666)
+++ trunk/Tools/ChangeLog	2020-04-07 20:23:50 UTC (rev 259667)
@@ -1,3 +1,15 @@
+2020-04-07  Truitt Savell  
+
+Unreviewed, reverting r259446.
+
+Broke Windows testing
+
+Reverted changeset:
+
+"[Windows] Ignore render tree dump based results on Windows"
+https://bugs.webkit.org/show_bug.cgi?id=209897
+https://trac.webkit.org/changeset/259446
+
 2020-04-07  Aakash Jain  
 
 [ews] Add unit-test for CheckPatchRelevance build step


Modified: trunk/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py (259666 => 259667)

--- trunk/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py	2020-04-07 20:17:53 UTC (rev 259666)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py	2020-04-07 20:23:50 UTC (rev 259667)
@@ -235,8 +235,6 @@
 
 def _compare_text(self, expected_text, actual_text):
 failures = []
-if self._options.ignore_render_tree_dump_results and self._render_tree_dump_pattern.match(actual_text):
-return failures
 if (expected_text and actual_text and
 # Assuming expected_text is already normalized.
 self._port.do_text_results_differ(expected_text, self._get_normalized_output_text(actual_text))):


Modified: trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py (259666 => 259667)

--- trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py	2020-04-07 20:17:53 UTC (rev 259666)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py	2020-04-07 20:23:50 UTC (rev 259667)
@@ -149,9 +149,6 @@
 dest="sample_on_timeout", help="Don't run sample on timeout (OS X only)"),
 optparse.make_option("--no-ref-tests", action=""
 dest="no_ref_tests", help="Skip all ref tests"),
-optparse.make_option("--ignore-render-tree-dump-results", action=""
-dest="ignore_render_tree_dump_results",
-help="Don't compare or save results for render tree dump tests (they still run and crashes are reported)"),
 optparse.make_option("--tolerance",
 help="Ignore image differences less than this percentage (some "
 "ports may ignore this option)", type="float"),
@@ -472,10 +469,6 @@
 if options.platform in ["gtk", "wpe"]:
 options.webkit_test_runner = True
 
-# Don't maintain render tree dump results for Apple Windows port.
-if port.port_name == "win":
-options.ignore_render_tree_dump_results = True
-
 if options.leaks:
 options.additional_env_var.append("JSC_usePoisoning=0")
 options.additional_env_var.append("__XPC_JSC_usePoisoning=0")






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


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

2020-04-07 Thread nvasilyev
Title: [259666] trunk/Source/WebInspectorUI








Revision 259666
Author nvasil...@apple.com
Date 2020-04-07 13:17:53 -0700 (Tue, 07 Apr 2020)


Log Message
Web Inspector: focus outline of scope bar is clipped
https://bugs.webkit.org/show_bug.cgi?id=209877


Reviewed by Timothy Hatcher.

* UserInterface/Views/ScopeBar.css:
(.scope-bar):

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBar.css




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (259665 => 259666)

--- trunk/Source/WebInspectorUI/ChangeLog	2020-04-07 20:07:46 UTC (rev 259665)
+++ trunk/Source/WebInspectorUI/ChangeLog	2020-04-07 20:17:53 UTC (rev 259666)
@@ -1,3 +1,14 @@
+2020-04-07  Nikita Vasilyev  
+
+Web Inspector: focus outline of scope bar is clipped
+https://bugs.webkit.org/show_bug.cgi?id=209877
+
+
+Reviewed by Timothy Hatcher.
+
+* UserInterface/Views/ScopeBar.css:
+(.scope-bar):
+
 2020-04-03  Devin Rousso  
 
 Web Inspector: Sources: disclosure arrows should be shown if a folder is added to the navigation sidebar


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBar.css (259665 => 259666)

--- trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBar.css	2020-04-07 20:07:46 UTC (rev 259665)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ScopeBar.css	2020-04-07 20:17:53 UTC (rev 259666)
@@ -25,7 +25,6 @@
 
 .scope-bar {
 padding: 0 3px;
-overflow: hidden;
 
 --scope-bar-margin-default: 2px;
 --scope-bar-padding-default: 6px;






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


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

2020-04-07 Thread bburg
Title: [259665] trunk/Source/WebKit








Revision 259665
Author bb...@apple.com
Date 2020-04-07 13:07:46 -0700 (Tue, 07 Apr 2020)


Log Message
Web Automation: Automation.inspectBrowsingContext should bring Web Inspector to front automatically
https://bugs.webkit.org/show_bug.cgi?id=210137

Reviewed by Joseph Pecoraro.

* UIProcess/Automation/mac/WebAutomationSessionMac.mm:
(WebKit::WebAutomationSession::inspectBrowsingContext):
Previously, calling connect() would preload Web Inspector but not show its window. This
made it awkward to use the 'safari:automaticInspection' capability without subsequently
evaluating a `debugger;` statement to bring Web Inspector to front.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Automation/mac/WebAutomationSessionMac.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (259664 => 259665)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 20:03:20 UTC (rev 259664)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 20:07:46 UTC (rev 259665)
@@ -1,3 +1,16 @@
+2020-04-07  Brian Burg  
+
+Web Automation: Automation.inspectBrowsingContext should bring Web Inspector to front automatically
+https://bugs.webkit.org/show_bug.cgi?id=210137
+
+Reviewed by Joseph Pecoraro.
+
+* UIProcess/Automation/mac/WebAutomationSessionMac.mm:
+(WebKit::WebAutomationSession::inspectBrowsingContext):
+Previously, calling connect() would preload Web Inspector but not show its window. This
+made it awkward to use the 'safari:automaticInspection' capability without subsequently
+evaluating a `debugger;` statement to bring Web Inspector to front.
+
 2020-04-07  Kate Cheney  
 
 Return app-bound sessions for instances where WKAppBoundDomains is


Modified: trunk/Source/WebKit/UIProcess/Automation/mac/WebAutomationSessionMac.mm (259664 => 259665)

--- trunk/Source/WebKit/UIProcess/Automation/mac/WebAutomationSessionMac.mm	2020-04-07 20:03:20 UTC (rev 259664)
+++ trunk/Source/WebKit/UIProcess/Automation/mac/WebAutomationSessionMac.mm	2020-04-07 20:07:46 UTC (rev 259665)
@@ -57,7 +57,7 @@
 // Don't bring the inspector to front since this may be done automatically.
 // We just want it loaded so it can pause if a breakpoint is hit during a command.
 if (page->inspector()) {
-page->inspector()->connect();
+page->inspector()->show();
 
 // Start collecting profile information immediately so the entire session is captured.
 if (optionalEnableAutoCapturing && *optionalEnableAutoCapturing)






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


[webkit-changes] [259664] branches/safari-609.2.1.2-branch/Source/WebKit

2020-04-07 Thread alancoon
Title: [259664] branches/safari-609.2.1.2-branch/Source/WebKit








Revision 259664
Author alanc...@apple.com
Date 2020-04-07 13:03:20 -0700 (Tue, 07 Apr 2020)


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

Modified Paths

branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog
branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h
branches/safari-609.2.1.2-branch/Source/WebKit/Platform/SharedMemory.h
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/WebPasteboardProxy.h
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/WebPasteboardProxy.messages.in




Diff

Modified: branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog (259663 => 259664)

--- branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:17 UTC (rev 259663)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:20 UTC (rev 259664)
@@ -1,3 +1,52 @@
+2020-04-07  Russell Epstein  
+
+Apply patch. rdar://problem/61231957
+
+2020-04-07  David Kilzer  
+
+Cherry-pick r258334. rdar://problem/60396294
+
+2020-03-12  David Kilzer  
+
+WebPasteboardProxy::SetPasteboardBufferForType should validate its `size` parameter
+
+
+
+Reviewed by Chris Dumez.
+
+* Platform/IPC/Connection.h:
+(MESSAGE_CHECK_BASE):
+- Define in terms of MESSAGE_CHECK_COMPLETION_BASE() with a
+  no-op completion handler.
+(MESSAGE_CHECK_COMPLETION_BASE):
+- Rename from MESSAGE_CHECK_BASE() and add completion handler
+  parameter.
+
+* Platform/SharedMemory.h:
+(WebKit::SharedMemory::Handle::size const): Add.
+
+* UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
+(MESSAGE_CHECK):
+- Define macro to use in
+  WebPasteboardProxy::setPasteboardBufferForType().
+- Undefine macro at end of source file due to unified sources.
+(WebKit::WebPasteboardProxy::setPasteboardBufferForType):
+- Add IPC::Connection& parameter after change to
+  WebPasteboardProxy.messages.in.  Use with MESSAGE_CHECK().
+- Validate `size` parameter using MESSAGE_CHECK().  Because
+  SharedMemory::Handle::size() returns a size_t value, we do not
+  need to check `size <= std::numeric_limits::max()`.
+- Add static_cast() to size parameter to denote type
+  change.
+* UIProcess/WebPasteboardProxy.h:
+(WebKit::WebPasteboardProxy::setPasteboardBufferForType):
+- Add IPC::Connection& parameter after change to
+  WebPasteboardProxy.messages.in.
+* UIProcess/WebPasteboardProxy.messages.in:
+(SetPasteboardBufferForType):
+- Add 'WantsConnection' attribute to add IPC::Connection&
+  parameter to WebPasteboardProxy::setPasteboardBufferForType().
+
 2020-04-07  Alan Coon  
 
 Apply patch. rdar://problem/61231889


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h (259663 => 259664)

--- branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h	2020-04-07 20:03:17 UTC (rev 259663)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h	2020-04-07 20:03:20 UTC (rev 259664)
@@ -76,10 +76,13 @@
 InterruptWaitingIfSyncMessageArrives = 1 << 0,
 };
 
-#define MESSAGE_CHECK_BASE(assertion, connection) do \
+#define MESSAGE_CHECK_BASE(assertion, connection) MESSAGE_CHECK_COMPLETION_BASE(assertion, connection, (void)0)
+
+#define MESSAGE_CHECK_COMPLETION_BASE(assertion, connection, completion) do \
 if (!(assertion)) { \
 ASSERT(assertion); \
 (connection)->markCurrentlyDispatchedMessageAsInvalid(); \
+{ completion; } \
 return; \
 } \
 while (0)


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/Platform/SharedMemory.h (259663 => 259664)

--- branches/safari-609.2.1.2-branch/Source/WebKit/Platform/SharedMemory.h	2020-04-07 20:03:17 UTC (rev 259663)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/Platform/SharedMemory.h	2020-04-07 20:03:20 UTC (rev 259664)
@@ -73,6 +73,10 @@
 
 bool isNull() const;
 
+#if OS(DARWIN) || OS(WINDOWS)
+size_t size() const { return m_size; }
+#endif
+
 void clear();
 
 void encode(IPC::Encoder&) const;


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm (259663 => 259664)

--- branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm	2020-04-07 20:03:17 UTC (rev 259663)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm	2020-04-07 20:03:20 UTC (rev 259664)
@@ -26,6 +26,7 @@
 #import "config.h"
 #import "WebPasteboardProxy.h"
 

[webkit-changes] [259661] branches/safari-609.2.1.2-branch/Source/WebKit

2020-04-07 Thread alancoon
Title: [259661] branches/safari-609.2.1.2-branch/Source/WebKit








Revision 259661
Author alanc...@apple.com
Date 2020-04-07 13:03:10 -0700 (Tue, 07 Apr 2020)


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

Modified Paths

branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog (259660 => 259661)

--- branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 19:59:24 UTC (rev 259660)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:10 UTC (rev 259661)
@@ -1,3 +1,27 @@
+2020-04-07  Alan Coon  
+
+Apply patch. rdar://problem/61404555
+
+2020-04-07  David Kilzer  
+
+Cherry-pick r258053. rdar://problem/60430195
+
+2020-03-06  David Kilzer  
+
+IPC hardening for WebPageProxy::SaveImageToLibrary message
+
+
+
+Reviewed by Chris Dumez.
+
+* UIProcess/ios/WebPageProxyIOS.mm:
+(MESSAGE_CHECK): Define macro only for methods in this source file.
+(WebKit::WebPageProxy::saveImageToLibrary):
+- Make sure the shared memory handle sent over IPC is not null.
+- Make sure the image size sent over IPC is not zero.
+- Null check the SharedMemory object after calling
+  SharedMemory::map().
+
 2020-04-03  Alan Coon  
 
 Cherry-pick r259056. rdar://problem/61231908


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm (259660 => 259661)

--- branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm	2020-04-07 19:59:24 UTC (rev 259660)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm	2020-04-07 20:03:10 UTC (rev 259661)
@@ -76,6 +76,8 @@
 #import 
 #endif
 
+#define MESSAGE_CHECK(assertion) MESSAGE_CHECK_BASE(assertion, process().connection())
+
 #define RELEASE_LOG_IF_ALLOWED(channel, fmt, ...) RELEASE_LOG_IF(isAlwaysOnLoggingAllowed(), channel, "%p - [pageProxyID=%llu, webPageID=%llu, PID=%i] WebPageProxy::" fmt, this, m_identifier.toUInt64(), m_webPageID.toUInt64(), m_process->processIdentifier(), ##__VA_ARGS__)
 
 namespace WebKit {
@@ -644,7 +646,13 @@
 
 void WebPageProxy::saveImageToLibrary(const SharedMemory::Handle& imageHandle, uint64_t imageSize)
 {
+MESSAGE_CHECK(!imageHandle.isNull());
+MESSAGE_CHECK(imageSize);
+
 auto sharedMemoryBuffer = SharedMemory::map(imageHandle, SharedMemory::Protection::ReadOnly);
+if (!sharedMemoryBuffer)
+return;
+
 auto buffer = SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), imageSize);
 pageClient().saveImageToLibrary(WTFMove(buffer));
 }
@@ -1499,5 +1507,6 @@
 } // namespace WebKit
 
 #undef RELEASE_LOG_IF_ALLOWED
+#undef MESSAGE_CHECK
 
 #endif // PLATFORM(IOS_FAMILY)






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


[webkit-changes] [259662] branches/safari-609.2.1.2-branch/Source/WebKit

2020-04-07 Thread alancoon
Title: [259662] branches/safari-609.2.1.2-branch/Source/WebKit








Revision 259662
Author alanc...@apple.com
Date 2020-04-07 13:03:14 -0700 (Tue, 07 Apr 2020)


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

Modified Paths

branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog (259661 => 259662)

--- branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:10 UTC (rev 259661)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:14 UTC (rev 259662)
@@ -1,3 +1,25 @@
+2020-04-07  Russell Epstein  
+
+Apply patch. rdar://problem/61231881
+
+2020-04-07  David Kilzer  
+
+Cherry-pick r258374. rdar://problem/60396281
+
+2020-03-12  David Kilzer  
+
+WebPageProxy::SaveImageToLibrary should validate its `imageSize` parameter
+
+
+
+Reviewed by Chris Dumez.
+
+* UIProcess/ios/WebPageProxyIOS.mm:
+(WebKit::WebPageProxy::saveImageToLibrary):
+- Validate upper bound of `imageSize` parameter.
+- Add static_cast() to `imageSize` parameter to denote
+  type change.
+
 2020-04-07  Alan Coon  
 
 Apply patch. rdar://problem/61404555


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm (259661 => 259662)

--- branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm	2020-04-07 20:03:10 UTC (rev 259661)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm	2020-04-07 20:03:14 UTC (rev 259662)
@@ -647,13 +647,14 @@
 void WebPageProxy::saveImageToLibrary(const SharedMemory::Handle& imageHandle, uint64_t imageSize)
 {
 MESSAGE_CHECK(!imageHandle.isNull());
-MESSAGE_CHECK(imageSize);
+// SharedMemory::Handle::size() is rounded up to the nearest page.
+MESSAGE_CHECK(imageSize && imageSize <= imageHandle.size());
 
 auto sharedMemoryBuffer = SharedMemory::map(imageHandle, SharedMemory::Protection::ReadOnly);
 if (!sharedMemoryBuffer)
 return;
 
-auto buffer = SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), imageSize);
+auto buffer = SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), static_cast(imageSize));
 pageClient().saveImageToLibrary(WTFMove(buffer));
 }
 






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


[webkit-changes] [259663] branches/safari-609.2.1.2-branch/Source/WebKit

2020-04-07 Thread alancoon
Title: [259663] branches/safari-609.2.1.2-branch/Source/WebKit








Revision 259663
Author alanc...@apple.com
Date 2020-04-07 13:03:17 -0700 (Tue, 07 Apr 2020)


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

Modified Paths

branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog
branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h
branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm




Diff

Modified: branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog (259662 => 259663)

--- branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:14 UTC (rev 259662)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/ChangeLog	2020-04-07 20:03:17 UTC (rev 259663)
@@ -1,3 +1,31 @@
+2020-04-07  Alan Coon  
+
+Apply patch. rdar://problem/61231889
+
+2020-04-07  David Kilzer  
+
+Cherry-pick r258507. rdar://problem/60500511
+
+2020-03-16  David Kilzer  
+
+WebPage::GetDataSelectionForPasteboard should validate its `size` variable
+
+
+
+Reviewed by Brent Fulgham.
+
+* Platform/IPC/Connection.h:
+(MESSAGE_CHECK_WITH_RETURN_VALUE_BASE): Add.
+- Variant of MESSAGE_CHECK_BASE() that takes a return value.
+* UIProcess/mac/WebPageProxyMac.mm:
+(MESSAGE_CHECK_WITH_RETURN_VALUE): Add.
+(WebKit::WebPageProxy::dataSelectionForPasteboard):
+- Use new MESSAGE_CHECK_WITH_RETURN_VALUE() macro to update
+  check for handle.isNull() and to add check for `size`
+  variable.
+- Add static_cast() to `size` variable to denote type
+  change.
+
 2020-04-07  Russell Epstein  
 
 Apply patch. rdar://problem/61231881


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h (259662 => 259663)

--- branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h	2020-04-07 20:03:14 UTC (rev 259662)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/Platform/IPC/Connection.h	2020-04-07 20:03:17 UTC (rev 259663)
@@ -84,6 +84,14 @@
 } \
 while (0)
 
+#define MESSAGE_CHECK_WITH_RETURN_VALUE_BASE(assertion, connection, returnValue) do \
+if (!(assertion)) { \
+ASSERT(assertion); \
+(connection)->markCurrentlyDispatchedMessageAsInvalid(); \
+return (returnValue); \
+} \
+while (0)
+
 template struct AsyncReplyError {
 static AsyncReplyResult create() { return { }; };
 };


Modified: branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm (259662 => 259663)

--- branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm	2020-04-07 20:03:14 UTC (rev 259662)
+++ branches/safari-609.2.1.2-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm	2020-04-07 20:03:17 UTC (rev 259663)
@@ -31,6 +31,7 @@
 #import "APIUIClient.h"
 #import "AttributedString.h"
 #import "ColorSpaceData.h"
+#import "Connection.h"
 #import "DataReference.h"
 #import "EditorState.h"
 #import "FontInfo.h"
@@ -67,6 +68,7 @@
 
 #define MESSAGE_CHECK(assertion) MESSAGE_CHECK_BASE(assertion, process().connection())
 #define MESSAGE_CHECK_URL(url) MESSAGE_CHECK_BASE(checkURLReceivedFromCurrentOrPreviousWebProcess(m_process, url), m_process->connection())
+#define MESSAGE_CHECK_WITH_RETURN_VALUE(assertion, returnValue) MESSAGE_CHECK_WITH_RETURN_VALUE_BASE(assertion, process().connection(), returnValue)
 
 @interface NSApplication ()
 - (BOOL)isSpeaking;
@@ -283,10 +285,12 @@
 const Seconds messageTimeout(20);
 process().sendSync(Messages::WebPage::GetDataSelectionForPasteboard(pasteboardType),
 Messages::WebPage::GetDataSelectionForPasteboard::Reply(handle, size), m_webPageID, messageTimeout);
-if (handle.isNull())
-return nullptr;
-RefPtr sharedMemoryBuffer = SharedMemory::map(handle, SharedMemory::Protection::ReadOnly);
-return SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), size);
+MESSAGE_CHECK_WITH_RETURN_VALUE(!handle.isNull(), nullptr);
+// SharedMemory::Handle::size() is rounded up to the nearest page.
+MESSAGE_CHECK_WITH_RETURN_VALUE(size <= handle.size(), nullptr);
+
+auto sharedMemoryBuffer = SharedMemory::map(handle, SharedMemory::Protection::ReadOnly);
+return SharedBuffer::create(static_cast(sharedMemoryBuffer->data()), static_cast(size));
 }
 
 bool WebPageProxy::readSelectionFromPasteboard(const String& pasteboardName)






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


[webkit-changes] [259660] trunk/Tools

2020-04-07 Thread aakash_jain
Title: [259660] trunk/Tools








Revision 259660
Author aakash_j...@apple.com
Date 2020-04-07 12:59:24 -0700 (Tue, 07 Apr 2020)


Log Message
[ews] Add unit-test for CheckPatchRelevance build step
https://bugs.webkit.org/show_bug.cgi?id=210140

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
(TestCheckPatchRelevance):
(TestCheckPatchRelevance.test_relevant_patch):
(TestCheckPatchRelevance.test_non_relevant_patch):

Modified Paths

trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py (259659 => 259660)

--- trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-04-07 19:43:30 UTC (rev 259659)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-04-07 19:59:24 UTC (rev 259660)
@@ -2151,6 +2151,41 @@
 return self.runStep()
 
 
+class TestCheckPatchRelevance(BuildStepMixinAdditions, unittest.TestCase):
+def setUp(self):
+self.longMessage = True
+return self.setUpBuildStep()
+
+def tearDown(self):
+return self.tearDownBuildStep()
+
+def test_relevant_patch(self):
+CheckPatchRelevance._get_patch = lambda x: 'Sample patch; file: JSTests/'
+self.setupStep(CheckPatchRelevance())
+self.setProperty('buildername', 'JSC-Tests-EWS')
+self.assertEqual(CheckPatchRelevance.haltOnFailure, True)
+self.assertEqual(CheckPatchRelevance.flunkOnFailure, True)
+self.expectOutcome(result=SUCCESS, state_string='Checked patch relevance')
+return self.runStep()
+
+def test_queue_without_relevance_info(self):
+CheckPatchRelevance._get_patch = lambda x: 'Sample patch'
+self.setupStep(CheckPatchRelevance())
+self.setProperty('buildername', 'Commit-Queue')
+CheckPatchStatusOnEWSQueues.get_patch_status = lambda cls, patch_id, queue: FAILURE
+self.expectOutcome(result=SUCCESS, state_string='Checked patch relevance')
+return self.runStep()
+
+def test_non_relevant_patch(self):
+CheckPatchRelevance._get_patch = lambda x: 'Sample patch'
+self.setupStep(CheckPatchRelevance())
+self.setProperty('buildername', 'JSC-Tests-EWS')
+self.setProperty('patch_id', '1234')
+CheckPatchStatusOnEWSQueues.get_patch_status = lambda cls, patch_id, queue: FAILURE
+self.expectOutcome(result=FAILURE, state_string='Checked patch relevance (failure)')
+return self.runStep()
+
+
 class TestArchiveBuiltProduct(BuildStepMixinAdditions, unittest.TestCase):
 def setUp(self):
 self.longMessage = True


Modified: trunk/Tools/ChangeLog (259659 => 259660)

--- trunk/Tools/ChangeLog	2020-04-07 19:43:30 UTC (rev 259659)
+++ trunk/Tools/ChangeLog	2020-04-07 19:59:24 UTC (rev 259660)
@@ -1,3 +1,15 @@
+2020-04-07  Aakash Jain  
+
+[ews] Add unit-test for CheckPatchRelevance build step
+https://bugs.webkit.org/show_bug.cgi?id=210140
+
+Reviewed by Jonathan Bedard.
+
+* BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
+(TestCheckPatchRelevance):
+(TestCheckPatchRelevance.test_relevant_patch):
+(TestCheckPatchRelevance.test_non_relevant_patch):
+
 2020-04-07  Kate Cheney  
 
 Return app-bound sessions for instances where WKAppBoundDomains is






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


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

2020-04-07 Thread antti
Title: [259659] trunk/Source/WebCore








Revision 259659
Author an...@apple.com
Date 2020-04-07 12:43:30 -0700 (Tue, 07 Apr 2020)


Log Message
Make StylePropertyShorthand iterable
https://bugs.webkit.org/show_bug.cgi?id=210117

Reviewed by Darin Adler.

Enable modern for-loops.

* animation/AnimationTimeline.cpp:
(WebCore::transitionMatchesProperty):
(WebCore::compileTransitionPropertiesInStyle):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::updateStyleIfNeededForProperty):
* css/StyleProperties.cpp:
(WebCore::StyleProperties::propertyIsImportant const):
(WebCore::MutableStyleProperties::setProperty):
* css/StylePropertyShorthand.h:
(WebCore::StylePropertyShorthand::begin const):
(WebCore::StylePropertyShorthand::end const):
* css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::addExpandedPropertyForValue):
* inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/animation/AnimationTimeline.cpp
trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp
trunk/Source/WebCore/css/StyleProperties.cpp
trunk/Source/WebCore/css/StylePropertyShorthand.h
trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp
trunk/Source/WebCore/inspector/agents/InspectorCSSAgent.cpp
trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259658 => 259659)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 19:35:54 UTC (rev 259658)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 19:43:30 UTC (rev 259659)
@@ -1,3 +1,30 @@
+2020-04-07  Antti Koivisto  
+
+Make StylePropertyShorthand iterable
+https://bugs.webkit.org/show_bug.cgi?id=210117
+
+Reviewed by Darin Adler.
+
+Enable modern for-loops.
+
+* animation/AnimationTimeline.cpp:
+(WebCore::transitionMatchesProperty):
+(WebCore::compileTransitionPropertiesInStyle):
+* css/CSSComputedStyleDeclaration.cpp:
+(WebCore::updateStyleIfNeededForProperty):
+* css/StyleProperties.cpp:
+(WebCore::StyleProperties::propertyIsImportant const):
+(WebCore::MutableStyleProperties::setProperty):
+* css/StylePropertyShorthand.h:
+(WebCore::StylePropertyShorthand::begin const):
+(WebCore::StylePropertyShorthand::end const):
+* css/parser/CSSPropertyParser.cpp:
+(WebCore::CSSPropertyParser::addExpandedPropertyForValue):
+* inspector/agents/InspectorCSSAgent.cpp:
+(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
+* page/animation/CSSPropertyAnimation.cpp:
+(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
+
 2020-04-07  Chris Dumez  
 
 documentFragment.getElementById() should not work for empty-string IDs


Modified: trunk/Source/WebCore/animation/AnimationTimeline.cpp (259658 => 259659)

--- trunk/Source/WebCore/animation/AnimationTimeline.cpp	2020-04-07 19:35:54 UTC (rev 259658)
+++ trunk/Source/WebCore/animation/AnimationTimeline.cpp	2020-04-07 19:43:30 UTC (rev 259659)
@@ -334,9 +334,8 @@
 if (mode == Animation::AnimateSingleProperty) {
 auto transitionProperty = transition.property();
 if (transitionProperty != property) {
-auto shorthand = shorthandForProperty(transitionProperty);
-for (size_t i = 0; i < shorthand.length(); ++i) {
-if (shorthand.properties()[i] == property)
+for (auto longhand : shorthandForProperty(transitionProperty)) {
+if (longhand == property)
 return true;
 }
 return false;
@@ -360,9 +359,8 @@
 if (mode == Animation::AnimateSingleProperty) {
 auto property = animation.property();
 if (isShorthandCSSProperty(property)) {
-auto shorthand = shorthandForProperty(property);
-for (size_t j = 0; j < shorthand.length(); ++j)
-transitionProperties.add(shorthand.properties()[j]);
+for (auto longhand : shorthandForProperty(property))
+transitionProperties.add(longhand);
 } else if (property != CSSPropertyInvalid)
 transitionProperties.add(property);
 } else if (mode == Animation::AnimateAll) {


Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (259658 => 259659)

--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2020-04-07 19:35:54 UTC (rev 259658)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2020-04-07 19:43:30 UTC (rev 259659)
@@ -2194,8 +2194,8 @@
 auto hasValidStyle = [&] {
 auto shorthand = shorthandForProperty(propertyID);
 if (shorthand.length()) {
-for (size_t i = 0; i < shorthand.length(); ++i) {
-if (!hasVa

[webkit-changes] [259658] trunk/JSTests

2020-04-07 Thread ross . kirsling
Title: [259658] trunk/JSTests








Revision 259658
Author ross.kirsl...@sony.com
Date 2020-04-07 12:35:54 -0700 (Tue, 07 Apr 2020)


Log Message
Update JSTests to assume ICU 60+
https://bugs.webkit.org/show_bug.cgi?id=210085

Reviewed by Yusuke Suzuki.

* stress/intl-collator.js:
* stress/intl-constructors-with-proxy.js:
* stress/intl-datetimeformat.js:
* stress/intl-default-locale.js:
* stress/intl-numberformat-format-to-parts.js:
* stress/intl-numberformat.js: Ensure a test case doesn't depend on behavior changed in ICU 64.
* stress/intl-object.js:
* stress/intl-pluralrules.js: Correct two invalid test cases.
* test262/config.yaml:
Remove skips.

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/stress/intl-collator.js
trunk/JSTests/stress/intl-constructors-with-proxy.js
trunk/JSTests/stress/intl-datetimeformat.js
trunk/JSTests/stress/intl-default-locale.js
trunk/JSTests/stress/intl-numberformat-format-to-parts.js
trunk/JSTests/stress/intl-numberformat.js
trunk/JSTests/stress/intl-object.js
trunk/JSTests/stress/intl-pluralrules.js
trunk/JSTests/test262/config.yaml




Diff

Modified: trunk/JSTests/ChangeLog (259657 => 259658)

--- trunk/JSTests/ChangeLog	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/ChangeLog	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,3 +1,21 @@
+2020-04-07  Ross Kirsling  
+
+Update JSTests to assume ICU 60+
+https://bugs.webkit.org/show_bug.cgi?id=210085
+
+Reviewed by Yusuke Suzuki.
+
+* stress/intl-collator.js:
+* stress/intl-constructors-with-proxy.js:
+* stress/intl-datetimeformat.js:
+* stress/intl-default-locale.js:
+* stress/intl-numberformat-format-to-parts.js:
+* stress/intl-numberformat.js: Ensure a test case doesn't depend on behavior changed in ICU 64.
+* stress/intl-object.js:
+* stress/intl-pluralrules.js: Correct two invalid test cases.
+* test262/config.yaml:
+Remove skips.
+
 2020-04-07  Yusuke Suzuki  
 
 [JSC] ScopedArgumentsTable should handle OOM in tolerant manner


Modified: trunk/JSTests/stress/intl-collator.js (259657 => 259658)

--- trunk/JSTests/stress/intl-collator.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-collator.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error(`expected ${expected} but got ${actual}`);


Modified: trunk/JSTests/stress/intl-constructors-with-proxy.js (259657 => 259658)

--- trunk/JSTests/stress/intl-constructors-with-proxy.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-constructors-with-proxy.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error('bad value: ' + actual);


Modified: trunk/JSTests/stress/intl-datetimeformat.js (259657 => 259658)

--- trunk/JSTests/stress/intl-datetimeformat.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-datetimeformat.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error(`expected ${expected} but got ${actual}`);


Modified: trunk/JSTests/stress/intl-default-locale.js (259657 => 259658)

--- trunk/JSTests/stress/intl-default-locale.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-default-locale.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error(`expected ${expected} but got ${actual}`);


Modified: trunk/JSTests/stress/intl-numberformat-format-to-parts.js (259657 => 259658)

--- trunk/JSTests/stress/intl-numberformat-format-to-parts.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-numberformat-format-to-parts.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows" or $hostOS == "darwin"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error(`expected ${expected} but got ${actual}`);


Modified: trunk/JSTests/stress/intl-numberformat.js (259657 => 259658)

--- trunk/JSTests/stress/intl-numberformat.js	2020-04-07 18:58:34 UTC (rev 259657)
+++ trunk/JSTests/stress/intl-numberformat.js	2020-04-07 19:35:54 UTC (rev 259658)
@@ -1,5 +1,3 @@
-//@ skip if $hostOS == "windows" or $hostOS == "darwin" or $hostOS == "linux"
-
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error(`expected ${expected} but got ${actual}`);
@@ -341,9 +339,9 @@
 shouldBe(Intl.NumberFormat('en', { maximumSignificantDigits: 15 }).format(Number.MAX_VALUE), '179,769,313,486,232,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000

[webkit-changes] [259657] trunk/LayoutTests

2020-04-07 Thread tsavell
Title: [259657] trunk/LayoutTests








Revision 259657
Author tsav...@apple.com
Date 2020-04-07 11:58:34 -0700 (Tue, 07 Apr 2020)


Log Message
Fix my conflict Markers
https://trac.webkit.org/changeset/259656/webkit

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk1/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259656 => 259657)

--- trunk/LayoutTests/ChangeLog	2020-04-07 18:53:56 UTC (rev 259656)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 18:58:34 UTC (rev 259657)
@@ -1,5 +1,14 @@
 2020-04-07  Truitt Savell  
 
+Fix my conflict Markers
+https://trac.webkit.org/changeset/259656/webkit
+
+Unreviewed test gardening.
+
+* platform/mac-wk1/TestExpectations:
+
+2020-04-07  Truitt Savell  
+
 REGRESSION: (r258434) [ Mac WK1 ] media/track/track-css-user-override.html is a flaky failure
 https://bugs.webkit.org/show_bug.cgi?id=210134
 


Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (259656 => 259657)

--- trunk/LayoutTests/platform/mac-wk1/TestExpectations	2020-04-07 18:53:56 UTC (rev 259656)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations	2020-04-07 18:58:34 UTC (rev 259657)
@@ -955,8 +955,6 @@
 
 webkit.org/b/209921 [ Debug ] inspector/css/add-css-property.html [ Pass Timeout ]
 
-<<< Updated upstream
 webkit.org/b/210079 [ Debug ] inspector/debugger/evaluateOnCallFrame-errors.html [ Pass Failure ]
-===
+
 webkit.org/b/210134 media/track/track-css-user-override.html [ Pass Failure ]
->>> Stashed changes






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


[webkit-changes] [259656] trunk/LayoutTests

2020-04-07 Thread tsavell
Title: [259656] trunk/LayoutTests








Revision 259656
Author tsav...@apple.com
Date 2020-04-07 11:53:56 -0700 (Tue, 07 Apr 2020)


Log Message
REGRESSION: (r258434) [ Mac WK1 ] media/track/track-css-user-override.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=210134

unreviewed test gardening.

* platform/mac-wk1/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk1/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (259655 => 259656)

--- trunk/LayoutTests/ChangeLog	2020-04-07 18:43:45 UTC (rev 259655)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 18:53:56 UTC (rev 259656)
@@ -1,3 +1,12 @@
+2020-04-07  Truitt Savell  
+
+REGRESSION: (r258434) [ Mac WK1 ] media/track/track-css-user-override.html is a flaky failure
+https://bugs.webkit.org/show_bug.cgi?id=210134
+
+unreviewed test gardening.
+
+* platform/mac-wk1/TestExpectations:
+
 2020-04-07  Diego Pino Garcia  
 
 [GTK] Gardening, update TestExpectations


Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (259655 => 259656)

--- trunk/LayoutTests/platform/mac-wk1/TestExpectations	2020-04-07 18:43:45 UTC (rev 259655)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations	2020-04-07 18:53:56 UTC (rev 259656)
@@ -955,4 +955,8 @@
 
 webkit.org/b/209921 [ Debug ] inspector/css/add-css-property.html [ Pass Timeout ]
 
-webkit.org/b/210079 [ Debug ] inspector/debugger/evaluateOnCallFrame-errors.html [ Pass Failure ]
\ No newline at end of file
+<<< Updated upstream
+webkit.org/b/210079 [ Debug ] inspector/debugger/evaluateOnCallFrame-errors.html [ Pass Failure ]
+===
+webkit.org/b/210134 media/track/track-css-user-override.html [ Pass Failure ]
+>>> Stashed changes






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


[webkit-changes] [259655] trunk

2020-04-07 Thread katherine_cheney
Title: [259655] trunk








Revision 259655
Author katherine_che...@apple.com
Date 2020-04-07 11:43:45 -0700 (Tue, 07 Apr 2020)


Log Message
Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124


Reviewed by Brent Fulgham.

Source/WebKit:

No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.

* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
Remove the flag checking if In-App Browser Privacy is enabled. We
should return an app-bound session if WKAppBoundDomains is empty so
we no longer need to check the flag here.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
* UIProcess/WebPageProxy.h:
As described above, we no longer need to check the flag in this
instance as we are determining behavior based on the WKAppBoundDomains
list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
so it should take an Optional (WTF::nullopt indicates an empty list).

* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
Use the flag to enable internal debugging for testing purposes.

* UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::filterAppBoundCookies):
Flag no longer needed. This should be gated by whether the domains
list is empty or not.

Tools:

Cleaned up tests to turn the flag on at the start of each In-App
Browser Privacy test.

* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(cleanUpInAppBrowserPrivacyTestSettings):
(initializeInAppBrowserPrivacyTestSettings):
(TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (259654 => 259655)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 18:43:30 UTC (rev 259654)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 18:43:45 UTC (rev 259655)
@@ -1,3 +1,39 @@
+2020-04-07  Kate Cheney  
+
+Return app-bound sessions for instances where WKAppBoundDomains is
+empty
+https://bugs.webkit.org/show_bug.cgi?id=210124
+
+
+Reviewed by Brent Fulgham.
+
+No new tests. Behavior confirmed by existing In-App Browser Privacy
+tests.
+
+* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
+Remove the flag checking if In-App Browser Privacy is enabled. We
+should return an app-bound session if WKAppBoundDomains is empty so
+we no longer need to check the flag here.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
+(WebKit::WebPageProxy::decidePolicyForNavigationAction):
+* UIProcess/WebPageProxy.h:
+As described above, we no longer need to check the flag in this
+instance as we are determining behavior based on the WKAppBoundDomains
+list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
+so it should take an Optional (WTF::nullopt indicates an empty list).
+
+* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+(WebKit::WebsiteDataStore::initializeAppBoundDomains):
+Use the flag to enable internal debugging for testing purposes.
+
+* UIProcess/API/APIHTTPCookieStore.cpp:
+(API::HTTPCookieStore::filterAppBoundCookies):
+Flag no longer needed. This should be gated by whether the domains
+list is empty or not.
+
 2020-04-07  Per Arne Vollan  
 
 [iOS] Add message to message filter in the WebContent sandbox


Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (259654 => 259655)

--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2020-04-07 18:43:30 UTC (rev 259654)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2020-04-07 18:43:45 UTC (rev 259655)
@@ -63,7 +63,6 @@
 #include 
 #else
 #define NETWORK_SESSION_COCOA_ADDITIONS_1
-#define NETWORK_SESSION_COCOA_ADDITIONS_2 false
 #endif
 
 #import "DeviceManagementSoftLink.h"
@@ -1211,10 +1210,8 @@
 ASSERT_NOT_REACHED();
 #endif
 
-if (isNavigatingToAppBoundDomain == NavigatingToAppBoundDomain::Yes) {
-if (m_isInAppBrowserPrivacyEnabled || NETWORK_SESSION_COCOA_ADDITIONS_2)
-return appBoundSession(storedCredentialsPolicy);
-}
+if (isNavigatingToAppBoundDomain == NavigatingToAppBoundDomain::Yes)
+return appBoundSession(storedCredentialsPolicy);
 

[webkit-changes] [259654] branches/safari-609.2.1.2-branch

2020-04-07 Thread alancoon
Title: [259654] branches/safari-609.2.1.2-branch








Revision 259654
Author alanc...@apple.com
Date 2020-04-07 11:43:30 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r257605. rdar://problem/61231926

Poly proto should work with property delete transitions
https://bugs.webkit.org/show_bug.cgi?id=208261

Reviewed by Saam Barati.

JSTests:

* stress/delete-property-poly-proto.js: Added.
(A.prototype.set x):
(A):
(B):

Source/_javascript_Core:

This patch fixes a bug where the combination of inline caching
and poly proto cause us to cache a setter call along a prototype chain that
is no longer the correct setter to call. This is exposed as a result of
https://bugs.webkit.org/show_bug.cgi?id=206430 since DefineOwnProperty used
to transition to uncacheable dictionary.

The case looks like this:
A - setter for x redefines x
|
B
|
C

We set (new C).x

Right now, we first call A's setter, then we try to figure out what the state of things
were before it was called in order to cache it. We just assume that A's setter still exists, and we cache it
without ever checking, In this patch, we ensure that the property exists and the attributes match in order to prevent crashing.

In the code, A = target, C = base.

Get is correct because it collects caching information before any calls.

The bug https://bugs.webkit.org/show_bug.cgi?id=208337 tracks the remaining semantic bugs around this code.

* jit/Repatch.cpp:
(JSC::tryCachePutByID):

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

Modified Paths

branches/safari-609.2.1.2-branch/JSTests/ChangeLog
branches/safari-609.2.1.2-branch/Source/_javascript_Core/ChangeLog
branches/safari-609.2.1.2-branch/Source/_javascript_Core/jit/Repatch.cpp


Added Paths

branches/safari-609.2.1.2-branch/JSTests/stress/delete-property-poly-proto.js
branches/safari-609.2.1.2-branch/JSTests/stress/poly-proto-setter-adds-setter-in-middle.js
branches/safari-609.2.1.2-branch/JSTests/stress/poly-proto-setter-changes-setter-2.js
branches/safari-609.2.1.2-branch/JSTests/stress/poly-proto-setter-changes-setter.js




Diff

Modified: branches/safari-609.2.1.2-branch/JSTests/ChangeLog (259653 => 259654)

--- branches/safari-609.2.1.2-branch/JSTests/ChangeLog	2020-04-07 18:43:25 UTC (rev 259653)
+++ branches/safari-609.2.1.2-branch/JSTests/ChangeLog	2020-04-07 18:43:30 UTC (rev 259654)
@@ -1,3 +1,64 @@
+2020-04-07  Alan Coon  
+
+Cherry-pick r257605. rdar://problem/61231926
+
+Poly proto should work with property delete transitions
+https://bugs.webkit.org/show_bug.cgi?id=208261
+
+Reviewed by Saam Barati.
+
+JSTests:
+
+* stress/delete-property-poly-proto.js: Added.
+(A.prototype.set x):
+(A):
+(B):
+
+Source/_javascript_Core:
+
+This patch fixes a bug where the combination of inline caching
+and poly proto cause us to cache a setter call along a prototype chain that
+is no longer the correct setter to call. This is exposed as a result of
+https://bugs.webkit.org/show_bug.cgi?id=206430 since DefineOwnProperty used
+to transition to uncacheable dictionary.
+
+The case looks like this:
+A - setter for x redefines x
+|
+B
+|
+C
+
+We set (new C).x
+
+Right now, we first call A's setter, then we try to figure out what the state of things
+were before it was called in order to cache it. We just assume that A's setter still exists, and we cache it
+without ever checking, In this patch, we ensure that the property exists and the attributes match in order to prevent crashing.
+
+In the code, A = target, C = base.
+
+Get is correct because it collects caching information before any calls.
+
+The bug https://bugs.webkit.org/show_bug.cgi?id=208337 tracks the remaining semantic bugs around this code.
+
+* jit/Repatch.cpp:
+(JSC::tryCachePutByID):
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257605 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2020-02-27  Justin Michaud  
+
+Poly proto should work with property delete transitions
+https://bugs.webkit.org/show_bug.cgi?id=208261
+
+Reviewed by Saam Barati.
+
+* stress/delete-property-poly-proto.js: Added.
+(A.prototype.set x):
+(A):
+(B):
+
 2020-04-03  Alan Coon  
 
 Cherry-pick r256766. rdar://problem/61231942


Added: branches/safari-609.2.1.2-branch/JSTests/stress/delete-property-poly-proto.js (0 => 259654)

--- branches/safari-609.2.1.2-branch/JSTests/stress/delete-property-poly-proto.js	(rev 0)
+++ branches/safari-609.2.1.2-branch/JSTests/stress/delete-property-poly-proto.js	2020-04-07 18:43:30 UTC (rev 259654)
@@ -0,0 +1,41 @@
+//@ requireOptions("--forcePolyProto=1", 

[webkit-changes] [259653] branches/safari-609.2.1.2-branch/Source/JavaScriptCore

2020-04-07 Thread alancoon
Title: [259653] branches/safari-609.2.1.2-branch/Source/_javascript_Core








Revision 259653
Author alanc...@apple.com
Date 2020-04-07 11:43:25 -0700 (Tue, 07 Apr 2020)


Log Message
Cherry-pick r255542. rdar://problem/61231926

[JSC] Hold StructureID instead of Structure* in PolyProtoAccessChain and DFG::CommonData
https://bugs.webkit.org/show_bug.cgi?id=207086

Reviewed by Mark Lam.

PolyProtoAccessChain and DFG::CommonData are kept alive so long as associated AccessCase / DFG/FTL CodeBlock
is alive. They hold Vector / Vector>, but access frequency is low. And
We should hold Vector instead to cut 50% of the size.

* bytecode/AccessCase.cpp:
(JSC::AccessCase::commit):
(JSC::AccessCase::forEachDependentCell const):
(JSC::AccessCase::doesCalls const):
(JSC::AccessCase::visitWeak const):
(JSC::AccessCase::propagateTransitions const):
(JSC::AccessCase::generateWithGuard):
* bytecode/AccessCase.h:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::propagateTransitions):
(JSC::CodeBlock::determineLiveness):
(JSC::CodeBlock::stronglyVisitWeakReferences):
* bytecode/GetByStatus.cpp:
(JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
* bytecode/InByIdStatus.cpp:
(JSC::InByIdStatus::computeFor):
(JSC::InByIdStatus::computeForStubInfo):
(JSC::InByIdStatus::computeForStubInfoWithoutExitSiteFeedback):
* bytecode/InByIdStatus.h:
* bytecode/InstanceOfStatus.cpp:
(JSC::InstanceOfStatus::computeFor):
(JSC::InstanceOfStatus::computeForStubInfo):
* bytecode/InstanceOfStatus.h:
* bytecode/PolyProtoAccessChain.cpp:
(JSC::PolyProtoAccessChain::create):
(JSC::PolyProtoAccessChain::needImpurePropertyWatchpoint const):
(JSC::PolyProtoAccessChain::dump const):
* bytecode/PolyProtoAccessChain.h:
(JSC::PolyProtoAccessChain::chain const):
(JSC::PolyProtoAccessChain::forEach const):
(JSC::PolyProtoAccessChain::slotBaseStructure const):
(JSC::PolyProtoAccessChain:: const): Deleted.
* bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeForStubInfo):
* bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::summary const):
(JSC::StructureStubInfo::summary):
* bytecode/StructureStubInfo.h:
* dfg/DFGCommonData.h:
* dfg/DFGDesiredWeakReferences.cpp:
(JSC::DFG::DesiredWeakReferences::reallyAdd):
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::finalizeWithoutNotifyingCallback):
* jit/Repatch.cpp:
(JSC::tryCacheGetBy):
(JSC::tryCachePutByID):
(JSC::tryCacheInByID):

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

Modified Paths

branches/safari-609.2.1.2-branch/Source/_javascript_Core/ChangeLog
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/AccessCase.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/AccessCase.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/CodeBlock.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/GetByStatus.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/InByIdStatus.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/InByIdStatus.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/InstanceOfStatus.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/InstanceOfStatus.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/PolyProtoAccessChain.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/PolyProtoAccessChain.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/PolymorphicAccess.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/PutByIdStatus.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/StructureStubInfo.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/bytecode/StructureStubInfo.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/dfg/DFGCommonData.h
branches/safari-609.2.1.2-branch/Source/_javascript_Core/dfg/DFGDesiredWeakReferences.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/dfg/DFGPlan.cpp
branches/safari-609.2.1.2-branch/Source/_javascript_Core/jit/Repatch.cpp




Diff

Modified: branches/safari-609.2.1.2-branch/Source/_javascript_Core/ChangeLog (259652 => 259653)

--- branches/safari-609.2.1.2-branch/Source/_javascript_Core/ChangeLog	2020-04-07 18:41:13 UTC (rev 259652)
+++ branches/safari-609.2.1.2-branch/Source/_javascript_Core/ChangeLog	2020-04-07 18:43:25 UTC (rev 259653)
@@ -1,3 +1,129 @@
+2020-04-07  Alan Coon  
+
+Cherry-pick r255542. rdar://problem/61231926
+
+[JSC] Hold StructureID instead of Structure* in PolyProtoAccessChain and DFG::CommonData
+https://bugs.webkit.org/show_bug.cgi?id=207086
+
+Reviewed by Mark Lam.
+
+PolyProtoAccessChain and DFG::Com

[webkit-changes] [259652] trunk

2020-04-07 Thread sbarati
Title: [259652] trunk








Revision 259652
Author sbar...@apple.com
Date 2020-04-07 11:41:13 -0700 (Tue, 07 Apr 2020)


Log Message
RAMification should have a way of gathering vmmaps for each test at the end of each run
https://bugs.webkit.org/show_bug.cgi?id=210060

Reviewed by Yusuke Suzuki.

PerformanceTests:

When I was debugging a memory issue, I needed to gather vmmaps for each
RAMification subtest. This patch is checking in the code I wrote to be able
to do this. It works by:
- Passing in an argument to RAMification saying we want vmmaps at the end of
each subtest run.
- RAMification invokes jsc with an environment variable that tells the shell
to wait for one character of input from stdin before exiting.
- The jsc shell also disables the bmalloc scavenger while waiting for input so the
vmmap we take from the python runner script represents the "footprint" score
of the benchmark. If the scavenger ran, it would end up releasing too much
memory for the vmmap to be useful.
- The python script runs a vmmap, and then communicates to the jsc process
when the vmmap finishes running.

* JetStream2/RAMification.py:
(parseArgs):
(BaseRunner.__init__):
(BaseRunner.getResults):
(LocalRunner.runOneTest):
(main):
(main.runTestList):

Source/bmalloc:

* bmalloc/Scavenger.cpp:
(bmalloc::Scavenger::scavenge):
(bmalloc::Scavenger::partialScavenge):
* bmalloc/Scavenger.h:
(bmalloc::Scavenger::disable):
* bmalloc/bmalloc.cpp:
(bmalloc::api::disableScavenger):
* bmalloc/bmalloc.h:

Source/_javascript_Core:

* jsc.cpp:
(main):

Source/WTF:

* wtf/FastMalloc.cpp:
(WTF::fastDisableScavenger):
* wtf/FastMalloc.h:

Modified Paths

trunk/PerformanceTests/ChangeLog
trunk/PerformanceTests/JetStream2/RAMification.py
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/jsc.cpp
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/FastMalloc.cpp
trunk/Source/WTF/wtf/FastMalloc.h
trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/bmalloc/Scavenger.cpp
trunk/Source/bmalloc/bmalloc/Scavenger.h
trunk/Source/bmalloc/bmalloc/bmalloc.cpp
trunk/Source/bmalloc/bmalloc/bmalloc.h




Diff

Modified: trunk/PerformanceTests/ChangeLog (259651 => 259652)

--- trunk/PerformanceTests/ChangeLog	2020-04-07 18:40:07 UTC (rev 259651)
+++ trunk/PerformanceTests/ChangeLog	2020-04-07 18:41:13 UTC (rev 259652)
@@ -1,3 +1,32 @@
+2020-04-07  Saam Barati  
+
+RAMification should have a way of gathering vmmaps for each test at the end of each run
+https://bugs.webkit.org/show_bug.cgi?id=210060
+
+Reviewed by Yusuke Suzuki.
+
+When I was debugging a memory issue, I needed to gather vmmaps for each
+RAMification subtest. This patch is checking in the code I wrote to be able
+to do this. It works by:
+- Passing in an argument to RAMification saying we want vmmaps at the end of
+each subtest run.
+- RAMification invokes jsc with an environment variable that tells the shell
+to wait for one character of input from stdin before exiting.
+- The jsc shell also disables the bmalloc scavenger while waiting for input so the
+vmmap we take from the python runner script represents the "footprint" score
+of the benchmark. If the scavenger ran, it would end up releasing too much
+memory for the vmmap to be useful.
+- The python script runs a vmmap, and then communicates to the jsc process
+when the vmmap finishes running.
+
+* JetStream2/RAMification.py:
+(parseArgs):
+(BaseRunner.__init__):
+(BaseRunner.getResults):
+(LocalRunner.runOneTest):
+(main):
+(main.runTestList):
+
 2020-04-06  Saam Barati  
 
 Implement 1GB of executable memory on arm64


Modified: trunk/PerformanceTests/JetStream2/RAMification.py (259651 => 259652)

--- trunk/PerformanceTests/JetStream2/RAMification.py	2020-04-07 18:40:07 UTC (rev 259651)
+++ trunk/PerformanceTests/JetStream2/RAMification.py	2020-04-07 18:41:13 UTC (rev 259652)
@@ -43,7 +43,7 @@
 footprintRE = re.compile("Current Footprint: (\d+(?:.\d+)?)")
 peakFootprintRE = re.compile("Peak Footprint: (\d+(?:.\d+)?)")
 
-TestResult = collections.namedtuple("TestResult", ["name", "returnCode", "footprint", "peakFootprint"])
+TestResult = collections.namedtuple("TestResult", ["name", "returnCode", "footprint", "peakFootprint", "vmmapOutput"])
 
 ramification_dir = os.path.abspath(os.path.dirname(os.path.realpath(__file__)))
 
@@ -120,6 +120,7 @@
 parser.add_argument("-l", "--lua", dest="runLuaTests", nargs="?", const=True, default=None, type=optStrToBool, metavar="true / false", help="Run Lua comparison tests [default]")
 parser.add_argument("-n", "--run-no-jit", dest="runNoJITTests", nargs="?", const=True, default=None, type=optStrToBool, metavar="true / false", help="Run no JIT tests [default]")
 parser.add_argument("-o", "--output", dest="jsonFilename", type=str, default=None, metavar="JSON-output-file", help="Path to JSON outp

[webkit-changes] [259651] trunk

2020-04-07 Thread cdumez
Title: [259651] trunk








Revision 259651
Author cdu...@apple.com
Date 2020-04-07 11:40:07 -0700 (Tue, 07 Apr 2020)


Log Message
documentFragment.getElementById() should not work for empty-string IDs
https://bugs.webkit.org/show_bug.cgi?id=210111

Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

Import test coverage from upstream WPT.

* web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt: Added.
* web-platform-tests/dom/nodes/DocumentFragment-getElementById.html: Added.

Source/WebCore:

Make sure that getElementById() returns null when given an empty string ID:
- https://dom.spec.whatwg.org/#concept-id

Test: imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html

* dom/DocumentFragment.cpp:
(WebCore::DocumentFragment::getElementById const):
* dom/TreeScope.cpp:
(WebCore::TreeScope::getElementById const):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/DocumentFragment.cpp
trunk/Source/WebCore/dom/TreeScope.cpp


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (259650 => 259651)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2020-04-07 18:37:44 UTC (rev 259650)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2020-04-07 18:40:07 UTC (rev 259651)
@@ -1,3 +1,15 @@
+2020-04-07  Chris Dumez  
+
+documentFragment.getElementById() should not work for empty-string IDs
+https://bugs.webkit.org/show_bug.cgi?id=210111
+
+Reviewed by Geoffrey Garen.
+
+Import test coverage from upstream WPT.
+
+* web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt: Added.
+* web-platform-tests/dom/nodes/DocumentFragment-getElementById.html: Added.
+
 2020-04-06  Antoine Quint  
 
 [Web Animations] Move Document.getAnimations() to DocumentOrShadowRoot


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt (0 => 259651)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt	2020-04-07 18:40:07 UTC (rev 259651)
@@ -0,0 +1,7 @@
+
+PASS The method must exist 
+PASS It must return null when there are no matches 
+PASS It must return the first element when there are matches 
+PASS Empty string ID values 
+PASS It must return the first element when there are matches, using a template 
+


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html (0 => 259651)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html	2020-04-07 18:40:07 UTC (rev 259651)
@@ -0,0 +1,62 @@
+
+
+DocumentFragment.prototype.getElementById
+
+  
+
+  
+  
+
+
+  
+
+  
+
+
+
+"use strict";
+
+test(() => {
+  assert_equals(typeof DocumentFragment.prototype.getElementById, "function", "It must exist on the prototype");
+  assert_equals(typeof document.createDocumentFragment().getElementById, "function", "It must exist on an instance");
+}, "The method must exist");
+
+test(() => {
+  assert_equals(document.createDocumentFragment().getElementById("foo"), null);
+  assert_equals(document.createDocumentFragment().getElementById(""), null);
+}, "It must return null when there are no matches");
+
+test(() => {
+  const frag = document.createDocumentFragment();
+  frag.appendChild(document.createElement("div"));
+  frag.appendChild(document.createElement("span"));
+  frag.childNodes[0].id = "foo";
+  frag.childNodes[1].id = "foo";
+
+  assert_equals(frag.getElementById("foo"), frag.childNodes[0]);
+}, "It must return the first element when there are matches");
+
+test(() => {
+  const frag = document.createDocumentFragment();
+  frag.appendChild(document.createElement("div"));
+  frag.childNodes[0].setAttribute("id", "");
+
+  assert_equals(
+frag.getElementById(""),
+null,
+"Even if there is an element with an empty-string ID attribute, it must not be returned"
+  );
+}, "Empty string ID values");
+
+test(() => {
+  const frag = document.querySelector("template").content;
+
+  assert_true(frag.getElementById("foo").hasAttribute("data-yes"));
+}, "It must return the first element when there are matches, using a template");
+


Modified: trunk/Source/WebCore/ChangeLog (259650 => 259651)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 18:37:44 UTC (rev 259650)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 18:40:07 UTC (rev 259651)
@@ -1,3 +1,20 @@
+2020-04-0

[webkit-changes] [259650] trunk

2020-04-07 Thread timothy
Title: [259650] trunk








Revision 259650
Author timo...@apple.com
Date 2020-04-07 11:37:44 -0700 (Tue, 07 Apr 2020)


Log Message
WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
https://bugs.webkit.org/show_bug.cgi?id=210131
rdar://problem/61368446

Reviewed by Brady Eidson.

Source/WebCore:

If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
and never being injected (since Page::notifyToInjectUserScripts() will not be called again).

* page/Page.cpp:
(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.

Tools:

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

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/Page.cpp
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (259649 => 259650)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 18:19:18 UTC (rev 259649)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 18:37:44 UTC (rev 259650)
@@ -1,3 +1,18 @@
+2020-04-07  Timothy Hatcher  
+
+WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
+https://bugs.webkit.org/show_bug.cgi?id=210131
+rdar://problem/61368446
+
+Reviewed by Brady Eidson.
+
+If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
+m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
+and never being injected (since Page::notifyToInjectUserScripts() will not be called again).
+
+* page/Page.cpp:
+(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.
+
 2020-04-07  Devin Rousso  
 
 Web Inspector: unable to see cookies on pages that have subframes which have been denied access to cookies


Modified: trunk/Source/WebCore/page/Page.cpp (259649 => 259650)

--- trunk/Source/WebCore/page/Page.cpp	2020-04-07 18:19:18 UTC (rev 259649)
+++ trunk/Source/WebCore/page/Page.cpp	2020-04-07 18:37:44 UTC (rev 259650)
@@ -2479,10 +2479,13 @@
 
 void Page::notifyToInjectUserScripts()
 {
+m_hasBeenNotifiedToInjectUserScripts = true;
+
 for (auto* frame = &mainFrame(); frame; frame = frame->tree().traverseNext()) {
 for (const auto& pair : m_userScriptsAwaitingNotification)
 frame->injectUserScriptImmediately(pair.first, pair.second.get());
 }
+
 m_userScriptsAwaitingNotification.clear();
 }
 


Modified: trunk/Tools/ChangeLog (259649 => 259650)

--- trunk/Tools/ChangeLog	2020-04-07 18:19:18 UTC (rev 259649)
+++ trunk/Tools/ChangeLog	2020-04-07 18:37:44 UTC (rev 259650)
@@ -1,3 +1,14 @@
+2020-04-07  Timothy Hatcher  
+
+WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
+https://bugs.webkit.org/show_bug.cgi?id=210131
+rdar://problem/61368446
+
+Reviewed by Brady Eidson.
+
+* TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
+(TEST):
+
 2020-04-07  Ryosuke Niwa  
 
 TextManipulationController fails to replace a paragraph that ends with a br


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm (259649 => 259650)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm	2020-04-07 18:19:18 UTC (rev 259649)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm	2020-04-07 18:37:44 UTC (rev 259650)
@@ -843,4 +843,15 @@
 [webView2 loadTestPageNamed:@"simple"];
 EXPECT_WK_STREQ([delegate waitForAlert], "waited for notification");
 EXPECT_WK_STREQ([delegate waitForAlert], "document parsing ended");
+
+TestWKWebView *webView3 = [[TestWKWebView new] autorelease];
+EXPECT_TRUE(webView3._deferrableUserScriptsNeedNotification);
+[webView3.configuration.userContentController addUserScript:waitsForNotification];
+[webView3.configuration.userContentController addUserScript:documentEnd];
+webView3.UIDelegate = delegate;
+[webView3 loadTestPageNamed:@"simple"];
+[webView3 _notifyUserScripts];
+EXPECT_FALSE(webView3._deferrableUserScriptsNeedNotification);
+EXPECT_WK_STREQ([delegate waitForAlert], "waited for notification");
+EXPECT_WK_STREQ([delegate waitForAlert], "document parsing ended");
 }






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


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

2020-04-07 Thread drousso
Title: [259649] trunk/Source/WebCore








Revision 259649
Author drou...@apple.com
Date 2020-04-07 11:19:18 -0700 (Tue, 07 Apr 2020)


Log Message
Web Inspector: unable to see cookies on pages that have subframes which have been denied access to cookies
https://bugs.webkit.org/show_bug.cgi?id=210125


Reviewed by Timothy Hatcher.

Previously, the same boolean value was re-used when checking whether that URL and `document`
pairs is able to access cookies, meaning that if the last check returned `false`, the logic
would incorrectly think that none of the URL and `document` pairs would have access to any
cookies, resulting in an empty array.

Instead of using this all-or-nothing boolean, if a URL and `document` pair is not able to
access cookies, simply ignore it and move on to the next pair.

* inspector/agents/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::getCookies):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/inspector/agents/InspectorPageAgent.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259648 => 259649)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 18:18:36 UTC (rev 259648)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 18:19:18 UTC (rev 259649)
@@ -1,3 +1,22 @@
+2020-04-07  Devin Rousso  
+
+Web Inspector: unable to see cookies on pages that have subframes which have been denied access to cookies
+https://bugs.webkit.org/show_bug.cgi?id=210125
+
+
+Reviewed by Timothy Hatcher.
+
+Previously, the same boolean value was re-used when checking whether that URL and `document`
+pairs is able to access cookies, meaning that if the last check returned `false`, the logic
+would incorrectly think that none of the URL and `document` pairs would have access to any
+cookies, resulting in an empty array.
+
+Instead of using this all-or-nothing boolean, if a URL and `document` pair is not able to
+access cookies, simply ignore it and move on to the next pair.
+
+* inspector/agents/InspectorPageAgent.cpp:
+(WebCore::InspectorPageAgent::getCookies):
+
 2020-04-07  Ryosuke Niwa  
 
 TextManipulationController fails to replace a paragraph that ends with a br


Modified: trunk/Source/WebCore/inspector/agents/InspectorPageAgent.cpp (259648 => 259649)

--- trunk/Source/WebCore/inspector/agents/InspectorPageAgent.cpp	2020-04-07 18:18:36 UTC (rev 259648)
+++ trunk/Source/WebCore/inspector/agents/InspectorPageAgent.cpp	2020-04-07 18:19:18 UTC (rev 259649)
@@ -520,17 +520,8 @@
 
 void InspectorPageAgent::getCookies(ErrorString&, RefPtr>& cookies)
 {
-// If we can get raw cookies.
-ListHashSet rawCookiesList;
+ListHashSet allRawCookies;
 
-// If we can't get raw cookies - fall back to String representation
-StringBuilder stringCookiesList;
-
-// Return value to getRawCookies should be the same for every call because
-// the return value is platform/network backend specific, and the call will
-// always return the same true/false value.
-bool rawCookiesImplemented = false;
-
 for (Frame* frame = &m_inspectedPage.mainFrame(); frame; frame = frame->tree().traverseNext()) {
 Document* document = frame->document();
 if (!document || !document->page())
@@ -537,26 +528,16 @@
 continue;
 
 for (auto& url : allResourcesURLsForFrame(frame)) {
-Vector docCookiesList;
-rawCookiesImplemented = document->page()->cookieJar().getRawCookies(*document, URL({ }, url), docCookiesList);
+Vector rawCookiesForURLInDocument;
+if (!document->page()->cookieJar().getRawCookies(*document, URL({ }, url), rawCookiesForURLInDocument))
+continue;
 
-if (!rawCookiesImplemented) {
-// FIXME: We need duplication checking for the String representation of cookies.
-// Exceptions are thrown by cookie() in sandboxed frames. That won't happen here
-// because "document" is the document of the main frame of the page.
-stringCookiesList.append(document->cookie().releaseReturnValue());
-} else {
-for (auto& cookie : docCookiesList)
-rawCookiesList.add(cookie);
-}
+for (auto& rawCookieForURLInDocument : rawCookiesForURLInDocument)
+allRawCookies.add(rawCookieForURLInDocument);
 }
 }
 
-// FIXME: Do not return empty string/empty array. Make returns optional instead. https://bugs.webkit.org/show_bug.cgi?id=80855
-if (rawCookiesImplemented)
-cookies = buildArrayForCookies(rawCookiesList);
-else
-cookies = JSON::ArrayOf::create();
+cookies = buildArrayForCookies(allRawCookies);
 }
 
 static Optional parseCookieObject(ErrorString& errorString, const JSON::Object& cookieObject)






___
webkit-changes mailing list
webkit-changes@lists.webkit.o

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

2020-04-07 Thread pvollan
Title: [259648] trunk/Source/WebKit








Revision 259648
Author pvol...@apple.com
Date 2020-04-07 11:18:36 -0700 (Tue, 07 Apr 2020)


Log Message
[iOS] Add message to message filter in the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=210130

Reviewed by Brent Fulgham.

Add a required syscall-mach message to the message filter in the WebContent sandbox on iOS.

* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb




Diff

Modified: trunk/Source/WebKit/ChangeLog (259647 => 259648)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 18:10:10 UTC (rev 259647)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 18:18:36 UTC (rev 259648)
@@ -1,3 +1,14 @@
+2020-04-07  Per Arne Vollan  
+
+[iOS] Add message to message filter in the WebContent sandbox
+https://bugs.webkit.org/show_bug.cgi?id=210130
+
+Reviewed by Brent Fulgham.
+
+Add a required syscall-mach message to the message filter in the WebContent sandbox on iOS.
+
+* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+
 2020-04-07  Youenn Fablet  
 
 REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html


Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb (259647 => 259648)

--- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb	2020-04-07 18:10:10 UTC (rev 259647)
+++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb	2020-04-07 18:18:36 UTC (rev 259648)
@@ -1113,6 +1113,7 @@
 (machtrap-number MSC_semaphore_timedwait_trap)
 (machtrap-number MSC_semaphore_wait_trap)
 (machtrap-number MSC_swtch_pri)
+(machtrap-number MSC_task_name_for_pid)
 (machtrap-number MSC_thread_get_special_reply_port)
 (machtrap-number MSC_thread_self_trap)
 )






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


[webkit-changes] [259647] trunk

2020-04-07 Thread rniwa
Title: [259647] trunk








Revision 259647
Author rn...@webkit.org
Date 2020-04-07 11:10:10 -0700 (Tue, 07 Apr 2020)


Log Message
TextManipulationController fails to replace a paragraph that ends with a br
https://bugs.webkit.org/show_bug.cgi?id=210099

Reviewed by Wenson Hsieh.

Source/WebCore:

The bug was caused by TextManipulationController::replace not ignoring the br at the end of a paragraph
even through it doesn't appear as a token. We also need to insert this br back at the end of the paragraph
when completing the manipulation.

* editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::replace):

Tools:

Added regression tests.

* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsSeparatedByBR):
(TextManipulation.CompleteTextManipulationReplaceParagraphsSeparatedByWrappedBR):
(TextManipulation.CompleteTextManipulationFailWhenBRIsInserted):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/editing/TextManipulationController.cpp
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (259646 => 259647)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 18:04:57 UTC (rev 259646)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 18:10:10 UTC (rev 259647)
@@ -1,3 +1,17 @@
+2020-04-07  Ryosuke Niwa  
+
+TextManipulationController fails to replace a paragraph that ends with a br
+https://bugs.webkit.org/show_bug.cgi?id=210099
+
+Reviewed by Wenson Hsieh.
+
+The bug was caused by TextManipulationController::replace not ignoring the br at the end of a paragraph
+even through it doesn't appear as a token. We also need to insert this br back at the end of the paragraph
+when completing the manipulation.
+
+* editing/TextManipulationController.cpp:
+(WebCore::TextManipulationController::replace):
+
 2020-04-07  Jer Noble  
 
 Make sure playback of remote audio tracks is stable even if pages are using webaudio


Modified: trunk/Source/WebCore/editing/TextManipulationController.cpp (259646 => 259647)

--- trunk/Source/WebCore/editing/TextManipulationController.cpp	2020-04-07 18:04:57 UTC (rev 259646)
+++ trunk/Source/WebCore/editing/TextManipulationController.cpp	2020-04-07 18:10:10 UTC (rev 259647)
@@ -487,6 +487,7 @@
 ParagraphContentIterator iterator { item.start, item.end };
 HashSet> excludedNodes;
 HashSet> nodesToRemove;
+RefPtr nodeToInsertBackAtEnd;
 for (; !iterator.atEnd(); iterator.advance()) {
 auto content = iterator.currentContent();
 
@@ -496,8 +497,13 @@
 if (!content.isReplacedContent && !content.isTextContent)
 continue;
 
-if (currentTokenIndex >= item.tokens.size())
+if (currentTokenIndex >= item.tokens.size()) {
+if (content.node && !nodeToInsertBackAtEnd && content.isTextContent && content.text == "\n") { // br
+nodeToInsertBackAtEnd = content.node;
+continue;
+}
 return ManipulationFailureType::ContentChanged;
+}
 
 auto& currentToken = item.tokens[currentTokenIndex];
 if (!content.isReplacedContent && content.text != currentToken.content)
@@ -578,6 +584,8 @@
 insertions.append(NodeInsertion { currentElementStack.size() ? currentElementStack.last().ptr() : nullptr, contentNode.releaseNonNull() });
 }
 }
+if (nodeToInsertBackAtEnd)
+insertions.append(NodeInsertion { nullptr, nodeToInsertBackAtEnd.releaseNonNull() });
 
 Position insertionPoint = positionBeforeNode(firstContentNode.get()).parentAnchoredEquivalent();
 while (insertionPoint.containerNode() != commonAncestor)


Modified: trunk/Tools/ChangeLog (259646 => 259647)

--- trunk/Tools/ChangeLog	2020-04-07 18:04:57 UTC (rev 259646)
+++ trunk/Tools/ChangeLog	2020-04-07 18:10:10 UTC (rev 259647)
@@ -1,3 +1,17 @@
+2020-04-07  Ryosuke Niwa  
+
+TextManipulationController fails to replace a paragraph that ends with a br
+https://bugs.webkit.org/show_bug.cgi?id=210099
+
+Reviewed by Wenson Hsieh.
+
+Added regression tests.
+
+* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
+(TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsSeparatedByBR):
+(TextManipulation.CompleteTextManipulationReplaceParagraphsSeparatedByWrappedBR):
+(TextManipulation.CompleteTextManipulationFailWhenBRIsInserted):
+
 2020-04-07  Adrian Perez de Castro  
 
 [GTK] CMake find module for GTK4


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm (259646 => 259647)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm	2020-04-07 18:04:57 UTC (rev 259646)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm	2020-04-07 18:10:10 UTC (rev 259647)
@@ -733,6 +733,

[webkit-changes] [259646] trunk

2020-04-07 Thread ysuzuki
Title: [259646] trunk








Revision 259646
Author ysuz...@apple.com
Date 2020-04-07 11:04:57 -0700 (Tue, 07 Apr 2020)


Log Message
[JSC] ScopedArgumentsTable should handle OOM in tolerant manner
https://bugs.webkit.org/show_bug.cgi?id=210126

Reviewed by Mark Lam.

JSTests:

* stress/scoped-arguments-table-should-be-tolerant-for-oom.js: Added.
(canThrow):
(bar):
(get bar):
(foo):
(i.canThrow):

Source/_javascript_Core:

This patch makes ScopedArgumentsTable allocations OOM tolerant to throw OOM error when allocation fails.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* runtime/CachedTypes.cpp:
(JSC::CachedScopedArgumentsTable::decode const):
* runtime/ScopedArguments.cpp:
(JSC::ScopedArguments::unmapArgument):
* runtime/ScopedArgumentsTable.cpp:
(JSC::ScopedArgumentsTable::tryClone):
(JSC::ScopedArgumentsTable::trySetLength):
(JSC::ScopedArgumentsTable::trySet):
(JSC::ScopedArgumentsTable::clone): Deleted.
(JSC::ScopedArgumentsTable::setLength): Deleted.
(JSC::ScopedArgumentsTable::set): Deleted.
* runtime/ScopedArgumentsTable.h:
* runtime/SymbolTable.h:

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp
trunk/Source/_javascript_Core/runtime/CachedTypes.cpp
trunk/Source/_javascript_Core/runtime/ScopedArguments.cpp
trunk/Source/_javascript_Core/runtime/ScopedArgumentsTable.cpp
trunk/Source/_javascript_Core/runtime/ScopedArgumentsTable.h
trunk/Source/_javascript_Core/runtime/SymbolTable.h


Added Paths

trunk/JSTests/stress/scoped-arguments-table-should-be-tolerant-for-oom.js




Diff

Modified: trunk/JSTests/ChangeLog (259645 => 259646)

--- trunk/JSTests/ChangeLog	2020-04-07 17:39:24 UTC (rev 259645)
+++ trunk/JSTests/ChangeLog	2020-04-07 18:04:57 UTC (rev 259646)
@@ -1,5 +1,19 @@
 2020-04-07  Yusuke Suzuki  
 
+[JSC] ScopedArgumentsTable should handle OOM in tolerant manner
+https://bugs.webkit.org/show_bug.cgi?id=210126
+
+Reviewed by Mark Lam.
+
+* stress/scoped-arguments-table-should-be-tolerant-for-oom.js: Added.
+(canThrow):
+(bar):
+(get bar):
+(foo):
+(i.canThrow):
+
+2020-04-07  Yusuke Suzuki  
+
 [JSC] Inlined IC should get right JSGlobalObject
 https://bugs.webkit.org/show_bug.cgi?id=210092
 


Added: trunk/JSTests/stress/scoped-arguments-table-should-be-tolerant-for-oom.js (0 => 259646)

--- trunk/JSTests/stress/scoped-arguments-table-should-be-tolerant-for-oom.js	(rev 0)
+++ trunk/JSTests/stress/scoped-arguments-table-should-be-tolerant-for-oom.js	2020-04-07 18:04:57 UTC (rev 259646)
@@ -0,0 +1,43 @@
+//@ skip if $memoryLimited
+//@ slow!
+
+function canThrow(func, errorMessage) {
+var errorThrown = false;
+var error = null;
+try {
+func();
+} catch (e) {
+errorThrown = true;
+error = e;
+}
+if (errorThrown && String(error) !== errorMessage)
+throw new Error(`bad error: ${String(error)}`);
+}
+
+const a0 = [];
+a0.__proto__ = {};
+a0.length = 2**26;
+Object.defineProperty(a0, 0, {get: bar});
+
+function bar() {
+new Uint8Array(a0);
+}
+
+new Promise(bar);
+
+try {
+for (let i=0; i<1; i++) {
+new Uint8Array(1);
+}
+} catch {}
+
+function foo(x, y, z) {
+delete arguments[0];
+with (Object) {}
+}
+
+for (let i=0; i<1; i++) {
+canThrow(() => {
+foo(0);
+}, `Error: Out of memory`);
+}


Modified: trunk/Source/_javascript_Core/ChangeLog (259645 => 259646)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 17:39:24 UTC (rev 259645)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 18:04:57 UTC (rev 259646)
@@ -1,5 +1,30 @@
 2020-04-07  Yusuke Suzuki  
 
+[JSC] ScopedArgumentsTable should handle OOM in tolerant manner
+https://bugs.webkit.org/show_bug.cgi?id=210126
+
+Reviewed by Mark Lam.
+
+This patch makes ScopedArgumentsTable allocations OOM tolerant to throw OOM error when allocation fails.
+
+* bytecompiler/BytecodeGenerator.cpp:
+(JSC::BytecodeGenerator::BytecodeGenerator):
+* runtime/CachedTypes.cpp:
+(JSC::CachedScopedArgumentsTable::decode const):
+* runtime/ScopedArguments.cpp:
+(JSC::ScopedArguments::unmapArgument):
+* runtime/ScopedArgumentsTable.cpp:
+(JSC::ScopedArgumentsTable::tryClone):
+(JSC::ScopedArgumentsTable::trySetLength):
+(JSC::ScopedArgumentsTable::trySet):
+(JSC::ScopedArgumentsTable::clone): Deleted.
+(JSC::ScopedArgumentsTable::setLength): Deleted.
+(JSC::ScopedArgumentsTable::set): Deleted.
+* runtime/ScopedArgumentsTable.h:
+* runtime/SymbolTable.h:
+
+2020-04-07  Yusuke Suzuki  
+
 [JSC] JSWrapperObject should use JSInternalFieldObjectImpl
 https://bugs.webkit.org/show_bug.cgi?id=210019
 


Modified: trunk/Source/_javascript_Core/bytecompi

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

2020-04-07 Thread ysuzuki
Title: [259645] trunk/Source/_javascript_Core








Revision 259645
Author ysuz...@apple.com
Date 2020-04-07 10:39:24 -0700 (Tue, 07 Apr 2020)


Log Message
[JSC] JSWrapperObject should use JSInternalFieldObjectImpl
https://bugs.webkit.org/show_bug.cgi?id=210019

Reviewed by Mark Lam.

JSWrapperObject's mechanism can be basically implemented by using JSInternalFieldObjectImpl.
We should leverage JSInternalFieldObjectImpl to implement JSWrapperObject since it can pave
the way to implementing Object-Allocation-Sinking and faster access to value etc. in DFG without
duplicating code.

We also noticed that we are storing classInfo to JSWrapperObject when allocating StringObject in
DFG and FTL while JSWrapperObject is no longer inheriting JSDestructibleObject! But it turned out
that this is safe since the subsequent JSWrapperObject::internalValue setting can overwrite it.
We remove this wrong store.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileNewStringObject):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateDestructibleObject): Deleted.
* ftl/FTLAbstractHeapRepository.cpp:
(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):
* ftl/FTLAbstractHeapRepository.h:
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
(JSC::FTL::DFG::LowerDFGToB3::compileToStringOrCallStringConstructorOrStringValueOf):
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitAllocateDestructibleObject): Deleted.
* runtime/BigIntObject.h:
* runtime/BooleanObject.h:
* runtime/JSDestructibleObject.h:
(JSC::JSDestructibleObject::classInfo const):
(JSC::JSDestructibleObject::classInfoOffset): Deleted.
* runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildren):
* runtime/JSWrapperObject.h:
(JSC::JSWrapperObject::internalValueOffset):
(JSC::JSWrapperObject::internalValue const):
(JSC::JSWrapperObject::setInternalValue):
(JSC::JSWrapperObject::createStructure): Deleted.
* runtime/NumberObject.h:
* runtime/StringObject.h:
* runtime/SymbolObject.h:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.h
trunk/Source/_javascript_Core/ftl/FTLAbstractHeapRepository.cpp
trunk/Source/_javascript_Core/ftl/FTLAbstractHeapRepository.h
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp
trunk/Source/_javascript_Core/jit/AssemblyHelpers.h
trunk/Source/_javascript_Core/runtime/BigIntObject.h
trunk/Source/_javascript_Core/runtime/BooleanObject.h
trunk/Source/_javascript_Core/runtime/JSDestructibleObject.h
trunk/Source/_javascript_Core/runtime/JSWrapperObject.cpp
trunk/Source/_javascript_Core/runtime/JSWrapperObject.h
trunk/Source/_javascript_Core/runtime/NumberObject.h
trunk/Source/_javascript_Core/runtime/StringObject.h
trunk/Source/_javascript_Core/runtime/SymbolObject.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (259644 => 259645)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 17:26:40 UTC (rev 259644)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 17:39:24 UTC (rev 259645)
@@ -1,5 +1,50 @@
 2020-04-07  Yusuke Suzuki  
 
+[JSC] JSWrapperObject should use JSInternalFieldObjectImpl
+https://bugs.webkit.org/show_bug.cgi?id=210019
+
+Reviewed by Mark Lam.
+
+JSWrapperObject's mechanism can be basically implemented by using JSInternalFieldObjectImpl.
+We should leverage JSInternalFieldObjectImpl to implement JSWrapperObject since it can pave
+the way to implementing Object-Allocation-Sinking and faster access to value etc. in DFG without
+duplicating code.
+
+We also noticed that we are storing classInfo to JSWrapperObject when allocating StringObject in
+DFG and FTL while JSWrapperObject is no longer inheriting JSDestructibleObject! But it turned out
+that this is safe since the subsequent JSWrapperObject::internalValue setting can overwrite it.
+We remove this wrong store.
+
+* dfg/DFGSpeculativeJIT.cpp:
+(JSC::DFG::SpeculativeJIT::compileNewStringObject):
+* dfg/DFGSpeculativeJIT.h:
+(JSC::DFG::SpeculativeJIT::emitAllocateDestructibleObject): Deleted.
+* ftl/FTLAbstractHeapRepository.cpp:
+(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):
+* ftl/FTLAbstractHeapRepository.h:
+* ftl/FTLLowerDFGToB3.cpp:
+(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
+(JSC::FTL::DFG::LowerDFGToB3::compileToStringOrCallStringConstructorOrStringValueOf):
+* jit/AssemblyHelpers.h:
+(JSC::AssemblyHelpers::emitAllocateDestructibleObject): Deleted.
+* runtime/BigIntObject.h:
+* runtime/BooleanObject.h:
+* runtime/JSDestructibleObject.h:
+(JSC::JSDestructibleObject::classInfo const):
+(JSC::JSDestructibleObject::classInfoOffset): Deleted.
+* runtime/JSWrapperObject.cpp:
+(JSC::JSWrapperObject::visitChildr

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

2020-04-07 Thread jer . noble
Title: [259644] trunk/Source/WebCore








Revision 259644
Author jer.no...@apple.com
Date 2020-04-07 10:26:40 -0700 (Tue, 07 Apr 2020)


Log Message
Make sure playback of remote audio tracks is stable even if pages are using webaudio
https://bugs.webkit.org/show_bug.cgi?id=210052

Reviewed by Eric Carlson.

If a client requests data from AudioSampleDataSource, and the time requested happens to land
precicely on the end of the AudioSampleDataSoure's CARingBuffer's range, the function will get
into an inconsistent state where it believes both that not enough samples are available to
fulfill the request, but also that the number of frames available is equal to the number of
requested frames. This is due to an off-by-one error, where the end of the CARingBuffer's range
is incorrectly treated as inclusive, rather than exclusive. All subsequent requests will start at
sampleCount + timestamp, as if that data was returned correctly, rather than returning zeros,
propogating the error to future requests.

Fix this state by correctly checking if timestamp is greater-than-or-equal-to endFrame. This will
cause the method to return zero frames, and correctly apply an offset so the next request will start
at the same effective timestamp.

* platform/audio/mac/AudioSampleDataSource.mm:
(WebCore::AudioSampleDataSource::pullSamplesInternal):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/audio/mac/AudioSampleDataSource.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (259643 => 259644)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 16:38:32 UTC (rev 259643)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 17:26:40 UTC (rev 259644)
@@ -1,3 +1,26 @@
+2020-04-07  Jer Noble  
+
+Make sure playback of remote audio tracks is stable even if pages are using webaudio
+https://bugs.webkit.org/show_bug.cgi?id=210052
+
+Reviewed by Eric Carlson.
+
+If a client requests data from AudioSampleDataSource, and the time requested happens to land
+precicely on the end of the AudioSampleDataSoure's CARingBuffer's range, the function will get
+into an inconsistent state where it believes both that not enough samples are available to
+fulfill the request, but also that the number of frames available is equal to the number of
+requested frames. This is due to an off-by-one error, where the end of the CARingBuffer's range
+is incorrectly treated as inclusive, rather than exclusive. All subsequent requests will start at
+sampleCount + timestamp, as if that data was returned correctly, rather than returning zeros,
+propogating the error to future requests.
+
+Fix this state by correctly checking if timestamp is greater-than-or-equal-to endFrame. This will
+cause the method to return zero frames, and correctly apply an offset so the next request will start
+at the same effective timestamp.
+
+* platform/audio/mac/AudioSampleDataSource.mm:
+(WebCore::AudioSampleDataSource::pullSamplesInternal):
+
 2020-04-07  Alicia Boya García  
 
 [GStreamer] Log a warning if playbin is not found


Modified: trunk/Source/WebCore/platform/audio/mac/AudioSampleDataSource.mm (259643 => 259644)

--- trunk/Source/WebCore/platform/audio/mac/AudioSampleDataSource.mm	2020-04-07 16:38:32 UTC (rev 259643)
+++ trunk/Source/WebCore/platform/audio/mac/AudioSampleDataSource.mm	2020-04-07 17:26:40 UTC (rev 259644)
@@ -267,7 +267,7 @@
 
 uint64_t framesAvailable = sampleCount;
 if (timeStamp < startFrame || timeStamp + sampleCount > endFrame) {
-if (timeStamp + sampleCount < startFrame || timeStamp > endFrame)
+if (timeStamp + sampleCount < startFrame || timeStamp >= endFrame)
 framesAvailable = 0;
 else if (timeStamp < startFrame)
 framesAvailable = timeStamp + sampleCount - startFrame;






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


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

2020-04-07 Thread aboya
Title: [259643] trunk/Source/WebCore








Revision 259643
Author ab...@igalia.com
Date 2020-04-07 09:38:32 -0700 (Tue, 07 Apr 2020)


Log Message
[GStreamer] Log a warning if playbin is not found
https://bugs.webkit.org/show_bug.cgi?id=210112

Reviewed by Philippe Normand.

I spent quite a bit of time looking in the debugger for what ended up
being a trivial configuration issue because there was no logging
showing any obvious problem. Let's add it.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::isAvailable):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259642 => 259643)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 16:29:16 UTC (rev 259642)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 16:38:32 UTC (rev 259643)
@@ -1,3 +1,17 @@
+2020-04-07  Alicia Boya García  
+
+[GStreamer] Log a warning if playbin is not found
+https://bugs.webkit.org/show_bug.cgi?id=210112
+
+Reviewed by Philippe Normand.
+
+I spent quite a bit of time looking in the debugger for what ended up
+being a trivial configuration issue because there was no logging
+showing any obvious problem. Let's add it.
+
+* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+(WebCore::MediaPlayerPrivateGStreamer::isAvailable):
+
 2020-04-07  Adrian Perez de Castro  
 
 [GTK] CMake find module for GTK4


Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (259642 => 259643)

--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2020-04-07 16:29:16 UTC (rev 259642)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2020-04-07 16:38:32 UTC (rev 259643)
@@ -548,6 +548,8 @@
 
 // FIXME: This has not been updated for the playbin3 switch.
 GRefPtr factory = adoptGRef(gst_element_factory_find("playbin"));
+if (!factory)
+GST_WARNING("Couldn't find a factory for the playbin element. Media playback will be disabled.");
 return factory;
 }
 






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


[webkit-changes] [259642] trunk/LayoutTests

2020-04-07 Thread dpino
Title: [259642] trunk/LayoutTests








Revision 259642
Author dp...@igalia.com
Date 2020-04-07 09:29:16 -0700 (Tue, 07 Apr 2020)


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

Unreviewed gardening.

Add more tests failing in EWS gtk-wk2 bot but not in test bot.

* platform/gtk/TestExpectations:

Modified Paths

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




Diff

Modified: trunk/LayoutTests/ChangeLog (259641 => 259642)

--- trunk/LayoutTests/ChangeLog	2020-04-07 16:25:17 UTC (rev 259641)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 16:29:16 UTC (rev 259642)
@@ -1,5 +1,16 @@
 2020-04-07  Diego Pino Garcia  
 
+[GTK] Gardening, update TestExpectations
+https://bugs.webkit.org/show_bug.cgi?id=210118
+
+Unreviewed gardening.
+
+Add more tests failing in EWS gtk-wk2 bot but not in test bot.
+
+* platform/gtk/TestExpectations:
+
+2020-04-07  Diego Pino Garcia  
+
 [GTK] Gardening, IndexedDB flaky failures
 https://bugs.webkit.org/show_bug.cgi?id=210116
 


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (259641 => 259642)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-07 16:25:17 UTC (rev 259641)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-07 16:29:16 UTC (rev 259642)
@@ -1372,6 +1372,7 @@
 webkit.org/b/209801 imported/w3c/web-platform-tests/xhr/header-user-agent-sync.htm [ Failure ]
 
 # Tests failing in EWS but not in test bot.
+webkit.org/b/209533 http/tests/appcache/xhr-foreign-resource.html [ Failure Pass ]
 webkit.org/b/209533 http/tests/cache/disk-cache/disk-cache-media.html [ Failure Pass ]
 webkit.org/b/209533 http/tests/cache/disk-cache/disk-cache-range.html [ Failure Pass ]
 webkit.org/b/209533 http/tests/cache/disk-cache/disk-cache-redirect.html [ Failure Pass ]
@@ -1393,6 +1394,15 @@
 webkit.org/b/209533 http/tests/cookies/same-site/popup-same-site-via-cross-site-redirect.html [ Failure Pass ]
 webkit.org/b/209533 http/tests/cookies/same-site/popup-same-site-via-same-site-redirect.html [ Failure Pass ]
 webkit.org/b/209533 http/tests/cookies/same-site/popup-same-site.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/insecure-css-with-secure-cookies.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/insecure-executable-css-with-secure-cookies.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/insecure-image-with-securecookie-block.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/insecure-image-with-securecookie.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/insecure-script-with-secure-cookies.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block.html [ Failure Pass ]
+webkit.org/b/209533 http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies.html [ Failure Pass ]
+webkit.org/b/209533 http/wpt/service-workers/service-worker-different-process.https.html [ Failure Pass ]
+webkit.org/b/209533 imported/w3c/web-platform-tests/fetch/security/dangling-markup-mitigation-data-url.tentative.sub.html [ Failure Pass ]
 
 #
 # End of Expected failures.






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


[webkit-changes] [259641] trunk

2020-04-07 Thread aperez
Title: [259641] trunk








Revision 259641
Author ape...@igalia.com
Date 2020-04-07 09:25:17 -0700 (Tue, 07 Apr 2020)


Log Message
[GTK] CMake find module for GTK4
https://bugs.webkit.org/show_bug.cgi?id=210110

Reviewed by Don Olmstead.

.:

Rename FindGTK3.cmake as FindGTK.cmake, make it provide a GTK::GTK imported target,
and rewrite the logic to detect which targets (backends) have been built into GTK
to use the "targets" pkg-config variable instead of checking for multiple pkg-config
modules.

* Source/cmake/FindGDK3.cmake: Removed.
* Source/cmake/FindGTK.cmake: Added.
* Source/cmake/FindGTK3.cmake: Removed. This is now unused because the GTK::GTK target
will transitively depend on GDK3 when using GTK3 and bring in the compiler and linker
options automatically without needing to use a separate find module for GDK.
* Source/cmake/OptionsGTK.cmake: Use the GTK::GTK imported target, change variables
prefixed with GTK3_ to use the GTK_ prefix, and remove variables which are not needed
anymore when using the target (GTK_LIBRARIES, GTK_INCLUDE_DIRS, GDK_LIBRARIES and
GDK_INCLUDE_DIRS).

Source/WebCore:

No new tests needed.

* PlatformGTK.cmake: Use the GTK::GTK imported target.

Source/WebCore/PAL:

* pal/PlatformGTK.cmake: Use the GTK::GTK imported target.

Tools:

* MiniBrowser/gtk/CMakeLists.txt: Use the GTK::GTK imported target.
* TestWebKitAPI/PlatformGTK.cmake: Ditto.
* TestWebKitAPI/glib/PlatformGTK.cmake: Ditto.
* WebKitTestRunner/PlatformGTK.cmake: Ditto.

Modified Paths

trunk/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/PlatformGTK.cmake
trunk/Source/WebCore/PlatformGTK.cmake
trunk/Source/cmake/OptionsGTK.cmake
trunk/Tools/ChangeLog
trunk/Tools/MiniBrowser/gtk/CMakeLists.txt
trunk/Tools/TestWebKitAPI/PlatformGTK.cmake
trunk/Tools/TestWebKitAPI/glib/PlatformGTK.cmake
trunk/Tools/WebKitTestRunner/PlatformGTK.cmake


Added Paths

trunk/Source/cmake/FindGTK.cmake


Removed Paths

trunk/Source/cmake/FindGDK3.cmake
trunk/Source/cmake/FindGTK3.cmake




Diff

Modified: trunk/ChangeLog (259640 => 259641)

--- trunk/ChangeLog	2020-04-07 16:09:43 UTC (rev 259640)
+++ trunk/ChangeLog	2020-04-07 16:25:17 UTC (rev 259641)
@@ -1,3 +1,25 @@
+2020-04-07  Adrian Perez de Castro  
+
+[GTK] CMake find module for GTK4
+https://bugs.webkit.org/show_bug.cgi?id=210110
+
+Reviewed by Don Olmstead.
+
+Rename FindGTK3.cmake as FindGTK.cmake, make it provide a GTK::GTK imported target,
+and rewrite the logic to detect which targets (backends) have been built into GTK
+to use the "targets" pkg-config variable instead of checking for multiple pkg-config
+modules.
+
+* Source/cmake/FindGDK3.cmake: Removed.
+* Source/cmake/FindGTK.cmake: Added.
+* Source/cmake/FindGTK3.cmake: Removed. This is now unused because the GTK::GTK target
+will transitively depend on GDK3 when using GTK3 and bring in the compiler and linker
+options automatically without needing to use a separate find module for GDK.
+* Source/cmake/OptionsGTK.cmake: Use the GTK::GTK imported target, change variables
+prefixed with GTK3_ to use the GTK_ prefix, and remove variables which are not needed
+anymore when using the target (GTK_LIBRARIES, GTK_INCLUDE_DIRS, GDK_LIBRARIES and
+GDK_INCLUDE_DIRS).
+
 2020-04-06  Don Olmstead  
 
 [CMake] Use WEBKIT_EXECUTABLE in DumpRenderTree


Modified: trunk/Source/WebCore/ChangeLog (259640 => 259641)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 16:09:43 UTC (rev 259640)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 16:25:17 UTC (rev 259641)
@@ -1,3 +1,14 @@
+2020-04-07  Adrian Perez de Castro  
+
+[GTK] CMake find module for GTK4
+https://bugs.webkit.org/show_bug.cgi?id=210110
+
+Reviewed by Don Olmstead.
+
+No new tests needed.
+
+* PlatformGTK.cmake: Use the GTK::GTK imported target.
+
 2020-04-07  Andres Gonzalez  
 
 Initialization of modal nodes should happen lazily, not in the AXObjectCache constructor.


Modified: trunk/Source/WebCore/PAL/ChangeLog (259640 => 259641)

--- trunk/Source/WebCore/PAL/ChangeLog	2020-04-07 16:09:43 UTC (rev 259640)
+++ trunk/Source/WebCore/PAL/ChangeLog	2020-04-07 16:25:17 UTC (rev 259641)
@@ -1,3 +1,12 @@
+2020-04-07  Adrian Perez de Castro  
+
+[GTK] CMake find module for GTK4
+https://bugs.webkit.org/show_bug.cgi?id=210110
+
+Reviewed by Don Olmstead.
+
+* pal/PlatformGTK.cmake: Use the GTK::GTK imported target.
+
 2020-04-05  Peng Liu  
 
 The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP


Modified: trunk/Source/WebCore/PAL/pal/PlatformGTK.cmake (259640 => 259641)

--- trunk/Source/WebCore/PAL/pal/PlatformGTK.cmake	2020-04-07 16:09:43 UTC (rev 259640)
+++ trunk/Source/WebCore/PAL/pal/PlatformGTK.cmake	2020-04-07 16:25:17 UTC (rev 259641)
@@ -30,6

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

2020-04-07 Thread youenn
Title: [259640] trunk/Source/WebKit








Revision 259640
Author you...@apple.com
Date 2020-04-07 09:09:43 -0700 (Tue, 07 Apr 2020)


Log Message
REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html
https://bugs.webkit.org/show_bug.cgi?id=209977

Reviewed by Chris Dumez.

* UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::~AuxiliaryProcessProxy):
In case AuxiliaryProcessProxy has some enqueued messages but process crashes on launch for instance,
we should call the completion handlers and fail.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (259639 => 259640)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 16:09:21 UTC (rev 259639)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 16:09:43 UTC (rev 259640)
@@ -1,3 +1,15 @@
+2020-04-07  Youenn Fablet  
+
+REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html
+https://bugs.webkit.org/show_bug.cgi?id=209977
+
+Reviewed by Chris Dumez.
+
+* UIProcess/AuxiliaryProcessProxy.cpp:
+(WebKit::AuxiliaryProcessProxy::~AuxiliaryProcessProxy):
+In case AuxiliaryProcessProxy has some enqueued messages but process crashes on launch for instance,
+we should call the completion handlers and fail.
+
 2020-04-07  David Kilzer  
 
 VisitedLinkStore.messages.in and VisitedLinkStore::addVisitedLinkHashFromPage() don't agree on type of `linkHash`


Modified: trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp (259639 => 259640)

--- trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp	2020-04-07 16:09:21 UTC (rev 259639)
+++ trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp	2020-04-07 16:09:43 UTC (rev 259640)
@@ -48,6 +48,11 @@
 m_processLauncher->invalidate();
 m_processLauncher = nullptr;
 }
+auto pendingMessages = WTFMove(m_pendingMessages);
+for (auto& pendingMessage : pendingMessages) {
+if (pendingMessage.asyncReplyInfo)
+pendingMessage.asyncReplyInfo->first(nullptr);
+}
 }
 
 void AuxiliaryProcessProxy::getLaunchOptions(ProcessLauncher::LaunchOptions& launchOptions)






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


[webkit-changes] [259639] trunk/LayoutTests

2020-04-07 Thread dpino
Title: [259639] trunk/LayoutTests








Revision 259639
Author dp...@igalia.com
Date 2020-04-07 09:09:21 -0700 (Tue, 07 Apr 2020)


Log Message
[GTK] Gardening, IndexedDB flaky failures
https://bugs.webkit.org/show_bug.cgi?id=210116

Unreviewed gardening.

* platform/gtk/TestExpectations:

Modified Paths

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




Diff

Modified: trunk/LayoutTests/ChangeLog (259638 => 259639)

--- trunk/LayoutTests/ChangeLog	2020-04-07 16:04:57 UTC (rev 259638)
+++ trunk/LayoutTests/ChangeLog	2020-04-07 16:09:21 UTC (rev 259639)
@@ -1,3 +1,12 @@
+2020-04-07  Diego Pino Garcia  
+
+[GTK] Gardening, IndexedDB flaky failures
+https://bugs.webkit.org/show_bug.cgi?id=210116
+
+Unreviewed gardening.
+
+* platform/gtk/TestExpectations:
+
 2020-04-06  Jack Lee  
 
 Nullptr crash in CompositeEditCommand::splitTreeToNode when inserting image in anchor element that has uneditable parent


Modified: trunk/LayoutTests/platform/gtk/TestExpectations (259638 => 259639)

--- trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-07 16:04:57 UTC (rev 259638)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2020-04-07 16:09:21 UTC (rev 259639)
@@ -2712,14 +2712,25 @@
 
 webkit.org/b/208291 webanimations/accelerated-animation-renderer-change.html [ Pass Timeout ]
 
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/event-dispatch-active-flag.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/fire-error-event-exception.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/fire-success-event-exception.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/fire-upgradeneeded-event-exception.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idb-explicit-commit.any.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbindex-query-exception-order.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbindex-rename-errors.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbindex-request-source.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbobjectstore-add-put-exception-order.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbobjectstore-query-exception-order.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbobjectstore-rename-errors.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/idbobjectstore-request-source.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes-cursors.any.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes-cursors.any.serviceworker.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes-cursors.any.worker.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes.any.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes.any.serviceworker.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes.any.worker.html [ Failure Pass ]
+webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-store-cursors.any.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/keygenerator-explicit.html [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/keypath-special-identifiers.htm [ Failure Pass ]
 webkit.org/b/208292 imported/w3c/web-platform-tests/IndexedDB/transaction-relaxed-durability.tentative.any.worker.html [ Failure Pass ]






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


[webkit-changes] [259638] trunk

2020-04-07 Thread ysuzuki
Title: [259638] trunk








Revision 259638
Author ysuz...@apple.com
Date 2020-04-07 09:04:57 -0700 (Tue, 07 Apr 2020)


Log Message
[JSC] Inlined IC should get right JSGlobalObject
https://bugs.webkit.org/show_bug.cgi?id=210092

Reviewed by Tadeu Zagallo.

JSTests:

* stress/getter-setter-globalobject-in-ic.js: Added.
(shouldBe):
(valueFunc):
(accessorFunc):
(valueTest):
(accessorTest):

Source/_javascript_Core:

In DFG / FTL, CodeBlock in AccessCase is the DFG / FTL CodeBlock which includes all the inlined CodeBlocks.
If inlining happens with CodeBlock which has different JSGlobalObject, CodeBlock->globalObject() is different
to the actual lexical JSGlobalObject of the IC. So basically, we should not rely on codeBlock->globalObject() in IC.

This patch passes the correct lexical JSGlobalObject to IC to use. We do not retain this JSGlobalObject.
Since this is lexical JSGlobalObject of that IC, the owner CodeBlock of this IC should already retain it (even if this
JSGlobalObject is one of inlined CodeBlock since the owner CodeBlock retains inlined lower-tier CodeBlocks).

* bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl):
* bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
* bytecode/PolymorphicAccess.h:
* bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::addAccessCase):
* bytecode/StructureStubInfo.h:
* jit/Repatch.cpp:
(JSC::tryCacheGetBy):
(JSC::tryCacheArrayGetByVal):
(JSC::tryCachePutByID):
(JSC::tryCacheDeleteBy):
(JSC::tryCacheInByID):
(JSC::tryCacheInstanceOf):
* tools/JSDollarVM.cpp:

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecode/AccessCase.cpp
trunk/Source/_javascript_Core/bytecode/PolymorphicAccess.cpp
trunk/Source/_javascript_Core/bytecode/PolymorphicAccess.h
trunk/Source/_javascript_Core/bytecode/StructureStubInfo.cpp
trunk/Source/_javascript_Core/bytecode/StructureStubInfo.h
trunk/Source/_javascript_Core/jit/Repatch.cpp
trunk/Source/_javascript_Core/tools/JSDollarVM.cpp


Added Paths

trunk/JSTests/stress/getter-setter-globalobject-in-ic.js




Diff

Modified: trunk/JSTests/ChangeLog (259637 => 259638)

--- trunk/JSTests/ChangeLog	2020-04-07 16:00:52 UTC (rev 259637)
+++ trunk/JSTests/ChangeLog	2020-04-07 16:04:57 UTC (rev 259638)
@@ -1,5 +1,19 @@
 2020-04-07  Yusuke Suzuki  
 
+[JSC] Inlined IC should get right JSGlobalObject
+https://bugs.webkit.org/show_bug.cgi?id=210092
+
+Reviewed by Tadeu Zagallo.
+
+* stress/getter-setter-globalobject-in-ic.js: Added.
+(shouldBe):
+(valueFunc):
+(accessorFunc):
+(valueTest):
+(accessorTest):
+
+2020-04-07  Yusuke Suzuki  
+
 [JSC] $.evalScript should check exception when accessing "global"
 https://bugs.webkit.org/show_bug.cgi?id=210114
 


Added: trunk/JSTests/stress/getter-setter-globalobject-in-ic.js (0 => 259638)

--- trunk/JSTests/stress/getter-setter-globalobject-in-ic.js	(rev 0)
+++ trunk/JSTests/stress/getter-setter-globalobject-in-ic.js	2020-04-07 16:04:57 UTC (rev 259638)
@@ -0,0 +1,39 @@
+var custom = $vm.createCustomTestGetterSetter();
+function shouldBe(actual, expected) {
+if (actual !== expected)
+throw new Error('bad value: ' + actual);
+}
+
+var valueFunc = runString(`
+var custom = $vm.createCustomTestGetterSetter();
+function valueFunc() {
+return custom.customValueGlobalObject;
+}`).valueFunc;
+
+var accessorFunc = runString(`
+var custom = $vm.createCustomTestGetterSetter();
+function accessorFunc() {
+return custom.customAccessorGlobalObject;
+}`).accessorFunc;
+
+shouldBe(this.custom !== valueFunc().custom, true);
+shouldBe(this.custom !== accessorFunc().custom, true);
+shouldBe(this.custom, custom.customValueGlobalObject.custom);
+shouldBe(this.custom, custom.customAccessorGlobalObject.custom);
+
+function valueTest()
+{
+return valueFunc();
+}
+noInline(valueTest);
+
+function accessorTest()
+{
+return accessorFunc();
+}
+noInline(accessorTest);
+
+for (var i = 0; i < 1e3; ++i)
+shouldBe(this.custom !== valueTest().custom, true);
+for (var i = 0; i < 1e3; ++i)
+shouldBe(this.custom !== accessorTest().custom, true);


Modified: trunk/Source/_javascript_Core/ChangeLog (259637 => 259638)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 16:00:52 UTC (rev 259637)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 16:04:57 UTC (rev 259638)
@@ -1,5 +1,37 @@
 2020-04-07  Yusuke Suzuki  
 
+[JSC] Inlined IC should get right JSGlobalObject
+https://bugs.webkit.org/show_bug.cgi?id=210092
+
+Reviewed by Tadeu Zagallo.
+
+In DFG / FTL, CodeBlock in AccessCase is the DFG / FTL CodeBlock which includes all the inlined CodeBlocks.
+If inlining happens with CodeBlock which has different JSGlobalObject, CodeBlock->globalObject() is different
+to the actual lexical JSGlobalObject of the IC. So basically, we should not rely on c

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

2020-04-07 Thread ddkilzer
Title: [259637] trunk/Source/WebKit








Revision 259637
Author ddkil...@apple.com
Date 2020-04-07 09:00:52 -0700 (Tue, 07 Apr 2020)


Log Message
VisitedLinkStore.messages.in and VisitedLinkStore::addVisitedLinkHashFromPage() don't agree on type of `linkHash`



Reviewed by Chris Dumez.

* Scripts/webkit/messages.py:
(types_that_cannot_be_forward_declared):
- Don't forward-declare WebCore::SharedStringHash as a class
  since it is a uint32_t.
* UIProcess/VisitedLinkStore.messages.in:
- Use WebCore::SharedStringHash type for `linkHash` to fix the
  type mismatch.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Scripts/webkit/messages.py
trunk/Source/WebKit/UIProcess/VisitedLinkStore.messages.in




Diff

Modified: trunk/Source/WebKit/ChangeLog (259636 => 259637)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 15:48:08 UTC (rev 259636)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 16:00:52 UTC (rev 259637)
@@ -1,3 +1,19 @@
+2020-04-07  David Kilzer  
+
+VisitedLinkStore.messages.in and VisitedLinkStore::addVisitedLinkHashFromPage() don't agree on type of `linkHash`
+
+
+
+Reviewed by Chris Dumez.
+
+* Scripts/webkit/messages.py:
+(types_that_cannot_be_forward_declared):
+- Don't forward-declare WebCore::SharedStringHash as a class
+  since it is a uint32_t.
+* UIProcess/VisitedLinkStore.messages.in:
+- Use WebCore::SharedStringHash type for `linkHash` to fix the
+  type mismatch.
+
 2020-04-07  Chris Dumez  
 
 Unreviewed, drop bad assertion introduced in r259610.


Modified: trunk/Source/WebKit/Scripts/webkit/messages.py (259636 => 259637)

--- trunk/Source/WebKit/Scripts/webkit/messages.py	2020-04-07 15:48:08 UTC (rev 259636)
+++ trunk/Source/WebKit/Scripts/webkit/messages.py	2020-04-07 16:00:52 UTC (rev 259637)
@@ -222,6 +222,7 @@
 'WebCore::ServiceWorkerOrClientData',
 'WebCore::ServiceWorkerOrClientIdentifier',
 'WebCore::ServiceWorkerRegistrationIdentifier',
+'WebCore::SharedStringHash',
 'WebCore::SleepDisablerIdentifier',
 'WebCore::SWServerConnectionIdentifier',
 'WebKit::ActivityStateChangeID',


Modified: trunk/Source/WebKit/UIProcess/VisitedLinkStore.messages.in (259636 => 259637)

--- trunk/Source/WebKit/UIProcess/VisitedLinkStore.messages.in	2020-04-07 15:48:08 UTC (rev 259636)
+++ trunk/Source/WebKit/UIProcess/VisitedLinkStore.messages.in	2020-04-07 16:00:52 UTC (rev 259637)
@@ -21,5 +21,5 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 messages -> VisitedLinkStore {
-AddVisitedLinkHashFromPage(WebKit::WebPageProxyIdentifier pageProxyID, uint64_t linkHash)
+AddVisitedLinkHashFromPage(WebKit::WebPageProxyIdentifier pageProxyID, WebCore::SharedStringHash linkHash)
 }






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


[webkit-changes] [259636] trunk

2020-04-07 Thread ysuzuki
Title: [259636] trunk








Revision 259636
Author ysuz...@apple.com
Date 2020-04-07 08:48:08 -0700 (Tue, 07 Apr 2020)


Log Message
[JSC] $.evalScript should check exception when accessing "global"
https://bugs.webkit.org/show_bug.cgi?id=210114


Reviewed by Keith Miller.

JSTests:

* stress/eval-script-global-access-exception-check.js: Added.
(shouldThrow):

Source/_javascript_Core:

$.evalScript should check exception after "global" property access since it can throw an error if it is an accessor.

* jsc.cpp:
(functionDollarEvalScript):

Modified Paths

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


Added Paths

trunk/JSTests/stress/eval-script-global-access-exception-check.js




Diff

Modified: trunk/JSTests/ChangeLog (259635 => 259636)

--- trunk/JSTests/ChangeLog	2020-04-07 15:23:33 UTC (rev 259635)
+++ trunk/JSTests/ChangeLog	2020-04-07 15:48:08 UTC (rev 259636)
@@ -1,3 +1,14 @@
+2020-04-07  Yusuke Suzuki  
+
+[JSC] $.evalScript should check exception when accessing "global"
+https://bugs.webkit.org/show_bug.cgi?id=210114
+
+
+Reviewed by Keith Miller.
+
+* stress/eval-script-global-access-exception-check.js: Added.
+(shouldThrow):
+
 2020-04-06  Rick Waldron   and Alexey Shvayka  
 
 Remove unnecessary Test262 harness file and implement $262.IsHTMLDDA


Added: trunk/JSTests/stress/eval-script-global-access-exception-check.js (0 => 259636)

--- trunk/JSTests/stress/eval-script-global-access-exception-check.js	(rev 0)
+++ trunk/JSTests/stress/eval-script-global-access-exception-check.js	2020-04-07 15:48:08 UTC (rev 259636)
@@ -0,0 +1,20 @@
+function shouldThrow(func, errorMessage) {
+var errorThrown = false;
+var error = null;
+try {
+func();
+} catch (e) {
+errorThrown = true;
+error = e;
+}
+if (!errorThrown)
+throw new Error('not thrown');
+if (String(error) !== errorMessage)
+throw new Error(`bad error: ${String(error)}`);
+}
+
+const o = {};
+o.__proto__ = RegExp();
+shouldThrow(() => {
+$.evalScript.call(o);
+}, `TypeError: The RegExp.prototype.global getter can only be called on a RegExp object`);


Modified: trunk/Source/_javascript_Core/ChangeLog (259635 => 259636)

--- trunk/Source/_javascript_Core/ChangeLog	2020-04-07 15:23:33 UTC (rev 259635)
+++ trunk/Source/_javascript_Core/ChangeLog	2020-04-07 15:48:08 UTC (rev 259636)
@@ -1,3 +1,16 @@
+2020-04-07  Yusuke Suzuki  
+
+[JSC] $.evalScript should check exception when accessing "global"
+https://bugs.webkit.org/show_bug.cgi?id=210114
+
+
+Reviewed by Keith Miller.
+
+$.evalScript should check exception after "global" property access since it can throw an error if it is an accessor.
+
+* jsc.cpp:
+(functionDollarEvalScript):
+
 2020-04-06  Devin Rousso  
 
 Web Inspector: `console.log(...)` appear as `CONSOLE LOG LOG` in the system console


Modified: trunk/Source/_javascript_Core/jsc.cpp (259635 => 259636)

--- trunk/Source/_javascript_Core/jsc.cpp	2020-04-07 15:23:33 UTC (rev 259635)
+++ trunk/Source/_javascript_Core/jsc.cpp	2020-04-07 15:48:08 UTC (rev 259636)
@@ -1859,9 +1859,10 @@
 String sourceCode = callFrame->argument(0).toWTFString(globalObject);
 RETURN_IF_EXCEPTION(scope, encodedJSValue());
 
-GlobalObject* realm = jsDynamicCast(vm,
-callFrame->thisValue().get(globalObject, Identifier::fromString(vm, "global")));
+JSValue global = callFrame->thisValue().get(globalObject, Identifier::fromString(vm, "global"));
 RETURN_IF_EXCEPTION(scope, encodedJSValue());
+GlobalObject* realm = jsDynamicCast(vm, global);
+RETURN_IF_EXCEPTION(scope, encodedJSValue());
 if (!realm)
 return JSValue::encode(throwException(globalObject, scope, createError(globalObject, "Expected global to point to a global object"_s)));
 






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


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

2020-04-07 Thread cdumez
Title: [259635] trunk/Source/WebKit








Revision 259635
Author cdu...@apple.com
Date 2020-04-07 08:23:33 -0700 (Tue, 07 Apr 2020)


Log Message
Unreviewed, drop bad assertion introduced in r259610.

On some bots (in particular OpenSource iOS ones), we are unable to take the assertion
so this assertion does not hold true.

* UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::ProcessAssertion::ProcessAssertion):

Modified Paths

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




Diff

Modified: trunk/Source/WebKit/ChangeLog (259634 => 259635)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 14:16:53 UTC (rev 259634)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 15:23:33 UTC (rev 259635)
@@ -1,3 +1,13 @@
+2020-04-07  Chris Dumez  
+
+Unreviewed, drop bad assertion introduced in r259610.
+
+On some bots (in particular OpenSource iOS ones), we are unable to take the assertion
+so this assertion does not hold true.
+
+* UIProcess/ios/ProcessAssertionIOS.mm:
+(WebKit::ProcessAssertion::ProcessAssertion):
+
 2020-04-07  Rob Buis  
 
 Use GlobalFrameIdentifier in NavigationAction


Modified: trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm (259634 => 259635)

--- trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm	2020-04-07 14:16:53 UTC (rev 259634)
+++ trunk/Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm	2020-04-07 15:23:33 UTC (rev 259635)
@@ -393,7 +393,6 @@
 });
 };
 }
-ASSERT(m_rbsAssertion || m_bksAssertion);
 }
 
 ProcessAssertion::~ProcessAssertion()






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


[webkit-changes] [259634] trunk/Tools

2020-04-07 Thread youenn
Title: [259634] trunk/Tools








Revision 259634
Author you...@apple.com
Date 2020-04-07 07:16:53 -0700 (Tue, 07 Apr 2020)


Log Message
Reset mock capture devices between layout tests
https://bugs.webkit.org/show_bug.cgi?id=210098

Reviewed by Eric Carlson.

This fixes fast/mediastream/anonymize-device-name.html
failure since https://trac.webkit.org/changeset/259477/webkit.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/WebKitTestRunner/TestController.cpp




Diff

Modified: trunk/Tools/ChangeLog (259633 => 259634)

--- trunk/Tools/ChangeLog	2020-04-07 11:52:25 UTC (rev 259633)
+++ trunk/Tools/ChangeLog	2020-04-07 14:16:53 UTC (rev 259634)
@@ -1,3 +1,16 @@
+2020-04-07  Youenn Fablet  
+
+Reset mock capture devices between layout tests
+https://bugs.webkit.org/show_bug.cgi?id=210098
+
+Reviewed by Eric Carlson.
+
+This fixes fast/mediastream/anonymize-device-name.html
+failure since https://trac.webkit.org/changeset/259477/webkit.
+
+* WebKitTestRunner/TestController.cpp:
+(WTR::TestController::resetStateToConsistentValues):
+
 2020-04-06  Peng Liu  
 
 REGRESSION (r259531?): [iOS] TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia is timing out


Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (259633 => 259634)

--- trunk/Tools/WebKitTestRunner/TestController.cpp	2020-04-07 11:52:25 UTC (rev 259633)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp	2020-04-07 14:16:53 UTC (rev 259634)
@@ -1042,6 +1042,7 @@
 WKContextSetUseSeparateServiceWorkerProcess(TestController::singleton().context(), false);
 
 WKPageSetMockCameraOrientation(m_mainWebView->page(), 0);
+resetMockMediaDevices();
 
 // FIXME: This function should also ensure that there is only one page open.
 






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


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

2020-04-07 Thread andresg_22
Title: [259633] trunk/Source/WebCore








Revision 259633
Author andresg...@apple.com
Date 2020-04-07 04:52:25 -0700 (Tue, 07 Apr 2020)


Log Message
Initialization of modal nodes should happen lazily, not in the AXObjectCache constructor.
https://bugs.webkit.org/show_bug.cgi?id=210090

Reviewed by Chris Fleizach.

- The initialization of modal nodes was performed in the AXObjectCache
constructor, which is not necessary. Instead, this change performs the
initialization of the modal nodes before they are needed.
- updateCurrentModalNode was replaced with currentModalNode, and its
implementation cleaned up.
- Now the initialization and update of AXObjectCached::m_modalNodesSet
and m_currentMOdalNode is clearer.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::AXObjectCache):
(WebCore::AXObjectCache::findModalNodes):
(WebCore::AXObjectCache::currentModalNode const):
(WebCore::AXObjectCache::modalNode):
(WebCore::AXObjectCache::handleModalChange):
(WebCore::AXObjectCache::updateCurrentModalNode): Renamed currentModalNode.
* accessibility/AXObjectCache.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AXObjectCache.cpp
trunk/Source/WebCore/accessibility/AXObjectCache.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (259632 => 259633)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 11:14:01 UTC (rev 259632)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 11:52:25 UTC (rev 259633)
@@ -1,3 +1,27 @@
+2020-04-07  Andres Gonzalez  
+
+Initialization of modal nodes should happen lazily, not in the AXObjectCache constructor.
+https://bugs.webkit.org/show_bug.cgi?id=210090
+
+Reviewed by Chris Fleizach.
+
+- The initialization of modal nodes was performed in the AXObjectCache
+constructor, which is not necessary. Instead, this change performs the
+initialization of the modal nodes before they are needed.
+- updateCurrentModalNode was replaced with currentModalNode, and its
+implementation cleaned up.
+- Now the initialization and update of AXObjectCached::m_modalNodesSet
+and m_currentMOdalNode is clearer.
+
+* accessibility/AXObjectCache.cpp:
+(WebCore::AXObjectCache::AXObjectCache):
+(WebCore::AXObjectCache::findModalNodes):
+(WebCore::AXObjectCache::currentModalNode const):
+(WebCore::AXObjectCache::modalNode):
+(WebCore::AXObjectCache::handleModalChange):
+(WebCore::AXObjectCache::updateCurrentModalNode): Renamed currentModalNode.
+* accessibility/AXObjectCache.h:
+
 2020-04-07  Youenn Fablet  
 
 Remove unnecessary memory allocation from RealtimeIncomingAudioSourceCocoa::OnData


Modified: trunk/Source/WebCore/accessibility/AXObjectCache.cpp (259632 => 259633)

--- trunk/Source/WebCore/accessibility/AXObjectCache.cpp	2020-04-07 11:14:01 UTC (rev 259632)
+++ trunk/Source/WebCore/accessibility/AXObjectCache.cpp	2020-04-07 11:52:25 UTC (rev 259633)
@@ -221,7 +221,6 @@
 , m_currentModalNode(nullptr)
 , m_performCacheUpdateTimer(*this, &AXObjectCache::performCacheUpdateTimerFired)
 {
-findModalNodes();
 }
 
 AXObjectCache::~AXObjectCache()
@@ -244,50 +243,45 @@
 {
 // Traverse the DOM tree to look for the aria-modal=true nodes.
 for (Element* element = ElementTraversal::firstWithin(document().rootNode()); element; element = ElementTraversal::nextIncludingPseudo(*element)) {
-
 // Must have dialog or alertdialog role
 if (!nodeHasRole(element, "dialog") && !nodeHasRole(element, "alertdialog"))
 continue;
 if (!equalLettersIgnoringASCIICase(element->attributeWithoutSynchronization(aria_modalAttr), "true"))
 continue;
-
+
 m_modalNodesSet.add(element);
 }
-
-// Set the current valid aria-modal node if possible.
-updateCurrentModalNode();
+
+m_modalNodesInitialized = true;
 }
 
-void AXObjectCache::updateCurrentModalNode()
+Node* AXObjectCache::currentModalNode()
 {
 // There might be multiple nodes with aria-modal=true set.
 // We use this function to pick the one we want.
 m_currentModalNode = nullptr;
 if (m_modalNodesSet.isEmpty())
-return;
-
-// We only care about the nodes which are visible.
-ListHashSet> visibleNodes;
-for (auto& object : m_modalNodesSet) {
-if (isNodeVisible(object))
-visibleNodes.add(object);
-}
-
-if (visibleNodes.isEmpty())
-return;
-
-// If any of the node are keyboard focused, we want to pick that.
-Node* focusedNode = document().focusedElement();
-for (auto& object : visibleNodes) {
-if (focusedNode != nullptr && focusedNode->isDescendantOf(object.get())) {
-m_currentModalNode = object.get();
-break;
+return nullptr;
+
+// If any of the modal nodes contains the keyboard focus, we want to pick that one.
+// If not, we want to pick the last vis

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

2020-04-07 Thread youenn
Title: [259632] trunk/Source/WebCore








Revision 259632
Author you...@apple.com
Date 2020-04-07 04:14:01 -0700 (Tue, 07 Apr 2020)


Log Message
Remove unnecessary memory allocation from RealtimeIncomingAudioSourceCocoa::OnData
https://bugs.webkit.org/show_bug.cgi?id=209969

Reviewed by Eric Carlson.

Instead of allocating a new buffer for every audio chunk and copy the audio chunk,
Create a WebAudioBufferList once (without any buffer allocation) and set the audio buffer pointer
given by libwebrtc as the WebAudioBufferList buffer pointer.
We do not take care of muted state anymore since this is done by consumers anyway.
Covered by existing tests.

* platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp:
(WebCore::RealtimeIncomingAudioSourceCocoa::OnData):
* platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp
trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (259631 => 259632)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 09:47:36 UTC (rev 259631)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 11:14:01 UTC (rev 259632)
@@ -1,3 +1,20 @@
+2020-04-07  Youenn Fablet  
+
+Remove unnecessary memory allocation from RealtimeIncomingAudioSourceCocoa::OnData
+https://bugs.webkit.org/show_bug.cgi?id=209969
+
+Reviewed by Eric Carlson.
+
+Instead of allocating a new buffer for every audio chunk and copy the audio chunk,
+Create a WebAudioBufferList once (without any buffer allocation) and set the audio buffer pointer
+given by libwebrtc as the WebAudioBufferList buffer pointer.
+We do not take care of muted state anymore since this is done by consumers anyway.
+Covered by existing tests.
+
+* platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp:
+(WebCore::RealtimeIncomingAudioSourceCocoa::OnData):
+* platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h:
+
 2020-04-07  Claudio Saavedra  
 
 [GTK] gtk_icon_info_free is deprecated since GTK+ 3.8


Modified: trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp (259631 => 259632)

--- trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp	2020-04-07 09:47:36 UTC (rev 259631)
+++ trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp	2020-04-07 11:14:01 UTC (rev 259632)
@@ -34,8 +34,6 @@
 #include "CAAudioStreamDescription.h"
 #include "LibWebRTCAudioFormat.h"
 #include "Logging.h"
-#include "WebAudioBufferList.h"
-#include "WebAudioSourceProviderAVFObjC.h"
 #include 
 
 #include 
@@ -69,28 +67,35 @@
 
 void RealtimeIncomingAudioSourceCocoa::OnData(const void* audioData, int bitsPerSample, int sampleRate, size_t numberOfChannels, size_t numberOfFrames)
 {
+#if !RELEASE_LOG_DISABLED
+if (!(++m_chunksReceived % 200)) {
+callOnMainThread([identifier = LOGIDENTIFIER, this, protectedThis = makeRef(*this), chunksReceived = m_chunksReceived] {
+ALWAYS_LOG_IF(loggerPtr(), identifier, "chunk ", chunksReceived);
+});
+}
+#endif
+
 CMTime startTime = CMTimeMake(m_numberOfFrames, sampleRate);
 auto mediaTime = PAL::toMediaTime(startTime);
 m_numberOfFrames += numberOfFrames;
 
-AudioStreamBasicDescription newDescription = streamDescription(sampleRate, numberOfChannels);
+if (!m_audioBufferList || m_sampleRate != sampleRate || m_numberOfChannels != numberOfChannels) {
+callOnMainThread([identifier = LOGIDENTIFIER, this, protectedThis = makeRef(*this), sampleRate, numberOfChannels] {
+ALWAYS_LOG_IF(loggerPtr(), identifier, "new audio buffer list for sampleRate ", sampleRate, " and ", numberOfChannels, " channel(s)");
+});
 
-// FIXME: We should not need to do the extra memory allocation and copy.
-// Instead, we should be able to directly pass audioData pointer.
-WebAudioBufferList audioBufferList { CAAudioStreamDescription(newDescription), WTF::safeCast(numberOfFrames) };
-audioBufferList.buffer(0)->mDataByteSize = numberOfChannels * numberOfFrames * bitsPerSample / 8;
-audioBufferList.buffer(0)->mNumberChannels = numberOfChannels;
+m_sampleRate = sampleRate;
+m_numberOfChannels = numberOfChannels;
+m_streamDescription = streamDescription(sampleRate, numberOfChannels);
+m_audioBufferList = makeUnique(m_streamDescription);
+}
 
-if (muted())
-memset(audioBufferList.buffer(0)->mData, 0, audioBufferList.buffer(0)->mDataByteSize);
-else
-memcpy(audioBufferList.buffer(0)->mData, audioData, audioBufferList.buffer(0)->mDataByteSize);
+auto& bufferList = *m_audioBufferList->buffer(0);
+bufferList.mDataByteSize = numberOfChannels * numberOfFrames * bitsPerSample / 8;
+bufferList.mNumberChannels = nu

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

2020-04-07 Thread csaavedra
Title: [259631] trunk/Source/WebCore








Revision 259631
Author csaave...@igalia.com
Date 2020-04-07 02:47:36 -0700 (Tue, 07 Apr 2020)


Log Message
[GTK] gtk_icon_info_free is deprecated since GTK+ 3.8
https://bugs.webkit.org/show_bug.cgi?id=118381

Reviewed by Carlos Garcia Campos.

GtkIconInfo is a GObject since 3.8, update accordingly.

* platform/graphics/gtk/ImageGtk.cpp:
(WebCore::loadMissingImageIconFromTheme):
* platform/gtk/GUniquePtrGtk.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/gtk/ImageGtk.cpp
trunk/Source/WebCore/platform/gtk/GUniquePtrGtk.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (259630 => 259631)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 08:25:59 UTC (rev 259630)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 09:47:36 UTC (rev 259631)
@@ -1,3 +1,16 @@
+2020-04-07  Claudio Saavedra  
+
+[GTK] gtk_icon_info_free is deprecated since GTK+ 3.8
+https://bugs.webkit.org/show_bug.cgi?id=118381
+
+Reviewed by Carlos Garcia Campos.
+
+GtkIconInfo is a GObject since 3.8, update accordingly.
+
+* platform/graphics/gtk/ImageGtk.cpp:
+(WebCore::loadMissingImageIconFromTheme):
+* platform/gtk/GUniquePtrGtk.h:
+
 2020-04-07  Doug Kelly  
 
 Add release asserts to KeyframeEffectStack::ensureEffectsAreSorted()


Modified: trunk/Source/WebCore/platform/graphics/gtk/ImageGtk.cpp (259630 => 259631)

--- trunk/Source/WebCore/platform/graphics/gtk/ImageGtk.cpp	2020-04-07 08:25:59 UTC (rev 259630)
+++ trunk/Source/WebCore/platform/graphics/gtk/ImageGtk.cpp	2020-04-07 09:47:36 UTC (rev 259631)
@@ -64,7 +64,7 @@
 {
 int iconSize = g_str_has_suffix(name, "@2x") ? 32 : 16;
 auto icon = BitmapImage::create();
-GUniquePtr iconInfo(gtk_icon_theme_lookup_icon(gtk_icon_theme_get_default(), "image-missing", iconSize, GTK_ICON_LOOKUP_NO_SVG));
+GRefPtr iconInfo = adoptGRef(gtk_icon_theme_lookup_icon(gtk_icon_theme_get_default(), "image-missing", iconSize, GTK_ICON_LOOKUP_NO_SVG));
 if (iconInfo) {
 auto buffer = loadResourceSharedBuffer(gtk_icon_info_get_filename(iconInfo.get()));
 icon->setData(WTFMove(buffer), true);


Modified: trunk/Source/WebCore/platform/gtk/GUniquePtrGtk.h (259630 => 259631)

--- trunk/Source/WebCore/platform/gtk/GUniquePtrGtk.h	2020-04-07 08:25:59 UTC (rev 259630)
+++ trunk/Source/WebCore/platform/gtk/GUniquePtrGtk.h	2020-04-07 09:47:36 UTC (rev 259631)
@@ -26,7 +26,6 @@
 namespace WTF {
 
 WTF_DEFINE_GPTR_DELETER(GdkEvent, gdk_event_free)
-WTF_DEFINE_GPTR_DELETER(GtkIconInfo, gtk_icon_info_free)
 WTF_DEFINE_GPTR_DELETER(GtkTreePath, gtk_tree_path_free)
 
 } // namespace WTF






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


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

2020-04-07 Thread dougk
Title: [259630] trunk/Source/WebCore








Revision 259630
Author do...@apple.com
Date 2020-04-07 01:25:59 -0700 (Tue, 07 Apr 2020)


Log Message
Add release asserts to KeyframeEffectStack::ensureEffectsAreSorted()
https://bugs.webkit.org/show_bug.cgi?id=210084


Reviewed by Ryosuke Niwa.

To ensure any potential problems in KeyframeEffectStack::ensureEffectsAreSorted() are found closer to the
root cause, add several RELEASE_ASSERTs throughout this function (and its associated comparison function).
This should guard against null pointers/null WeakPtrs, as well as other state problems which would be
unexpected for the comparison function used by std::sort.

No new tests; this only adds additional asserts, so there is no change to functionality, and this code is
covered by existing tests.

* animation/KeyframeEffectStack.cpp:
(WebCore::KeyframeEffectStack::ensureEffectsAreSorted):
* animation/WebAnimationUtilities.cpp:
(WebCore::compareAnimationsByCompositeOrder):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/animation/KeyframeEffectStack.cpp
trunk/Source/WebCore/animation/WebAnimationUtilities.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259629 => 259630)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 07:55:57 UTC (rev 259629)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 08:25:59 UTC (rev 259630)
@@ -1,3 +1,24 @@
+2020-04-07  Doug Kelly  
+
+Add release asserts to KeyframeEffectStack::ensureEffectsAreSorted()
+https://bugs.webkit.org/show_bug.cgi?id=210084
+
+
+Reviewed by Ryosuke Niwa.
+
+To ensure any potential problems in KeyframeEffectStack::ensureEffectsAreSorted() are found closer to the
+root cause, add several RELEASE_ASSERTs throughout this function (and its associated comparison function).
+This should guard against null pointers/null WeakPtrs, as well as other state problems which would be
+unexpected for the comparison function used by std::sort.
+
+No new tests; this only adds additional asserts, so there is no change to functionality, and this code is
+covered by existing tests.
+
+* animation/KeyframeEffectStack.cpp:
+(WebCore::KeyframeEffectStack::ensureEffectsAreSorted):
+* animation/WebAnimationUtilities.cpp:
+(WebCore::compareAnimationsByCompositeOrder):
+
 2020-04-07  Rob Buis  
 
 Use GlobalFrameIdentifier in NavigationAction


Modified: trunk/Source/WebCore/animation/KeyframeEffectStack.cpp (259629 => 259630)

--- trunk/Source/WebCore/animation/KeyframeEffectStack.cpp	2020-04-07 07:55:57 UTC (rev 259629)
+++ trunk/Source/WebCore/animation/KeyframeEffectStack.cpp	2020-04-07 08:25:59 UTC (rev 259630)
@@ -80,11 +80,14 @@
 return;
 
 std::sort(m_effects.begin(), m_effects.end(), [&](auto& lhs, auto& rhs) {
+RELEASE_ASSERT(lhs.get());
+RELEASE_ASSERT(rhs.get());
+
 auto* lhsAnimation = lhs->animation();
 auto* rhsAnimation = rhs->animation();
 
-ASSERT(lhsAnimation);
-ASSERT(rhsAnimation);
+RELEASE_ASSERT(lhsAnimation);
+RELEASE_ASSERT(rhsAnimation);
 
 return compareAnimationsByCompositeOrder(*lhsAnimation, *rhsAnimation, m_cssAnimationList.get());
 });


Modified: trunk/Source/WebCore/animation/WebAnimationUtilities.cpp (259629 => 259630)

--- trunk/Source/WebCore/animation/WebAnimationUtilities.cpp	2020-04-07 07:55:57 UTC (rev 259629)
+++ trunk/Source/WebCore/animation/WebAnimationUtilities.cpp	2020-04-07 08:25:59 UTC (rev 259630)
@@ -84,11 +84,12 @@
 }
 
 // We should have found either of those CSS animations in the CSS animations list.
-ASSERT_NOT_REACHED();
+RELEASE_ASSERT_NOT_REACHED();
 }
 
 // JS-originated animations sort last based on their position in the global animation list.
 // https://drafts.csswg.org/web-animations-1/#animation-composite-order
+RELEASE_ASSERT(lhsAnimation.globalPosition() != rhsAnimation.globalPosition() || &lhsAnimation == &rhsAnimation);
 return lhsAnimation.globalPosition() < rhsAnimation.globalPosition();
 }
 






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


[webkit-changes] [259629] trunk/Source

2020-04-07 Thread commit-queue
Title: [259629] trunk/Source








Revision 259629
Author commit-qu...@webkit.org
Date 2020-04-07 00:55:57 -0700 (Tue, 07 Apr 2020)


Log Message
Use GlobalFrameIdentifier in NavigationAction
https://bugs.webkit.org/show_bug.cgi?id=210036

Patch by Rob Buis  on 2020-04-07
Reviewed by Darin Adler.

Source/WebCore:

Use GlobalFrameIdentifier in NavigationAction rather than adding
yet another custom data type.

* loader/NavigationAction.cpp:
(WebCore::createGlobalFrameIdentifier):
(WebCore::m_globalFrameIdentifier):
* loader/NavigationAction.h:
(WebCore::NavigationAction::Requester::globalFrameIdentifier const):
(WebCore::NavigationAction::Requester::pageID const): Deleted.
(WebCore::NavigationAction::Requester::frameID const): Deleted.

Source/WebKit:

Adapt to API change.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/NavigationAction.cpp
trunk/Source/WebCore/loader/NavigationAction.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (259628 => 259629)

--- trunk/Source/WebCore/ChangeLog	2020-04-07 07:17:30 UTC (rev 259628)
+++ trunk/Source/WebCore/ChangeLog	2020-04-07 07:55:57 UTC (rev 259629)
@@ -1,3 +1,21 @@
+2020-04-07  Rob Buis  
+
+Use GlobalFrameIdentifier in NavigationAction
+https://bugs.webkit.org/show_bug.cgi?id=210036
+
+Reviewed by Darin Adler.
+
+Use GlobalFrameIdentifier in NavigationAction rather than adding
+yet another custom data type.
+
+* loader/NavigationAction.cpp:
+(WebCore::createGlobalFrameIdentifier):
+(WebCore::m_globalFrameIdentifier):
+* loader/NavigationAction.h:
+(WebCore::NavigationAction::Requester::globalFrameIdentifier const):
+(WebCore::NavigationAction::Requester::pageID const): Deleted.
+(WebCore::NavigationAction::Requester::frameID const): Deleted.
+
 2020-04-06  Jack Lee  
 
 Nullptr crash in CompositeEditCommand::splitTreeToNode when inserting image in anchor element that has uneditable parent


Modified: trunk/Source/WebCore/loader/NavigationAction.cpp (259628 => 259629)

--- trunk/Source/WebCore/loader/NavigationAction.cpp	2020-04-07 07:17:30 UTC (rev 259628)
+++ trunk/Source/WebCore/loader/NavigationAction.cpp	2020-04-07 07:55:57 UTC (rev 259629)
@@ -38,10 +38,17 @@
 
 namespace WebCore {
 
+static GlobalFrameIdentifier createGlobalFrameIdentifier(const Document& document)
+{
+if (document.frame())
+return { document.frame()->loader().client().pageID().valueOr(PageIdentifier { }), document.frame()->loader().client().frameID().valueOr(FrameIdentifier { }) };
+return GlobalFrameIdentifier();
+}
+
 NavigationAction::Requester::Requester(const Document& document)
 : m_url { URL { document.url() } }
 , m_origin { makeRefPtr(document.securityOrigin()) }
-, m_pageIDAndFrameIDPair { document.frame() ? std::make_pair(document.frame()->loader().client().pageID().valueOr(PageIdentifier { }), document.frame()->loader().client().frameID().valueOr(FrameIdentifier { })) : std::make_pair({ }, { }) }
+, m_globalFrameIdentifier(createGlobalFrameIdentifier(document))
 {
 }
 


Modified: trunk/Source/WebCore/loader/NavigationAction.h (259628 => 259629)

--- trunk/Source/WebCore/loader/NavigationAction.h	2020-04-07 07:17:30 UTC (rev 259628)
+++ trunk/Source/WebCore/loader/NavigationAction.h	2020-04-07 07:55:57 UTC (rev 259629)
@@ -30,10 +30,9 @@
 
 #include "AdClickAttribution.h"
 #include "BackForwardItemIdentifier.h"
-#include "FrameIdentifier.h"
 #include "FrameLoaderTypes.h"
+#include "GlobalFrameIdentifier.h"
 #include "LayoutPoint.h"
-#include "PageIdentifier.h"
 #include "ResourceRequest.h"
 #include "SecurityOrigin.h"
 #include "UserGestureIndicator.h"
@@ -65,7 +64,6 @@
 NavigationAction(NavigationAction&&);
 NavigationAction& operator=(NavigationAction&&);
 
-using PageIDAndFrameIDPair = std::pair; // FIXME: Use GlobalFrameIdentifier.
 class Requester {
 public:
 Requester(const Document&);
@@ -72,12 +70,11 @@
 
 const URL& url() const { return m_url; }
 const SecurityOrigin& securityOrigin() const { return *m_origin; }
-PageIdentifier pageID() const { return m_pageIDAndFrameIDPair.first; }
-FrameIdentifier frameID() const { return m_pageIDAndFrameIDPair.second; }
+const GlobalFrameIdentifier& globalFrameIdentifier() const { return m_globalFrameIdentifier; }
 private:
 URL m_url;
 RefPtr m_origin;
-PageIDAndFrameIDPair m_pageIDAndFrameIDPair;
+GlobalFrameIdentifier m_globalFrameIdentifier;
 };
 const Optional& requester() const { return m_requester; }
 


Modified: trunk/Source/WebKit/ChangeLog (259628 => 259629)

--- trunk/Source/WebKit/ChangeLog	2020-04-07 07:17:30 UTC (re

[webkit-changes] [259628] tags/Safari-610.1.8.3/

2020-04-07 Thread alancoon
Title: [259628] tags/Safari-610.1.8.3/








Revision 259628
Author alanc...@apple.com
Date 2020-04-07 00:17:30 -0700 (Tue, 07 Apr 2020)


Log Message
Tag Safari-610.1.8.3.

Added Paths

tags/Safari-610.1.8.3/




Diff




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


[webkit-changes] [259627] branches/safari-610.1.8-branch/Source

2020-04-07 Thread alancoon
Title: [259627] branches/safari-610.1.8-branch/Source








Revision 259627
Author alanc...@apple.com
Date 2020-04-07 00:01:16 -0700 (Tue, 07 Apr 2020)


Log Message
Versioning.

Modified Paths

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




Diff

Modified: branches/safari-610.1.8-branch/Source/_javascript_Core/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/WebCore/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/WebCore/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -1,7 +1,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
 


Modified: branches/safari-610.1.8-branch/Source/WebKit/Configurations/Version.xcconfig (259626 => 259627)

--- branches/safari-610.1.8-branch/Source/WebKit/Configurations/Version.xcconfig	2020-04-07 06:58:33 UTC (rev 259626)
+++ branches/safari-610.1.8-branch/Source/WebKit/Configurations/Version.xcconfig	2020-04-07 07:01:16 UTC (rev 259627)
@@ -24,7 +24,7 @@
 MAJOR_VERSION = 610;
 MINOR_VERSION = 1;
 TINY_VERSION = 8;
-MICRO_VERSION = 2;
+MICRO_VERSION = 3;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION