[webkit-changes] [289152] trunk
Title: [289152] trunk Revision 289152 Author ysuz...@apple.com Date 2022-02-04 23:26:52 -0800 (Fri, 04 Feb 2022) Log Message WeakRef deref can return null instead of undefined https://bugs.webkit.org/show_bug.cgi?id=235880 Reviewed by Sam Weinig and Alexey Shvayka. JSTests: * stress/v8-finalizationregistry-and-weakref.js: (setTimeout): Source/_javascript_Core: WeakRef#deref should return undefined[1] when a wrapped object is collected. [1]: https://tc39.es/ecma262/#sec-weakrefderef * runtime/WeakObjectRefPrototype.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): LayoutTests: * js/script-tests/weakref-async-is-collected.js: (async test): * js/script-tests/weakref-eventually-collects-values.js: (let.weakRefs.async test): * js/script-tests/weakref-finalizationregistry.js: (async test): * js/script-tests/weakref-microtasks-dont-collect.js: (async test): Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/stress/v8-finalizationregistry-and-weakref.js trunk/LayoutTests/ChangeLog trunk/LayoutTests/js/script-tests/weakref-async-is-collected.js trunk/LayoutTests/js/script-tests/weakref-eventually-collects-values.js trunk/LayoutTests/js/script-tests/weakref-finalizationregistry.js trunk/LayoutTests/js/script-tests/weakref-microtasks-dont-collect.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/WeakObjectRefPrototype.cpp Diff Modified: trunk/JSTests/ChangeLog (289151 => 289152) --- trunk/JSTests/ChangeLog 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/JSTests/ChangeLog 2022-02-05 07:26:52 UTC (rev 289152) @@ -1,3 +1,13 @@ +2022-02-04 Yusuke Suzuki + +WeakRef deref can return null instead of undefined +https://bugs.webkit.org/show_bug.cgi?id=235880 + +Reviewed by Sam Weinig and Alexey Shvayka. + +* stress/v8-finalizationregistry-and-weakref.js: +(setTimeout): + 2022-02-02 Alexey Shvayka Speed-up JSON.stringify() by avoiding "toJSON" property lookups Modified: trunk/JSTests/stress/v8-finalizationregistry-and-weakref.js (289151 => 289152) --- trunk/JSTests/stress/v8-finalizationregistry-and-weakref.js 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/JSTests/stress/v8-finalizationregistry-and-weakref.js 2022-02-05 07:26:52 UTC (rev 289152) @@ -40,6 +40,6 @@ // Check that cleanup callback was called in a follow up task setTimeout(() => { assertTrue(cleanup_called); -assertTrue(weak_refs.some((weak_ref) => weak_ref.deref() === null)); +assertTrue(weak_refs.some((weak_ref) => weak_ref.deref() === undefined)); }, 0); }, 0); Modified: trunk/LayoutTests/ChangeLog (289151 => 289152) --- trunk/LayoutTests/ChangeLog 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/LayoutTests/ChangeLog 2022-02-05 07:26:52 UTC (rev 289152) @@ -1,3 +1,19 @@ +2022-02-04 Yusuke Suzuki + +WeakRef deref can return null instead of undefined +https://bugs.webkit.org/show_bug.cgi?id=235880 + +Reviewed by Sam Weinig and Alexey Shvayka. + +* js/script-tests/weakref-async-is-collected.js: +(async test): +* js/script-tests/weakref-eventually-collects-values.js: +(let.weakRefs.async test): +* js/script-tests/weakref-finalizationregistry.js: +(async test): +* js/script-tests/weakref-microtasks-dont-collect.js: +(async test): + 2022-02-04 Myles C. Maxfield ch unit fallback size doesn't match the spec Modified: trunk/LayoutTests/js/script-tests/weakref-async-is-collected.js (289151 => 289152) --- trunk/LayoutTests/js/script-tests/weakref-async-is-collected.js 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/LayoutTests/js/script-tests/weakref-async-is-collected.js 2022-02-05 07:26:52 UTC (rev 289152) @@ -36,7 +36,7 @@ } gc(); -if (weakRefs.find((weak) => weak.deref() === null) === undefined) +if (weakRefs.find((weak) => weak.deref() === undefined) === undefined) throw new Error("No weak ref value was collected"); asyncTestPassed(); } Modified: trunk/LayoutTests/js/script-tests/weakref-eventually-collects-values.js (289151 => 289152) --- trunk/LayoutTests/js/script-tests/weakref-eventually-collects-values.js 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/LayoutTests/js/script-tests/weakref-eventually-collects-values.js 2022-02-05 07:26:52 UTC (rev 289152) @@ -31,7 +31,7 @@ await turnEventLoop(); gc(); -if (!weakRefs.find((weak) => weak.deref() === null)) +if (!weakRefs.find((weak) => weak.deref() === undefined)) throw new Error("no weak ref was collected"); asyncTestPassed(); } Modified: trunk/LayoutTests/js/script-tests/weakref-finalizationregistry.js (289151 => 289152) --- trunk/LayoutTests/js/script-tests/weakref-finalizationregistry.js 2022-02-05 06:38:33 UTC (rev 289151) +++ trunk/LayoutTests/js/script-tests/weakref-finalizationregistry.js 2022-02-05 07:26:52 UTC (rev 289152) @@ -45,7 +45,7 @@ await turnEventLoop();
[webkit-changes] [289151] trunk
Title: [289151] trunk Revision 289151 Author mmaxfi...@apple.com Date 2022-02-04 22:38:33 -0800 (Fri, 04 Feb 2022) Log Message ch unit fallback size doesn't match the spec https://bugs.webkit.org/show_bug.cgi?id=236073 Reviewed by Cameron McCormack. Source/WebCore: The spec (https://drafts.csswg.org/css-values-4/#ch) says: > In the cases where it is impossible or impractical to determine the measure of the â0â glyph, it must be assumed to be 0.5em wide Test: fast/text/ch-unit-without-zero-glyph.html * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::computeUnzoomedNonCalcLengthDouble): (WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble): * platform/graphics/Font.cpp: (WebCore::Font::platformGlyphInit): * platform/graphics/FontMetrics.h: (WebCore::FontMetrics::zeroWidth const): (WebCore::FontMetrics::reset): LayoutTests: This can't be a WPT test because it uses an SVG font which we're the only browser to support. * fast/text/ch-unit-without-zero-glyph-expected.html: Added. * fast/text/ch-unit-without-zero-glyph.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/CSSPrimitiveValue.cpp trunk/Source/WebCore/platform/graphics/Font.cpp trunk/Source/WebCore/platform/graphics/FontMetrics.h Added Paths trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph-expected.html trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph.html Diff Modified: trunk/LayoutTests/ChangeLog (289150 => 289151) --- trunk/LayoutTests/ChangeLog 2022-02-05 06:11:55 UTC (rev 289150) +++ trunk/LayoutTests/ChangeLog 2022-02-05 06:38:33 UTC (rev 289151) @@ -1,3 +1,16 @@ +2022-02-04 Myles C. Maxfield + +ch unit fallback size doesn't match the spec +https://bugs.webkit.org/show_bug.cgi?id=236073 + + +Reviewed by Cameron McCormack. + +This can't be a WPT test because it uses an SVG font which we're the only browser to support. + +* fast/text/ch-unit-without-zero-glyph-expected.html: Added. +* fast/text/ch-unit-without-zero-glyph.html: Added. + 2022-02-04 Arcady Goldmints-Orlov REGRESSION(r280077): [GTK] It caused 155 new test failures Added: trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph-expected.html (0 => 289151) --- trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph-expected.html (rev 0) +++ trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph-expected.html 2022-02-05 06:38:33 UTC (rev 289151) @@ -0,0 +1,15 @@ + + + + +@font-face { +font-family: "WebFont"; +src: url("resources/tiny-ligature-font.svg") format("svg"); +} + + + +This test makes sure that the ch unit falls back to 0.5em on fonts that don't support the 0 character. The test passes if the green box below has the correct width. + + + Added: trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph.html (0 => 289151) --- trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph.html (rev 0) +++ trunk/LayoutTests/fast/text/ch-unit-without-zero-glyph.html 2022-02-05 06:38:33 UTC (rev 289151) @@ -0,0 +1,15 @@ + + + + +@font-face { +font-family: "WebFont"; +src: url("resources/tiny-ligature-font.svg") format("svg"); +} + + + +This test makes sure that the ch unit falls back to 0.5em on fonts that don't support the 0 character. The test passes if the green box below has the correct width. + + + Modified: trunk/Source/WebCore/ChangeLog (289150 => 289151) --- trunk/Source/WebCore/ChangeLog 2022-02-05 06:11:55 UTC (rev 289150) +++ trunk/Source/WebCore/ChangeLog 2022-02-05 06:38:33 UTC (rev 289151) @@ -1,3 +1,25 @@ +2022-02-04 Myles C. Maxfield + +ch unit fallback size doesn't match the spec +https://bugs.webkit.org/show_bug.cgi?id=236073 + + +Reviewed by Cameron McCormack. + +The spec (https://drafts.csswg.org/css-values-4/#ch) says: +> In the cases where it is impossible or impractical to determine the measure of the â0â glyph, it must be assumed to be 0.5em wide + +Test: fast/text/ch-unit-without-zero-glyph.html + +* css/CSSPrimitiveValue.cpp: +(WebCore::CSSPrimitiveValue::computeUnzoomedNonCalcLengthDouble): +(WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble): +* platform/graphics/Font.cpp: +(WebCore::Font::platformGlyphInit): +* platform/graphics/FontMetrics.h: +(WebCore::FontMetrics::zeroWidth const): +(WebCore::FontMetrics::reset): + 2022-02-04 Eric Carlson Update MediaStreamTrack understanding of source type Modified: trunk/Source/WebCore/css/CSSPrimitiveValue.cpp (289150 => 289151) --- trunk/Source/WebCore/css/CSSPrimitiveValue.cpp 2022-02-05 06:11:55 UTC (rev 289150) +++ trunk/Source/WebCore/css/CSSPrimitiveValue.cpp 2022-02-05 06:38:33 UTC (rev 289151) @@ -719,7 +719,8 @@ return ((propertyToCompute == CSSPropertyFontSize) ? rootFontDescription->specifiedSize()
[webkit-changes] [289150] trunk/Source/WebKit
Title: [289150] trunk/Source/WebKit Revision 289150 Author commit-qu...@webkit.org Date 2022-02-04 22:11:55 -0800 (Fri, 04 Feb 2022) Log Message Don't use adattributiond on iOS https://bugs.webkit.org/show_bug.cgi?id=236157 Patch by Alex Christensen on 2022-02-04 Reviewed by John Wilander. It is still having configuration issues such as rdar://88334217 * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp: (WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (289149 => 289150) --- trunk/Source/WebKit/ChangeLog 2022-02-05 05:32:55 UTC (rev 289149) +++ trunk/Source/WebKit/ChangeLog 2022-02-05 06:11:55 UTC (rev 289150) @@ -1,3 +1,15 @@ +2022-02-04 Alex Christensen + +Don't use adattributiond on iOS +https://bugs.webkit.org/show_bug.cgi?id=236157 + +Reviewed by John Wilander. + +It is still having configuration issues such as rdar://88334217 + +* UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp: +(WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration): + 2022-02-04 Per Arne [AX] Stop creating sandbox extensions for preference services Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp (289149 => 289150) --- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2022-02-05 05:32:55 UTC (rev 289149) +++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2022-02-05 06:11:55 UTC (rev 289150) @@ -52,9 +52,6 @@ #if ENABLE(ARKIT_INLINE_PREVIEW) setModelElementCacheDirectory(WebsiteDataStore::defaultModelElementCacheDirectory()); #endif -#if PLATFORM(IOS) -setPCMMachServiceName("com.apple.webkit.adattributiond.service"); -#endif } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289149] trunk/Source/WebCore
Title: [289149] trunk/Source/WebCore Revision 289149 Author eric.carl...@apple.com Date 2022-02-04 21:32:55 -0800 (Fri, 04 Feb 2022) Log Message Update MediaStreamTrack understanding of source type https://bugs.webkit.org/show_bug.cgi?id=236165 Reviewed by Jer Noble. Before bug 235838, RealtimeMediaSource::Type was either Audio or Video. That bug added new types for screen, window, and system audio capture, but MediaStreamTrack wasn't updated to account for them. Instead of checking a source's type, use the new `hasAudio` and 'hasVideo` methods. No new tests, covered by existing tests. * Modules/mediastream/MediaStream.cpp: (WebCore::MediaStream::getAudioTracks const): (WebCore::MediaStream::getVideoTracks const): (WebCore::MediaStream::filteredTracks const): (WebCore::MediaStream::trackVectorForType const): Deleted. * Modules/mediastream/MediaStream.h: * Modules/mediastream/MediaStreamTrack.cpp: (WebCore::MediaStreamTrack::MediaStreamTrack): (WebCore::MediaStreamTrack::~MediaStreamTrack): (WebCore::MediaStreamTrack::kind const): (WebCore::MediaStreamTrack::setContentHint): (WebCore::MediaStreamTrack::trackEnded): (WebCore::MediaStreamTrack::isCapturingAudio const): * Modules/mediastream/MediaStreamTrack.h: (WebCore::MediaStreamTrack::hasVideo const): (WebCore::MediaStreamTrack::hasAudio const): * platform/mediastream/MediaStreamTrackPrivate.h: * platform/mediastream/RealtimeMediaSource.cpp: (WebCore::RealtimeMediaSource::setType): * platform/mediastream/RealtimeMediaSource.h: * platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp: (WebCore::sourceTypeForDevice): (WebCore::DisplayCaptureSourceCocoa::DisplayCaptureSourceCocoa): Set the correct source type. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp trunk/Source/WebCore/Modules/mediastream/MediaStream.h trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h trunk/Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (289148 => 289149) --- trunk/Source/WebCore/ChangeLog 2022-02-05 04:04:21 UTC (rev 289148) +++ trunk/Source/WebCore/ChangeLog 2022-02-05 05:32:55 UTC (rev 289149) @@ -1,5 +1,48 @@ 2022-02-04 Eric Carlson +Update MediaStreamTrack understanding of source type +https://bugs.webkit.org/show_bug.cgi?id=236165 + + +Reviewed by Jer Noble. + +Before bug 235838, RealtimeMediaSource::Type was either Audio or Video. That bug +added new types for screen, window, and system audio capture, but MediaStreamTrack +wasn't updated to account for them. Instead of checking a source's type, use the new +`hasAudio` and 'hasVideo` methods. + +No new tests, covered by existing tests. + +* Modules/mediastream/MediaStream.cpp: +(WebCore::MediaStream::getAudioTracks const): +(WebCore::MediaStream::getVideoTracks const): +(WebCore::MediaStream::filteredTracks const): +(WebCore::MediaStream::trackVectorForType const): Deleted. +* Modules/mediastream/MediaStream.h: + +* Modules/mediastream/MediaStreamTrack.cpp: +(WebCore::MediaStreamTrack::MediaStreamTrack): +(WebCore::MediaStreamTrack::~MediaStreamTrack): +(WebCore::MediaStreamTrack::kind const): +(WebCore::MediaStreamTrack::setContentHint): +(WebCore::MediaStreamTrack::trackEnded): +(WebCore::MediaStreamTrack::isCapturingAudio const): +* Modules/mediastream/MediaStreamTrack.h: +(WebCore::MediaStreamTrack::hasVideo const): +(WebCore::MediaStreamTrack::hasAudio const): +* platform/mediastream/MediaStreamTrackPrivate.h: + +* platform/mediastream/RealtimeMediaSource.cpp: +(WebCore::RealtimeMediaSource::setType): +* platform/mediastream/RealtimeMediaSource.h: + +* platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp: +(WebCore::sourceTypeForDevice): +(WebCore::DisplayCaptureSourceCocoa::DisplayCaptureSourceCocoa): Set the correct +source type. + +2022-02-04 Eric Carlson + [macOS] ScreenCaptureKitCaptureSource only outputs one frame https://bugs.webkit.org/show_bug.cgi?id=236161 Modified: trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp (289148 => 289149) --- trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp 2022-02-05 04:04:21 UTC (rev 289148) +++ trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp 2022-02-05 05:32:55 UTC (rev 289149) @@ -1,7 +1,7 @@ /* * Copyright (C) 2011 Google Inc. All rights reserved. * Copyright (C) 2011, 2012, 2015 Ericsson AB. All rights reserved. - *
[webkit-changes] [289148] trunk/Source/WTF
Title: [289148] trunk/Source/WTF Revision 289148 Author wei...@apple.com Date 2022-02-04 20:04:21 -0800 (Fri, 04 Feb 2022) Log Message Make isNaNConstExpr actually constexpr https://bugs.webkit.org/show_bug.cgi?id=236162 Reviewed by Darin Adler. * wtf/MathExtras.h: (WTF::isNaNConstExpr): Add missing constexpr. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/MathExtras.h Diff Modified: trunk/Source/WTF/ChangeLog (289147 => 289148) --- trunk/Source/WTF/ChangeLog 2022-02-05 03:30:56 UTC (rev 289147) +++ trunk/Source/WTF/ChangeLog 2022-02-05 04:04:21 UTC (rev 289148) @@ -1,5 +1,15 @@ 2022-02-04 Sam Weinig +Make isNaNConstExpr actually constexpr +https://bugs.webkit.org/show_bug.cgi?id=236162 + +Reviewed by Darin Adler. + +* wtf/MathExtras.h: +(WTF::isNaNConstExpr): Add missing constexpr. + +2022-02-04 Sam Weinig + Gradients don't correctly interpolate missing/none color components correctly https://bugs.webkit.org/show_bug.cgi?id=236025 Modified: trunk/Source/WTF/wtf/MathExtras.h (289147 => 289148) --- trunk/Source/WTF/wtf/MathExtras.h 2022-02-05 03:30:56 UTC (rev 289147) +++ trunk/Source/WTF/wtf/MathExtras.h 2022-02-05 04:04:21 UTC (rev 289148) @@ -771,7 +771,7 @@ } // FIXME: Replace with std::isnan() once std::isnan() is constexpr. -template typename std::enable_if_t, bool> isNaNConstExpr(T value) +template constexpr typename std::enable_if_t, bool> isNaNConstExpr(T value) { #if COMPILER_HAS_CLANG_BUILTIN(__builtin_isnan) return __builtin_isnan(value); @@ -780,7 +780,7 @@ #endif } -template typename std::enable_if_t, bool> isNaNConstExpr(T) +template constexpr typename std::enable_if_t, bool> isNaNConstExpr(T) { return false; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289147] trunk/Source/WebKit
Title: [289147] trunk/Source/WebKit Revision 289147 Author pvol...@apple.com Date 2022-02-04 19:30:56 -0800 (Fri, 04 Feb 2022) Log Message [AX] Stop creating sandbox extensions for preference services https://bugs.webkit.org/show_bug.cgi?id=232956 Reviewed by Geoffrey Garen. Stop creating sandbox extensions for preference services when AX is enabled. There have been many code changes related to updating AX preferences in the WebContent process, which is why we think this is not needed anymore. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * Shared/WebProcessCreationParameters.cpp: (WebKit::WebProcessCreationParameters::encode const): (WebKit::WebProcessCreationParameters::decode): * Shared/WebProcessCreationParameters.h: * UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeWebProcess): (WebKit::WebProcessPool::registerNotificationObservers): * WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::WebProcess::platformInitializeWebProcess): * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp trunk/Source/WebKit/Shared/WebProcessCreationParameters.h trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289146 => 289147) --- trunk/Source/WebKit/ChangeLog 2022-02-05 02:54:56 UTC (rev 289146) +++ trunk/Source/WebKit/ChangeLog 2022-02-05 03:30:56 UTC (rev 289147) @@ -1,3 +1,26 @@ +2022-02-04 Per Arne + +[AX] Stop creating sandbox extensions for preference services +https://bugs.webkit.org/show_bug.cgi?id=232956 + + +Reviewed by Geoffrey Garen. + +Stop creating sandbox extensions for preference services when AX is enabled. There have been many code changes +related to updating AX preferences in the WebContent process, which is why we think this is not needed anymore. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* Shared/WebProcessCreationParameters.cpp: +(WebKit::WebProcessCreationParameters::encode const): +(WebKit::WebProcessCreationParameters::decode): +* Shared/WebProcessCreationParameters.h: +* UIProcess/Cocoa/WebProcessPoolCocoa.mm: +(WebKit::WebProcessPool::platformInitializeWebProcess): +(WebKit::WebProcessPool::registerNotificationObservers): +* WebProcess/cocoa/WebProcessCocoa.mm: +(WebKit::WebProcess::platformInitializeWebProcess): +* WebProcess/com.apple.WebProcess.sb.in: + 2022-02-02 Simon Fraser Lay the groundwork for markLayersVolatileImmediatelyIfPossible() being an asynchronous operation Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (289146 => 289147) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-05 02:54:56 UTC (rev 289146) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-05 03:30:56 UTC (rev 289147) @@ -1085,8 +1085,6 @@ (require-all (extension "com.apple.webkit.extension.mach") (global-name -"com.apple.cfprefsd.agent" -"com.apple.cfprefsd.daemon" "com.apple.frontboard.systemappservices" "com.apple.iphone.axserver-systemwide" "com.apple.mobileassetd.v2" Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp (289146 => 289147) --- trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2022-02-05 02:54:56 UTC (rev 289146) +++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2022-02-05 03:30:56 UTC (rev 289147) @@ -190,12 +190,6 @@ encoder << contentSizeCategory; #endif -#if PLATFORM(COCOA) -#if ENABLE(CFPREFS_DIRECT_MODE) -encoder << preferencesExtensionHandles; -#endif -#endif - #if PLATFORM(GTK) encoder << useSystemAppearanceForScrollbars; encoder << gtkSettings; @@ -536,16 +530,6 @@ return false; #endif -#if PLATFORM(COCOA) -#if ENABLE(CFPREFS_DIRECT_MODE) -std::optional>> preferencesExtensionHandles; -decoder >> preferencesExtensionHandles; -if (!preferencesExtensionHandles) -return false; -parameters.preferencesExtensionHandles = WTFMove(*preferencesExtensionHandles); -#endif -#endif - #if PLATFORM(GTK) std::optional useSystemAppearanceForScrollbars; decoder >> useSystemAppearanceForScrollbars; Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.h (289146 => 289147) --- trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2022-02-05 02:54:56 UTC (rev 289146) +++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.h 2022-02-05 03:30:56 UTC (rev 289147) @@
[webkit-changes] [289146] trunk/Source/WebKit
Title: [289146] trunk/Source/WebKit Revision 289146 Author simon.fra...@apple.com Date 2022-02-04 18:54:56 -0800 (Fri, 04 Feb 2022) Log Message Lay the groundwork for markLayersVolatileImmediatelyIfPossible() being an asynchronous operation https://bugs.webkit.org/show_bug.cgi?id=236034 Reviewed by Tim Horton. With DOM rendering in the GPU Process, markLayersVolatileImmediatelyIfPossible() will need to do IPC to mark surfaces volatile, and we want that to be async IPC. So change the plumbing from WebPage to RemoteLayerBackingStoreCollection to be callback-based, with a completion handler. * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: (WebKit::RemoteLayerBackingStoreCollection::tryMarkAllBackingStoreVolatile): (WebKit::RemoteLayerBackingStoreCollection::markAllBackingStoreVolatileImmediatelyIfPossible): Deleted. * WebProcess/WebPage/DrawingArea.cpp: (WebKit::DrawingArea::tryMarkLayersVolatile): * WebProcess/WebPage/DrawingArea.h: (WebKit::DrawingArea::markLayersVolatileImmediatelyIfPossible): Deleted. * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h: * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm: (WebKit::RemoteLayerTreeDrawingArea::tryMarkLayersVolatile): (WebKit::RemoteLayerTreeDrawingArea::markLayersVolatileImmediatelyIfPossible): Deleted. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::tryMarkLayersVolatile): (WebKit::WebPage::layerVolatilityTimerFired): (WebKit::WebPage::markLayersVolatile): (WebKit::WebPage::markLayersVolatileOrRetry): (WebKit::WebPage::tryMarkLayersVolatileCompletionHandler): (WebKit::WebPage::markLayersVolatileImmediatelyIfPossible): Deleted. * WebProcess/WebPage/WebPage.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm trunk/Source/WebKit/WebProcess/WebPage/DrawingArea.cpp trunk/Source/WebKit/WebProcess/WebPage/DrawingArea.h trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h Diff Modified: trunk/Source/WebKit/ChangeLog (289145 => 289146) --- trunk/Source/WebKit/ChangeLog 2022-02-05 01:55:11 UTC (rev 289145) +++ trunk/Source/WebKit/ChangeLog 2022-02-05 02:54:56 UTC (rev 289146) @@ -1,3 +1,35 @@ +2022-02-02 Simon Fraser + +Lay the groundwork for markLayersVolatileImmediatelyIfPossible() being an asynchronous operation +https://bugs.webkit.org/show_bug.cgi?id=236034 + +Reviewed by Tim Horton. + +With DOM rendering in the GPU Process, markLayersVolatileImmediatelyIfPossible() will need +to do IPC to mark surfaces volatile, and we want that to be async IPC. So change the plumbing from +WebPage to RemoteLayerBackingStoreCollection to be callback-based, with a completion handler. + +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: +(WebKit::RemoteLayerBackingStoreCollection::tryMarkAllBackingStoreVolatile): +(WebKit::RemoteLayerBackingStoreCollection::markAllBackingStoreVolatileImmediatelyIfPossible): Deleted. +* WebProcess/WebPage/DrawingArea.cpp: +(WebKit::DrawingArea::tryMarkLayersVolatile): +* WebProcess/WebPage/DrawingArea.h: +(WebKit::DrawingArea::markLayersVolatileImmediatelyIfPossible): Deleted. +* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h: +* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm: +(WebKit::RemoteLayerTreeDrawingArea::tryMarkLayersVolatile): +(WebKit::RemoteLayerTreeDrawingArea::markLayersVolatileImmediatelyIfPossible): Deleted. +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::tryMarkLayersVolatile): +(WebKit::WebPage::layerVolatilityTimerFired): +(WebKit::WebPage::markLayersVolatile): +(WebKit::WebPage::markLayersVolatileOrRetry): +(WebKit::WebPage::tryMarkLayersVolatileCompletionHandler): +(WebKit::WebPage::markLayersVolatileImmediatelyIfPossible): Deleted. +* WebProcess/WebPage/WebPage.h: + 2022-02-04 Arcady Goldmints-Orlov REGRESSION(r280077): [GTK] It caused 155 new test failures Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h (289145 => 289146) --- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h 2022-02-05 01:55:11 UTC (rev 289145) +++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h 2022-02-05 02:54:56 UTC (rev 289146) @@ -52,8 +52,7 @@ void willCommitLayerTree(RemoteLayerTreeTransaction&); void
[webkit-changes] [289145] trunk/Source/bmalloc
Title: [289145] trunk/Source/bmalloc Revision 289145 Author ysuz...@apple.com Date 2022-02-04 17:55:11 -0800 (Fri, 04 Feb 2022) Log Message [libpas] Use os_unfair_lock instead of spinlock https://bugs.webkit.org/show_bug.cgi?id=236158 Reviewed by Geoffrey Garen. os_unfair_lock is very fast while it can properly suspend threads. A/B test result was neutral on Speedometer2 and JetStream2. So, to reduce unnecessary CPU spins, let's replace spinlock with os_unfair_lock if it is supported (if OS is Darwin). * libpas/src/libpas/pas_config.h: Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/libpas/pas_config.h Diff Modified: trunk/Source/bmalloc/ChangeLog (289144 => 289145) --- trunk/Source/bmalloc/ChangeLog 2022-02-05 00:51:35 UTC (rev 289144) +++ trunk/Source/bmalloc/ChangeLog 2022-02-05 01:55:11 UTC (rev 289145) @@ -1,5 +1,19 @@ 2022-02-04 Yusuke Suzuki +[libpas] Use os_unfair_lock instead of spinlock +https://bugs.webkit.org/show_bug.cgi?id=236158 + +Reviewed by Geoffrey Garen. + +os_unfair_lock is very fast while it can properly suspend threads. +A/B test result was neutral on Speedometer2 and JetStream2. So, to +reduce unnecessary CPU spins, let's replace spinlock with os_unfair_lock +if it is supported (if OS is Darwin). + +* libpas/src/libpas/pas_config.h: + +2022-02-04 Yusuke Suzuki + [libpas] allocation failure crash should be PAS_NEVER_INLINE https://bugs.webkit.org/show_bug.cgi?id=236164 Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_config.h (289144 => 289145) --- trunk/Source/bmalloc/libpas/src/libpas/pas_config.h 2022-02-05 00:51:35 UTC (rev 289144) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_config.h 2022-02-05 01:55:11 UTC (rev 289145) @@ -99,10 +99,10 @@ #define PAS_ALLOCATOR_INDEX_BYTES4 -#ifdef PAS_BMALLOC +#if PAS_OS(DARWIN) +#define PAS_USE_SPINLOCKS0 +#else #define PAS_USE_SPINLOCKS1 -#else -#define PAS_USE_SPINLOCKS0 #endif #endif /* PAS_CONFIG_H */ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289144] trunk/Source/bmalloc
Title: [289144] trunk/Source/bmalloc Revision 289144 Author ysuz...@apple.com Date 2022-02-04 16:51:35 -0800 (Fri, 04 Feb 2022) Log Message [libpas] allocation failure crash should be PAS_NEVER_INLINE https://bugs.webkit.org/show_bug.cgi?id=236164 Reviewed by Saam Barati. We introduce pas_allocation_result_crash_on_error function which can leave OOM crash information in the crash log. To keep this non-inlined, we annotate it PAS_NEVER_INLINE. * libpas/src/libpas/pas_allocation_result.h: (pas_allocation_result_crash_on_error): * libpas/src/libpas/pas_utils.c: (pas_panic_on_out_of_memory_error): * libpas/src/libpas/pas_utils.h: Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h Diff Modified: trunk/Source/bmalloc/ChangeLog (289143 => 289144) --- trunk/Source/bmalloc/ChangeLog 2022-02-05 00:48:34 UTC (rev 289143) +++ trunk/Source/bmalloc/ChangeLog 2022-02-05 00:51:35 UTC (rev 289144) @@ -1,3 +1,19 @@ +2022-02-04 Yusuke Suzuki + +[libpas] allocation failure crash should be PAS_NEVER_INLINE +https://bugs.webkit.org/show_bug.cgi?id=236164 + +Reviewed by Saam Barati. + +We introduce pas_allocation_result_crash_on_error function which can leave OOM crash +information in the crash log. To keep this non-inlined, we annotate it PAS_NEVER_INLINE. + +* libpas/src/libpas/pas_allocation_result.h: +(pas_allocation_result_crash_on_error): +* libpas/src/libpas/pas_utils.c: +(pas_panic_on_out_of_memory_error): +* libpas/src/libpas/pas_utils.h: + 2022-02-03 Mikhail R. Gadelha Fix BSD compilation after r289056 Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h (289143 => 289144) --- trunk/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h 2022-02-05 00:48:34 UTC (rev 289143) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h 2022-02-05 00:51:35 UTC (rev 289144) @@ -102,7 +102,8 @@ static PAS_ALWAYS_INLINE pas_allocation_result pas_allocation_result_crash_on_error(pas_allocation_result result) { -PAS_ASSERT(result.did_succeed); +if (PAS_UNLIKELY(!result.did_succeed)) +pas_panic_on_out_of_memory_error(); return result; } Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c (289143 => 289144) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c 2022-02-05 00:48:34 UTC (rev 289143) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c 2022-02-05 00:51:35 UTC (rev 289144) @@ -55,6 +55,11 @@ } #endif /* PAS_ENABLE_TESTING */ +void pas_panic_on_out_of_memory_error() +{ +__builtin_trap(); +} + static void (*deallocation_did_fail_callback)(const char* reason, void* begin); PAS_NO_RETURN PAS_NEVER_INLINE void pas_deallocation_did_fail(const char *reason, uintptr_t begin) Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h (289143 => 289144) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-02-05 00:48:34 UTC (rev 289143) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-02-05 00:51:35 UTC (rev 289144) @@ -160,6 +160,8 @@ /* NOTE: panic format string must have \n at the end. */ PAS_API PAS_NO_RETURN void pas_panic(const char* format, ...) PAS_FORMAT_PRINTF(1, 2); +PAS_API PAS_NEVER_INLINE PAS_NO_RETURN void pas_panic_on_out_of_memory_error(void); + #define pas_set_deallocation_did_fail_callback __pas_set_deallocation_did_fail_callback #define pas_set_reallocation_did_fail_callback __pas_set_reallocation_did_fail_callback ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289143] trunk/Tools
Title: [289143] trunk/Tools Revision 289143 Author commit-qu...@webkit.org Date 2022-02-04 16:48:34 -0800 (Fri, 04 Feb 2022) Log Message Add test for the fix in https://bugs.webkit.org/show_bug.cgi?id=235928 https://bugs.webkit.org/show_bug.cgi?id=236152 Patch by Matt Gilligan on 2022-02-04 Reviewed by Tim Horton. * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: (TestWebKitAPI::TEST): Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm Diff Modified: trunk/Tools/ChangeLog (289142 => 289143) --- trunk/Tools/ChangeLog 2022-02-05 00:28:02 UTC (rev 289142) +++ trunk/Tools/ChangeLog 2022-02-05 00:48:34 UTC (rev 289143) @@ -1,3 +1,13 @@ +2022-02-04 Matt Gilligan + +Add test for the fix in https://bugs.webkit.org/show_bug.cgi?id=235928 +https://bugs.webkit.org/show_bug.cgi?id=236152 + +Reviewed by Tim Horton. + +* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: +(TestWebKitAPI::TEST): + 2022-02-04 Arcady Goldmints-Orlov REGRESSION(r280077): [GTK] It caused 155 new test failures Modified: trunk/Tools/TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm (289142 => 289143) --- trunk/Tools/TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm 2022-02-05 00:28:02 UTC (rev 289142) +++ trunk/Tools/TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm 2022-02-05 00:48:34 UTC (rev 289143) @@ -36,6 +36,7 @@ #import "UIKitSPI.h" #import "UserInterfaceSwizzler.h" #import +#import #import #import #import @@ -826,6 +827,29 @@ EXPECT_EQ(contentView.undoManager, undoManager); } +TEST(KeyboardInputTests, DoNotRegisterActionsInOverriddenUndoManager) +{ +auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]); +[configuration _setUndoManagerAPIEnabled:YES]; + +auto webView = adoptNS([[CustomUndoManagerWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 500) configuration:configuration.get()]); +auto contentView = [webView wkContentView]; +EXPECT_FALSE([contentView.undoManagerForWebView canUndo]); + +auto overrideUndoManager = adoptNS([[NSUndoManager alloc] init]); +[webView setCustomUndoManager:overrideUndoManager.get()]; + +__block bool doneWaiting = false; +[webView synchronouslyLoadHTMLString:@""]; +[webView evaluateJavaScript:@"document.undoManager.addItem(new UndoItem({ label: '', undo: () => debug(\"Performed undo.\"), redo: () => debug(\"Performed redo.\") }))" completionHandler:^(id, NSError *) { +doneWaiting = true; +}]; + +TestWebKitAPI::Util::run(); +EXPECT_TRUE([contentView.undoManagerForWebView canUndo]); +EXPECT_FALSE([overrideUndoManager canUndo]); +} + static UIView * nilResizableSnapshotViewFromRect(id, SEL, CGRect, BOOL, UIEdgeInsets) { return nil; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289142] trunk/Source/WebCore
Title: [289142] trunk/Source/WebCore Revision 289142 Author eric.carl...@apple.com Date 2022-02-04 16:28:02 -0800 (Fri, 04 Feb 2022) Log Message [macOS] ScreenCaptureKitCaptureSource only outputs one frame https://bugs.webkit.org/show_bug.cgi?id=236161 Reviewed by Jer Noble. Don't WTFMove() a lambda-captured variable if the lambda will be called again. * platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm: (WebCore::ScreenCaptureKitCaptureSource::frameAvailableHandler): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm Diff Modified: trunk/Source/WebCore/ChangeLog (289141 => 289142) --- trunk/Source/WebCore/ChangeLog 2022-02-05 00:05:25 UTC (rev 289141) +++ trunk/Source/WebCore/ChangeLog 2022-02-05 00:28:02 UTC (rev 289142) @@ -1,3 +1,16 @@ +2022-02-04 Eric Carlson + +[macOS] ScreenCaptureKitCaptureSource only outputs one frame +https://bugs.webkit.org/show_bug.cgi?id=236161 + + +Reviewed by Jer Noble. + +Don't WTFMove() a lambda-captured variable if the lambda will be called again. + +* platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm: +(WebCore::ScreenCaptureKitCaptureSource::frameAvailableHandler): + 2022-02-04 Ben Nham Add PushDatabase Modified: trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm (289141 => 289142) --- trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm 2022-02-05 00:05:25 UTC (rev 289141) +++ trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm 2022-02-05 00:28:02 UTC (rev 289142) @@ -376,7 +376,7 @@ return; if (!sampleBuffer) { -RunLoop::main().dispatch([weakThis = WTFMove(weakThis), sampleBuffer = retainPtr(sampleBuffer)]() mutable { +RunLoop::main().dispatch([weakThis, sampleBuffer = retainPtr(sampleBuffer)]() mutable { if (weakThis) RELEASE_LOG_ERROR(WebRTC, "ScreenCaptureKitCaptureSource::frameAvailableHandler: NULL sample buffer!"); }); @@ -405,7 +405,7 @@ return; } -RunLoop::main().dispatch([weakThis = WTFMove(weakThis), sampleBuffer = retainPtr(sampleBuffer)]() mutable { +RunLoop::main().dispatch([weakThis, sampleBuffer = retainPtr(sampleBuffer)]() mutable { if (!weakThis) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289141] trunk/LayoutTests/imported/w3c
Title: [289141] trunk/LayoutTests/imported/w3c Revision 289141 Author jon...@apple.com Date 2022-02-04 16:05:25 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, land missing baseline for Shared Worker test. Patch by Chris Dumez on 2022-02-04 * web-platform-tests/service-workers/service-worker/claim-shared-worker-fetch.https-expected.txt: Added. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/compat/webkit-background-origin-text.html trunk/LayoutTests/imported/w3c/web-platform-tests/compat/webkit-linear-gradient-line-bottom.html trunk/LayoutTests/imported/w3c/web-platform-tests/compat/webkit-linear-gradient-line-left.html trunk/LayoutTests/imported/w3c/web-platform-tests/compat/webkit-linear-gradient-line-right.html trunk/LayoutTests/imported/w3c/web-platform-tests/compat/webkit-linear-gradient-line-top.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat/background-repeat-space.xht trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-10.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-1a.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-1b.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-1c.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-3.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-4.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-5.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-6.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-7.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-8.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-repeat-space-9.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-rounded-image-clip.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-size-027.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-image-repeat-space-1.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-image-repeat-space-3.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-image-repeat-space-7.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/css-box-shadow-001.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/linear-gradient-currentcolor-first-line.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-content-001.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-content-002.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-content-003.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-content-004.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-content-005.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-items-001.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-items-002.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-items-003.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/align-items-004.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/justify-content-001.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/justify-content-002.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/justify-content-004.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/justify-content-005.htm trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/flex-sizing-rows-indefinite-height.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-template-flexible-rerun-track-sizing.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-images/gradients-with-border.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-images/multiple-position-color-stop-linear.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-images/repeating-conic-gradient.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-images/tiled-radial-gradients.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-masking/clip-path/animations/clip-path-animation-filter.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-masking/mask-image/mask-image-clip-exclude.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-001.html
[webkit-changes] [289139] trunk
Title: [289139] trunk Revision 289139 Author n...@apple.com Date 2022-02-04 15:21:32 -0800 (Fri, 04 Feb 2022) Log Message Add PushDatabase https://bugs.webkit.org/show_bug.cgi?id=234194 Reviewed by Brady Eidson. Source/WebCore: This adds a persistence layer for push subscriptions stored in webpushd. The operations that we support for now are: - inserting a record (used when subscribing) - removing a record (used when unsubscribing) - retrieving a record (used when receiving a push) - enumerating all records by wake state (used to provide the push service the list of all topics that we are subscribed to by wake state) There are two basic data types in this data model: - Subscriptions, which are uniquely identified by (bundleID, serviceWorkerScope). This stores data that is unique to each subscription, e.g. encryption keys and the HTTP endpoint used by the server to send pushes to this subscription. - SubscriptionSets, which encompass one or more Subscriptions, and are uniquely identified by (bundleID, securityOrigin). This stores state this common to multiple subscriptions, e.g. whether or not all pushes sent by a particular origin should be non-waking. For instance, suppose webkit.org in Safari has two service worker registrations scoped to webkit.org/foo and webkit.org/bar. Each registration has successfully registered for push. This would result in three rows in the database: 1. Subscription row identified by (bundleID=safari, scope=webkit.org/foo) 2. Subscription row identified by (bundleID=safari, scope=webkit.org/bar) 3. SubscriptionSet row identified by (bundleID=safari, securityOrigin=webkit.org) Both subscriptions (1) and (2) are part of the subscription set (3). Covered by new API tests. * Headers.cmake: * Modules/push-api/PushDatabase.cpp: Added. (WebCore::PushRecord::isolatedCopy const): (WebCore::PushRecord::isolatedCopy): (WebCore::openAndMigrateDatabaseImpl): (WebCore::openAndMigrateDatabase): (WebCore::PushDatabase::create): (WebCore::PushDatabase::PushDatabase): (WebCore::PushDatabase::~PushDatabase): (WebCore::PushDatabase::dispatchOnWorkQueue): (WebCore::PushDatabase::cachedStatementOnQueue): (WebCore::bindExpirationTime): (WebCore::expirationTimeFromValue): (WebCore::completeOnMainQueue): (WebCore::PushDatabase::insertRecord): (WebCore::PushDatabase::removeRecordByIdentifier): (WebCore::makePushRecordFromRow): (WebCore::PushDatabase::getRecordByTopic): (WebCore::PushDatabase::getRecordByBundleIdentifierAndScope): (WebCore::PushDatabase::getIdentifiers): (WebCore::PushDatabase::getTopicsByWakeState): * Modules/push-api/PushDatabase.h: Added. * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * platform/Logging.h: * platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::inMemoryPath): (WebCore::SQLiteDatabase::open): * platform/sql/SQLiteDatabase.h: Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebCore/PushDatabase.cpp: Added. (TestWebKitAPI::getTopicsByWakeStateSync): (TestWebKitAPI::PushDatabaseTest::insertRecord): (TestWebKitAPI::PushDatabaseTest::removeRecordByRowIdentifier): (TestWebKitAPI::PushDatabaseTest::getRecordByTopic): (TestWebKitAPI::PushDatabaseTest::getRecordByBundleIdentifierAndScope): (TestWebKitAPI::PushDatabaseTest::getRowIdentifiers): (TestWebKitAPI::PushDatabaseTest::getTopicsByWakeState): (TestWebKitAPI::operator==): (TestWebKitAPI::TEST_F): (TestWebKitAPI::makeTemporaryDatabasePath): (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/platform/Logging.h trunk/Source/WebCore/platform/sql/SQLiteDatabase.cpp trunk/Source/WebCore/platform/sql/SQLiteDatabase.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Source/WebCore/Modules/push-api/PushDatabase.cpp trunk/Source/WebCore/Modules/push-api/PushDatabase.h trunk/Tools/TestWebKitAPI/Tests/WebCore/PushDatabase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (289138 => 289139) --- trunk/Source/WebCore/ChangeLog 2022-02-04 22:49:24 UTC (rev 289138) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 23:21:32 UTC (rev 289139) @@ -1,3 +1,70 @@ +2022-02-04 Ben Nham + +Add PushDatabase +https://bugs.webkit.org/show_bug.cgi?id=234194 + +Reviewed by Brady Eidson. + +This adds a persistence layer for push subscriptions stored in webpushd. The operations +that we support for now are: + + - inserting a record (used when subscribing) + - removing a record (used when unsubscribing) + - retrieving a record (used when receiving a push) + - enumerating all records by wake state (used to provide the push service the list of all + topics that we are subscribed to by wake state) + +There are two basic data types in this
[webkit-changes] [289138] trunk/Source/WebKit
Title: [289138] trunk/Source/WebKit Revision 289138 Author commit-qu...@webkit.org Date 2022-02-04 14:49:24 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, reverting r289124. https://bugs.webkit.org/show_bug.cgi?id=236160 Introduced crash Reverted changeset: "[macOS][WP] Add telemetry for syscalls used during launch" https://bugs.webkit.org/show_bug.cgi?id=235865 https://commits.webkit.org/r289124 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289137 => 289138) --- trunk/Source/WebKit/ChangeLog 2022-02-04 22:17:55 UTC (rev 289137) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 22:49:24 UTC (rev 289138) @@ -1,3 +1,16 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289124. +https://bugs.webkit.org/show_bug.cgi?id=236160 + +Introduced crash + +Reverted changeset: + +"[macOS][WP] Add telemetry for syscalls used during launch" +https://bugs.webkit.org/show_bug.cgi?id=235865 +https://commits.webkit.org/r289124 + 2022-02-04 Per Arne Vollan [iOS][WP] Block access to syscalls that are only used during launch Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (289137 => 289138) --- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-02-04 22:17:55 UTC (rev 289137) +++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-02-04 22:49:24 UTC (rev 289138) @@ -1894,25 +1894,8 @@ (disable-syscall-inference) #endif -#if HAVE(SANDBOX_STATE_FLAGS) -(deny user-preference-read (with enable-state-flag "WebContentProcessLaunched") -(preference-domain "com.apple.WebKit.WebContent.Launch")) -#endif - -(define (syscall-unix-only-in-use-during-launch) +(define (syscall-unix-common) (syscall-number -SYS_csops -SYS_csrctl -SYS_fsgetpath -SYS_getaudit_addr -SYS_getfsstat64 -SYS_getrlimit -SYS_kdebug_trace -SYS_pathconf -SYS_statfs64)) - -(define (syscall-unix-in-use-after-launch) -(syscall-number SYS___disable_threadsignal SYS___mac_syscall SYS___pthread_sigmask @@ -1923,7 +1906,9 @@ SYS_bsdthread_terminate SYS_close SYS_close_nocancel +SYS_csops SYS_csops_audittoken +SYS_csrctl SYS_exit SYS_faccessat ;; SYS_fcntl @@ -1932,6 +1917,7 @@ SYS_fileport_makefd SYS_flock SYS_fsetxattr ;; +SYS_fsgetpath SYS_fstat64 SYS_fstatat64 SYS_fstatfs64 @@ -1938,11 +1924,14 @@ SYS_ftruncate SYS_getattrlist SYS_getattrlistbulk +SYS_getaudit_addr SYS_getdirentries64 SYS_getentropy SYS_geteuid +SYS_getfsstat64 SYS_getgid SYS_gethostuuid +SYS_getrlimit SYS_getrusage SYS_gettimeofday SYS_getuid @@ -1949,6 +1938,7 @@ SYS_getxattr SYS_ioctl SYS_issetugid +SYS_kdebug_trace SYS_kdebug_trace64 SYS_kdebug_trace_string ;; Needed for performance sampling, see . SYS_kevent_id @@ -1971,6 +1961,7 @@ SYS_open SYS_open_nocancel SYS_openat +SYS_pathconf SYS_pread SYS_proc_info SYS_psynch_cvbroad @@ -1988,8 +1979,9 @@ SYS_sendto SYS_sigaltstack SYS_sigprocmask +SYS_stat64 +SYS_statfs64 SYS_socket -SYS_stat64 SYS_sysctlbyname SYS_thread_selfid #if !PLATFORM(MAC) @@ -2052,31 +2044,14 @@ )) (when (defined? 'syscall-unix) -(deny syscall-unix (with telemetry)(with send-signal SIGKILL)) - -#if HAVE(SANDBOX_STATE_FLAGS) -(with-filter (require-not (state-flag "WebContentProcessLaunched")) -(allow syscall-unix -(syscall-unix-in-use-after-launch)) -(allow syscall-unix -(syscall-unix-only-in-use-during-launch))) -(with-filter (state-flag "WebContentProcessLaunched") -(allow syscall-unix -(syscall-unix-in-use-after-launch)) -(allow syscall-unix -(with report) -(with telemetry) -(with message "Unix syscall used after launch") -(syscall-unix-only-in-use-during-launch))) -#else +(deny syscall-unix (with send-signal SIGKILL)) (allow syscall-unix -(syscall-unix-only-in-use-during-launch) -(syscall-unix-in-use-after-launch)) -#endif +(syscall-unix-common)) -(when (equal? (param "CPU") "arm64") +(if (equal? (param "CPU") "arm64") +(begin (allow syscall-unix -(syscall-unix-apple-silicon))) +(syscall-unix-apple-silicon (allow syscall-unix #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 12 ___
[webkit-changes] [289137] trunk/Source/WebKit
Title: [289137] trunk/Source/WebKit Revision 289137 Author pvol...@apple.com Date 2022-02-04 14:17:55 -0800 (Fri, 04 Feb 2022) Log Message [iOS][WP] Block access to syscalls that are only used during launch https://bugs.webkit.org/show_bug.cgi?id=236102 Reviewed by Brent Fulgham. On iOS, block access to 12 Unix syscalls and 4 Mach syscalls after the WebContent process has finished launching. These syscalls are only used during launch. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289136 => 289137) --- trunk/Source/WebKit/ChangeLog 2022-02-04 21:34:45 UTC (rev 289136) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 22:17:55 UTC (rev 289137) @@ -1,3 +1,16 @@ +2022-02-04 Per Arne Vollan + +[iOS][WP] Block access to syscalls that are only used during launch +https://bugs.webkit.org/show_bug.cgi?id=236102 + + +Reviewed by Brent Fulgham. + +On iOS, block access to 12 Unix syscalls and 4 Mach syscalls after the WebContent process has finished launching. +These syscalls are only used during launch. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + 2022-02-04 Alex Christensen Remember whether cached main resources used private relay when considering whether to call _setPrivacyProxyFailClosed Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (289136 => 289137) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 21:34:45 UTC (rev 289136) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 22:17:55 UTC (rev 289137) @@ -1187,24 +1187,13 @@ SYS_bsdthread_register SYS_chdir SYS_connect -SYS_csops ;; used by Corefoundation initialization SYS_dup2 -SYS_fileport_makefd SYS_fsgetpath -SYS_getegid SYS_getpid -SYS_getrlimit -SYS_gettid -SYS_getuid -SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_kdebug_trace_string -SYS_kdebug_typefilter SYS_objc_bp_assist_cfg_np -SYS_os_fault_with_payload SYS_shared_region_check_np -SYS_shm_open SYS_sigaction -SYS_sysctl SYS_workq_open SYS_writev)) @@ -1220,6 +1209,7 @@ SYS_change_fdguard_np SYS_close SYS_close_nocancel +SYS_csops ;; used by Corefoundation initialization SYS_csops_audittoken ;; used by WK to get entitlments SYS_exit SYS_faccessat ;; @@ -1226,6 +1216,7 @@ SYS_fcntl SYS_fcntl_nocancel SYS_fgetattrlist ;; +SYS_fileport_makefd SYS_flock SYS_fsetattrlist ;; MTLCompilerFSCache::openSync SYS_fsetxattr ;; @@ -1235,17 +1226,23 @@ SYS_ftruncate SYS_getattrlist ;; xpc_realpath and directory enumeration SYS_getdirentries64 +SYS_getegid SYS_getentropy SYS_geteuid SYS_getfsstat64 +SYS_getrlimit SYS_getrusage +SYS_gettid SYS_gettimeofday +SYS_getuid SYS_guarded_close_np SYS_guarded_open_dprotected_np ; SYS_guarded_open_np SYS_guarded_pwrite_np +SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_issetugid SYS_kdebug_trace64 +SYS_kdebug_typefilter SYS_kevent_id SYS_kevent_qos SYS_kqueue ;; @@ -1263,6 +1260,7 @@ SYS_open SYS_open_nocancel SYS_openat +SYS_os_fault_with_payload SYS_pathconf SYS_pread SYS_proc_info @@ -1281,8 +1279,10 @@ SYS_sem_close SYS_sem_open SYS_shared_region_map_and_slide_2_np ;; +SYS_shm_open SYS_stat64 SYS_statfs64 +SYS_sysctl SYS_sysctlbyname SYS_thread_selfid SYS_ulock_wait @@ -1338,8 +1338,7 @@ (allow syscall-unix (syscall-unix-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(allow syscall-unix -(with report) +(deny syscall-unix (with telemetry) (with message "Unix syscall used after launch") (syscall-unix-only-in-use-during-launch))) @@ -1550,8 +1549,7 @@ (allow syscall-mach (syscall-mach-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(allow syscall-mach -(with report) +(deny syscall-mach (with telemetry) (with message "Mach syscall used after launch")
[webkit-changes] [289136] tags/Safari-614.1.2/
Title: [289136] tags/Safari-614.1.2/ Revision 289136 Author alanc...@apple.com Date 2022-02-04 13:34:45 -0800 (Fri, 04 Feb 2022) Log Message Tag Safari-614.1.2. Added Paths tags/Safari-614.1.2/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289135] trunk
Title: [289135] trunk Revision 289135 Author commit-qu...@webkit.org Date 2022-02-04 13:29:41 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, reverting r289098. https://bugs.webkit.org/show_bug.cgi?id=236154 caused some unexpected crashes Reverted changeset: "[RenderTreeBuilder] Clean up column spanners when style change affects containing block" https://bugs.webkit.org/show_bug.cgi?id=236042 https://commits.webkit.org/r289098 Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderBlock.cpp trunk/Source/WebCore/rendering/RenderElement.cpp trunk/Source/WebCore/rendering/RenderElement.h trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp Removed Paths trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash-expected.txt trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (289134 => 289135) --- trunk/LayoutTests/ChangeLog 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/LayoutTests/ChangeLog 2022-02-04 21:29:41 UTC (rev 289135) @@ -1,3 +1,17 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289098. +https://bugs.webkit.org/show_bug.cgi?id=236154 + +caused some unexpected crashes + +Reverted changeset: + +"[RenderTreeBuilder] Clean up column spanners when style +change affects containing block" +https://bugs.webkit.org/show_bug.cgi?id=236042 +https://commits.webkit.org/r289098 + 2022-02-04 Sam Weinig Gradients don't correctly interpolate missing/none color components correctly Deleted: trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash-expected.txt (289134 => 289135) --- trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash-expected.txt 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash-expected.txt 2022-02-04 21:29:41 UTC (rev 289135) @@ -1 +0,0 @@ - Deleted: trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash.html (289134 => 289135) --- trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash.html 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/LayoutTests/fast/multicol/leftover-spanner-on-style-change-crash.html 2022-02-04 21:29:41 UTC (rev 289135) @@ -1,31 +0,0 @@ - - html { -columns: 1px; - } - div::before { -content: url(); - } - frame { -column-span: all; - } - :first-child { -position: absolute; -rotate: 0deg; - } - :read-only { -translate: 0; - } - - - - if (window.testRunner) -testRunner.dumpAsText(); - internals.settings.setTextAutosizingEnabled(true); - _onload_ = () => { -let div0 = document.createElement('div'); -document.body.appendChild(div0); -div0.appendChild(document.createElement('frame')); -document.body.offsetTop; -document.designMode = 'on'; - }; - Modified: trunk/Source/WebCore/ChangeLog (289134 => 289135) --- trunk/Source/WebCore/ChangeLog 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 21:29:41 UTC (rev 289135) @@ -1,3 +1,17 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289098. +https://bugs.webkit.org/show_bug.cgi?id=236154 + +caused some unexpected crashes + +Reverted changeset: + +"[RenderTreeBuilder] Clean up column spanners when style +change affects containing block" +https://bugs.webkit.org/show_bug.cgi?id=236042 +https://commits.webkit.org/r289098 + 2022-02-04 Alex Christensen Remember whether cached main resources used private relay when considering whether to call _setPrivacyProxyFailClosed Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (289134 => 289135) --- trunk/Source/WebCore/rendering/RenderBlock.cpp 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/Source/WebCore/rendering/RenderBlock.cpp 2022-02-04 21:29:41 UTC (rev 289135) @@ -432,10 +432,11 @@ void RenderBlock::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle) { +bool hadTransform = hasTransform(); RenderBox::styleDidChange(diff, oldStyle); -if (oldStyle) -adjustFragmentedFlowStateOnContainingBlockChangeIfNeeded(*oldStyle, style()); +if (hadTransform != hasTransform()) +adjustFragmentedFlowStateOnContainingBlockChangeIfNeeded(); propagateStyleToAnonymousChildren(PropagateToBlockChildrenOnly); Modified: trunk/Source/WebCore/rendering/RenderElement.cpp (289134 => 289135) --- trunk/Source/WebCore/rendering/RenderElement.cpp 2022-02-04 19:50:04 UTC (rev 289134) +++ trunk/Source/WebCore/rendering/RenderElement.cpp 2022-02-04 21:29:41 UTC (rev 289135) @@ -532,7 +532,10 @@ auto oldStyle = m_style.replace(WTFMove(style)); bool detachedFromParent = !parent(); -adjustFragmentedFlowStateOnContainingBlockChangeIfNeeded(oldStyle, m_style); +// Make sure we
[webkit-changes] [289134] trunk/Source
Title: [289134] trunk/Source Revision 289134 Author commit-qu...@webkit.org Date 2022-02-04 11:50:04 -0800 (Fri, 04 Feb 2022) Log Message Remember whether cached main resources used private relay when considering whether to call _setPrivacyProxyFailClosed https://bugs.webkit.org/show_bug.cgi?id=236125 Patch by Alex Christensen on 2022-02-04 Reviewed by Geoffrey Garen. Source/WebCore: Use an unused bit on disk to remember whether the response was originally received over private relay. Also, instead of remembering on the main frame's DocumentLoader, remember on the WebProcess. This makes it so if you enter the same URL twice, which loads from the MemoryCache from different WebCore::Pages, it still remembers. If you load a different domain, it will load in a different WebProcess anyways, at which point you will not be using the same MemoryCache. * loader/DocumentLoader.h: (WebCore::DocumentLoader::setMainResourceWasPrivateRelayed): Deleted. (WebCore::DocumentLoader::mainResourceWasPrivateRelayed const): Deleted. Source/WebKit: * NetworkProcess/NetworkLoadParameters.h: * NetworkProcess/NetworkResourceLoadParameters.cpp: (WebKit::NetworkResourceLoadParameters::encode const): (WebKit::NetworkResourceLoadParameters::decode): * NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::retrieveCacheEntry): (WebKit::NetworkResourceLoader::didReceiveResponse): (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry): (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): * NetworkProcess/NetworkResourceLoader.h: * NetworkProcess/cache/NetworkCache.cpp: (WebKit::NetworkCache::Cache::makeEntry): (WebKit::NetworkCache::Cache::store): (WebKit::NetworkCache::Cache::update): * NetworkProcess/cache/NetworkCache.h: * NetworkProcess/cache/NetworkCacheEntry.cpp: (WebKit::NetworkCache::Entry::Entry): (WebKit::NetworkCache::Entry::encodeAsStorageRecord const): (WebKit::NetworkCache::Entry::decodeStorageRecord): * NetworkProcess/cache/NetworkCacheEntry.h: (WebKit::NetworkCache::Entry::privateRelayed const): * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: (WebKit::NetworkCache::SpeculativeLoad::didReceiveResponse): (WebKit::NetworkCache::SpeculativeLoad::didFinishLoading): * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: * NetworkProcess/cache/PrefetchCache.cpp: (WebKit::PrefetchCache::Entry::Entry): (WebKit::PrefetchCache::store): * NetworkProcess/cache/PrefetchCache.h: * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): * WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::addParametersShared): * WebProcess/Network/WebResourceLoader.cpp: (WebKit::WebResourceLoader::didReceiveResponse): * WebProcess/WebProcess.h: (WebKit::WebProcess::setHadMainFrameMainResourcePrivateRelayed): (WebKit::WebProcess::hadMainFrameMainResourcePrivateRelayed const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/DocumentLoader.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkLoadParameters.h trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCache.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCache.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoad.h trunk/Source/WebKit/NetworkProcess/cache/PrefetchCache.cpp trunk/Source/WebKit/NetworkProcess/cache/PrefetchCache.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp trunk/Source/WebKit/WebProcess/Network/WebResourceLoader.cpp trunk/Source/WebKit/WebProcess/WebProcess.h Diff Modified: trunk/Source/WebCore/ChangeLog (289133 => 289134) --- trunk/Source/WebCore/ChangeLog 2022-02-04 19:46:22 UTC (rev 289133) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 19:50:04 UTC (rev 289134) @@ -1,3 +1,19 @@ +2022-02-04 Alex Christensen + +Remember whether cached main resources used private relay when considering whether to call _setPrivacyProxyFailClosed +https://bugs.webkit.org/show_bug.cgi?id=236125 + +Reviewed by Geoffrey Garen. + +Use an unused bit on disk to remember whether the response was originally received over private relay. +Also, instead of remembering on the main frame's DocumentLoader, remember on the WebProcess. +This makes it so if you enter the same URL twice, which loads from the MemoryCache from different WebCore::Pages, it still remembers. +If you load a different domain, it will load in a different WebProcess anyways, at which point you will not be using the same MemoryCache. + +* loader/DocumentLoader.h: +
[webkit-changes] [289133] trunk/Tools
Title: [289133] trunk/Tools Revision 289133 Author commit-qu...@webkit.org Date 2022-02-04 11:46:22 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, reverting r289067. https://bugs.webkit.org/show_bug.cgi?id=236149 Broke WinCairo LayoutTests Reverted changeset: "REGRESSION(r288878) webkitpy.layout_tests.controllers.layout_test_finder_legacy_unittest.LayoutTestFinderTests tests are failing with Windows Python" https://bugs.webkit.org/show_bug.cgi?id=236043 https://commits.webkit.org/r289067 Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/port/base.py Diff Modified: trunk/Tools/ChangeLog (289132 => 289133) --- trunk/Tools/ChangeLog 2022-02-04 19:36:13 UTC (rev 289132) +++ trunk/Tools/ChangeLog 2022-02-04 19:46:22 UTC (rev 289133) @@ -1,3 +1,18 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289067. +https://bugs.webkit.org/show_bug.cgi?id=236149 + +Broke WinCairo LayoutTests + +Reverted changeset: + +"REGRESSION(r288878) +webkitpy.layout_tests.controllers.layout_test_finder_legacy_unittest.LayoutTestFinderTests +tests are failing with Windows Python" +https://bugs.webkit.org/show_bug.cgi?id=236043 +https://commits.webkit.org/r289067 + 2022-02-04 Alexander Mikhaylenko [GTK] Crash when starting DND on touchscreen Modified: trunk/Tools/Scripts/webkitpy/port/base.py (289132 => 289133) --- trunk/Tools/Scripts/webkitpy/port/base.py 2022-02-04 19:36:13 UTC (rev 289132) +++ trunk/Tools/Scripts/webkitpy/port/base.py 2022-02-04 19:46:22 UTC (rev 289133) @@ -718,7 +718,8 @@ def relative_test_filename(self, filename): """Returns a test_name a relative unix-style path for a filename under the LayoutTests directory. Ports may legitimately return abspaths here if no relpath makes sense.""" -filename = filename.replace(self.host.filesystem.sep, self.TEST_PATH_SEPARATOR) +# Ports that run on windows need to override this method to deal with +# filenames with backslashes in them. if filename.startswith(self.layout_tests_dir()): return self.host.filesystem.relpath(filename, self.layout_tests_dir()).replace(self.host.filesystem.sep, self.TEST_PATH_SEPARATOR) else: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289132] trunk/Source/WebCore
Title: [289132] trunk/Source/WebCore Revision 289132 Author za...@apple.com Date 2022-02-04 11:36:13 -0800 (Fri, 04 Feb 2022) Log Message [LFC][Integration] Input geometry to layout (BoxGeometry) should be all logical https://bugs.webkit.org/show_bug.cgi?id=236120 Reviewed by Antti Koivisto. Now (after adding support for inline base direction), it's clear that BoxGeometry, as input to inline line layout, should hold logical values only (this is somewhat of a revert of r269818). It also fixes ~40 tests under imported/w3c/web-platform-tests/css/css-writing-modes. (WebCore::LayoutIntegration::LineLayout::updateLayoutBoxDimensions): We need logical vs. visual flip based on in what writing direction the box lives in and not what it establishes for its descendants. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (289131 => 289132) --- trunk/Source/WebCore/ChangeLog 2022-02-04 19:19:42 UTC (rev 289131) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 19:36:13 UTC (rev 289132) @@ -1,3 +1,17 @@ +2022-02-04 Alan Bujtas + +[LFC][Integration] Input geometry to layout (BoxGeometry) should be all logical +https://bugs.webkit.org/show_bug.cgi?id=236120 + +Reviewed by Antti Koivisto. + +Now (after adding support for inline base direction), it's clear that BoxGeometry, as input to inline line layout, +should hold logical values only (this is somewhat of a revert of r269818). +It also fixes ~40 tests under imported/w3c/web-platform-tests/css/css-writing-modes. + +(WebCore::LayoutIntegration::LineLayout::updateLayoutBoxDimensions): We need logical vs. visual flip based on +in what writing direction the box lives in and not what it establishes for its descendants. + 2022-02-04 Andres Gonzalez Cache some expensive AXIsolatedObject properties lazily. Modified: trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.cpp (289131 => 289132) --- trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.cpp 2022-02-04 19:19:42 UTC (rev 289131) +++ trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.cpp 2022-02-04 19:36:13 UTC (rev 289132) @@ -148,6 +148,16 @@ updateLayoutBoxDimensions(inlineBlock); } +static inline LayoutUnit contentLogicalWidthForRenderer(const RenderBox& renderer) +{ +return renderer.parent()->style().isHorizontalWritingMode() ? renderer.contentWidth() : renderer.contentHeight(); +} + +static inline LayoutUnit contentLogicalHeightForRenderer(const RenderBox& renderer) +{ +return renderer.parent()->style().isHorizontalWritingMode() ? renderer.contentHeight() : renderer.contentWidth(); +} + static inline Layout::BoxGeometry::HorizontalMargin logicalMargin(const RenderBoxModelObject& renderer, bool isLeftToRightDirection, bool retainMarginStart = true, bool retainMarginEnd = true) { auto marginStart = LayoutUnit { 0_lu }; @@ -187,9 +197,7 @@ // Internally both replaced and inline-box content use replaced boxes. auto& replacedBox = downcast(layoutBox); -// Always use the physical size here for inline level boxes (this is where the logical vs. physical coords flip happens). auto& replacedBoxGeometry = m_layoutState.ensureGeometryForBox(replacedBox); - // Scrollbars eat into the padding box area. They never stretch the border box but they may shrink the padding box. // In legacy render tree, RenderBox::contentWidth/contentHeight values are adjusted to accomodate the scrollbar width/height. // e.g. content, RenderBox::contentWidth() won't be returning the value of 10px but instead 0px (10px - 15px). @@ -199,8 +207,8 @@ auto verticalSpaceReservedForScrollbar = replacedOrInlineBlock.paddingBoxRectIncludingScrollbar().height() - replacedOrInlineBlock.paddingBoxHeight(); replacedBoxGeometry.setVerticalSpaceForScrollbar(verticalSpaceReservedForScrollbar); -replacedBoxGeometry.setContentBoxWidth(replacedOrInlineBlock.contentWidth()); -replacedBoxGeometry.setContentBoxHeight(replacedOrInlineBlock.contentHeight()); +replacedBoxGeometry.setContentBoxWidth(contentLogicalWidthForRenderer(replacedOrInlineBlock)); +replacedBoxGeometry.setContentBoxHeight(contentLogicalHeightForRenderer(replacedOrInlineBlock)); replacedBoxGeometry.setVerticalMargin({ replacedOrInlineBlock.marginTop(), replacedOrInlineBlock.marginBottom() }); auto isLeftToRightDirection = replacedOrInlineBlock.parent()->style().isLeftToRightDirection(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289131] trunk/Source/WebCore
Title: [289131] trunk/Source/WebCore Revision 289131 Author andresg...@apple.com Date 2022-02-04 11:19:42 -0800 (Fri, 04 Feb 2022) Log Message Cache some expensive AXIsolatedObject properties lazily. https://bugs.webkit.org/show_bug.cgi?id=236115 Reviewed by Chris Fleizach. Some properties can be very expensive to compute for every object, and may not even be used by the clients. Furthermore descriptionAttributeValue() and titleAttributeValue() call textUnderElement() which may crash if it is called in the middle of a layout. This is the actual cause of https://bugs.webkit.org/show_bug.cgi?id=220446. In this patch, we delay the computation and caching of these two properties until they are first requested. This solves both the wasteful computation if these properties are not used, and more importantly the crash in the above mentioned bug. This is a follow up change to: https://bugs.webkit.org/show_bug.cgi?id=236053 * accessibility/isolatedtree/AXIsolatedObject.cpp: (WebCore::AXIsolatedObject::getOrRetrieveStringPropertyValue): New method to lazily retrieve and cache any String property. (WebCore::AXIsolatedObject::innerHTML const): Uses getOrRetrieveStringPropertyValue. (WebCore::AXIsolatedObject::outerHTML const): Dito. * accessibility/isolatedtree/AXIsolatedObject.h: * accessibility/isolatedtree/mac/AXIsolatedObjectMac.mm: (WebCore::AXIsolatedObject::initializePlatformProperties): No longer caches the above mentioned properties. (WebCore::AXIsolatedObject::descriptionAttributeValue const): Uses getOrRetrieveStringPropertyValue. (WebCore::AXIsolatedObject::titleAttributeValue const): Dito. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h trunk/Source/WebCore/accessibility/isolatedtree/mac/AXIsolatedObjectMac.mm Diff Modified: trunk/Source/WebCore/ChangeLog (289130 => 289131) --- trunk/Source/WebCore/ChangeLog 2022-02-04 18:58:02 UTC (rev 289130) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 19:19:42 UTC (rev 289131) @@ -1,3 +1,36 @@ +2022-02-04 Andres Gonzalez + +Cache some expensive AXIsolatedObject properties lazily. +https://bugs.webkit.org/show_bug.cgi?id=236115 + + +Reviewed by Chris Fleizach. + +Some properties can be very expensive to compute for every object, and +may not even be used by the clients. Furthermore +descriptionAttributeValue() and titleAttributeValue() call +textUnderElement() which may crash if it is called in the middle of a +layout. This is the actual cause of +https://bugs.webkit.org/show_bug.cgi?id=220446. +In this patch, we delay the computation and caching of these two +properties until they are first requested. This solves both the wasteful +computation if these properties are not used, and more importantly the +crash in the above mentioned bug. +This is a follow up change to: +https://bugs.webkit.org/show_bug.cgi?id=236053 + +* accessibility/isolatedtree/AXIsolatedObject.cpp: +(WebCore::AXIsolatedObject::getOrRetrieveStringPropertyValue): +New method to lazily retrieve and cache any String property. +(WebCore::AXIsolatedObject::innerHTML const): Uses getOrRetrieveStringPropertyValue. +(WebCore::AXIsolatedObject::outerHTML const): Dito. +* accessibility/isolatedtree/AXIsolatedObject.h: +* accessibility/isolatedtree/mac/AXIsolatedObjectMac.mm: +(WebCore::AXIsolatedObject::initializePlatformProperties): +No longer caches the above mentioned properties. +(WebCore::AXIsolatedObject::descriptionAttributeValue const): Uses getOrRetrieveStringPropertyValue. +(WebCore::AXIsolatedObject::titleAttributeValue const): Dito. + 2022-02-04 Alexander Mikhaylenko [GTK] Crash when starting DND on touchscreen Modified: trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp (289130 => 289131) --- trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp 2022-02-04 18:58:02 UTC (rev 289130) +++ trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp 2022-02-04 19:19:42 UTC (rev 289131) @@ -975,6 +975,43 @@ ); } +String AXIsolatedObject::getOrRetrieveStringPropertyValue(AXPropertyName propertyName) +{ +if (m_propertyMap.contains(propertyName)) +return stringAttributeValue(propertyName); + +Accessibility::performFunctionOnMainThread([, this] () { +auto* axObject = associatedAXObject(); +if (!axObject) +return; + +String value; +switch (propertyName) { +#if PLATFORM(COCOA) +case AXPropertyName::Description: +value = axObject->descriptionAttributeValue(); +break; +case AXPropertyName::TitleAttributeValue: +value = axObject->titleAttributeValue(); +
[webkit-changes] [289130] trunk/Source/WebKit
Title: [289130] trunk/Source/WebKit Revision 289130 Author commit-qu...@webkit.org Date 2022-02-04 10:58:02 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, reverting r289069. https://bugs.webkit.org/show_bug.cgi?id=236146 Introduced sandbox violation Reverted changeset: "[iOS][WP] Enable sandbox state rules for Mach messages" https://bugs.webkit.org/show_bug.cgi?id=236027 https://commits.webkit.org/r289069 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289129 => 289130) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:53:17 UTC (rev 289129) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:58:02 UTC (rev 289130) @@ -1,3 +1,16 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289069. +https://bugs.webkit.org/show_bug.cgi?id=236146 + +Introduced sandbox violation + +Reverted changeset: + +"[iOS][WP] Enable sandbox state rules for Mach messages" +https://bugs.webkit.org/show_bug.cgi?id=236027 +https://commits.webkit.org/r289069 + 2022-02-04 Alexander Mikhaylenko [GTK] Crash when starting DND on touchscreen Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (289129 => 289130) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:53:17 UTC (rev 289129) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:58:02 UTC (rev 289130) @@ -1646,15 +1646,16 @@ #endif #if HAVE(SANDBOX_STATE_FLAGS) -(with-filter (require-not (state-flag "WebContentProcessLaunched")) -(allow mach-message-send -(kernel-mig-routine-only-in-use-during-launch))) -(with-filter (state-flag "WebContentProcessLaunched") -(allow mach-message-send -(with report) -(with telemetry) -(with message "kernel mig routine used after launch") -(kernel-mig-routine-only-in-use-during-launch))) +;; FIXME: enable this when rdar://85931614 is fixed +;;(with-filter (require-not (state-flag "WebContentProcessLaunched")) +;;(allow mach-message-send +;;(kernel-mig-routine-only-in-use-during-launch))) +;;(with-filter (state-flag "WebContentProcessLaunched") +;;(allow mach-message-send +;;(with report) +;;(with telemetry) +;;(with message "kernel mig routine used after launch") +;;(kernel-mig-routine-only-in-use-during-launch))) #endif (when (defined? 'mach_port_is_connection_for_service) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289129] trunk
Title: [289129] trunk Revision 289129 Author al...@gnome.org Date 2022-02-04 10:53:17 -0800 (Fri, 04 Feb 2022) Log Message [GTK] Crash when starting DND on touchscreen https://bugs.webkit.org/show_bug.cgi?id=235694 Reviewed by Adrian Perez de Castro. Source/WebCore: * page/DragController.cpp: (WebCore::DragController::startDrag): Skip drags for touch events on GTK. * platform/PlatformMouseEvent.h: (WebCore::PlatformMouseEvent::isTouchEvent const): Source/WebKit: Drag-n-drop on touch has never worked correctly in GTK, and is usually just disabled. Do the same thing and ignore it for synthesized mouse events. * Shared/NativeWebMouseEvent.h: * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent): * Shared/WebMouseEvent.cpp: (WebKit::WebMouseEvent::WebMouseEvent): (WebKit::WebMouseEvent::encode const): (WebKit::WebMouseEvent::decode): * Shared/WebMouseEvent.h: (WebKit::WebMouseEvent::isTouchEvent const): * Shared/gtk/NativeWebMouseEventGtk.cpp: (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): * UIProcess/API/gtk/WebKitWebViewBase.cpp: (webkitWebViewBaseTouchRelease): (webkitWebViewBaseTouchDragUpdate): (webkitWebViewBaseTouchDragEnd): (webkitWebViewBaseSynthesizeMouseEvent): * UIProcess/API/gtk/WebKitWebViewBaseInternal.h: * UIProcess/gtk/PointerLockManager.cpp: (WebKit::PointerLockManager::handleMotion): Tools: * TestWebKitAPI/glib/CMakeLists.txt: Define BUILDING_TestWebKit Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/DragController.cpp trunk/Source/WebCore/platform/PlatformMouseEvent.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/NativeWebMouseEvent.h trunk/Source/WebKit/Shared/WebEventConversion.cpp trunk/Source/WebKit/Shared/WebMouseEvent.cpp trunk/Source/WebKit/Shared/WebMouseEvent.h trunk/Source/WebKit/Shared/gtk/NativeWebMouseEventGtk.cpp trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBaseInternal.h trunk/Source/WebKit/UIProcess/gtk/PointerLockManager.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/glib/CMakeLists.txt Diff Modified: trunk/Source/WebCore/ChangeLog (289128 => 289129) --- trunk/Source/WebCore/ChangeLog 2022-02-04 18:50:31 UTC (rev 289128) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 18:53:17 UTC (rev 289129) @@ -1,3 +1,16 @@ +2022-02-04 Alexander Mikhaylenko + +[GTK] Crash when starting DND on touchscreen +https://bugs.webkit.org/show_bug.cgi?id=235694 + +Reviewed by Adrian Perez de Castro. + +* page/DragController.cpp: +(WebCore::DragController::startDrag): +Skip drags for touch events on GTK. +* platform/PlatformMouseEvent.h: +(WebCore::PlatformMouseEvent::isTouchEvent const): + 2022-02-04 Christopher Reid Revert some structured binding workarounds with Clang Modified: trunk/Source/WebCore/page/DragController.cpp (289128 => 289129) --- trunk/Source/WebCore/page/DragController.cpp 2022-02-04 18:50:31 UTC (rev 289128) +++ trunk/Source/WebCore/page/DragController.cpp 2022-02-04 18:53:17 UTC (rev 289129) @@ -975,6 +975,11 @@ if (!state.source) return false; +#if PLATFORM(GTK) +if (dragEvent.isTouchEvent()) +return false; +#endif + Ref protector(src); auto hitTestResult = hitTestResultForDragStart(src, *state.source, dragOrigin); if (!hitTestResult) Modified: trunk/Source/WebCore/platform/PlatformMouseEvent.h (289128 => 289129) --- trunk/Source/WebCore/platform/PlatformMouseEvent.h 2022-02-04 18:50:31 UTC (rev 289128) +++ trunk/Source/WebCore/platform/PlatformMouseEvent.h 2022-02-04 18:53:17 UTC (rev 289129) @@ -87,6 +87,12 @@ bool didActivateWebView() const { return m_didActivateWebView; } #endif +#if PLATFORM(GTK) +enum class IsTouch : bool { No, Yes }; + +bool isTouchEvent() const { return m_isTouchEvent == IsTouch::Yes; } +#endif + protected: MouseButton m_button { NoButton }; SyntheticClickType m_syntheticClickType { NoTap }; @@ -105,6 +111,8 @@ int m_menuTypeForEvent { 0 }; #elif PLATFORM(WIN) bool m_didActivateWebView { false }; +#elif PLATFORM(GTK) +IsTouch m_isTouchEvent { IsTouch::No }; #endif }; Modified: trunk/Source/WebKit/ChangeLog (289128 => 289129) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:50:31 UTC (rev 289128) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:53:17 UTC (rev 289129) @@ -1,3 +1,34 @@ +2022-02-04 Alexander Mikhaylenko + +[GTK] Crash when starting DND on touchscreen +https://bugs.webkit.org/show_bug.cgi?id=235694 + +Reviewed by Adrian Perez de Castro. + +Drag-n-drop on touch has never worked correctly in GTK, and is usually +just disabled. Do the same thing and ignore it for synthesized mouse +events. + +* Shared/NativeWebMouseEvent.h: +* Shared/WebEventConversion.cpp: +
[webkit-changes] [289128] trunk/Source
Title: [289128] trunk/Source Revision 289128 Author chris.r...@sony.com Date 2022-02-04 10:50:31 -0800 (Fri, 04 Feb 2022) Log Message Revert some structured binding workarounds with Clang https://bugs.webkit.org/show_bug.cgi?id=236098 Reviewed by Sam Weinig. Revert structured bindings workarounds made in r288309, r261572, r249524 now that this is fixed in clang. Source/WebCore: * Modules/indexeddb/server/MemoryObjectStore.cpp: * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp: * inspector/agents/InspectorNetworkAgent.cpp: Source/WebKit: * NetworkProcess/storage/StorageAreaBase.cpp: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/server/MemoryObjectStore.cpp trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBBackingStore.cpp trunk/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/storage/StorageAreaBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (289127 => 289128) --- trunk/Source/WebCore/ChangeLog 2022-02-04 18:42:08 UTC (rev 289127) +++ trunk/Source/WebCore/ChangeLog 2022-02-04 18:50:31 UTC (rev 289128) @@ -1,3 +1,16 @@ +2022-02-04 Christopher Reid + +Revert some structured binding workarounds with Clang +https://bugs.webkit.org/show_bug.cgi?id=236098 + +Reviewed by Sam Weinig. + +Revert structured bindings workarounds made in r288309, r261572, r249524 now that this is fixed in clang. + +* Modules/indexeddb/server/MemoryObjectStore.cpp: +* Modules/indexeddb/server/SQLiteIDBBackingStore.cpp: +* inspector/agents/InspectorNetworkAgent.cpp: + 2022-02-04 Sam Weinig Gradients don't correctly interpolate missing/none color components correctly Modified: trunk/Source/WebCore/Modules/indexeddb/server/MemoryObjectStore.cpp (289127 => 289128) --- trunk/Source/WebCore/Modules/indexeddb/server/MemoryObjectStore.cpp 2022-02-04 18:42:08 UTC (rev 289127) +++ trunk/Source/WebCore/Modules/indexeddb/server/MemoryObjectStore.cpp 2022-02-04 18:50:31 UTC (rev 289128) @@ -310,8 +310,8 @@ IDBError error; Vector> changedIndexRecords; -for (const auto& entry : indexKeys) { -auto* index = m_indexesByIdentifier.get(entry.key); +for (const auto& [indexID, indexKey] : indexKeys) { +auto* index = m_indexesByIdentifier.get(indexID); ASSERT(index); if (!index) { error = IDBError { InvalidStateError, "Missing index metadata" }; @@ -318,11 +318,11 @@ break; } -error = index->putIndexKey(key, entry.value); +error = index->putIndexKey(key, indexKey); if (!error.isNull()) break; -changedIndexRecords.append(std::make_pair(index, entry.value)); +changedIndexRecords.append(std::make_pair(index, indexKey)); } // If any of the index puts failed, revert all of the ones that went through. Modified: trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBBackingStore.cpp (289127 => 289128) --- trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBBackingStore.cpp 2022-02-04 18:42:08 UTC (rev 289127) +++ trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBBackingStore.cpp 2022-02-04 18:50:31 UTC (rev 289128) @@ -1913,8 +1913,8 @@ const auto& indexMap = info.indexMap(); bool anyRecordsSucceeded = false; -for (const auto& entry : indexKeys) { -auto indexIterator = indexMap.find(entry.key); +for (const auto& [indexID, indexKey] : indexKeys) { +auto indexIterator = indexMap.find(indexID); ASSERT(indexIterator != indexMap.end()); if (indexIterator == indexMap.end()) { @@ -1922,7 +1922,7 @@ break; } -error = uncheckedPutIndexKey(indexIterator->value, key, entry.value, recordID); +error = uncheckedPutIndexKey(indexIterator->value, key, indexKey, recordID); if (!error.isNull()) break; Modified: trunk/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp (289127 => 289128) --- trunk/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp 2022-02-04 18:42:08 UTC (rev 289127) +++ trunk/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp 2022-02-04 18:50:31 UTC (rev 289128) @@ -1193,10 +1193,10 @@ request.setHTTPMethod(method); if (headers) { HTTPHeaderMap explicitHeaders; -for (auto& header : *headers) { -auto headerValue = header.value->asString(); +for (auto& [key, value] : *headers) { +auto headerValue = value->asString(); if (!!headerValue) -explicitHeaders.add(header.key, headerValue); +explicitHeaders.add(key, headerValue); } request.setHTTPHeaderFields(WTFMove(explicitHeaders)); } Modified: trunk/Source/WebKit/ChangeLog (289127 => 289128) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:42:08 UTC (rev 289127)
[webkit-changes] [289127] trunk/Source/WebKit
Title: [289127] trunk/Source/WebKit Revision 289127 Author commit-qu...@webkit.org Date 2022-02-04 10:42:08 -0800 (Fri, 04 Feb 2022) Log Message Unreviewed, reverting r289125. https://bugs.webkit.org/show_bug.cgi?id=236145 Introduced sandbox violation Reverted changeset: "[iOS][WP] Block access to syscalls that are only used during launch" https://bugs.webkit.org/show_bug.cgi?id=236102 https://commits.webkit.org/r289125 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289126 => 289127) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:23:10 UTC (rev 289126) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:42:08 UTC (rev 289127) @@ -1,3 +1,17 @@ +2022-02-04 Commit Queue + +Unreviewed, reverting r289125. +https://bugs.webkit.org/show_bug.cgi?id=236145 + +Introduced sandbox violation + +Reverted changeset: + +"[iOS][WP] Block access to syscalls that are only used during +launch" +https://bugs.webkit.org/show_bug.cgi?id=236102 +https://commits.webkit.org/r289125 + 2022-02-04 Per Arne Vollan [iOS][WP] Block access to syscalls that are only used during launch Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (289126 => 289127) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:23:10 UTC (rev 289126) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:42:08 UTC (rev 289127) @@ -1187,13 +1187,24 @@ SYS_bsdthread_register SYS_chdir SYS_connect +SYS_csops ;; used by Corefoundation initialization SYS_dup2 +SYS_fileport_makefd SYS_fsgetpath +SYS_getegid SYS_getpid +SYS_getrlimit +SYS_gettid +SYS_getuid +SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_kdebug_trace_string +SYS_kdebug_typefilter SYS_objc_bp_assist_cfg_np +SYS_os_fault_with_payload SYS_shared_region_check_np +SYS_shm_open SYS_sigaction +SYS_sysctl SYS_workq_open SYS_writev)) @@ -1209,7 +1220,6 @@ SYS_change_fdguard_np SYS_close SYS_close_nocancel -SYS_csops ;; used by Corefoundation initialization SYS_csops_audittoken ;; used by WK to get entitlments SYS_exit SYS_faccessat ;; @@ -1216,7 +1226,6 @@ SYS_fcntl SYS_fcntl_nocancel SYS_fgetattrlist ;; -SYS_fileport_makefd SYS_flock SYS_fsetattrlist ;; MTLCompilerFSCache::openSync SYS_fsetxattr ;; @@ -1226,23 +1235,17 @@ SYS_ftruncate SYS_getattrlist ;; xpc_realpath and directory enumeration SYS_getdirentries64 -SYS_getegid SYS_getentropy SYS_geteuid SYS_getfsstat64 -SYS_getrlimit SYS_getrusage -SYS_gettid SYS_gettimeofday -SYS_getuid SYS_guarded_close_np SYS_guarded_open_dprotected_np ; SYS_guarded_open_np SYS_guarded_pwrite_np -SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_issetugid SYS_kdebug_trace64 -SYS_kdebug_typefilter SYS_kevent_id SYS_kevent_qos SYS_kqueue ;; @@ -1260,7 +1263,6 @@ SYS_open SYS_open_nocancel SYS_openat -SYS_os_fault_with_payload SYS_pathconf SYS_pread SYS_proc_info @@ -1279,10 +1281,8 @@ SYS_sem_close SYS_sem_open SYS_shared_region_map_and_slide_2_np ;; -SYS_shm_open SYS_stat64 SYS_statfs64 -SYS_sysctl SYS_sysctlbyname SYS_thread_selfid SYS_ulock_wait @@ -1338,7 +1338,8 @@ (allow syscall-unix (syscall-unix-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(deny syscall-unix +(allow syscall-unix +(with report) (with telemetry) (with message "Unix syscall used after launch") (syscall-unix-only-in-use-during-launch))) @@ -1549,7 +1550,8 @@ (allow syscall-mach (syscall-mach-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(deny syscall-mach +(allow syscall-mach +(with report) (with telemetry) (with message "Mach syscall used after launch") (syscall-mach-only-in-use-during-launch))) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289126] trunk/Websites/webkit.org
Title: [289126] trunk/Websites/webkit.org Revision 289126 Author n...@apple.com Date 2022-02-04 10:23:10 -0800 (Fri, 04 Feb 2022) Log Message Add element demos for blog post https://bugs.webkit.org/show_bug.cgi?id=236143 Reviewed by Simon Fraser. * demos/dialog-element/confirmation-dialog-basic.html: Added. * demos/dialog-element/confirmation-dialog-form.html: Added. * demos/dialog-element/dark-theme.css: Added. (body): (@media (prefers-color-scheme: dark) dialog): * demos/dialog-element/styled-dialog.html: Added. Modified Paths trunk/Websites/webkit.org/ChangeLog Added Paths trunk/Websites/webkit.org/demos/dialog-element/ trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-basic.html trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-form.html trunk/Websites/webkit.org/demos/dialog-element/dark-theme.css trunk/Websites/webkit.org/demos/dialog-element/styled-dialog.html Diff Modified: trunk/Websites/webkit.org/ChangeLog (289125 => 289126) --- trunk/Websites/webkit.org/ChangeLog 2022-02-04 18:21:16 UTC (rev 289125) +++ trunk/Websites/webkit.org/ChangeLog 2022-02-04 18:23:10 UTC (rev 289126) @@ -1,3 +1,17 @@ +2022-02-04 Tim Nguyen + +Add element demos for blog post +https://bugs.webkit.org/show_bug.cgi?id=236143 + +Reviewed by Simon Fraser. + +* demos/dialog-element/confirmation-dialog-basic.html: Added. +* demos/dialog-element/confirmation-dialog-form.html: Added. +* demos/dialog-element/dark-theme.css: Added. +(body): +(@media (prefers-color-scheme: dark) dialog): +* demos/dialog-element/styled-dialog.html: Added. + 2022-02-02 Jon Davis Improve color contrast of dark mode syntax highlighting Added: trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-basic.html (0 => 289126) --- trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-basic.html (rev 0) +++ trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-basic.html 2022-02-04 18:23:10 UTC (rev 289126) @@ -0,0 +1,28 @@ + + +Do you want to delete everything? +You will lose all your data. +Cancel +Delete! + +Delete everything + + +let dialog = document.getElementById("confirmation-dialog"); +let result = document.getElementById("result"); + +document.getElementById("delete").addEventListener("click", function() { +dialog.showModal(); +}); + +document.getElementById("cancel-delete").addEventListener("click", function() { +dialog.close(); +result.textContent = "Canceled!"; +}); +document.getElementById("confirm-delete").addEventListener("click", function() { +dialog.close(); +result.textContent = "Deleted!"; +}); + Added: trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-form.html (0 => 289126) --- trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-form.html (rev 0) +++ trunk/Websites/webkit.org/demos/dialog-element/confirmation-dialog-form.html 2022-02-04 18:23:10 UTC (rev 289126) @@ -0,0 +1,26 @@ + + + +Do you want to delete everything? +You will lose all your data. +Cancel +Delete! + + + +Delete everything + + + +let dialog = document.getElementById("confirmation-dialog"); + +document.getElementById("delete").addEventListener("click", function() { +dialog.showModal(); +}); + +dialog.addEventListener("close", function() { +document.getElementById("result").textContent = dialog.returnValue; +}); + Added: trunk/Websites/webkit.org/demos/dialog-element/dark-theme.css (0 => 289126) --- trunk/Websites/webkit.org/demos/dialog-element/dark-theme.css (rev 0) +++ trunk/Websites/webkit.org/demos/dialog-element/dark-theme.css 2022-02-04 18:23:10 UTC (rev 289126) @@ -0,0 +1,10 @@ +body { +color-scheme: light dark; +} + +@media (prefers-color-scheme: dark) { +dialog { +background-color: #313231; +color: #d7d7d8; +} +} Added: trunk/Websites/webkit.org/demos/dialog-element/styled-dialog.html (0 => 289126) --- trunk/Websites/webkit.org/demos/dialog-element/styled-dialog.html (rev 0) +++ trunk/Websites/webkit.org/demos/dialog-element/styled-dialog.html 2022-02-04 18:23:10 UTC (rev 289126) @@ -0,0 +1,31 @@ + + +This is a pretty dialog +The backdrop animates! + + +Show the dialog + + +dialog { +box-shadow: 0 2px 5px rgba(0,0,0,0.3); +border: none; +border-radius: 10px; +} + +dialog::backdrop { +background: linear-gradient(rgba(0,0,0,0.1), rgba(0,0,0,0.4)); +animation: fade-in 1s; +} + +@keyframes fade-in { +from { +opacity: 0; +} +to { +opacity: 1; +} +} + ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289125] trunk/Source/WebKit
Title: [289125] trunk/Source/WebKit Revision 289125 Author pvol...@apple.com Date 2022-02-04 10:21:16 -0800 (Fri, 04 Feb 2022) Log Message [iOS][WP] Block access to syscalls that are only used during launch https://bugs.webkit.org/show_bug.cgi?id=236102 Reviewed by Brent Fulgham. On iOS, block access to 12 Unix syscalls and 4 Mach syscalls after the WebContent process has finished launching. These syscalls are only used during launch. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289124 => 289125) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:19:18 UTC (rev 289124) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:21:16 UTC (rev 289125) @@ -1,5 +1,18 @@ 2022-02-04 Per Arne Vollan +[iOS][WP] Block access to syscalls that are only used during launch +https://bugs.webkit.org/show_bug.cgi?id=236102 + + +Reviewed by Brent Fulgham. + +On iOS, block access to 12 Unix syscalls and 4 Mach syscalls after the WebContent process has finished launching. +These syscalls are only used during launch. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + +2022-02-04 Per Arne Vollan + [macOS][WP] Add telemetry for syscalls used during launch https://bugs.webkit.org/show_bug.cgi?id=235865 Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (289124 => 289125) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:19:18 UTC (rev 289124) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-04 18:21:16 UTC (rev 289125) @@ -1187,24 +1187,13 @@ SYS_bsdthread_register SYS_chdir SYS_connect -SYS_csops ;; used by Corefoundation initialization SYS_dup2 -SYS_fileport_makefd SYS_fsgetpath -SYS_getegid SYS_getpid -SYS_getrlimit -SYS_gettid -SYS_getuid -SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_kdebug_trace_string -SYS_kdebug_typefilter SYS_objc_bp_assist_cfg_np -SYS_os_fault_with_payload SYS_shared_region_check_np -SYS_shm_open SYS_sigaction -SYS_sysctl SYS_workq_open SYS_writev)) @@ -1220,6 +1209,7 @@ SYS_change_fdguard_np SYS_close SYS_close_nocancel +SYS_csops ;; used by Corefoundation initialization SYS_csops_audittoken ;; used by WK to get entitlments SYS_exit SYS_faccessat ;; @@ -1226,6 +1216,7 @@ SYS_fcntl SYS_fcntl_nocancel SYS_fgetattrlist ;; +SYS_fileport_makefd SYS_flock SYS_fsetattrlist ;; MTLCompilerFSCache::openSync SYS_fsetxattr ;; @@ -1235,17 +1226,23 @@ SYS_ftruncate SYS_getattrlist ;; xpc_realpath and directory enumeration SYS_getdirentries64 +SYS_getegid SYS_getentropy SYS_geteuid SYS_getfsstat64 +SYS_getrlimit SYS_getrusage +SYS_gettid SYS_gettimeofday +SYS_getuid SYS_guarded_close_np SYS_guarded_open_dprotected_np ; SYS_guarded_open_np SYS_guarded_pwrite_np +SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging SYS_issetugid SYS_kdebug_trace64 +SYS_kdebug_typefilter SYS_kevent_id SYS_kevent_qos SYS_kqueue ;; @@ -1263,6 +1260,7 @@ SYS_open SYS_open_nocancel SYS_openat +SYS_os_fault_with_payload SYS_pathconf SYS_pread SYS_proc_info @@ -1281,8 +1279,10 @@ SYS_sem_close SYS_sem_open SYS_shared_region_map_and_slide_2_np ;; +SYS_shm_open SYS_stat64 SYS_statfs64 +SYS_sysctl SYS_sysctlbyname SYS_thread_selfid SYS_ulock_wait @@ -1338,8 +1338,7 @@ (allow syscall-unix (syscall-unix-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(allow syscall-unix -(with report) +(deny syscall-unix (with telemetry) (with message "Unix syscall used after launch") (syscall-unix-only-in-use-during-launch))) @@ -1550,8 +1549,7 @@ (allow syscall-mach (syscall-mach-only-in-use-during-launch))) (with-filter (state-flag "WebContentProcessLaunched") -(allow syscall-mach -(with report) +(deny syscall-mach (with telemetry) (with message "Mach syscall used after launch")
[webkit-changes] [289124] trunk/Source/WebKit
Title: [289124] trunk/Source/WebKit Revision 289124 Author pvol...@apple.com Date 2022-02-04 10:19:18 -0800 (Fri, 04 Feb 2022) Log Message [macOS][WP] Add telemetry for syscalls used during launch https://bugs.webkit.org/show_bug.cgi?id=235865 Reviewed by Brent Fulgham. Add telemetry in the WebContent process' sandbox on macOS to determine which syscalls are used only during launch. * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (289123 => 289124) --- trunk/Source/WebKit/ChangeLog 2022-02-04 18:17:30 UTC (rev 289123) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:19:18 UTC (rev 289124) @@ -1,5 +1,17 @@ 2022-02-04 Per Arne Vollan +[macOS][WP] Add telemetry for syscalls used during launch +https://bugs.webkit.org/show_bug.cgi?id=235865 + + +Reviewed by Brent Fulgham. + +Add telemetry in the WebContent process' sandbox on macOS to determine which syscalls are used only during launch. + +* WebProcess/com.apple.WebProcess.sb.in: + +2022-02-04 Per Arne Vollan + [iOS][macOS] Adjust sysctl sandbox access https://bugs.webkit.org/show_bug.cgi?id=236082 Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (289123 => 289124) --- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-02-04 18:17:30 UTC (rev 289123) +++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-02-04 18:19:18 UTC (rev 289124) @@ -1894,8 +1894,25 @@ (disable-syscall-inference) #endif -(define (syscall-unix-common) +#if HAVE(SANDBOX_STATE_FLAGS) +(deny user-preference-read (with enable-state-flag "WebContentProcessLaunched") +(preference-domain "com.apple.WebKit.WebContent.Launch")) +#endif + +(define (syscall-unix-only-in-use-during-launch) (syscall-number +SYS_csops +SYS_csrctl +SYS_fsgetpath +SYS_getaudit_addr +SYS_getfsstat64 +SYS_getrlimit +SYS_kdebug_trace +SYS_pathconf +SYS_statfs64)) + +(define (syscall-unix-in-use-after-launch) +(syscall-number SYS___disable_threadsignal SYS___mac_syscall SYS___pthread_sigmask @@ -1906,9 +1923,7 @@ SYS_bsdthread_terminate SYS_close SYS_close_nocancel -SYS_csops SYS_csops_audittoken -SYS_csrctl SYS_exit SYS_faccessat ;; SYS_fcntl @@ -1917,7 +1932,6 @@ SYS_fileport_makefd SYS_flock SYS_fsetxattr ;; -SYS_fsgetpath SYS_fstat64 SYS_fstatat64 SYS_fstatfs64 @@ -1924,14 +1938,11 @@ SYS_ftruncate SYS_getattrlist SYS_getattrlistbulk -SYS_getaudit_addr SYS_getdirentries64 SYS_getentropy SYS_geteuid -SYS_getfsstat64 SYS_getgid SYS_gethostuuid -SYS_getrlimit SYS_getrusage SYS_gettimeofday SYS_getuid @@ -1938,7 +1949,6 @@ SYS_getxattr SYS_ioctl SYS_issetugid -SYS_kdebug_trace SYS_kdebug_trace64 SYS_kdebug_trace_string ;; Needed for performance sampling, see . SYS_kevent_id @@ -1961,7 +1971,6 @@ SYS_open SYS_open_nocancel SYS_openat -SYS_pathconf SYS_pread SYS_proc_info SYS_psynch_cvbroad @@ -1979,9 +1988,8 @@ SYS_sendto SYS_sigaltstack SYS_sigprocmask +SYS_socket SYS_stat64 -SYS_statfs64 -SYS_socket SYS_sysctlbyname SYS_thread_selfid #if !PLATFORM(MAC) @@ -2044,14 +2052,31 @@ )) (when (defined? 'syscall-unix) -(deny syscall-unix (with send-signal SIGKILL)) +(deny syscall-unix (with telemetry)(with send-signal SIGKILL)) + +#if HAVE(SANDBOX_STATE_FLAGS) +(with-filter (require-not (state-flag "WebContentProcessLaunched")) +(allow syscall-unix +(syscall-unix-in-use-after-launch)) +(allow syscall-unix +(syscall-unix-only-in-use-during-launch))) +(with-filter (state-flag "WebContentProcessLaunched") +(allow syscall-unix +(syscall-unix-in-use-after-launch)) +(allow syscall-unix +(with report) +(with telemetry) +(with message "Unix syscall used after launch") +(syscall-unix-only-in-use-during-launch))) +#else (allow syscall-unix -(syscall-unix-common)) +(syscall-unix-only-in-use-during-launch) +(syscall-unix-in-use-after-launch)) +#endif -(if (equal? (param "CPU") "arm64") -(begin +(when (equal? (param "CPU") "arm64") (allow syscall-unix -(syscall-unix-apple-silicon +(syscall-unix-apple-silicon))) (allow syscall-unix #if
[webkit-changes] [289123] trunk/Source/WebKit
Title: [289123] trunk/Source/WebKit Revision 289123 Author pvol...@apple.com Date 2022-02-04 10:17:30 -0800 (Fri, 04 Feb 2022) Log Message [iOS][macOS] Adjust sysctl sandbox access https://bugs.webkit.org/show_bug.cgi?id=236082 Reviewed by Brent Fulgham. Adjust sysctl sandbox access based on telemetry. * GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in: * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb Diff Modified: trunk/Source/WebKit/ChangeLog (289122 => 289123) --- trunk/Source/WebKit/ChangeLog 2022-02-04 17:26:30 UTC (rev 289122) +++ trunk/Source/WebKit/ChangeLog 2022-02-04 18:17:30 UTC (rev 289123) @@ -1,3 +1,17 @@ +2022-02-04 Per Arne Vollan + +[iOS][macOS] Adjust sysctl sandbox access +https://bugs.webkit.org/show_bug.cgi?id=236082 + + +Reviewed by Brent Fulgham. + +Adjust sysctl sandbox access based on telemetry. + +* GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in: +* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: +* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: + 2022-02-04 Kate Cheney Fix App Privacy Report redirect attribution Modified: trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in (289122 => 289123) --- trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2022-02-04 17:26:30 UTC (rev 289122) +++ trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2022-02-04 18:17:30 UTC (rev 289123) @@ -152,7 +152,6 @@ "hw.l2cachesize" "hw.logicalcpu" "hw.logicalcpu_max" -"hw.machine" "hw.memsize" "hw.model" "hw.ncpu" @@ -168,7 +167,6 @@ "kern.osproductversion" "kern.osrelease" "kern.ostype" -"kern.osversion" "kern.version") (sysctl-name-prefix "hw.optional.") ;; (sysctl-name-prefix "hw.perflevel") ;; Modified: trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in (289122 => 289123) --- trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in 2022-02-04 17:26:30 UTC (rev 289122) +++ trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in 2022-02-04 18:17:30 UTC (rev 289123) @@ -161,10 +161,12 @@ (deny sysctl* (with telemetry)) (allow sysctl-read (sysctl-name +"hw.cputype" "hw.memsize" "hw.ncpu" "kern.maxfilesperproc" "kern.osproductversion" ;; Needed by CFNetwork (HSTS store and others) +"kern.osrelease" "kern.ostype" "kern.osversion" ;; Needed by WebKit and ASL logging. "kern.tcsm_available" ;; Needed for IndexedDB support. Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb (289122 => 289123) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2022-02-04 17:26:30 UTC (rev 289122) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2022-02-04 18:17:30 UTC (rev 289123) @@ -471,6 +471,7 @@ "hw.memsize" "hw.ncpu" "hw.pagesize_compat" +"kern.bootargs" "kern.hostname" "kern.maxfilesperproc" "kern.osproductversion" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [289122] trunk
Title: [289122] trunk Revision 289122 Author wei...@apple.com Date 2022-02-04 09:26:30 -0800 (Fri, 04 Feb 2022) Log Message Gradients don't correctly interpolate missing/none color components correctly https://bugs.webkit.org/show_bug.cgi?id=236025 Reviewed by Simon Fraser. Source/WebCore: Test: fast/gradients/gradient-with-missing-components.html * platform/graphics/Color.cpp: (WebCore::Color::anyComponentIsNone const): * platform/graphics/Color.h: Add helper to check if any component is 'none'. * platform/graphics/ColorComponents.h: (WebCore::operator==): Update operator== for ColorComponents to be none-aware and treat two components that are both none as equal. * platform/graphics/ColorTypes.h: (WebCore::assertInRange): (WebCore::constexprIsNaN): Deleted. Adopt shared version of the constexpr isnan. * platform/graphics/cg/GradientRendererCG.cpp: (WebCore::anyComponentIsNone): (WebCore::GradientRendererCG::pickStrategy const): (WebCore::GradientRendererCG::makeShading const): Use the CGShaderRef strategy if any component of any stop is none, as it is the only one that currently supports it correctly. Ensure none is preserved by utilizing the unresolved component values. This can be optimized in the future by preprocessing the color stops to pre-resolve the none components, even allowing the CGGradientRef path to be used for supported cases. Source/WTF: Move isNaNConstExpr to MathExtras.h from WebCore so it can used in multiple places. * wtf/MathExtras.h: (WTF::isNaNConstExpr): LayoutTests: Add tests of gradients with explicit 'none' components in some of the colors. * fast/gradients/gradient-with-missing-components-expected.html: Added. * fast/gradients/gradient-with-missing-components.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/MathExtras.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/Color.cpp trunk/Source/WebCore/platform/graphics/Color.h trunk/Source/WebCore/platform/graphics/ColorComponents.h trunk/Source/WebCore/platform/graphics/ColorTypes.h trunk/Source/WebCore/platform/graphics/cg/GradientRendererCG.cpp Added Paths trunk/LayoutTests/fast/gradients/gradient-with-missing-components-expected.html trunk/LayoutTests/fast/gradients/gradient-with-missing-components.html Diff Modified: trunk/LayoutTests/ChangeLog (289121 => 289122) --- trunk/LayoutTests/ChangeLog 2022-02-04 17:06:32 UTC (rev 289121) +++ trunk/LayoutTests/ChangeLog 2022-02-04 17:26:30 UTC (rev 289122) @@ -1,3 +1,15 @@ +2022-02-04 Sam Weinig + +Gradients don't correctly interpolate missing/none color components correctly +https://bugs.webkit.org/show_bug.cgi?id=236025 + +Reviewed by Simon Fraser. + +Add tests of gradients with explicit 'none' components in some of the colors. + +* fast/gradients/gradient-with-missing-components-expected.html: Added. +* fast/gradients/gradient-with-missing-components.html: Added. + 2022-02-04 Kate Cheney Fix App Privacy Report redirect attribution Added: trunk/LayoutTests/fast/gradients/gradient-with-missing-components-expected.html (0 => 289122) --- trunk/LayoutTests/fast/gradients/gradient-with-missing-components-expected.html (rev 0) +++ trunk/LayoutTests/fast/gradients/gradient-with-missing-components-expected.html 2022-02-04 17:26:30 UTC (rev 289122) @@ -0,0 +1,50 @@ + + + + +div { +width: 100px; +height: 100px; +border: dashed black 1px; +display: inline-block; +} + +#blue-white-none { +background-image: linear-gradient(in oklch, oklch(45% 0.3 265) 0%, oklch(from white l c 265) 100%); +} +#white-none-blue { +background-image: linear-gradient(in oklch, oklch(from white l c 265) 0%, oklch(45% 0.3 265) 100%); +} +#blue-white-none-red { +background-image: linear-gradient(in oklch, oklch(45% 0.3 265) 0%, oklch(from white l c 265) 50%, oklch(from white l c 30) 50%, oklch(60% 0.25 30) 100%); +} +#white-none-red-white-none { +background-image: linear-gradient(in oklch, oklch(from white l c none) 0%, oklch(60% 0.25 30) 50%, oklch(from white l c none) 100%); +} + +#blue-black-none { +background-image: linear-gradient(in oklch, oklch(45% 0.3 265) 0%, oklch(from black l c 265) 100%); +} +#black-none-blue { +background-image: linear-gradient(in oklch, oklch(from black l c 265) 0%, oklch(45% 0.3 265) 100%); +} +#blue-black-none-red { +background-image: linear-gradient(in oklch, oklch(45% 0.3 265) 0%, oklch(from black l c 265) 50%, oklch(from black l c 30) 50%, oklch(60% 0.25 30) 100%); +} +#black-none-red-black-none { +background-image: linear-gradient(in oklch, oklch(from black l c none) 0%, oklch(60% 0.25 30) 50%, oklch(from black l c none) 100%); +} + + + + + + + + + + + + + + Added:
[webkit-changes] [289121] trunk
Title: [289121] trunk Revision 289121 Author katherine_che...@apple.com Date 2022-02-04 09:06:32 -0800 (Fri, 04 Feb 2022) Log Message Fix App Privacy Report redirect attribution https://bugs.webkit.org/show_bug.cgi?id=236111 Reviewed by Brent Fulgham. Source/WebCore: Test: http/tests/app-privacy-report/user-attribution-redirect.html Test: http/tests/app-privacy-report/app-attribution-redirect.html * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Source/WebKit: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): LayoutTests: * http/tests/app-privacy-report/resources/redirect.js: Added. * http/tests/app-privacy-report/app-attribution-redirect-expected.txt: Added. * http/tests/app-privacy-report/app-attribution-redirect.html: Added. * http/tests/app-privacy-report/user-attribution-redirect-expected.txt: Added. * http/tests/app-privacy-report/user-attribution-redirect.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm Added Paths trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect-expected.txt trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect.html trunk/LayoutTests/http/tests/app-privacy-report/resources/redirect.js trunk/LayoutTests/http/tests/app-privacy-report/user-attribution-redirect-expected.txt trunk/LayoutTests/http/tests/app-privacy-report/user-attribution-redirect.html Diff Modified: trunk/LayoutTests/ChangeLog (289120 => 289121) --- trunk/LayoutTests/ChangeLog 2022-02-04 17:04:43 UTC (rev 289120) +++ trunk/LayoutTests/ChangeLog 2022-02-04 17:06:32 UTC (rev 289121) @@ -1,3 +1,16 @@ +2022-02-04 Kate Cheney + +Fix App Privacy Report redirect attribution +https://bugs.webkit.org/show_bug.cgi?id=236111 + +Reviewed by Brent Fulgham. + +* http/tests/app-privacy-report/resources/redirect.js: Added. +* http/tests/app-privacy-report/app-attribution-redirect-expected.txt: Added. +* http/tests/app-privacy-report/app-attribution-redirect.html: Added. +* http/tests/app-privacy-report/user-attribution-redirect-expected.txt: Added. +* http/tests/app-privacy-report/user-attribution-redirect.html: Added. + 2022-02-04 Chris Dumez Unreviewed, unskip more Shared Worker layout tests on WK2. Added: trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect-expected.txt (0 => 289121) --- trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect-expected.txt 2022-02-04 17:06:32 UTC (rev 289121) @@ -0,0 +1,9 @@ +CONSOLE MESSAGE: Origin http://127.0.0.1:8000 is not allowed by Access-Control-Allow-Origin. Status code: 200 +CONSOLE MESSAGE: XMLHttpRequest cannot load http://localhost:8000/app-privacy-report/resources/redirect.js due to access control checks. +Test that a cross-origin redirect to a server that responds is indistinguishable from one that does not. Should say PASS: + +PASS successfully loaded only app initiated requests +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect.html (0 => 289121) --- trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect.html (rev 0) +++ trunk/LayoutTests/http/tests/app-privacy-report/app-attribution-redirect.html 2022-02-04 17:06:32 UTC (rev 289121) @@ -0,0 +1,59 @@ + + + + +Test that a cross-origin redirect to a server that responds is indistinguishable from one that does not. Should say PASS:
+ +