[webkit-changes] [286285] trunk/Tools
Title: [286285] trunk/Tools Revision 286285 Author simon.fra...@apple.com Date 2021-11-29 23:28:29 -0800 (Mon, 29 Nov 2021) Log Message Store image resolution in layout test snapshots, and have ImageDiff read it https://bugs.webkit.org/show_bug.cgi?id=233609 Reviewed by Darin Adler. On the way to fixing bug 232525, we need to communicate to ImageDiff the resolution of layout test snapshots so that it can account for the resolution when computing pixel tolerance values, which should be reported in CSS pixels. So have DumpRenderTree and WebKitTestRunner, on Cocoa platforms, add image resolution metadata, where a 2x snapshot (i.e. a hidpi test) reports a horizontal and vertical resolution of 144dpi. Change ImageDiff to read these values and store them in PlatformImage; a future patch will make use of the data. * DumpRenderTree/cg/PixelDumpSupportCG.cpp: (printPNG): (dumpBitmap): * DumpRenderTree/cg/PixelDumpSupportCG.h: (BitmapContext::scaleFactor const): (BitmapContext::setScaleFactor): * DumpRenderTree/ios/PixelDumpSupportIOS.mm: (createBitmapContextFromWebView): * DumpRenderTree/mac/PixelDumpSupportMac.mm: (createBitmapContextFromWebView): * ImageDiff/ImageDiff.cpp: (main): * ImageDiff/PlatformImage.h: (ImageDiff::PlatformImage::scaleFactor const): * ImageDiff/cg/PlatformImageCG.cpp: (ImageDiff::createImageFromDataProvider): (ImageDiff::PlatformImage::createFromFile): (ImageDiff::PlatformImage::createFromStdin): (ImageDiff::PlatformImage::PlatformImage): * WebKitTestRunner/cg/TestInvocationCG.cpp: (WTR::dumpBitmap): (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Modified Paths trunk/Tools/ChangeLog trunk/Tools/DumpRenderTree/cg/PixelDumpSupportCG.cpp trunk/Tools/DumpRenderTree/cg/PixelDumpSupportCG.h trunk/Tools/DumpRenderTree/ios/PixelDumpSupportIOS.mm trunk/Tools/DumpRenderTree/mac/PixelDumpSupportMac.mm trunk/Tools/ImageDiff/ImageDiff.cpp trunk/Tools/ImageDiff/PlatformImage.h trunk/Tools/ImageDiff/cg/PlatformImageCG.cpp trunk/Tools/WebKitTestRunner/cg/TestInvocationCG.cpp Diff Modified: trunk/Tools/ChangeLog (286284 => 286285) --- trunk/Tools/ChangeLog 2021-11-30 05:24:37 UTC (rev 286284) +++ trunk/Tools/ChangeLog 2021-11-30 07:28:29 UTC (rev 286285) @@ -1,3 +1,44 @@ +2021-11-29 Simon Fraser + +Store image resolution in layout test snapshots, and have ImageDiff read it +https://bugs.webkit.org/show_bug.cgi?id=233609 + +Reviewed by Darin Adler. + +On the way to fixing bug 232525, we need to communicate to ImageDiff the resolution of +layout test snapshots so that it can account for the resolution when computing pixel +tolerance values, which should be reported in CSS pixels. + +So have DumpRenderTree and WebKitTestRunner, on Cocoa platforms, add image resolution +metadata, where a 2x snapshot (i.e. a hidpi test) reports a horizontal and vertical +resolution of 144dpi. + +Change ImageDiff to read these values and store them in PlatformImage; a future patch will +make use of the data. + +* DumpRenderTree/cg/PixelDumpSupportCG.cpp: +(printPNG): +(dumpBitmap): +* DumpRenderTree/cg/PixelDumpSupportCG.h: +(BitmapContext::scaleFactor const): +(BitmapContext::setScaleFactor): +* DumpRenderTree/ios/PixelDumpSupportIOS.mm: +(createBitmapContextFromWebView): +* DumpRenderTree/mac/PixelDumpSupportMac.mm: +(createBitmapContextFromWebView): +* ImageDiff/ImageDiff.cpp: +(main): +* ImageDiff/PlatformImage.h: +(ImageDiff::PlatformImage::scaleFactor const): +* ImageDiff/cg/PlatformImageCG.cpp: +(ImageDiff::createImageFromDataProvider): +(ImageDiff::PlatformImage::createFromFile): +(ImageDiff::PlatformImage::createFromStdin): +(ImageDiff::PlatformImage::PlatformImage): +* WebKitTestRunner/cg/TestInvocationCG.cpp: +(WTR::dumpBitmap): +(WTR::TestInvocation::dumpPixelsAndCompareWithExpected): + 2021-11-29 Jonathan Bedard [webkitscmpy] Guard git-webkit with __name__ Modified: trunk/Tools/DumpRenderTree/cg/PixelDumpSupportCG.cpp (286284 => 286285) --- trunk/Tools/DumpRenderTree/cg/PixelDumpSupportCG.cpp 2021-11-30 05:24:37 UTC (rev 286284) +++ trunk/Tools/DumpRenderTree/cg/PixelDumpSupportCG.cpp 2021-11-30 07:28:29 UTC (rev 286285) @@ -33,7 +33,7 @@ #include "DumpRenderTree.h" #include "PixelDumpSupport.h" -#include +#include #include #include #include @@ -57,11 +57,20 @@ static const CFStringRef kUTTypePNG = CFSTR("public.png"); #endif -static void printPNG(CGImageRef image, const char* checksum) +static void printPNG(CGImageRef image, const char* checksum, double scaleFactor) { -RetainPtr imageData = adoptCF(CFDataCreateMutable(0, 0)); -RetainPtr imageDest = adoptCF(CGImageDestinationCreateWithData(imageData.get(), kUTTypePNG, 1, 0)); -CGImageDestinationAddImage(imageDest.get(),
[webkit-changes] [286283] trunk
Title: [286283] trunk Revision 286283 Author ysuz...@apple.com Date 2021-11-29 20:43:51 -0800 (Mon, 29 Nov 2021) Log Message [JSC] jumpForTypedArrayOutOfBounds should use asAnyInt since it uses isAnyInt https://bugs.webkit.org/show_bug.cgi?id=233610 rdar://85820476 Reviewed by Saam Barati. JSTests: * stress/anyint-index.js: Added. (foo): Source/_javascript_Core: Since we are using isAnyInt, then we should use asAnyInt. asUInt32 will crash if the value is double AnyInt etc. * dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp Added Paths trunk/JSTests/stress/anyint-index.js Diff Modified: trunk/JSTests/ChangeLog (286282 => 286283) --- trunk/JSTests/ChangeLog 2021-11-30 04:23:14 UTC (rev 286282) +++ trunk/JSTests/ChangeLog 2021-11-30 04:43:51 UTC (rev 286283) @@ -1,3 +1,14 @@ +2021-11-29 Yusuke Suzuki + +[JSC] jumpForTypedArrayOutOfBounds should use asAnyInt since it uses isAnyInt +https://bugs.webkit.org/show_bug.cgi?id=233610 +rdar://85820476 + +Reviewed by Saam Barati. + +* stress/anyint-index.js: Added. +(foo): + 2021-11-29 Saam Barati FTL's implementation of HasIndexedProperty for InBounds accesses checks the inverse of what it should be checking when exiting by seeing a hole Added: trunk/JSTests/stress/anyint-index.js (0 => 286283) --- trunk/JSTests/stress/anyint-index.js (rev 0) +++ trunk/JSTests/stress/anyint-index.js 2021-11-30 04:43:51 UTC (rev 286283) @@ -0,0 +1,14 @@ +let ta = new Uint8Array(1); + +function foo(arg0) { + 'a'.__defineGetter__('x', () => { +arg0; + }); + arg0 **= 0; + ta[arg0]; +} + + +for (let i = 0; i < 1; i++) { + foo(0); +} Modified: trunk/Source/_javascript_Core/ChangeLog (286282 => 286283) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-30 04:23:14 UTC (rev 286282) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-30 04:43:51 UTC (rev 286283) @@ -1,3 +1,17 @@ +2021-11-29 Yusuke Suzuki + +[JSC] jumpForTypedArrayOutOfBounds should use asAnyInt since it uses isAnyInt +https://bugs.webkit.org/show_bug.cgi?id=233610 +rdar://85820476 + +Reviewed by Saam Barati. + +Since we are using isAnyInt, then we should use asAnyInt. asUInt32 will crash +if the value is double AnyInt etc. + +* dfg/DFGSpeculativeJIT.cpp: +(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds): + 2021-11-29 Saam Barati FTL's implementation of HasIndexedProperty for InBounds accesses checks the inverse of what it should be checking when exiting by seeing a hole Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (286282 => 286283) --- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2021-11-30 04:23:14 UTC (rev 286282) +++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp 2021-11-30 04:43:51 UTC (rev 286283) @@ -3537,7 +3537,7 @@ if (view) { size_t length = view->length(); Node* indexNode = m_jit.graph().child(node, 1).node(); -if (indexNode->isAnyIntConstant() && indexNode->asUInt32() < length) +if (indexNode->isAnyIntConstant() && static_cast(indexNode->asAnyInt()) < length) return JITCompiler::Jump(); #if USE(LARGE_TYPED_ARRAYS) m_jit.signExtend32ToPtr(indexGPR, scratchGPR); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286282] trunk
Title: [286282] trunk Revision 286282 Author wenson_hs...@apple.com Date 2021-11-29 20:23:14 -0800 (Mon, 29 Nov 2021) Log Message [Webpage translation] Avoid translating text inside image overlays https://bugs.webkit.org/show_bug.cgi?id=233225 rdar://85713734 Reviewed by Aditya Keerthi. Source/WebCore: Add `translate="no"` to image overlay content; text in image overlays is meant to visually match recognized text in the image, and should never be modified as a part of webpage translation. Test: fast/images/text-recognition/image-overlay-do-not-translate.html * dom/ImageOverlay.cpp: (WebCore::ImageOverlay::updateSubtree): LayoutTests: Add a test to verify that `translate` is `false` on the image overlay root container element. * fast/images/text-recognition/image-overlay-do-not-translate-expected.txt: Added. * fast/images/text-recognition/image-overlay-do-not-translate.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ImageOverlay.cpp Added Paths trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate-expected.txt trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate.html Diff Modified: trunk/LayoutTests/ChangeLog (286281 => 286282) --- trunk/LayoutTests/ChangeLog 2021-11-30 03:25:00 UTC (rev 286281) +++ trunk/LayoutTests/ChangeLog 2021-11-30 04:23:14 UTC (rev 286282) @@ -1,3 +1,16 @@ +2021-11-29 Wenson Hsieh + +[Webpage translation] Avoid translating text inside image overlays +https://bugs.webkit.org/show_bug.cgi?id=233225 +rdar://85713734 + +Reviewed by Aditya Keerthi. + +Add a test to verify that `translate` is `false` on the image overlay root container element. + +* fast/images/text-recognition/image-overlay-do-not-translate-expected.txt: Added. +* fast/images/text-recognition/image-overlay-do-not-translate.html: Added. + 2021-11-29 Lauro Moura [GLIB] Gardening SVG filter failures after r286203 Added: trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate-expected.txt (0 => 286282) --- trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate-expected.txt (rev 0) +++ trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate-expected.txt 2021-11-30 04:23:14 UTC (rev 286282) @@ -0,0 +1,6 @@ +PASS imageOverlayContainer(image1).translate is false +PASS imageOverlayContainer(image2).translate is false +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate.html (0 => 286282) --- trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate.html (rev 0) +++ trunk/LayoutTests/fast/images/text-recognition/image-overlay-do-not-translate.html 2021-11-30 04:23:14 UTC (rev 286282) @@ -0,0 +1,51 @@ + + + + +body, html { +margin: 0; +} + + + ++function imageOverlayContainer(image) { +return internals.shadowRoot(image1).getElementById("image-overlay"); +} + +addEventListener("load", () => { +image1 = document.getElementById("img1"); +image2 = document.getElementById("img2"); +internals.installImageOverlay(image1, [], [ +{ +topLeft : new DOMPointReadOnly(0.1, 0.1), +topRight : new DOMPointReadOnly(0.4, 0.1), +bottomRight : new DOMPointReadOnly(0.4, 0.4), +bottomLeft : new DOMPointReadOnly(0.1, 0.4), +text : "Hello", +} +]); +internals.installImageOverlay(image2, [ +{ +topLeft : new DOMPointReadOnly(0.5, 0.5), +topRight : new DOMPointReadOnly(1, 0.5), +bottomRight : new DOMPointReadOnly(1, 1), +bottomLeft : new DOMPointReadOnly(0.5, 1), +children: [{ +text : "World", +topLeft : new DOMPointReadOnly(0.5, 0.5), +topRight : new DOMPointReadOnly(1, 0.5), +bottomRight : new DOMPointReadOnly(1, 1), +bottomLeft : new DOMPointReadOnly(0.5, 1), +}], +} +]); +shouldBe("imageOverlayContainer(image1).translate", "false"); +shouldBe("imageOverlayContainer(image2).translate", "false"); +}); + + + \ No newline at end of file Modified: trunk/Source/WebCore/ChangeLog (286281 => 286282) --- trunk/Source/WebCore/ChangeLog 2021-11-30 03:25:00 UTC (rev 286281) +++ trunk/Source/WebCore/ChangeLog 2021-11-30 04:23:14 UTC (rev 286282) @@ -1,3 +1,19 @@ +2021-11-29 Wenson Hsieh + +[Webpage translation] Avoid translating text inside image overlays +https://bugs.webkit.org/show_bug.cgi?id=233225 +rdar://85713734 + +Reviewed by Aditya Keerthi. + +Add `translate="no"` to image overlay content; text in image overlays is meant to
[webkit-changes] [286281] trunk/LayoutTests
Title: [286281] trunk/LayoutTests Revision 286281 Author lmo...@igalia.com Date 2021-11-29 19:25:00 -0800 (Mon, 29 Nov 2021) Log Message [GLIB] Gardening SVG filter failures after r286203 Unreviewed test gardening. * platform/glib/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (286280 => 286281) --- trunk/LayoutTests/ChangeLog 2021-11-30 02:33:06 UTC (rev 286280) +++ trunk/LayoutTests/ChangeLog 2021-11-30 03:25:00 UTC (rev 286281) @@ -1,3 +1,11 @@ +2021-11-29 Lauro Moura + +[GLIB] Gardening SVG filter failures after r286203 + +Unreviewed test gardening. + +* platform/glib/TestExpectations: + 2021-11-29 Simon Fraser Revert changes related to using a scroll animator for momentum scrolling Modified: trunk/LayoutTests/platform/glib/TestExpectations (286280 => 286281) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-11-30 02:33:06 UTC (rev 286280) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-11-30 03:25:00 UTC (rev 286281) @@ -135,7 +135,6 @@ imported/mozilla/svg/blend-hard-light.svg [ Pass ] imported/mozilla/svg/dynamic-textPath-02.svg [ Pass ] -imported/mozilla/svg/image/image-filter-01.svg [ Pass ] inspector/page/setScreenSizeOverride.html [ Pass ] @@ -258,7 +257,6 @@ webaudio/Panner/panner-loop.html [ Timeout Pass ] # CSS backgrounds. Passing after WPT re-import in r277073. -imported/w3c/web-platform-tests/css/css-backgrounds/background-size-percentage-root.html [ Pass ] imported/w3c/web-platform-tests/css/css-backgrounds/bg-color-with-gradient.html [ Pass ] imported/w3c/web-platform-tests/css/css-backgrounds/box-shadow-overlapping-001.html [ Pass ] imported/w3c/web-platform-tests/css/css-backgrounds/css3-border-image-repeat-repeat.html [ Pass ] @@ -389,6 +387,38 @@ # Cairo-related bugs # +webkit.org/b/233611 fast/images/exif-orientation-svg-feimage.html [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filter-bounds-02.svg [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filter-scaled-02.html [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filters-and-group-opacity-01.svg [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filters/feBlend-1.svg [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filters/feConvolveMatrix-1.svg [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/filters/feGaussianBlur-2.svg [ ImageOnlyFailure ] +# This one below was [ Pass ] before +webkit.org/b/233611 imported/mozilla/svg/image/image-filter-01.svg [ ImageOnlyFailure ] +webkit.org/b/233611 imported/mozilla/svg/text/filter-applied.svg [ ImageOnlyFailure ] +# This one needs a [Pass] after fixed, due to root expectation being ImageOnlyFailure. Was passing after r277073. +webkit.org/b/233611 imported/w3c/web-platform-tests/css/css-backgrounds/background-size-percentage-root.html [ ImageOnlyFailure ] +webkit.org/b/233611 imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-matrix.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feComposite-background-rect-control-operators.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feCompositeOpaque.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feDiffuseLighting-fePointLight-primitiveUnits-objectBoundingBox.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feDiffuseLighting-feSpotLight-primitiveUnits-objectBoundingBox.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feDisplacementMap-color-interpolation-filters.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feFlood-color-interpolation.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feFlood-with-alpha-color.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feImage-image-primitive-subregion.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feMorphology-radius-cases.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feMorphology-zero-radius-one-axis.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/fePointLight-coordinates.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feSpecularLighting-fePointLight-primitiveUnits-objectBoundingBox.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feSpotLight-coordinates.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feTurbulence-parallel-jobs.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feTurbulence-stitchTiles.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/feTurbulence_bad_seeds.html [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/hidpi/fePointLight-coordinates.svg [ ImageOnlyFailure ] +webkit.org/b/233611 svg/filters/hidpi/feSpotLight-coordinates.svg [ ImageOnlyFailure ] +
[webkit-changes] [286280] tags/Safari-612.3.6.1.6/
Title: [286280] tags/Safari-612.3.6.1.6/ Revision 286280 Author alanc...@apple.com Date 2021-11-29 18:33:06 -0800 (Mon, 29 Nov 2021) Log Message Tag Safari-612.3.6.1.6. Added Paths tags/Safari-612.3.6.1.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286279] tags/Safari-612.3.6.0.4/
Title: [286279] tags/Safari-612.3.6.0.4/ Revision 286279 Author alanc...@apple.com Date 2021-11-29 18:25:52 -0800 (Mon, 29 Nov 2021) Log Message Tag Safari-612.3.6.0.4. Added Paths tags/Safari-612.3.6.0.4/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286278] trunk
Title: [286278] trunk Revision 286278 Author sbar...@apple.com Date 2021-11-29 17:58:37 -0800 (Mon, 29 Nov 2021) Log Message FTL's implementation of HasIndexedProperty for InBounds accesses checks the inverse of what it should be checking when exiting by seeing a hole https://bugs.webkit.org/show_bug.cgi?id=233408 Reviewed by Mark Lam. JSTests: * stress/in-by-val-has-indexed-property-ftl-3.js: Added. * stress/in-by-val-has-indexed-property-ftl-2.js: Added. * stress/in-by-val-has-indexed-property-ftl.js: Added. Source/_javascript_Core: The implementation of an InBounds HasIndexedProperty in FTL, when speculating, we would exit when we did not see a hole, not when we did see a hole. This is the inverse of what we need to do, we should exit when we do see a hole. * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * tools/JSDollarVM.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): (JSC::JSDollarVM::finishCreation): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp trunk/Source/_javascript_Core/tools/JSDollarVM.cpp Added Paths trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-2.js trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-3.js trunk/JSTests/stress/in-by-val-has-indexed-property-ftl.js Diff Modified: trunk/JSTests/ChangeLog (286277 => 286278) --- trunk/JSTests/ChangeLog 2021-11-30 01:42:49 UTC (rev 286277) +++ trunk/JSTests/ChangeLog 2021-11-30 01:58:37 UTC (rev 286278) @@ -1,3 +1,15 @@ +2021-11-29 Saam Barati + +FTL's implementation of HasIndexedProperty for InBounds accesses checks the inverse of what it should be checking when exiting by seeing a hole +https://bugs.webkit.org/show_bug.cgi?id=233408 + + +Reviewed by Mark Lam. + +* stress/in-by-val-has-indexed-property-ftl-3.js: Added. +* stress/in-by-val-has-indexed-property-ftl-2.js: Added. +* stress/in-by-val-has-indexed-property-ftl.js: Added. + 2021-11-29 Yusuke Suzuki [JSC] slice should be aware of TerminationException Added: trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-2.js (0 => 286278) --- trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-2.js (rev 0) +++ trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-2.js 2021-11-30 01:58:37 UTC (rev 286278) @@ -0,0 +1,28 @@ +//@ runDefault("--validateOptions=true", "--useConcurrentJIT=false", "--useConcurrentGC=false", "--validateBCE=true", "--thresholdForJITSoon=1", "--thresholdForJITAfterWarmUp=7", "--thresholdForOptimizeAfterWarmUp=7", "--thresholdForOptimizeAfterLongWarmUp=7", "--thresholdForOptimizeSoon=1", "--thresholdForFTLOptimizeAfterWarmUp=10") + +function assert(b) { +if (!b) +throw new Error; +} + +function main() { +let v17 = {__proto__:[42,1]}; +v17[2] = 4; + +let v92 = 0; +for (let v95 = 0; v95 < 100; v95++) { +function doEvery(e, i) { +assert(e === 42); +assert(i === 0); +function doMap() { +v139 = v92++; +} +noInline(doMap); +[0].map(doMap); +} +noInline(doEvery); +v17.every(doEvery); +} +assert(v139 === 99); +} +main(); Added: trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-3.js (0 => 286278) --- trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-3.js (rev 0) +++ trunk/JSTests/stress/in-by-val-has-indexed-property-ftl-3.js 2021-11-30 01:58:37 UTC (rev 286278) @@ -0,0 +1,97 @@ +function assert(b) { +if (!b) +throw new Error; +} + +function test1() { +function func(b, o) { +if (b) +return 2 in o; +return false; +} +noInline(func); + +let o = {__proto__:[0, 1]}; +o[3] = 42; + +for (let i = 0; i < 100; ++i) { +func(true, o); +func(false, o); +} + +for (let i = 0; i < 1; ++i) { +assert(!func(false, o)); +} +assert(!func(true, o)); +} +test1(); + +function test2() { +function func(b, o) { +if (b) +return 2 in o; +return false; +} +noInline(func); + +let o = {__proto__:[0, 1]}; +o[3] = {}; + +for (let i = 0; i < 100; ++i) { +func(true, o); +func(false, o); +} + +for (let i = 0; i < 1; ++i) { +assert(!func(false, o)); +} +assert(!func(true, o)); +} +test2(); + +function test3() { +function func(b, o) { +if (b) +return 2 in o; +return false; +} +noInline(func); + +let o = {__proto__:[0, 1]}; +o[3] = 42.2; + +for (let i = 0; i < 100; ++i) { +func(true, o); +func(false, o); +} + +for (let i = 0; i < 1; ++i) { +assert(!func(false, o)); +} +assert(!func(true, o)); +} +test3(); + +function test4() { +function func(b, o) { +
[webkit-changes] [286277] trunk/Source/WebKit
Title: [286277] trunk/Source/WebKit Revision 286277 Author timothy_hor...@apple.com Date 2021-11-29 17:42:49 -0800 (Mon, 29 Nov 2021) Log Message Fix the build * Shared/ios/WebIOSEventFactory.mm: (WebIOSEventFactory::createWebWheelEvent): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/ios/WebIOSEventFactory.mm Diff Modified: trunk/Source/WebKit/ChangeLog (286276 => 286277) --- trunk/Source/WebKit/ChangeLog 2021-11-30 01:23:53 UTC (rev 286276) +++ trunk/Source/WebKit/ChangeLog 2021-11-30 01:42:49 UTC (rev 286277) @@ -1,3 +1,10 @@ +2021-11-29 Tim Horton + +Fix the build + +* Shared/ios/WebIOSEventFactory.mm: +(WebIOSEventFactory::createWebWheelEvent): + 2021-11-29 Brady Eidson Make webpushd "fake registration for testing" much more complicated by adding a "mock app bundle" install Modified: trunk/Source/WebKit/Shared/ios/WebIOSEventFactory.mm (286276 => 286277) --- trunk/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-11-30 01:23:53 UTC (rev 286276) +++ trunk/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-11-30 01:42:49 UTC (rev 286277) @@ -177,7 +177,8 @@ delta, { }, timestamp, -timestamp +timestamp, +{ } }; } #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286276] trunk/Source/WebCore
Title: [286276] trunk/Source/WebCore Revision 286276 Author simon.fra...@apple.com Date 2021-11-29 17:23:53 -0800 (Mon, 29 Nov 2021) Log Message Run keyboard-animated scrolls on the scrolling thread https://bugs.webkit.org/show_bug.cgi?id=233591 Reviewed by Tim Horton. Calling m_scrollableArea.scrollToPositionWithAnimation() hits the FrameView/RenderLayerScrollableArea overrides of requestAnimatedScrollToPosition() which dispatch the scroll to the scrolling thread. This allows the ScrollAnimationSmooth for keyboard-triggered scrolls (spacebar, page up/down, home/end) to run on the scrolling thread. * platform/ScrollAnimator.cpp: (WebCore::ScrollAnimator::singleAxisScroll): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/ScrollAnimator.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286275 => 286276) --- trunk/Source/WebCore/ChangeLog 2021-11-30 01:20:43 UTC (rev 286275) +++ trunk/Source/WebCore/ChangeLog 2021-11-30 01:23:53 UTC (rev 286276) @@ -1,5 +1,21 @@ 2021-11-29 Simon Fraser +Run keyboard-animated scrolls on the scrolling thread +https://bugs.webkit.org/show_bug.cgi?id=233591 + +Reviewed by Tim Horton. + +Calling m_scrollableArea.scrollToPositionWithAnimation() hits the FrameView/RenderLayerScrollableArea +overrides of requestAnimatedScrollToPosition() which dispatch the scroll to the scrolling thread. + +This allows the ScrollAnimationSmooth for keyboard-triggered scrolls (spacebar, page up/down, home/end) +to run on the scrolling thread. + +* platform/ScrollAnimator.cpp: +(WebCore::ScrollAnimator::singleAxisScroll): + +2021-11-29 Simon Fraser + Revert changes related to using a scroll animator for momentum scrolling https://bugs.webkit.org/show_bug.cgi?id=233585 Modified: trunk/Source/WebCore/platform/ScrollAnimator.cpp (286275 => 286276) --- trunk/Source/WebCore/platform/ScrollAnimator.cpp 2021-11-30 01:20:43 UTC (rev 286275) +++ trunk/Source/WebCore/platform/ScrollAnimator.cpp 2021-11-30 01:23:53 UTC (rev 286276) @@ -82,10 +82,8 @@ if (m_scrollController.retargetAnimatedScrollBy(delta)) return true; -auto startOffset = offsetFromPosition(m_currentPosition); -auto extents = scrollExtents(); -auto destinationOffset = (startOffset + delta).constrainedBetween(extents.minimumScrollOffset(), extents.maximumScrollOffset()); -return m_scrollController.startAnimatedScrollToDestination(startOffset, destinationOffset); +m_scrollableArea.scrollToPositionWithAnimation(m_currentPosition + delta); +return true; } return scrollToPositionWithoutAnimation(currentPosition() + delta); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286275] trunk
Title: [286275] trunk Revision 286275 Author ysuz...@apple.com Date 2021-11-29 17:20:43 -0800 (Mon, 29 Nov 2021) Log Message [JSC] slice should be aware of TerminationException https://bugs.webkit.org/show_bug.cgi?id=233593 rdar://85823844 Reviewed by Mark Lam. JSTests: * stress/slice-termination-exception.js: Added. (async infiniteLoop): Source/_javascript_Core: Since termination exception can happen at any time, assertNoException is wrong. * runtime/ArrayPrototype.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp Added Paths trunk/JSTests/stress/slice-termination-exception.js Diff Modified: trunk/JSTests/ChangeLog (286274 => 286275) --- trunk/JSTests/ChangeLog 2021-11-30 01:20:09 UTC (rev 286274) +++ trunk/JSTests/ChangeLog 2021-11-30 01:20:43 UTC (rev 286275) @@ -1,5 +1,16 @@ 2021-11-29 Yusuke Suzuki +[JSC] slice should be aware of TerminationException +https://bugs.webkit.org/show_bug.cgi?id=233593 +rdar://85823844 + +Reviewed by Mark Lam. + +* stress/slice-termination-exception.js: Added. +(async infiniteLoop): + +2021-11-29 Yusuke Suzuki + [JSC] Add Intl.NumberFormat.formatRangeToParts https://bugs.webkit.org/show_bug.cgi?id=233539 Added: trunk/JSTests/stress/slice-termination-exception.js (0 => 286275) --- trunk/JSTests/stress/slice-termination-exception.js (rev 0) +++ trunk/JSTests/stress/slice-termination-exception.js 2021-11-30 01:20:43 UTC (rev 286275) @@ -0,0 +1,9 @@ +//@ runDefault("--watchdog=100", "--watchdog-exception-ok") +async function infiniteLoop() { + await undefined; + while (1) ; +} + +infiniteLoop(); +drainMicrotasks(); +[].slice(); Modified: trunk/Source/_javascript_Core/ChangeLog (286274 => 286275) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-30 01:20:09 UTC (rev 286274) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-30 01:20:43 UTC (rev 286275) @@ -1,5 +1,18 @@ 2021-11-29 Yusuke Suzuki +[JSC] slice should be aware of TerminationException +https://bugs.webkit.org/show_bug.cgi?id=233593 +rdar://85823844 + +Reviewed by Mark Lam. + +Since termination exception can happen at any time, assertNoException is wrong. + +* runtime/ArrayPrototype.cpp: +(JSC::JSC_DEFINE_HOST_FUNCTION): + +2021-11-29 Yusuke Suzuki + [JSC] Add Intl.NumberFormat.formatRangeToParts https://bugs.webkit.org/show_bug.cgi?id=233540 Modified: trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp (286274 => 286275) --- trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2021-11-30 01:20:09 UTC (rev 286274) +++ trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2021-11-30 01:20:43 UTC (rev 286275) @@ -208,51 +208,49 @@ VM& vm = globalObject->vm(); auto scope = DECLARE_THROW_SCOPE(vm); -auto exceptionResult = [] () { -return std::make_pair(SpeciesConstructResult::Exception, nullptr); -}; +constexpr std::pair exceptionResult { SpeciesConstructResult::Exception, nullptr }; // ECMA 9.4.2.3: https://tc39.github.io/ecma262/#sec-arrayspeciescreate JSValue constructor = jsUndefined(); bool thisIsArray = isArray(globalObject, thisObject); -RETURN_IF_EXCEPTION(scope, exceptionResult()); +RETURN_IF_EXCEPTION(scope, exceptionResult); if (LIKELY(thisIsArray)) { // Fast path in the normal case where the user has not set an own constructor and the Array.prototype.constructor is normal. // We need prototype check for subclasses of Array, which are Array objects but have a different prototype by default. bool isValid = speciesWatchpointIsValid(vm, thisObject); -scope.assertNoException(); +RETURN_IF_EXCEPTION(scope, exceptionResult); if (LIKELY(isValid)) -return std::make_pair(SpeciesConstructResult::FastPath, nullptr); +return std::pair { SpeciesConstructResult::FastPath, nullptr }; constructor = thisObject->get(globalObject, vm.propertyNames->constructor); -RETURN_IF_EXCEPTION(scope, exceptionResult()); +RETURN_IF_EXCEPTION(scope, exceptionResult); if (constructor.isConstructor(vm)) { JSObject* constructorObject = jsCast(constructor); bool isArrayConstructorFromAnotherRealm = globalObject != constructorObject->globalObject(vm) && constructorObject->inherits(vm); if (isArrayConstructorFromAnotherRealm) -return std::make_pair(SpeciesConstructResult::FastPath, nullptr); +return std::pair { SpeciesConstructResult::FastPath, nullptr }; } if (constructor.isObject()) { constructor = constructor.get(globalObject, vm.propertyNames->speciesSymbol); -RETURN_IF_EXCEPTION(scope,
[webkit-changes] [286274] trunk
Title: [286274] trunk Revision 286274 Author simon.fra...@apple.com Date 2021-11-29 17:20:09 -0800 (Mon, 29 Nov 2021) Log Message Revert changes related to using a scroll animator for momentum scrolling https://bugs.webkit.org/show_bug.cgi?id=233585 Reviewed by Tim Horton. Source/WebCore: It turns out that running an animation for the momentum phase of a scroll isn't web compatible, adds a bunch of complexity around interactions with rubberbanding, and has issues when ScrollAnimationMomentum behavior differs from the momentum event behavior in its response to initial velocity. So revert these changes added in r285787, r285797, r285917, r285953, r285964. * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::handleWheelEvent): * platform/ScrollingEffectsController.h: * platform/mac/ScrollingEffectsController.mm: (WebCore::ScrollingEffectsController::handleWheelEvent): (WebCore::ScrollingEffectsController::startRubberBandAnimation): (WebCore::phaseToString): Deleted. (WebCore::adjustedVelocity): Deleted. LayoutTests: We can keep the tests but they don't need to change the setting any more. * fast/scrolling/mac/momentum-animator-end-event-stops.html: * fast/scrolling/mac/momentum-animator-in-overflow.html: * fast/scrolling/mac/momentum-animator-maybegin-stops.html: * fast/scrolling/mac/momentum-animator.html: * platform/mac-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/scrolling/mac/momentum-animator-end-event-stops.html trunk/LayoutTests/fast/scrolling/mac/momentum-animator-in-overflow.html trunk/LayoutTests/fast/scrolling/mac/momentum-animator-maybegin-stops.html trunk/LayoutTests/fast/scrolling/mac/momentum-animator.html trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm trunk/Source/WebCore/platform/ScrollingEffectsController.h trunk/Source/WebCore/platform/mac/ScrollingEffectsController.mm Diff Modified: trunk/LayoutTests/ChangeLog (286273 => 286274) --- trunk/LayoutTests/ChangeLog 2021-11-30 00:20:57 UTC (rev 286273) +++ trunk/LayoutTests/ChangeLog 2021-11-30 01:20:09 UTC (rev 286274) @@ -1,3 +1,18 @@ +2021-11-29 Simon Fraser + +Revert changes related to using a scroll animator for momentum scrolling +https://bugs.webkit.org/show_bug.cgi?id=233585 + +Reviewed by Tim Horton. + +We can keep the tests but they don't need to change the setting any more. + +* fast/scrolling/mac/momentum-animator-end-event-stops.html: +* fast/scrolling/mac/momentum-animator-in-overflow.html: +* fast/scrolling/mac/momentum-animator-maybegin-stops.html: +* fast/scrolling/mac/momentum-animator.html: +* platform/mac-wk2/TestExpectations: + 2021-11-29 Wenson Hsieh Add a basic heuristic for sizing text in image overlay blocks Modified: trunk/LayoutTests/fast/scrolling/mac/momentum-animator-end-event-stops.html (286273 => 286274) --- trunk/LayoutTests/fast/scrolling/mac/momentum-animator-end-event-stops.html 2021-11-30 00:20:57 UTC (rev 286273) +++ trunk/LayoutTests/fast/scrolling/mac/momentum-animator-end-event-stops.html 2021-11-30 01:20:09 UTC (rev 286274) @@ -1,4 +1,4 @@ - +
[webkit-changes] [286273] trunk
Title: [286273] trunk Revision 286273 Author beid...@apple.com Date 2021-11-29 16:20:57 -0800 (Mon, 29 Nov 2021) Log Message Make webpushd "fake registration for testing" much more complicated by adding a "mock app bundle" install https://bugs.webkit.org/show_bug.cgi?id=233454 Reviewed by Alex Christensen. Covered by API tests. Before this patch, webpushd remembered "registrations" using a simple in-memory HashMap. In the near future, registrations will actually be represented with a placeholder app bundle on disk. The process of installing placeholders (and checking for existing ones) is complicated and asynchronous. This patch shifts the in-memory testing implementation from a simple HashMap to a "complicated and asynchronous" registration mechanism that simulates how app-bundle installs will work. Once the "real" mechanisms are in place there will be much more in-depth testing that we can do. For now, this is a "no behavior change" patch. * NetworkProcess/Notifications/Cocoa/WebPushDaemonConnectionCocoa.mm: (WebKit::WebPushD::Connection::connectionReceivedEvent const): * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: * WebKit.xcodeproj/project.pbxproj: "PushAppBundle" is an abstract base class for representing a placeholder application bundle for a registration. Eventually there will be a native one for each platform that actually does system operations. For now, the concrete implementation is the in-memory "Mock" app bundle. * webpushd/PushAppBundle.h: Copied from Source/WebKit/webpushd/PushClientConnection.h. * webpushd/PushAppBundle.mm: Copied from Source/WebKit/webpushd/PushClientConnection.h. (WebPushD::PushAppBundleClient::~PushAppBundleClient): (WebPushD::PushAppBundle::PushAppBundle): (WebPushD::PushAppBundle::~PushAppBundle): (WebPushD::PushAppBundle::detachFromClient): An "AppBundleRequest" is a queable operation meant to do something with an "App bundle". For now the operations are "create" and "delete" * webpushd/AppBundleRequest.h: Added. (WebPushD::AppBundleRequestImpl::AppBundleRequestImpl): (WebPushD::AppBundleRequestImpl::~AppBundleRequestImpl): (WebPushD::AppBundleRequestImpl::callCompletionHandlerAndCleanup): (WebPushD::AppBundlePermissionsRequest::AppBundlePermissionsRequest): (WebPushD::AppBundleDeletionRequest::AppBundleDeletionRequest): * webpushd/AppBundleRequest.mm: Added. (WebPushD::AppBundleRequest::AppBundleRequest): (WebPushD::AppBundleRequest::~AppBundleRequest): (WebPushD::AppBundleRequest::start): (WebPushD::AppBundleRequest::cancel): (WebPushD::AppBundleRequest::cleanupAfterCompletionHandler): (WebPushD::AppBundlePermissionsRequest::startInternal): (WebPushD::AppBundlePermissionsRequest::didCheckForExistingBundle): (WebPushD::AppBundlePermissionsRequest::didCreateAppBundle): (WebPushD::AppBundleDeletionRequest::startInternal): (WebPushD::AppBundleDeletionRequest::didDeleteExistingBundleWithError): * webpushd/MockAppBundleForTesting.h: Copied from Source/WebKit/webpushd/PushClientConnection.h. (WebPushD::MockAppBundleForTesting::create): * webpushd/MockAppBundleForTesting.mm: Added. (WebPushD::MockAppBundleForTesting::MockAppBundleForTesting): (WebPushD::MockAppBundleForTesting::~MockAppBundleForTesting): (WebPushD::MockAppBundleForTesting::checkForExistingBundle): (WebPushD::MockAppBundleForTesting::deleteExistingBundle): (WebPushD::MockAppBundleForTesting::createBundle): (WebPushD::MockAppBundleForTesting::stop): * webpushd/MockAppBundleRegistry.h: Copied from Source/WebKit/webpushd/PushClientConnection.h. * webpushd/MockAppBundleRegistry.mm: Added. (WebPushD::MockAppBundleRegistry::singleton): (WebPushD::MockAppBundleRegistry::getOriginsWithRegistrations): (WebPushD::MockAppBundleRegistry::doesBundleExist): (WebPushD::MockAppBundleRegistry::createBundle): (WebPushD::MockAppBundleRegistry::deleteBundle): * webpushd/PushClientConnection.h: * webpushd/PushClientConnection.mm: (WebPushD::ClientConnection::create): (WebPushD::ClientConnection::enqueueAppBundleRequest): (WebPushD::ClientConnection::maybeStartNextAppBundleRequest): (WebPushD::ClientConnection::didCompleteAppBundleRequest): (WebPushD::ClientConnection::connectionClosed): * webpushd/WebPushDaemon.h: * webpushd/WebPushDaemon.mm: (WebPushD::Daemon::connectionAdded): (WebPushD::Daemon::connectionRemoved): (WebPushD::Daemon::requestSystemNotificationPermission): (WebPushD::Daemon::getOriginsWithPushAndNotificationPermissions): (WebPushD::Daemon::deletePushAndNotificationRegistration): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Notifications/Cocoa/WebPushDaemonConnectionCocoa.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj trunk/Source/WebKit/webpushd/PushClientConnection.h trunk/Source/WebKit/webpushd/PushClientConnection.mm trunk/Source/WebKit/webpushd/WebPushDaemon.h trunk/Source/WebKit/webpushd/WebPushDaemon.mm trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm Added
[webkit-changes] [286272] trunk/Source
Title: [286272] trunk/Source Revision 286272 Author ddkil...@apple.com Date 2021-11-29 16:20:30 -0800 (Mon, 29 Nov 2021) Log Message Disable experimental web features on platforms without UI to enable them Reviewed by Brent Fulgham. Source/WebKit: * UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm: (WebKit::RemoteLayerTreeHost::makeNode): * WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.h: * WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.mm: - Fix build when ENABLE(MODEL_ELEMENT) is false. Source/WTF: * wtf/PlatformEnableCocoa.h: (ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER): (ENABLE_CSS_PAINTING_API): (ENABLE_CSS_TYPED_OM): (ENABLE_MODEL_ELEMENT): (ENABLE_SEPARATED_MODEL): - Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined. * wtf/PlatformHave.h: (HAVE_EXPERIMENTAL_WEB_FEATURES_UI): Add. - Define for tvOS and watchOS, which don't have UI to enable experimental web features. (HAVE_CELESTIAL): (HAVE_CFNETWORK_ALTERNATIVE_SERVICE): (HAVE_NETWORK_LOADER): (HAVE_AVSAMPLEBUFFERVIDEOOUTPUT): - Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformEnableCocoa.h trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.h trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.mm Diff Modified: trunk/Source/WTF/ChangeLog (286271 => 286272) --- trunk/Source/WTF/ChangeLog 2021-11-30 00:02:13 UTC (rev 286271) +++ trunk/Source/WTF/ChangeLog 2021-11-30 00:20:30 UTC (rev 286272) @@ -1,3 +1,28 @@ +2021-11-29 David Kilzer + +Disable experimental web features on platforms without UI to enable them + + + +Reviewed by Brent Fulgham. + +* wtf/PlatformEnableCocoa.h: +(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER): +(ENABLE_CSS_PAINTING_API): +(ENABLE_CSS_TYPED_OM): +(ENABLE_MODEL_ELEMENT): +(ENABLE_SEPARATED_MODEL): +- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined. +* wtf/PlatformHave.h: +(HAVE_EXPERIMENTAL_WEB_FEATURES_UI): Add. +- Define for tvOS and watchOS, which don't have UI to enable + experimental web features. +(HAVE_CELESTIAL): +(HAVE_CFNETWORK_ALTERNATIVE_SERVICE): +(HAVE_NETWORK_LOADER): +(HAVE_AVSAMPLEBUFFERVIDEOOUTPUT): +- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined. + 2021-11-29 Chris Fleizach AX: Unify speech synthesizer platform usage for Mac/iOS Modified: trunk/Source/WTF/wtf/PlatformEnableCocoa.h (286271 => 286272) --- trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-11-30 00:02:13 UTC (rev 286271) +++ trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-11-30 00:20:30 UTC (rev 286272) @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2020 Apple Inc. All rights reserved. + * Copyright (C) 2006-2021 Apple Inc. All rights reserved. * Copyright (C) 2007-2009 Torch Mobile, Inc. * Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved. * Copyright (C) 2013 Samsung Electronics. All rights reserved. @@ -171,7 +171,7 @@ #define ENABLE_CONTEXT_MENU_EVENT 0 #endif -#if !defined(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER) +#if !defined(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI) #define ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER 1 #endif @@ -184,7 +184,7 @@ #define ENABLE_CSS_CONIC_GRADIENTS 1 #endif -#if !defined(ENABLE_CSS_PAINTING_API) +#if !defined(ENABLE_CSS_PAINTING_API) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI) #define ENABLE_CSS_PAINTING_API 1 #endif @@ -196,7 +196,7 @@ #define ENABLE_CSS_TRAILING_WORD 1 #endif -#if !defined(ENABLE_CSS_TYPED_OM) +#if !defined(ENABLE_CSS_TYPED_OM) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI) #define ENABLE_CSS_TYPED_OM 1 #endif @@ -405,7 +405,7 @@ #define ENABLE_META_VIEWPORT 1 #endif -#if !defined(ENABLE_MODEL_ELEMENT) +#if !defined(ENABLE_MODEL_ELEMENT) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI) #define ENABLE_MODEL_ELEMENT 1 #endif @@ -704,7 +704,7 @@ #define ENABLE_CSS_TRANSFORM_STYLE_OPTIMIZED_3D 1 #endif -#if !defined(ENABLE_SEPARATED_MODEL) && HAVE(UIKIT_WEBKIT_INTERNALS) && HAVE(CORE_ANIMATION_SEPARATED_LAYERS) +#if !defined(ENABLE_SEPARATED_MODEL) && HAVE(UIKIT_WEBKIT_INTERNALS) && HAVE(CORE_ANIMATION_SEPARATED_LAYERS) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI) #define ENABLE_SEPARATED_MODEL 1 #endif Modified: trunk/Source/WTF/wtf/PlatformHave.h (286271 => 286272) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-11-30 00:02:13 UTC (rev 286271) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-11-30 00:20:30 UTC (rev 286272) @@ -81,6 +81,10 @@ #define HAVE_ARM_NEON_INTRINSICS 0 #endif +#if !defined(HAVE_EXPERIMENTAL_WEB_FEATURES_UI) &&
[webkit-changes] [286271] trunk/Tools
Title: [286271] trunk/Tools Revision 286271 Author jbed...@apple.com Date 2021-11-29 16:02:13 -0800 (Mon, 29 Nov 2021) Log Message [webkitscmpy] Guard git-webkit with __name__ https://bugs.webkit.org/show_bug.cgi?id=233278 Reviewed by Stephanie Lewis and Dewei Zhu. * Scripts/libraries/webkitscmpy/git-webkit: Canonical link: https://commits.webkit.org/244632@main Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/webkitscmpy/git-webkit Diff Modified: trunk/Tools/ChangeLog (286270 => 286271) --- trunk/Tools/ChangeLog 2021-11-29 23:58:33 UTC (rev 286270) +++ trunk/Tools/ChangeLog 2021-11-30 00:02:13 UTC (rev 286271) @@ -1,5 +1,14 @@ 2021-11-29 Jonathan Bedard +[webkitscmpy] Guard git-webkit with __name__ +https://bugs.webkit.org/show_bug.cgi?id=233278 + +Reviewed by Dewei Zhu. + +* Scripts/libraries/webkitscmpy/git-webkit: + +2021-11-29 Jonathan Bedard + [webkitcorepy] Delete unused environment variables https://bugs.webkit.org/show_bug.cgi?id=233565 Modified: trunk/Tools/Scripts/libraries/webkitscmpy/git-webkit (286270 => 286271) --- trunk/Tools/Scripts/libraries/webkitscmpy/git-webkit 2021-11-29 23:58:33 UTC (rev 286270) +++ trunk/Tools/Scripts/libraries/webkitscmpy/git-webkit 2021-11-30 00:02:13 UTC (rev 286271) @@ -27,4 +27,5 @@ from webkitscmpy import program -sys.exit(program.main()) +if '__main__' == __name__: +sys.exit(program.main()) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286270] trunk/Source
Title: [286270] trunk/Source Revision 286270 Author timothy_hor...@apple.com Date 2021-11-29 15:58:33 -0800 (Mon, 29 Nov 2021) Log Message Plumb raw platform scrolling deltas along in wheel events https://bugs.webkit.org/show_bug.cgi?id=233583 Reviewed by Simon Fraser. Source/WebCore: * platform/PlatformWheelEvent.cpp: (WebCore::PlatformWheelEvent::createFromGesture): * platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::rawPlatformDelta const): * PAL/pal/spi/mac/IOKitSPIMac.h: Source/WebKit: * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): * Shared/WebWheelEvent.cpp: (WebKit::WebWheelEvent::WebWheelEvent): (WebKit::WebWheelEvent::encode const): (WebKit::WebWheelEvent::decode): * Shared/WebWheelEvent.h: (WebKit::WebWheelEvent::rawPlatformDelta const): * Shared/WebWheelEventCoalescer.cpp: (WebKit::WebWheelEventCoalescer::coalesce): * Shared/mac/WebEventFactory.mm: (WebKit::WebEventFactory::createWebWheelEvent): Extract and plumb raw unaccelerated (in the HID sense) deltas in scroll events for use in a future patch. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h trunk/Source/WebCore/platform/PlatformWheelEvent.cpp trunk/Source/WebCore/platform/PlatformWheelEvent.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebEventConversion.cpp trunk/Source/WebKit/Shared/WebWheelEvent.cpp trunk/Source/WebKit/Shared/WebWheelEvent.h trunk/Source/WebKit/Shared/WebWheelEventCoalescer.cpp trunk/Source/WebKit/Shared/mac/WebEventFactory.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286269 => 286270) --- trunk/Source/WebCore/ChangeLog 2021-11-29 23:46:29 UTC (rev 286269) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 23:58:33 UTC (rev 286270) @@ -1,3 +1,16 @@ +2021-11-29 Tim Horton + +Plumb raw platform scrolling deltas along in wheel events +https://bugs.webkit.org/show_bug.cgi?id=233583 + +Reviewed by Simon Fraser. + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::rawPlatformDelta const): +* PAL/pal/spi/mac/IOKitSPIMac.h: + 2021-11-29 Wenson Hsieh Add a basic heuristic for sizing text in image overlay blocks Modified: trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h (286269 => 286270) --- trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-11-29 23:46:29 UTC (rev 286269) +++ trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-11-29 23:58:33 UTC (rev 286270) @@ -83,7 +83,22 @@ }; typedef uint32_t IOHIDEventType; +typedef uint32_t IOHIDEventField; + +#ifdef __LP64__ +typedef double IOHIDFloat; +#else +typedef float IOHIDFloat; +#endif + +#define IOHIDEventFieldBase(type) (type << 16) + +#define kIOHIDEventFieldScrollBase IOHIDEventFieldBase(kIOHIDEventTypeScroll) +static const IOHIDEventField kIOHIDEventFieldScrollX = (kIOHIDEventFieldScrollBase | 0); +static const IOHIDEventField kIOHIDEventFieldScrollY = (kIOHIDEventFieldScrollBase | 1); + uint64_t IOHIDEventGetTimeStamp(IOHIDEventRef); +IOHIDFloat IOHIDEventGetFloatValue(IOHIDEventRef, IOHIDEventField); WTF_EXTERN_C_END Modified: trunk/Source/WebCore/platform/PlatformWheelEvent.cpp (286269 => 286270) --- trunk/Source/WebCore/platform/PlatformWheelEvent.cpp 2021-11-29 23:46:29 UTC (rev 286269) +++ trunk/Source/WebCore/platform/PlatformWheelEvent.cpp 2021-11-29 23:58:33 UTC (rev 286270) @@ -76,6 +76,7 @@ #if PLATFORM(COCOA) platformWheelEvent.m_ioHIDEventTimestamp = platformWheelEvent.m_timestamp; +platformWheelEvent.m_rawPlatformDelta = platformWheelEvent.m_rawPlatformDelta; platformWheelEvent.m_unacceleratedScrollingDeltaY = deltaY; #endif // PLATFORM(COCOA) Modified: trunk/Source/WebCore/platform/PlatformWheelEvent.h (286269 => 286270) --- trunk/Source/WebCore/platform/PlatformWheelEvent.h 2021-11-29 23:46:29 UTC (rev 286269) +++ trunk/Source/WebCore/platform/PlatformWheelEvent.h 2021-11-29 23:58:33 UTC (rev 286270) @@ -160,6 +160,8 @@ FloatSize unacceleratedScrollingDelta() const { return { m_unacceleratedScrollingDeltaX, m_unacceleratedScrollingDeltaY }; } WallTime ioHIDEventTimestamp() const { return m_ioHIDEventTimestamp; } + +std::optional rawPlatformDelta() const { return m_rawPlatformDelta; } #endif #if ENABLE(ASYNC_SCROLLING) @@ -209,6 +211,7 @@ #endif #if PLATFORM(COCOA) WallTime m_ioHIDEventTimestamp; +std::optional m_rawPlatformDelta; unsigned m_scrollCount { 0 }; float m_unacceleratedScrollingDeltaX { 0 }; float m_unacceleratedScrollingDeltaY { 0 }; Modified: trunk/Source/WebKit/ChangeLog (286269 => 286270) --- trunk/Source/WebKit/ChangeLog 2021-11-29 23:46:29 UTC (rev 286269) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 23:58:33 UTC (rev 286270) @@ -1,3 +1,25 @@ +2021-11-29 Tim Horton + +Plumb raw platform scrolling deltas
[webkit-changes] [286269] branches/safari-612.3.6.1-branch/Source
Title: [286269] branches/safari-612.3.6.1-branch/Source Revision 286269 Author alanc...@apple.com Date 2021-11-29 15:46:29 -0800 (Mon, 29 Nov 2021) Log Message Versioning. WebKit-7612.3.6.1.6 Modified Paths branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286268 => 286269) --- branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) +++ branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 23:46:29 UTC (rev 286269) @@ -2,7 +2,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 5; +NANO_VERSION = 6; FULL_VERSION =
[webkit-changes] [286268] branches/safari-612.3.6.0-branch/Source
Title: [286268] branches/safari-612.3.6.0-branch/Source Revision 286268 Author alanc...@apple.com Date 2021-11-29 15:30:34 -0800 (Mon, 29 Nov 2021) Log Message Versioning. WebKit-7612.3.6.0.4 Modified Paths branches/safari-612.3.6.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.3.6.0-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.3.6.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.0-branch/Source/WebCore/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286267 => 286268) --- branches/safari-612.3.6.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 23:18:36 UTC (rev 286267) +++ branches/safari-612.3.6.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 23:30:34 UTC (rev 286268) @@ -2,7 +2,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION =
[webkit-changes] [286267] trunk/Source/WebKit
Title: [286267] trunk/Source/WebKit Revision 286267 Author cdu...@apple.com Date 2021-11-29 15:18:36 -0800 (Mon, 29 Nov 2021) Log Message Add WebKitAdditions bits for captive portal mode https://bugs.webkit.org/show_bug.cgi?id=233569 Reviewed by Geoffrey Garen. * UIProcess/API/Cocoa/WKWebpagePreferences.h: * UIProcess/API/Cocoa/WKWebpagePreferences.mm: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.mm trunk/Source/WebKit/mac/replace-webkit-additions-includes.py Diff Modified: trunk/Source/WebKit/ChangeLog (286266 => 286267) --- trunk/Source/WebKit/ChangeLog 2021-11-29 23:10:37 UTC (rev 286266) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 23:18:36 UTC (rev 286267) @@ -1,3 +1,14 @@ +2021-11-29 Chris Dumez + +Add WebKitAdditions bits for captive portal mode +https://bugs.webkit.org/show_bug.cgi?id=233569 + + +Reviewed by Geoffrey Garen. + +* UIProcess/API/Cocoa/WKWebpagePreferences.h: +* UIProcess/API/Cocoa/WKWebpagePreferences.mm: + 2021-11-29 Per Arne Vollan [WP] Sandbox telemetry is missing for some system calls Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.h (286266 => 286267) --- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.h 2021-11-29 23:10:37 UTC (rev 286266) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.h 2021-11-29 23:18:36 UTC (rev 286267) @@ -71,4 +71,8 @@ */ @property (nonatomic) BOOL allowsContentJavaScript WK_API_AVAILABLE(macos(11.0), ios(14.0)); +#if USE(APPLE_INTERNAL_SDK) +#import +#endif + @end Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.mm (286266 => 286267) --- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.mm 2021-11-29 23:10:37 UTC (rev 286266) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.mm 2021-11-29 23:18:36 UTC (rev 286267) @@ -460,4 +460,8 @@ return WebKit::mouseEventPolicy(_websitePolicies->mouseEventPolicy()); } +#if USE(APPLE_INTERNAL_SDK) +#import +#endif + @end Modified: trunk/Source/WebKit/mac/replace-webkit-additions-includes.py (286266 => 286267) --- trunk/Source/WebKit/mac/replace-webkit-additions-includes.py 2021-11-29 23:10:37 UTC (rev 286266) +++ trunk/Source/WebKit/mac/replace-webkit-additions-includes.py 2021-11-29 23:18:36 UTC (rev 286267) @@ -86,8 +86,7 @@ return 1 # We currently only support WebKitAdditions in Framework headers on macOS 13+ and iOS 16+. -if not is_supported_os(): -return 0 +should_do_replacement = is_supported_os() additions_import_pattern = re.compile(r"\#if USE\(APPLE_INTERNAL_SDK\)\n#import \n#endif") try: @@ -95,7 +94,10 @@ header_contents = header.read() match = additions_import_pattern.search(header_contents) while match: -header_contents = header_contents[:match.start()] + read_content_from_webkit_additions(built_products_directory, sdk_root_directory, match.groups()[0]) + header_contents[match.end():] +if should_do_replacement: +header_contents = header_contents[:match.start()] + read_content_from_webkit_additions(built_products_directory, sdk_root_directory, match.groups()[0]) + header_contents[match.end():] +else: +header_contents = header_contents[:match.start()] + header_contents[match.end():] match = additions_import_pattern.search(header_contents) try: with open(header_path, "w") as header: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286266] trunk/Source/WebKit
Title: [286266] trunk/Source/WebKit Revision 286266 Author pvol...@apple.com Date 2021-11-29 15:10:37 -0800 (Mon, 29 Nov 2021) Log Message [WP] Sandbox telemetry is missing for some system calls https://bugs.webkit.org/show_bug.cgi?id=233594 Reviewed by Brent Fulgham. Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. This patch is addressing this by disabling system call inference. * 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 (286265 => 286266) --- trunk/Source/WebKit/ChangeLog 2021-11-29 22:47:33 UTC (rev 286265) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 23:10:37 UTC (rev 286266) @@ -1,3 +1,16 @@ +2021-11-29 Per Arne Vollan + +[WP] Sandbox telemetry is missing for some system calls +https://bugs.webkit.org/show_bug.cgi?id=233594 + + +Reviewed by Brent Fulgham. + +Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. +This patch is addressing this by disabling system call inference. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + 2021-11-29 Wenson Hsieh WKContentView should allow -captureTextFromCamera: with a caret selection unless the sender is the callout bar Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286265 => 286266) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-11-29 22:47:33 UTC (rev 286265) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-11-29 23:10:37 UTC (rev 286266) @@ -1193,6 +1193,8 @@ (global-name "com.apple.webkit.camera") ) +(disable-syscall-inference) + (when (defined? 'syscall-unix) (deny syscall-unix (with send-signal SIGKILL)) (allow syscall-unix @@ -1206,6 +1208,10 @@ (syscall-number SYS_bsdthread_terminate) (syscall-number SYS_change_fdguard_np) (syscall-number SYS_chdir) +(syscall-number SYS_close) +(syscall-number SYS_close_nocancel) +(syscall-number SYS_csops) ;; used by Corefoundation initialization +(syscall-number SYS_csops_audittoken) ;; used by WK to get entitlments (syscall-number SYS_exit) (syscall-number SYS_faccessat) ;; (syscall-number SYS_fcntl) @@ -1235,6 +1241,7 @@ (syscall-number SYS_guarded_open_dprotected_np) ; (syscall-number SYS_guarded_open_np) (syscall-number SYS_guarded_pwrite_np) +(syscall-number SYS_ioctl) ;; needed by tcgetattr (TIOCGETA) - debugging (syscall-number SYS_issetugid) (syscall-number SYS_kdebug_trace64) (syscall-number SYS_kdebug_typefilter) @@ -1253,9 +1260,13 @@ (syscall-number SYS_msync) (syscall-number SYS_munmap) (syscall-number SYS_objc_bp_assist_cfg_np) +(syscall-number SYS_open) +(syscall-number SYS_open_nocancel) +(syscall-number SYS_openat) (syscall-number SYS_os_fault_with_payload) (syscall-number SYS_pathconf) (syscall-number SYS_pread) +(syscall-number SYS_proc_info) (syscall-number SYS_psynch_cvbroad) (syscall-number SYS_psynch_cvclrprepost) (syscall-number SYS_psynch_cvsignal) @@ -1268,17 +1279,23 @@ (syscall-number SYS_read_nocancel) (syscall-number SYS_readlink) (syscall-number SYS_rename) +(syscall-number SYS_sem_close) +(syscall-number SYS_sem_open) (syscall-number SYS_shared_region_check_np) (syscall-number SYS_shared_region_map_and_slide_2_np) ;; +(syscall-number SYS_shm_open) (syscall-number SYS_sigaction) (syscall-number SYS_stat64) (syscall-number SYS_statfs64) +(syscall-number SYS_sysctl) +(syscall-number SYS_sysctlbyname) (syscall-number SYS_thread_selfid) (syscall-number SYS_ulock_wait) (syscall-number SYS_ulock_wait2) ;; (syscall-number SYS_ulock_wake) (syscall-number SYS_workq_kernreturn) -(syscall-number SYS_workq_open)) +(syscall-number SYS_workq_open) +(syscall-number SYS_write_nocancel)) (allow syscall-unix (with telemetry) (syscall-number SYS_fgetxattr) @@ -1293,7 +1310,7 @@ (syscall-number SYS_thread_selfusage) ) -(allow syscall-unix (with telemetry-backtrace) +(allow syscall-unix (with report) (with telemetry-backtrace) (syscall-number SYS___pthread_kill) (syscall-number SYS___pthread_markcancel) (syscall-number SYS___pthread_sigmask) @@ -1300,13 +1317,9 @@ (syscall-number
[webkit-changes] [286265] trunk
Title: [286265] trunk Revision 286265 Author wenson_hs...@apple.com Date 2021-11-29 14:47:33 -0800 (Mon, 29 Nov 2021) Log Message Add a basic heuristic for sizing text in image overlay blocks https://bugs.webkit.org/show_bug.cgi?id=233343 rdar://85755755 Reviewed by Tim Horton. Source/WebCore: Address a FIXME by implementing a simple heuristic for sizing text in image overlay blocks. Each image overlay block has a predetermined target width and height; currently, we hard-code the font size in each of these blocks to be 80% of the target height. While this works in some cases, it also causes content in these blocks to overflow the container if there's too much text. Avoid this problem by finding the largest font size, such that text in each container fits within the target bounds without overflowing vertically (we don't need to worry about horizontal overflow because horizontally overflowing text will simply wrap to the next line). Because of line wrapping, it's difficult to analytically compute this font size, so I'm instead using binary search (up to a fixed number of iterations) to converge on this largest size that avoids exceeding the target height. See below for more details. Test: fast/images/text-recognition/image-overlay-blocks.html * dom/ImageOverlay.cpp: (WebCore::ImageOverlay::updateWithTextRecognitionResult): Implement the main logic of the binary search. Establish a goal of ending up with text that fills at least 90% of the available space in the container (with a max of just slightly over 100%, so that we stop early if we happen to only barely exceed the target height). Then, starting with a font size that's 80% of the target height, converge on a font size between 0% and 100% of the target height that achieves this goal. In practice, most of the injected blocks of text will stop after a single iteration (due to the "80%-of-height" font size being sufficient to mostly fill available vertical space). Each FontSizeAdjustmentState here represents a single block container. At the beginning of each iteration, we ensure that layout is up to date, and set the font size to be between the current min and max value (scaling by target height to get font size). Using `linesBoundingBox()`, we compute the height of the rendered text relative to its parent (which we know a-priori to be as tall as the target height). If this height is at least 90% of the target height, we finish and remove the font size adjustment state from the vector of pending font adjustments; otherwise, we adjust the min and max to either increase or decrease the font size as needed, and continue the loop. We finally bail after an arbitrarily-chosen 10 iterations, if the text in the container is still too small. * testing/Internals.cpp: (WebCore::Internals::installImageOverlay): Augment this testing-only internals hook so that we can inject arbitrary image overlay block content inside image overlays. * testing/Internals.h: * testing/Internals.idl: LayoutTests: Add a new layout test. See WebCore/ChangeLog for more details. * fast/images/text-recognition/image-overlay-blocks-expected.html: Added. * fast/images/text-recognition/image-overlay-blocks.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ImageOverlay.cpp trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Added Paths trunk/LayoutTests/fast/images/text-recognition/image-overlay-blocks-expected.html trunk/LayoutTests/fast/images/text-recognition/image-overlay-blocks.html Diff Modified: trunk/LayoutTests/ChangeLog (286264 => 286265) --- trunk/LayoutTests/ChangeLog 2021-11-29 22:38:41 UTC (rev 286264) +++ trunk/LayoutTests/ChangeLog 2021-11-29 22:47:33 UTC (rev 286265) @@ -1,3 +1,16 @@ +2021-11-29 Wenson Hsieh + +Add a basic heuristic for sizing text in image overlay blocks +https://bugs.webkit.org/show_bug.cgi?id=233343 +rdar://85755755 + +Reviewed by Tim Horton. + +Add a new layout test. See WebCore/ChangeLog for more details. + +* fast/images/text-recognition/image-overlay-blocks-expected.html: Added. +* fast/images/text-recognition/image-overlay-blocks.html: Added. + 2021-11-29 Chris Dumez REGRESSION(r283855) [GTK][WPE] imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html fails Added: trunk/LayoutTests/fast/images/text-recognition/image-overlay-blocks-expected.html (0 => 286265) --- trunk/LayoutTests/fast/images/text-recognition/image-overlay-blocks-expected.html (rev 0) +++ trunk/LayoutTests/fast/images/text-recognition/image-overlay-blocks-expected.html 2021-11-29 22:47:33 UTC (rev 286265) @@ -0,0 +1,23 @@ + + + + +body, html { +margin: 0; +} + +.cover-block-container { +position: absolute; +top: 0; +left: 0; +width: 200px; +height:
[webkit-changes] [286264] trunk
Title: [286264] trunk Revision 286264 Author cdu...@apple.com Date 2021-11-29 14:38:41 -0800 (Mon, 29 Nov 2021) Log Message REGRESSION(r283855) [GTK][WPE] imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html fails https://bugs.webkit.org/show_bug.cgi?id=233529 Reviewed by Philippe Normand. Source/WebCore: The non-USE(ACCELERATE) implementation for VectorMath::multiplyByScalarThenAddToVector() was wrong, causing the test to fail on non Cocoa ports. The implementation was wrongly calling multiplyByScalarThenAddToOutput() instead of multiplyByScalar() before calling add(). * platform/audio/VectorMath.cpp: (WebCore::VectorMath::multiplyByScalarThenAddToVector): LayoutTests: Unskip test that is now passing. * platform/glib/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/VectorMath.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286263 => 286264) --- trunk/LayoutTests/ChangeLog 2021-11-29 22:29:50 UTC (rev 286263) +++ trunk/LayoutTests/ChangeLog 2021-11-29 22:38:41 UTC (rev 286264) @@ -1,3 +1,14 @@ +2021-11-29 Chris Dumez + +REGRESSION(r283855) [GTK][WPE] imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html fails +https://bugs.webkit.org/show_bug.cgi?id=233529 + +Reviewed by Philippe Normand. + +Unskip test that is now passing. + +* platform/glib/TestExpectations: + 2021-11-29 Chris Fleizach AX: Unify speech synthesizer platform usage for Mac/iOS Modified: trunk/LayoutTests/platform/glib/TestExpectations (286263 => 286264) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-11-29 22:29:50 UTC (rev 286263) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-11-29 22:38:41 UTC (rev 286264) @@ -1236,8 +1236,6 @@ webkit.org/b/232726 webaudio/AudioBuffer/huge-buffer.html [ Pass Slow ] -webkit.org/b/233529 imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html [ Failure ] - # # End of WebAudio-related bugs # Modified: trunk/Source/WebCore/ChangeLog (286263 => 286264) --- trunk/Source/WebCore/ChangeLog 2021-11-29 22:29:50 UTC (rev 286263) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 22:38:41 UTC (rev 286264) @@ -1,3 +1,17 @@ +2021-11-29 Chris Dumez + +REGRESSION(r283855) [GTK][WPE] imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html fails +https://bugs.webkit.org/show_bug.cgi?id=233529 + +Reviewed by Philippe Normand. + +The non-USE(ACCELERATE) implementation for VectorMath::multiplyByScalarThenAddToVector() was wrong, causing the test +to fail on non Cocoa ports. The implementation was wrongly calling multiplyByScalarThenAddToOutput() instead of +multiplyByScalar() before calling add(). + +* platform/audio/VectorMath.cpp: +(WebCore::VectorMath::multiplyByScalarThenAddToVector): + 2021-11-29 Fujii Hironori REGRESSION(r286205) [WinCairo] WebGL tests are failing Modified: trunk/Source/WebCore/platform/audio/VectorMath.cpp (286263 => 286264) --- trunk/Source/WebCore/platform/audio/VectorMath.cpp 2021-11-29 22:29:50 UTC (rev 286263) +++ trunk/Source/WebCore/platform/audio/VectorMath.cpp 2021-11-29 22:38:41 UTC (rev 286264) @@ -145,7 +145,7 @@ void multiplyByScalarThenAddToVector(const float* inputVector1, float scalar, const float* inputVector2, float* outputVector, size_t numberOfElementsToProcess) { -multiplyByScalarThenAddToOutput(inputVector1, scalar, outputVector, numberOfElementsToProcess); +multiplyByScalar(inputVector1, scalar, outputVector, numberOfElementsToProcess); add(outputVector, inputVector2, outputVector, numberOfElementsToProcess); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286263] trunk/Tools
Title: [286263] trunk/Tools Revision 286263 Author jbed...@apple.com Date 2021-11-29 14:29:50 -0800 (Mon, 29 Nov 2021) Log Message [webkitcorepy] Delete unused environment variables https://bugs.webkit.org/show_bug.cgi?id=233565 Reviewed by Dewei Zhu. * Scripts/libraries/webkitcorepy/setup.py: Bump version. * Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto. * Scripts/libraries/webkitcorepy/webkitcorepy/environment.py: (Environment.__init__): Keep track of sure environment files. (Environment.load): Ditto. (Environment.secure): Delete all unused environment files, since they may contain credentials. * Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py: (TestEnvironment.test_secure): Canonical link: https://commits.webkit.org/244626@main Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/webkitcorepy/setup.py trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/environment.py trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py Diff Modified: trunk/Tools/ChangeLog (286262 => 286263) --- trunk/Tools/ChangeLog 2021-11-29 22:04:59 UTC (rev 286262) +++ trunk/Tools/ChangeLog 2021-11-29 22:29:50 UTC (rev 286263) @@ -1,3 +1,20 @@ +2021-11-29 Jonathan Bedard + +[webkitcorepy] Delete unused environment variables +https://bugs.webkit.org/show_bug.cgi?id=233565 + + +Reviewed by Dewei Zhu. + +* Scripts/libraries/webkitcorepy/setup.py: Bump version. +* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto. +* Scripts/libraries/webkitcorepy/webkitcorepy/environment.py: +(Environment.__init__): Keep track of sure environment files. +(Environment.load): Ditto. +(Environment.secure): Delete all unused environment files, since they may contain credentials. +* Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py: +(TestEnvironment.test_secure): + 2021-11-29 Lauro Moura [webkitcorepy] Environment: Sort values before comparing in unittest Modified: trunk/Tools/Scripts/libraries/webkitcorepy/setup.py (286262 => 286263) --- trunk/Tools/Scripts/libraries/webkitcorepy/setup.py 2021-11-29 22:04:59 UTC (rev 286262) +++ trunk/Tools/Scripts/libraries/webkitcorepy/setup.py 2021-11-29 22:29:50 UTC (rev 286263) @@ -30,7 +30,7 @@ setup( name='webkitcorepy', -version='0.12.2', +version='0.12.3', description='Library containing various Python support classes and functions.', long_description=readme(), classifiers=[ Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py (286262 => 286263) --- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py 2021-11-29 22:04:59 UTC (rev 286262) +++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py 2021-11-29 22:29:50 UTC (rev 286263) @@ -44,7 +44,7 @@ from webkitcorepy.editor import Editor from webkitcorepy.file_lock import FileLock -version = Version(0, 12, 2) +version = Version(0, 12, 3) from webkitcorepy.autoinstall import Package, AutoInstall if sys.version_info > (3, 0): Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/environment.py (286262 => 286263) --- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/environment.py 2021-11-29 22:04:59 UTC (rev 286262) +++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/environment.py 2021-11-29 22:29:50 UTC (rev 286263) @@ -38,6 +38,7 @@ self._mapping = dict() self.path = path self._divider = divider +self._paths = set() def load(self, *prefixes): if not self.path: @@ -46,6 +47,7 @@ prefix, key = file.split(self._divider, 1) if self._divider in file else (None, file) if prefix and prefix not in prefixes: continue +self._paths.add(os.path.join(self.path, file)) with open(os.path.join(self.path, file), 'r') as fl: self._mapping[key] = fl.read().rstrip('\n') return self @@ -55,6 +57,19 @@ return os.environ[key] return self._mapping.get(key) +def secure(self, *extra_paths): +'''Delete unused environment files in self.path along with the provided extra paths''' + +for file in os.listdir(self.path): +path = os.path.join(self.path, file) +if path not in self._paths: +os.remove(path) +for path in extra_paths: +if os.path.isfile(path): +os.remove(path) +if os.path.exists(path): +raise OSError("Failed to delete '{}' when securing credentials".format(path)) + def __getitem__(self, key): result = self.get(key) if not result: Modified:
[webkit-changes] [286262] trunk/Source/WebCore
Title: [286262] trunk/Source/WebCore Revision 286262 Author hironori.fu...@sony.com Date 2021-11-29 14:04:59 -0800 (Mon, 29 Nov 2021) Log Message REGRESSION(r286205) [WinCairo] WebGL tests are failing https://bugs.webkit.org/show_bug.cgi?id=233589 Unreviewed crash fix. EGL_BIND_TO_TEXTURE_TARGET_ANGLE isn't available for Windows. Restored the previous code. * platform/graphics/angle/GraphicsContextGLANGLE.cpp: (WebCore::GraphicsContextGLOpenGL::drawingBufferTextureTarget): Set m_drawingBufferTextureTarget to EGL_TEXTURE_2D for PLATFORM(WIN) instead of querying with EGL_BIND_TO_TEXTURE_TARGET_ANGLE. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286261 => 286262) --- trunk/Source/WebCore/ChangeLog 2021-11-29 21:34:35 UTC (rev 286261) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 22:04:59 UTC (rev 286262) @@ -1,3 +1,18 @@ +2021-11-29 Fujii Hironori + +REGRESSION(r286205) [WinCairo] WebGL tests are failing +https://bugs.webkit.org/show_bug.cgi?id=233589 + +Unreviewed crash fix. + +EGL_BIND_TO_TEXTURE_TARGET_ANGLE isn't available for Windows. +Restored the previous code. + +* platform/graphics/angle/GraphicsContextGLANGLE.cpp: +(WebCore::GraphicsContextGLOpenGL::drawingBufferTextureTarget): +Set m_drawingBufferTextureTarget to EGL_TEXTURE_2D for +PLATFORM(WIN) instead of querying with EGL_BIND_TO_TEXTURE_TARGET_ANGLE. + 2021-11-29 Chris Fleizach AX: Unify speech synthesizer platform usage for Mac/iOS Modified: trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp (286261 => 286262) --- trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-11-29 21:34:35 UTC (rev 286261) +++ trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-11-29 22:04:59 UTC (rev 286262) @@ -79,8 +79,12 @@ GCGLenum GraphicsContextGLOpenGL::drawingBufferTextureTarget() { +#if PLATFORM(WIN) +m_drawingBufferTextureTarget = EGL_TEXTURE_2D; +#else if (m_drawingBufferTextureTarget == -1) EGL_GetConfigAttrib(platformDisplay(), platformConfig(), EGL_BIND_TO_TEXTURE_TARGET_ANGLE, _drawingBufferTextureTarget); +#endif switch (m_drawingBufferTextureTarget) { case EGL_TEXTURE_2D: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286261] trunk/Tools
Title: [286261] trunk/Tools Revision 286261 Author lmo...@igalia.com Date 2021-11-29 13:34:35 -0800 (Mon, 29 Nov 2021) Log Message [webkitcorepy] Environment: Sort values before comparing in unittest https://bugs.webkit.org/show_bug.cgi?id=233582 Reviewed by Jonathan Bedard. While Python3.6+'s dicts happen to keep insertion order, `os.listdir` does not guarantee the order of the listed items[1]. This may cause the Environment unittest to fail when comparing to the fixed expected data, as it has been happending in some GTK/WPE bots. [1] https://docs.python.org/3/library/os.html#os.listdir * Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py: (TestEnvironment.test_list): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py Diff Modified: trunk/Tools/ChangeLog (286260 => 286261) --- trunk/Tools/ChangeLog 2021-11-29 21:24:56 UTC (rev 286260) +++ trunk/Tools/ChangeLog 2021-11-29 21:34:35 UTC (rev 286261) @@ -1,3 +1,20 @@ +2021-11-29 Lauro Moura + +[webkitcorepy] Environment: Sort values before comparing in unittest +https://bugs.webkit.org/show_bug.cgi?id=233582 + +Reviewed by Jonathan Bedard. + +While Python3.6+'s dicts happen to keep insertion order, `os.listdir` +does not guarantee the order of the listed items[1]. This may cause +the Environment unittest to fail when comparing to the fixed expected +data, as it has been happending in some GTK/WPE bots. + +[1] https://docs.python.org/3/library/os.html#os.listdir + +* Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py: +(TestEnvironment.test_list): + 2021-11-29 Wenson Hsieh WKContentView should allow -captureTextFromCamera: with a caret selection unless the sender is the callout bar Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py (286260 => 286261) --- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py 2021-11-29 21:24:56 UTC (rev 286260) +++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/environment_unittest.py 2021-11-29 21:34:35 UTC (rev 286261) @@ -59,16 +59,16 @@ Environment.instance(self.path).load() self.assertEqual( -list(Environment.instance(self.path).keys()), -['KEY_A', 'KEY_B'] + list(os.environ.keys()), +sorted(list(Environment.instance(self.path).keys())), +sorted(['KEY_A', 'KEY_B'] + list(os.environ.keys())), ) self.assertEqual( -list(Environment.instance(self.path).values()), -['value_a', 'value_b'] + list(os.environ.values()), +sorted(list(Environment.instance(self.path).values())), +sorted(['value_a', 'value_b'] + list(os.environ.values())), ) self.assertEqual( -list(Environment.instance(self.path).items()), -[('KEY_A', 'value_a'), ('KEY_B', 'value_b')] + list(os.environ.items()), +sorted(list(Environment.instance(self.path).items())), +sorted([('KEY_A', 'value_a'), ('KEY_B', 'value_b')] + list(os.environ.items())), ) finally: Environment._instance = None ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286260] trunk
Title: [286260] trunk Revision 286260 Author wenson_hs...@apple.com Date 2021-11-29 13:24:56 -0800 (Mon, 29 Nov 2021) Log Message WKContentView should allow -captureTextFromCamera: with a caret selection unless the sender is the callout bar https://bugs.webkit.org/show_bug.cgi?id=233378 rdar://85478344 Reviewed by Tim Horton. Source/WebKit: Allow clients to query whether or not the "capture text from camera" action should be enabled on WKWebView in contexts outside of the callout bar. Currently, WKContentView returns NO for this action when there is a non- collapsed selection range, but this behavior is only intended for the callout bar; in the case where the action is (for instance) triggered by a button in the web view chrome, it doesn't make sense to only enable it when the selection is a caret. Additionally, adjust the check to use focused element information instead of editor state, such that WebKit clients can easily query this API (`-canPerformAction:withSender:`) inside of input delegate callbacks when beginning an input session to know whether or not "capture text from camera" should be allowed. * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView canPerformActionForWebView:withSender:]): Tools: Adjust an API test to exercise the changes. See WebKit/ChangeLog for more details. * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm Diff Modified: trunk/Source/WebKit/ChangeLog (286259 => 286260) --- trunk/Source/WebKit/ChangeLog 2021-11-29 20:48:59 UTC (rev 286259) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 21:24:56 UTC (rev 286260) @@ -1,3 +1,24 @@ +2021-11-29 Wenson Hsieh + +WKContentView should allow -captureTextFromCamera: with a caret selection unless the sender is the callout bar +https://bugs.webkit.org/show_bug.cgi?id=233378 +rdar://85478344 + +Reviewed by Tim Horton. + +Allow clients to query whether or not the "capture text from camera" action should be enabled on WKWebView in +contexts outside of the callout bar. Currently, WKContentView returns NO for this action when there is a non- +collapsed selection range, but this behavior is only intended for the callout bar; in the case where the action +is (for instance) triggered by a button in the web view chrome, it doesn't make sense to only enable it when the +selection is a caret. + +Additionally, adjust the check to use focused element information instead of editor state, such that WebKit +clients can easily query this API (`-canPerformAction:withSender:`) inside of input delegate callbacks when +beginning an input session to know whether or not "capture text from camera" should be allowed. + +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKContentView canPerformActionForWebView:withSender:]): + 2021-11-29 Chris Fleizach AX: Unify speech synthesizer platform usage for Mac/iOS Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (286259 => 286260) --- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2021-11-29 20:48:59 UTC (rev 286259) +++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2021-11-29 21:24:56 UTC (rev 286260) @@ -3939,10 +3939,15 @@ } #if ENABLE(IMAGE_ANALYSIS) -if (action == @selector(captureTextFromCamera:) && (!editorState.isContentEditable || editorState.selectionIsRange)) -return NO; -#endif +if (action == @selector(captureTextFromCamera:)) { +if (!mayContainSelectableText(_focusedElementInformation.elementType) || _focusedElementInformation.isReadOnly) +return NO; +if ([sender isKindOfClass:UIMenuController.class] && editorState.selectionIsRange) +return NO; +} +#endif // ENABLE(IMAGE_ANALYSIS) + return [super canPerformAction:action withSender:sender]; } Modified: trunk/Tools/ChangeLog (286259 => 286260) --- trunk/Tools/ChangeLog 2021-11-29 20:48:59 UTC (rev 286259) +++ trunk/Tools/ChangeLog 2021-11-29 21:24:56 UTC (rev 286260) @@ -1,3 +1,15 @@ +2021-11-29 Wenson Hsieh + +WKContentView should allow -captureTextFromCamera: with a caret selection unless the sender is the callout bar +https://bugs.webkit.org/show_bug.cgi?id=233378 +rdar://85478344 + +Reviewed by Tim Horton. + +Adjust an API test to exercise the changes. See WebKit/ChangeLog for more details. + +* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm: + 2021-11-29 Yusuke Suzuki [JSC] Move m_incomingPolymorphicCalls out of CodeBlock::JITData Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm (286259 => 286260) ---
[webkit-changes] [286259] trunk
Title: [286259] trunk Revision 286259 Author cfleiz...@apple.com Date 2021-11-29 12:48:59 -0800 (Mon, 29 Nov 2021) Log Message AX: Unify speech synthesizer platform usage for Mac/iOS https://bugs.webkit.org/show_bug.cgi?id=231895 Reviewed by Andres Gonzalez. LayoutTests/imported/w3c: Update expectations now that the test passes. * web-platform-tests/speech-api/SpeechSynthesis-speak-events-expected.txt: Source/WebCore: AVSpeechSynthesizer has been fully supported on macOS for a number of years. This allows us to unify platform usage. Fix a number of tests that had been marked failing/flaky related to speech synthesis. * Modules/speech/SpeechSynthesis.cpp: (WebCore::SpeechSynthesis::SpeechSynthesis): (WebCore::SpeechSynthesis::startSpeakingImmediately): (WebCore::SpeechSynthesis::speak): * SourcesCocoa.txt: * WebCore.xcodeproj/project.pbxproj: * page/SpeechSynthesisClient.h: * platform/PlatformSpeechSynthesizer.h: * platform/graphics/cocoa/FontCacheCoreText.cpp: (WebCore::variationAxes): * platform/ios/PlatformSpeechSynthesizerIOS.mm: Removed. * platform/mac/PlatformSpeechSynthesizerMac.mm: Removed. * Source/WebCore/platform/cocoa/PlatformSpeechSynthesizerCocoa.mm: Added. Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: * pal/cocoa/AVFoundationSoftLink.h: * pal/cocoa/AVFoundationSoftLink.mm: * pal/spi/cocoa/AXSpeechManagerSPI.h: * pal/spi/mac/SpeechSynthesisSPI.h: Removed. Source/WebKit: Create a new message for resetting speech synthesis state when the DOMWindow changes but the Page (and its referenced speech synthesis) stays the same. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::speechSynthesisResetState): * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.messages.in: * WebProcess/WebCoreSupport/WebSpeechSynthesisClient.cpp: (WebKit::WebSpeechSynthesisClient::resetState): * WebProcess/WebCoreSupport/WebSpeechSynthesisClient.h: Source/WTF: * wtf/PlatformHave.h: LayoutTests: * fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt: * platform/mac-catalina-wk1/TestExpectations: Added. * platform/mac-wk1/TestExpectations: * platform/mac-wk2/TestExpectations: * platform/mac/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/speech-api/SpeechSynthesis-speak-events-expected.txt trunk/LayoutTests/platform/mac/TestExpectations trunk/LayoutTests/platform/mac-wk1/TestExpectations trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/speech/SpeechSynthesis.cpp trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj trunk/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h trunk/Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.mm trunk/Source/WebCore/PAL/pal/spi/cocoa/AXSpeechManagerSPI.h trunk/Source/WebCore/SourcesCocoa.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/page/SpeechSynthesisClient.h trunk/Source/WebCore/platform/PlatformSpeechSynthesizer.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in trunk/Source/WebKit/WebProcess/WebCoreSupport/WebSpeechSynthesisClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebSpeechSynthesisClient.h Added Paths trunk/LayoutTests/platform/mac-catalina-wk1/TestExpectations trunk/Source/WebCore/platform/cocoa/PlatformSpeechSynthesizerCocoa.mm Removed Paths trunk/Source/WebCore/PAL/pal/spi/mac/SpeechSynthesisSPI.h trunk/Source/WebCore/platform/ios/PlatformSpeechSynthesizerIOS.mm trunk/Source/WebCore/platform/mac/PlatformSpeechSynthesizerMac.mm Diff Modified: trunk/LayoutTests/ChangeLog (286258 => 286259) --- trunk/LayoutTests/ChangeLog 2021-11-29 20:37:40 UTC (rev 286258) +++ trunk/LayoutTests/ChangeLog 2021-11-29 20:48:59 UTC (rev 286259) @@ -1,3 +1,17 @@ +2021-11-29 Chris Fleizach + +AX: Unify speech synthesizer platform usage for Mac/iOS +https://bugs.webkit.org/show_bug.cgi?id=231895 + + +Reviewed by Andres Gonzalez. + +* fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt: +* platform/mac-catalina-wk1/TestExpectations: Added. +* platform/mac-wk1/TestExpectations: +* platform/mac-wk2/TestExpectations: +* platform/mac/TestExpectations: + 2021-11-29 Myles C. Maxfield [Cocoa] REGRESSION(r281291): Text Style fonts don't have the correct weight set Modified: trunk/LayoutTests/fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt (286258 => 286259) --- trunk/LayoutTests/fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt 2021-11-29 20:37:40 UTC (rev 286258) +++
[webkit-changes] [286258] trunk/Source/WebKit
Title: [286258] trunk/Source/WebKit Revision 286258 Author bfulg...@apple.com Date 2021-11-29 12:37:40 -0800 (Mon, 29 Nov 2021) Log Message REGRESSION(286219): Build fix. https://bugs.webkit.org/show_bug.cgi?id=233388 Unreviewed build fix after r286219. * WebKit.xcodeproj/project.pbxproj: Don't make duplicate copies of WebContent resources when building the CaptivePortal version of the WCP. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj Diff Modified: trunk/Source/WebKit/ChangeLog (286257 => 286258) --- trunk/Source/WebKit/ChangeLog 2021-11-29 20:36:37 UTC (rev 286257) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 20:37:40 UTC (rev 286258) @@ -1,3 +1,14 @@ +2021-11-29 Brent Fulgham + +REGRESSION(286219): Build fix. +https://bugs.webkit.org/show_bug.cgi?id=233388 + + +Unreviewed build fix after r286219. + +* WebKit.xcodeproj/project.pbxproj: Don't make duplicate copies of WebContent resources when building + the CaptivePortal version of the WCP. + 2021-11-29 Myles C. Maxfield [WebGPU] Delete ObjectRegistry in favor of ObjectHeap Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (286257 => 286258) --- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2021-11-29 20:36:37 UTC (rev 286257) +++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2021-11-29 20:37:40 UTC (rev 286258) @@ -2937,72 +2937,72 @@ 1C20935E22318CB26A39 /* NSAttributedString.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NSAttributedString.h; sourceTree = ""; }; 1C20935F22318CB26A39 /* NSAttributedString.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = NSAttributedString.mm; sourceTree = ""; }; 1C2184012233872800BAC700 /* NSAttributedStringPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSAttributedStringPrivate.h; sourceTree = ""; }; - 1C55A572275457C300EB7E95 /* RemoteQuerySetMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteQuerySetMessagesReplies.h; path = RemoteQuerySetMessagesReplies.h; sourceTree = ""; }; - 1C55A573275457C400EB7E95 /* RemoteTextureMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteTextureMessages.h; path = RemoteTextureMessages.h; sourceTree = ""; }; - 1C55A574275457C400EB7E95 /* RemoteRenderPipelineMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteRenderPipelineMessageReceiver.cpp; path = RemoteRenderPipelineMessageReceiver.cpp; sourceTree = ""; }; - 1C55A575275457C400EB7E95 /* RemotePipelineLayoutMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemotePipelineLayoutMessagesReplies.h; path = RemotePipelineLayoutMessagesReplies.h; sourceTree = ""; }; - 1C55A576275457C400EB7E95 /* RemoteRenderPipelineMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteRenderPipelineMessagesReplies.h; path = RemoteRenderPipelineMessagesReplies.h; sourceTree = ""; }; - 1C55A577275457C400EB7E95 /* RemoteComputePipelineMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteComputePipelineMessageReceiver.cpp; path = RemoteComputePipelineMessageReceiver.cpp; sourceTree = ""; }; - 1C55A578275457C400EB7E95 /* RemoteRenderBundleMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteRenderBundleMessagesReplies.h; path = RemoteRenderBundleMessagesReplies.h; sourceTree = ""; }; - 1C55A579275457C400EB7E95 /* RemoteRenderBundleEncoderMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteRenderBundleEncoderMessagesReplies.h; path = RemoteRenderBundleEncoderMessagesReplies.h; sourceTree = ""; }; - 1C55A57A275457C500EB7E95 /* RemoteExternalTextureMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteExternalTextureMessages.h; path = RemoteExternalTextureMessages.h; sourceTree = ""; }; - 1C55A57B275457C500EB7E95 /* RemoteComputePassEncoderMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteComputePassEncoderMessages.h; path = RemoteComputePassEncoderMessages.h; sourceTree = ""; }; - 1C55A57C275457C500EB7E95 /* RemoteDeviceMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteDeviceMessages.h; path = RemoteDeviceMessages.h; sourceTree = ""; }; - 1C55A57D275457C500EB7E95 /* RemoteRenderBundleEncoderMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteRenderBundleEncoderMessageReceiver.cpp; path = RemoteRenderBundleEncoderMessageReceiver.cpp; sourceTree = ""; }; - 1C55A57E275457C500EB7E95 /* RemoteExternalTextureMessageReceiver.cpp */ = {isa =
[webkit-changes] [286257] trunk
Title: [286257] trunk Revision 286257 Author tyle...@apple.com Date 2021-11-29 12:36:37 -0800 (Mon, 29 Nov 2021) Log Message Mark myself (Tyler Wilcock) as committer Unreviewed. * metadata/contributors.json: Modified Paths trunk/ChangeLog trunk/metadata/contributors.json Diff Modified: trunk/ChangeLog (286256 => 286257) --- trunk/ChangeLog 2021-11-29 20:33:49 UTC (rev 286256) +++ trunk/ChangeLog 2021-11-29 20:36:37 UTC (rev 286257) @@ -1,3 +1,11 @@ +2021-11-29 Tyler Wilcock + +Mark myself (Tyler Wilcock) as committer + +Unreviewed. + +* metadata/contributors.json: + 2021-11-29 Angelos Oikonomopoulos Fix ATOMICS_REQUIRE_LIBATOMIC testcase on 32-bits Modified: trunk/metadata/contributors.json (286256 => 286257) --- trunk/metadata/contributors.json 2021-11-29 20:33:49 UTC (rev 286256) +++ trunk/metadata/contributors.json 2021-11-29 20:36:37 UTC (rev 286257) @@ -6514,7 +6514,8 @@ "name" : "Tyler Wilcock", "nicks" : [ "twilco" - ] + ], + "status" : "committer" }, { "emails" : [ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286255] trunk
Title: [286255] trunk Revision 286255 Author ysuz...@apple.com Date 2021-11-29 12:29:00 -0800 (Mon, 29 Nov 2021) Log Message [JSC] Add Intl.NumberFormat.formatRangeToParts JSTests: https://bugs.webkit.org/show_bug.cgi?id=233539 Reviewed by Ross Kirsling. * stress/intl-numberformat-format-large.js: (nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): (nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): * stress/intl-numberformat-format-range-v3.js: (nf.formatRange.nf.formatRangeToParts.methods.forEach): (nf.formatRange.string_appeared_here.forEach): Deleted. * stress/intl-numberformat-format-string-v3.js: (nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): (nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): * stress/intl-numberformat-format-string.js: (nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): (nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): Source/_javascript_Core: https://bugs.webkit.org/show_bug.cgi?id=233540 Reviewed by Ross Kirsling. This patch implements Intl.NumberFormat#formatRangeToParts if ICU is 69 or greater. It also cleans up / optimizes existing Intl.NumberFormat#formatToParts implementation. We first collect all fields generated by ICU. And then, flattening nested fields into non-overlapping sequence of parts via flattenFields. * runtime/IntlNumberFormat.cpp: (JSC::flattenFields): (JSC::numberFieldsPracticallyEqual): (JSC::IntlNumberFormat::formatRangeToPartsInternal): (JSC::IntlNumberFormat::formatRangeToParts const): (JSC::IntlNumberFormat::formatToPartsInternal): (JSC::IntlNumberFormat::formatToParts const): * runtime/IntlNumberFormat.h: * runtime/IntlNumberFormatPrototype.cpp: (JSC::IntlNumberFormatPrototype::finishCreation): (JSC::JSC_DEFINE_HOST_FUNCTION): * runtime/IntlRelativeTimeFormat.cpp: (JSC::IntlRelativeTimeFormat::formatToParts const): Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/stress/intl-numberformat-format-large.js trunk/JSTests/stress/intl-numberformat-format-range-v3.js trunk/JSTests/stress/intl-numberformat-format-string-v3.js trunk/JSTests/stress/intl-numberformat-format-string.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/IntlNumberFormat.cpp trunk/Source/_javascript_Core/runtime/IntlNumberFormat.h trunk/Source/_javascript_Core/runtime/IntlNumberFormatPrototype.cpp trunk/Source/_javascript_Core/runtime/IntlRelativeTimeFormat.cpp trunk/Source/WTF/wtf/Range.h Diff Modified: trunk/JSTests/ChangeLog (286254 => 286255) --- trunk/JSTests/ChangeLog 2021-11-29 20:24:55 UTC (rev 286254) +++ trunk/JSTests/ChangeLog 2021-11-29 20:29:00 UTC (rev 286255) @@ -1,5 +1,25 @@ 2021-11-29 Yusuke Suzuki +[JSC] Add Intl.NumberFormat.formatRangeToParts +https://bugs.webkit.org/show_bug.cgi?id=233539 + +Reviewed by Ross Kirsling. + +* stress/intl-numberformat-format-large.js: +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): +* stress/intl-numberformat-format-range-v3.js: +(nf.formatRange.nf.formatRangeToParts.methods.forEach): +(nf.formatRange.string_appeared_here.forEach): Deleted. +* stress/intl-numberformat-format-string-v3.js: +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): +* stress/intl-numberformat-format-string.js: +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf.formatRangeToParts): +(nf.formatRangeToParts.shouldBe.JSON.stringify.nf2.formatRangeToParts): + +2021-11-29 Yusuke Suzuki + [JSC] Public Class Field initialization is slow https://bugs.webkit.org/show_bug.cgi?id=232479 Modified: trunk/JSTests/stress/intl-numberformat-format-large.js (286254 => 286255) --- trunk/JSTests/stress/intl-numberformat-format-large.js 2021-11-29 20:24:55 UTC (rev 286254) +++ trunk/JSTests/stress/intl-numberformat-format-large.js 2021-11-29 20:29:00 UTC (rev 286255) @@ -13,3 +13,8 @@ shouldBe(nf.formatRange(start, end), `987,654,321,987,654,321–987,654,321,987,654,322`); shouldBe(nf2.formatRange(start, end), `987,654,321,987,654,321~987,654,321,987,654,322`); } +if (nf.formatRangeToParts) { +shouldBe(JSON.stringify(nf.formatRangeToParts(0, 3)), `[{"type":"integer","value":"0","source":"startRange"},{"type":"literal","value":"–","source":"shared"},{"type":"integer","value":"30","source":"endRange"},{"type":"group","value":",","source":"endRange"},{"type":"integer","value":"000","source":"endRange"}]`); +shouldBe(JSON.stringify(nf.formatRangeToParts(start, end)),
[webkit-changes] [286254] trunk
Title: [286254] trunk Revision 286254 Author mmaxfi...@apple.com Date 2021-11-29 12:24:55 -0800 (Mon, 29 Nov 2021) Log Message [Cocoa] REGRESSION(r281291): Text Style fonts don't have the correct weight set https://bugs.webkit.org/show_bug.cgi?id=233070 Reviewed by Cameron McCormack. Source/WebCore: Text style fonts (like font: -apple-system-body) weren't having their weights detected correctly. When the bold-fonts accessibility setting is enabled, our detection logic was indicating that the fonts weren't bold when they actually were. This patch fixes the detection logic to use kCTFontCSSWeightAttribute instead. Test: platform/ios/ios/fast/text/opticalFontWithWeight.html * rendering/RenderThemeCocoa.mm: (WebCore::cssWeightOfSystemFont): LayoutTests: * platform/ios-14/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: * platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: * platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt trunk/LayoutTests/platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt trunk/LayoutTests/platform/ios-14/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderThemeCocoa.mm Diff Modified: trunk/LayoutTests/ChangeLog (286253 => 286254) --- trunk/LayoutTests/ChangeLog 2021-11-29 20:18:44 UTC (rev 286253) +++ trunk/LayoutTests/ChangeLog 2021-11-29 20:24:55 UTC (rev 286254) @@ -1,3 +1,14 @@ +2021-11-29 Myles C. Maxfield + +[Cocoa] REGRESSION(r281291): Text Style fonts don't have the correct weight set +https://bugs.webkit.org/show_bug.cgi?id=233070 + +Reviewed by Cameron McCormack. + +* platform/ios-14/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: +* platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: +* platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: + 2021-11-29 Arcady Goldmints-Orlov [GLIB] Update test expectations and baselines. Unreviewed test gardening. Modified: trunk/LayoutTests/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt (286253 => 286254) --- trunk/LayoutTests/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt 2021-11-29 20:18:44 UTC (rev 286253) +++ trunk/LayoutTests/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt 2021-11-29 20:24:55 UTC (rev 286254) @@ -4,8 +4,8 @@ RenderBlock {HTML} at (0,0) size 800x844 RenderBody {BODY} at (8,8) size 784x820 RenderBlock {H2} at (0,0) size 784x24 -RenderText {#text} at (0,1) size 119x22 - text run at (0,1) width 119: "Normal Weight" +RenderText {#text} at (0,1) size 118x22 + text run at (0,1) width 118: "Normal Weight" RenderBlock {P} at (0,40) size 784x20 RenderText {#text} at (0,0) size 670x20 text run at (0,0) width 670: "Body Text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque ornare ornare mi" @@ -40,8 +40,8 @@ RenderText {#text} at (0,0) size 685x20 text run at (0,0) width 685: "Body Text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque ornare ornare mi" RenderBlock {H2} at (0,456) size 784x24 -RenderText {#text} at (0,1) size 97x22 - text run at (0,1) width 97: "Bold Weight" +RenderText {#text} at (0,1) size 96x22 + text run at (0,1) width 96: "Bold Weight" RenderBlock {P} at (0,496) size 784x20 RenderText {#text} at (0,0) size 716x20 text run at (0,0) width 716: "Body Text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque ornare ornare mi" Modified: trunk/LayoutTests/platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt (286253 => 286254) --- trunk/LayoutTests/platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt 2021-11-29 20:18:44 UTC (rev 286253) +++ trunk/LayoutTests/platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt 2021-11-29 20:24:55 UTC (rev 286254) @@ -4,8 +4,8 @@ RenderBlock {HTML} at (0,0) size 800x844 RenderBody {BODY} at (8,8) size 784x820 RenderBlock {H2} at (0,0) size 784x24 -RenderText {#text} at (0,1) size 119x22 - text run at (0,1) width 119: "Normal Weight" +RenderText {#text} at (0,1) size 118x22 + text run at (0,1) width 118: "Normal Weight" RenderBlock {P} at (0,40) size 784x20 RenderText {#text} at (0,0) size 670x20 text run at (0,0) width 670: "Body Text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque ornare ornare mi" @@ -40,8 +40,8 @@ RenderText {#text} at (0,0) size 685x20 text run at (0,0) width 685: "Body Text: Lorem ipsum dolor sit amet, consectetur adipiscing
[webkit-changes] [286253] trunk/Source/JavaScriptCore
Title: [286253] trunk/Source/_javascript_Core Revision 286253 Author commit-qu...@webkit.org Date 2021-11-29 12:18:44 -0800 (Mon, 29 Nov 2021) Log Message [GTK] 2.35.1 fails to build for Fedora: undefined reference to 'llint_link_call' https://bugs.webkit.org/show_bug.cgi?id=233574 Unreviewed, add missing attributes. Patch by Michael Catanzaro on 2021-11-29 * llint/LLIntSlowPaths.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286252 => 286253) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-29 20:11:24 UTC (rev 286252) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-29 20:18:44 UTC (rev 286253) @@ -1,3 +1,12 @@ +2021-11-29 Michael Catanzaro + +[GTK] 2.35.1 fails to build for Fedora: undefined reference to 'llint_link_call' +https://bugs.webkit.org/show_bug.cgi?id=233574 + +Unreviewed, add missing attributes. + +* llint/LLIntSlowPaths.h: + 2021-11-29 Yusuke Suzuki [JSC] Public Class Field initialization is slow Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h (286252 => 286253) --- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h 2021-11-29 20:11:24 UTC (rev 286252) +++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h 2021-11-29 20:18:44 UTC (rev 286253) @@ -38,8 +38,8 @@ extern "C" SlowPathReturnType llint_trace_operand(CallFrame*, const Instruction*, int fromWhere, int operand) REFERENCED_FROM_ASM; extern "C" SlowPathReturnType llint_trace_value(CallFrame*, const Instruction*, int fromWhere, VirtualRegister operand) REFERENCED_FROM_ASM; -extern "C" SlowPathReturnType llint_link_call(CallFrame*, JSCell*, CallLinkInfo*, JSCell*); -extern "C" SlowPathReturnType llint_virtual_call(CallFrame*, JSCell*, CallLinkInfo*, JSCell*); +extern "C" SlowPathReturnType llint_link_call(CallFrame*, JSCell*, CallLinkInfo*, JSCell*) REFERENCED_FROM_ASM; +extern "C" SlowPathReturnType llint_virtual_call(CallFrame*, JSCell*, CallLinkInfo*, JSCell*) REFERENCED_FROM_ASM; extern "C" void llint_write_barrier_slow(CallFrame*, JSCell*) REFERENCED_FROM_ASM WTF_INTERNAL; #define LLINT_SLOW_PATH_DECL(name) \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286252] trunk/Source
Title: [286252] trunk/Source Revision 286252 Author mmaxfi...@apple.com Date 2021-11-29 12:11:24 -0800 (Mon, 29 Nov 2021) Log Message [WebGPU] Provide default values for descriptor struct members https://bugs.webkit.org/show_bug.cgi?id=233431 Reviewed by Alex Christensen. Source/WebCore/PAL: The purpose of this is to be defensive. Ideally these wouldn't actually be used, but it's a good idea to be safe and have them specified anyway. I didn't provide default values for members whose types already have something well-defined, like variants or optionals. But I did for ints and enums. Where possible, I've matched the default values listed in the spec. * pal/graphics/WebGPU/WebGPUBindGroupEntry.h: * pal/graphics/WebGPU/WebGPUBindGroupLayoutEntry.h: * pal/graphics/WebGPU/WebGPUBlendComponent.h: * pal/graphics/WebGPU/WebGPUBufferBinding.h: * pal/graphics/WebGPU/WebGPUBufferBindingLayout.h: * pal/graphics/WebGPU/WebGPUBufferDescriptor.h: * pal/graphics/WebGPU/WebGPUCanvasConfiguration.h: * pal/graphics/WebGPU/WebGPUColor.h: * pal/graphics/WebGPU/WebGPUColorTargetState.h: * pal/graphics/WebGPU/WebGPUCompilationMessage.h: * pal/graphics/WebGPU/WebGPUComputePassTimestampWrites.h: * pal/graphics/WebGPU/WebGPUDepthStencilState.h: * pal/graphics/WebGPU/WebGPUExtent3D.h: * pal/graphics/WebGPU/WebGPUExternalTextureDescriptor.h: * pal/graphics/WebGPU/WebGPUImageCopyTexture.h: * pal/graphics/WebGPU/WebGPUImageCopyTextureTagged.h: * pal/graphics/WebGPU/WebGPUImageDataLayout.h: * pal/graphics/WebGPU/WebGPUMultisampleState.h: * pal/graphics/WebGPU/WebGPUOrigin2D.h: * pal/graphics/WebGPU/WebGPUOrigin3D.h: * pal/graphics/WebGPU/WebGPUPipelineDescriptorBase.h: * pal/graphics/WebGPU/WebGPUPrimitiveState.h: * pal/graphics/WebGPU/WebGPUQuerySetDescriptor.h: * pal/graphics/WebGPU/WebGPURenderBundleEncoderDescriptor.h: * pal/graphics/WebGPU/WebGPURenderPassColorAttachment.h: * pal/graphics/WebGPU/WebGPURenderPassDepthStencilAttachment.h: * pal/graphics/WebGPU/WebGPURenderPassDescriptor.h: * pal/graphics/WebGPU/WebGPURenderPassLayout.h: * pal/graphics/WebGPU/WebGPURenderPassTimestampWrites.h: * pal/graphics/WebGPU/WebGPURequestAdapterOptions.h: * pal/graphics/WebGPU/WebGPUSamplerBindingLayout.h: * pal/graphics/WebGPU/WebGPUSamplerDescriptor.h: * pal/graphics/WebGPU/WebGPUStencilFaceState.h: * pal/graphics/WebGPU/WebGPUStorageTextureBindingLayout.h: * pal/graphics/WebGPU/WebGPUTextureBindingLayout.h: * pal/graphics/WebGPU/WebGPUTextureDescriptor.h: * pal/graphics/WebGPU/WebGPUTextureViewDescriptor.h: * pal/graphics/WebGPU/WebGPUVertexAttribute.h: * pal/graphics/WebGPU/WebGPUVertexBufferLayout.h: Source/WebKit: No new tests because there is no behavior change. * Shared/WebGPU/WebGPUBindGroupEntry.h: * Shared/WebGPU/WebGPUBindGroupLayoutEntry.h: * Shared/WebGPU/WebGPUBlendComponent.h: * Shared/WebGPU/WebGPUBufferBinding.h: * Shared/WebGPU/WebGPUBufferBindingLayout.h: * Shared/WebGPU/WebGPUBufferDescriptor.h: * Shared/WebGPU/WebGPUCanvasConfiguration.h: * Shared/WebGPU/WebGPUColor.h: * Shared/WebGPU/WebGPUColorTargetState.h: * Shared/WebGPU/WebGPUCompilationMessage.h: * Shared/WebGPU/WebGPUComputePassTimestampWrites.h: * Shared/WebGPU/WebGPUDepthStencilState.h: * Shared/WebGPU/WebGPUExtent3D.h: * Shared/WebGPU/WebGPUExternalTextureDescriptor.h: * Shared/WebGPU/WebGPUImageCopyTexture.h: * Shared/WebGPU/WebGPUImageCopyTextureTagged.h: * Shared/WebGPU/WebGPUImageDataLayout.h: * Shared/WebGPU/WebGPUMultisampleState.h: * Shared/WebGPU/WebGPUOrigin2D.h: * Shared/WebGPU/WebGPUOrigin3D.h: * Shared/WebGPU/WebGPUPrimitiveState.h: * Shared/WebGPU/WebGPUQuerySetDescriptor.h: * Shared/WebGPU/WebGPURenderBundleEncoderDescriptor.h: * Shared/WebGPU/WebGPURenderPassColorAttachment.h: * Shared/WebGPU/WebGPURenderPassDepthStencilAttachment.h: * Shared/WebGPU/WebGPURenderPassLayout.h: * Shared/WebGPU/WebGPURenderPassTimestampWrites.h: * Shared/WebGPU/WebGPURequestAdapterOptions.h: * Shared/WebGPU/WebGPUSamplerBindingLayout.h: * Shared/WebGPU/WebGPUSamplerDescriptor.h: * Shared/WebGPU/WebGPUStencilFaceState.h: * Shared/WebGPU/WebGPUStorageTextureBindingLayout.h: * Shared/WebGPU/WebGPUTextureBindingLayout.h: * Shared/WebGPU/WebGPUTextureDescriptor.h: * Shared/WebGPU/WebGPUTextureViewDescriptor.h: * Shared/WebGPU/WebGPUVertexAttribute.h: * Shared/WebGPU/WebGPUVertexBufferLayout.h: Modified Paths trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBindGroupEntry.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBindGroupLayoutEntry.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBlendComponent.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBufferBinding.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBufferBindingLayout.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUBufferDescriptor.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUCanvasConfiguration.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUColor.h trunk/Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUColorTargetState.h
[webkit-changes] [286251] trunk
Title: [286251] trunk Revision 286251 Author ysuz...@apple.com Date 2021-11-29 12:04:08 -0800 (Mon, 29 Nov 2021) Log Message [JSC] Public Class Field initialization is slow https://bugs.webkit.org/show_bug.cgi?id=232479 Reviewed by Alexey Shvayka. JSTests: * microbenchmarks/class-fields-classic-constructor-assignments.js: Added. (Classic_Constructor_Assignments): (bench): * microbenchmarks/class-fields-private-fields.js: Added. (ES2022_Private_Fields): (bench): * microbenchmarks/class-fields-public-fields.js: Added. (ES2022_Public_Fields): (bench): * stress/class-fields-getter-override.js: Added. (shouldThrow): (defineCGetter.): (B): (define0Getter.): (define0Getter): (D): * stress/custom-get-set-proto-chain-put.js: (let.object.of.getObjects): * stress/freeze-and-seal-should-prevent-extensions.js: * stress/object-assign-fast-path.js: * stress/ordinary-set-exceptions.js: (shouldThrow): * stress/put-non-reified-static-function-or-custom.js: * wasm/js-api/test_basic_api.js: (const.c.in.constructorProperties.switch): Source/_javascript_Core: Class public field implementation did not have optimization for initializing class fields: using runtime call to initialize fields instead of IC. This patch leverages put_by_id / put_by_val with direct flag so that we can enable IC. Currently, we are not changing original putDirect semantics since it is out of this patch's scope. We will look into it and probably changing it in a separate patch, but not in this patch. ToT Patched class-fields-classic-constructor-assignments 17.1491+-2.6327 15.0906+-0.6795 might be 1.1364x faster class-fields-public-fields409.4328+-8.3140 ^ 20.2752+-2.0835^ definitely 20.1938x faster class-fields-private-fields27.2621+-1.3858 25.1810+-3.9873 might be 1.0826x faster * bytecompiler/NodesCodegen.cpp: (JSC::DefineFieldNode::emitBytecode): * runtime/CommonSlowPaths.h: (JSC::CommonSlowPaths::putDirectWithReify): * runtime/JSObject.cpp: (JSC::JSObject::putDirectCustomAccessor): (JSC::JSObject::putDirectNonIndexAccessor): * runtime/JSObject.h: (JSC::JSObject::putDirect): (JSC::JSObject::putDirectRespectingExtensibility): * runtime/JSObjectInlines.h: (JSC::JSObject::putInlineFast): (JSC::JSObject::putDirectInternal): (JSC::JSObject::putOwnDataProperty): (JSC::JSObject::putOwnDataPropertyMayBeIndex): Source/WTF: * wtf/text/ASCIILiteral.h: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/stress/custom-get-set-proto-chain-put.js trunk/JSTests/stress/freeze-and-seal-should-prevent-extensions.js trunk/JSTests/stress/object-assign-fast-path.js trunk/JSTests/stress/ordinary-set-exceptions.js trunk/JSTests/stress/put-non-reified-static-function-or-custom.js trunk/JSTests/wasm/js-api/test_basic_api.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp trunk/Source/_javascript_Core/runtime/CommonSlowPaths.h trunk/Source/_javascript_Core/runtime/JSObject.cpp trunk/Source/_javascript_Core/runtime/JSObject.h trunk/Source/_javascript_Core/runtime/JSObjectInlines.h trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/text/ASCIILiteral.h Added Paths trunk/JSTests/microbenchmarks/class-fields-classic-constructor-assignments.js trunk/JSTests/microbenchmarks/class-fields-private-fields.js trunk/JSTests/microbenchmarks/class-fields-public-fields.js trunk/JSTests/stress/class-fields-getter-override.js Diff Modified: trunk/JSTests/ChangeLog (286250 => 286251) --- trunk/JSTests/ChangeLog 2021-11-29 19:57:11 UTC (rev 286250) +++ trunk/JSTests/ChangeLog 2021-11-29 20:04:08 UTC (rev 286251) @@ -1,5 +1,38 @@ 2021-11-29 Yusuke Suzuki +[JSC] Public Class Field initialization is slow +https://bugs.webkit.org/show_bug.cgi?id=232479 + +Reviewed by Alexey Shvayka. + +* microbenchmarks/class-fields-classic-constructor-assignments.js: Added. +(Classic_Constructor_Assignments): +(bench): +* microbenchmarks/class-fields-private-fields.js: Added. +(ES2022_Private_Fields): +(bench): +* microbenchmarks/class-fields-public-fields.js: Added. +(ES2022_Public_Fields): +(bench): +* stress/class-fields-getter-override.js: Added. +(shouldThrow): +(defineCGetter.): +(B): +(define0Getter.): +(define0Getter): +(D): +* stress/custom-get-set-proto-chain-put.js: +(let.object.of.getObjects): +* stress/freeze-and-seal-should-prevent-extensions.js: +* stress/object-assign-fast-path.js: +* stress/ordinary-set-exceptions.js: +(shouldThrow): +* stress/put-non-reified-static-function-or-custom.js: +* wasm/js-api/test_basic_api.js: +(const.c.in.constructorProperties.switch): + +2021-11-29
[webkit-changes] [286250] trunk/Source/WebKit
Title: [286250] trunk/Source/WebKit Revision 286250 Author cdu...@apple.com Date 2021-11-29 11:57:11 -0800 (Mon, 29 Nov 2021) Log Message Make support for WebKitAdditions in Framework headers conditional based on deployment target https://bugs.webkit.org/show_bug.cgi?id=233566 Reviewed by Wenson Hsieh. Only support using WebKitAdditions in framework headers on macOS 12+, iOS 16+, tvOS 16+ and watchOS 9+. * mac/replace-webkit-additions-includes.py: (is_supported_os): (main): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/mac/replace-webkit-additions-includes.py Diff Modified: trunk/Source/WebKit/ChangeLog (286249 => 286250) --- trunk/Source/WebKit/ChangeLog 2021-11-29 19:55:59 UTC (rev 286249) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 19:57:11 UTC (rev 286250) @@ -1,3 +1,17 @@ +2021-11-29 Chris Dumez + +Make support for WebKitAdditions in Framework headers conditional based on deployment target +https://bugs.webkit.org/show_bug.cgi?id=233566 + +Reviewed by Wenson Hsieh. + +Only support using WebKitAdditions in framework headers on macOS 12+, iOS 16+, tvOS 16+ and +watchOS 9+. + +* mac/replace-webkit-additions-includes.py: +(is_supported_os): +(main): + 2021-11-24 Antoine Quint [Model] clean up compile-time flags and condition IDL methods behind them Modified: trunk/Source/WebKit/mac/replace-webkit-additions-includes.py (286249 => 286250) --- trunk/Source/WebKit/mac/replace-webkit-additions-includes.py 2021-11-29 19:55:59 UTC (rev 286249) +++ trunk/Source/WebKit/mac/replace-webkit-additions-includes.py 2021-11-29 19:57:11 UTC (rev 286250) @@ -42,6 +42,26 @@ return "" +def is_supported_os(): +os_version_string = os.environ.get("MACOSX_DEPLOYMENT_TARGET") +if os_version_string is not None: +os_version = float('.'.join(os_version_string.split('.')[:2])) +return os_version >= 13.0 +os_version_string = os.environ.get("IPHONEOS_DEPLOYMENT_TARGET") +if os_version_string is not None: +os_version = float('.'.join(os_version_string.split('.')[:2])) +return os_version >= 16.0 +os_version_string = os.environ.get("WATCHOS_DEPLOYMENT_TARGET") +if os_version_string is not None: +os_version = float('.'.join(os_version_string.split('.')[:2])) +return os_version >= 9.0 +os_version_string = os.environ.get("TVOS_DEPLOYMENT_TARGET") +if os_version_string is not None: +os_version = float('.'.join(os_version_string.split('.')[:2])) +return os_version >= 16.0 +raise RuntimeError('Unrecognized deployment target') + + def main(argv=None): if not argv: argv = sys.argv @@ -65,6 +85,10 @@ print("(%s): SDK root directory unspecified" % argv[0]) return 1 +# We currently only support WebKitAdditions in Framework headers on macOS 13+ and iOS 16+. +if not is_supported_os(): +return 0 + additions_import_pattern = re.compile(r"\#if USE\(APPLE_INTERNAL_SDK\)\n#import \n#endif") try: with open(header_path, "r") as header: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286249] trunk
Title: [286249] trunk Revision 286249 Author ysuz...@apple.com Date 2021-11-29 11:55:59 -0800 (Mon, 29 Nov 2021) Log Message [JSC] private name operation should use RETURN_IF_EXCEPTION https://bugs.webkit.org/show_bug.cgi?id=233577 rdar://85813869 Reviewed by Mark Lam. JSTests: * stress/termination-error-in-private-name.js: Added. (C): Source/_javascript_Core: Because of TerminatedExecutionError, error can be thrown at any time. * jit/JITOperations.cpp: (JSC::JSC_DEFINE_JIT_OPERATION): (JSC::putPrivateNameOptimize): (JSC::putPrivateName): * llint/LLIntSlowPaths.cpp: (JSC::LLInt::LLINT_SLOW_PATH_DECL): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/jit/JITOperations.cpp trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp Added Paths trunk/JSTests/stress/termination-error-in-private-name.js Diff Modified: trunk/JSTests/ChangeLog (286248 => 286249) --- trunk/JSTests/ChangeLog 2021-11-29 19:51:39 UTC (rev 286248) +++ trunk/JSTests/ChangeLog 2021-11-29 19:55:59 UTC (rev 286249) @@ -1,5 +1,16 @@ 2021-11-29 Yusuke Suzuki +[JSC] private name operation should use RETURN_IF_EXCEPTION +https://bugs.webkit.org/show_bug.cgi?id=233577 +rdar://85813869 + +Reviewed by Mark Lam. + +* stress/termination-error-in-private-name.js: Added. +(C): + +2021-11-29 Yusuke Suzuki + [JSC] GetTypedArrayLengthAsInt52 can get Array::Generic ArrayMode https://bugs.webkit.org/show_bug.cgi?id=233571 rdar://85812164 Added: trunk/JSTests/stress/termination-error-in-private-name.js (0 => 286249) --- trunk/JSTests/stress/termination-error-in-private-name.js (rev 0) +++ trunk/JSTests/stress/termination-error-in-private-name.js 2021-11-29 19:55:59 UTC (rev 286249) @@ -0,0 +1,14 @@ +//@ runDefault("--watchdog=2", "--watchdog-exception-ok") + +class C { + #field; + + constructor() { +gc(); +#field in this; + } +} + +for (let i = 0; i < 1000; i++) { + new C(); +} Modified: trunk/Source/_javascript_Core/ChangeLog (286248 => 286249) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:51:39 UTC (rev 286248) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:55:59 UTC (rev 286249) @@ -1,5 +1,22 @@ 2021-11-29 Yusuke Suzuki +[JSC] private name operation should use RETURN_IF_EXCEPTION +https://bugs.webkit.org/show_bug.cgi?id=233577 +rdar://85813869 + +Reviewed by Mark Lam. + +Because of TerminatedExecutionError, error can be thrown at any time. + +* jit/JITOperations.cpp: +(JSC::JSC_DEFINE_JIT_OPERATION): +(JSC::putPrivateNameOptimize): +(JSC::putPrivateName): +* llint/LLIntSlowPaths.cpp: +(JSC::LLInt::LLINT_SLOW_PATH_DECL): + +2021-11-29 Yusuke Suzuki + [JSC] Move m_incomingPolymorphicCalls out of CodeBlock::JITData https://bugs.webkit.org/show_bug.cgi?id=233415 Modified: trunk/Source/_javascript_Core/jit/JITOperations.cpp (286248 => 286249) --- trunk/Source/_javascript_Core/jit/JITOperations.cpp 2021-11-29 19:51:39 UTC (rev 286248) +++ trunk/Source/_javascript_Core/jit/JITOperations.cpp 2021-11-29 19:55:59 UTC (rev 286249) @@ -528,7 +528,7 @@ JSValue propertyValue = JSValue::decode(encodedProperty); ASSERT(propertyValue.isSymbol()); auto property = propertyValue.toPropertyKey(globalObject); -EXCEPTION_ASSERT(!scope.exception()); +RETURN_IF_EXCEPTION(scope, { }); PropertySlot slot(baseObject, PropertySlot::InternalMethodType::HasProperty); bool found = JSObject::getPrivateFieldSlot(baseObject, globalObject, property, slot); @@ -562,7 +562,7 @@ JSValue propertyValue = JSValue::decode(encodedProperty); ASSERT(propertyValue.isSymbol()); auto property = propertyValue.toPropertyKey(globalObject); -EXCEPTION_ASSERT(!scope.exception()); +RETURN_IF_EXCEPTION(scope, { }); return JSValue::encode(jsBoolean(asObject(baseValue)->hasPrivateField(globalObject, property))); } @@ -1324,7 +1324,7 @@ RETURN_IF_EXCEPTION(scope, void()); auto propertyName = subscript.toPropertyKey(globalObject); -EXCEPTION_ASSERT(!scope.exception()); +RETURN_IF_EXCEPTION(scope, void()); // Private fields can only be accessed within class lexical scope // and class methods are always in strict mode @@ -1358,7 +1358,7 @@ RETURN_IF_EXCEPTION(scope, void()); auto propertyName = subscript.toPropertyKey(globalObject); -EXCEPTION_ASSERT(!scope.exception()); +RETURN_IF_EXCEPTION(scope, void()); scope.release(); Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (286248 => 286249) --- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2021-11-29 19:51:39 UTC (rev 286248) +++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2021-11-29 19:55:59 UTC (rev 286249) @@ -1468,7 +1468,7 @@ auto propertyValue =
[webkit-changes] [286248] trunk
Title: [286248] trunk Revision 286248 Author ysuz...@apple.com Date 2021-11-29 11:51:39 -0800 (Mon, 29 Nov 2021) Log Message [JSC] Move m_incomingPolymorphicCalls out of CodeBlock::JITData https://bugs.webkit.org/show_bug.cgi?id=233415 Reviewed by Mark Lam and Darin Adler. Source/_javascript_Core: This patch moves m_incomingPolymorphicCalls from CodeBlock::JITData to CodeBlock since it is now used in LLInt too if JIT is enabled. To keep CodeBlock small, this patch shrinks sizeof(SentinelLinkedList). * bytecode/CodeBlock.cpp: (JSC::CodeBlock::linkIncomingPolymorphicCall): (JSC::CodeBlock::unlinkIncomingCalls): * bytecode/CodeBlock.h: Source/WTF: Make sizeof(SentinelLinkedList) small. We do not need to have two sentinel for the list. * wtf/SentinelLinkedList.h: (WTF::SentinelLinkedList::SentinelLinkedList): (WTF::RawNode>::begin): (WTF::RawNode>::end): (WTF::RawNode>::push): (WTF::RawNode>::append): (WTF::RawNode>::takeFrom): (WTF::RawNode>::SentinelLinkedList): Deleted. Tools: Add tests for SentinelLinkedList. * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WTF/SentinelLinkedList.cpp: Added. (TestWebKitAPI::TestNode::TestNode): (TestWebKitAPI::TestNode::value const): (TestWebKitAPI::TEST): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp trunk/Source/_javascript_Core/bytecode/CodeBlock.h trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/SentinelLinkedList.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/CMakeLists.txt trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Tools/TestWebKitAPI/Tests/WTF/SentinelLinkedList.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286247 => 286248) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:43:17 UTC (rev 286247) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:51:39 UTC (rev 286248) @@ -1,5 +1,20 @@ 2021-11-29 Yusuke Suzuki +[JSC] Move m_incomingPolymorphicCalls out of CodeBlock::JITData +https://bugs.webkit.org/show_bug.cgi?id=233415 + +Reviewed by Mark Lam and Darin Adler. + +This patch moves m_incomingPolymorphicCalls from CodeBlock::JITData to CodeBlock since it is now used +in LLInt too if JIT is enabled. To keep CodeBlock small, this patch shrinks sizeof(SentinelLinkedList). + +* bytecode/CodeBlock.cpp: +(JSC::CodeBlock::linkIncomingPolymorphicCall): +(JSC::CodeBlock::unlinkIncomingCalls): +* bytecode/CodeBlock.h: + +2021-11-29 Yusuke Suzuki + [JSC] GetTypedArrayLengthAsInt52 can get Array::Generic ArrayMode https://bugs.webkit.org/show_bug.cgi?id=233571 rdar://85812164 Modified: trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp (286247 => 286248) --- trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2021-11-29 19:43:17 UTC (rev 286247) +++ trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2021-11-29 19:51:39 UTC (rev 286248) @@ -2134,10 +2134,7 @@ void CodeBlock::linkIncomingPolymorphicCall(CallFrame* callerFrame, PolymorphicCallNode* incoming) { noticeIncomingCall(callerFrame); -{ -ConcurrentJSLocker locker(m_lock); -ensureJITData(locker).m_incomingPolymorphicCalls.push(incoming); -} +m_incomingPolymorphicCalls.push(incoming); } #endif // ENABLE(JIT) @@ -2149,19 +2146,12 @@ void CodeBlock::unlinkIncomingCalls() { -while (m_incomingCalls.begin() != m_incomingCalls.end()) +while (!m_incomingCalls.isEmpty()) m_incomingCalls.begin()->unlink(vm()); #if ENABLE(JIT) -JITData* jitData = nullptr; -{ -ConcurrentJSLocker locker(m_lock); -jitData = m_jitData.get(); -} -if (jitData) { -while (jitData->m_incomingPolymorphicCalls.begin() != jitData->m_incomingPolymorphicCalls.end()) -jitData->m_incomingPolymorphicCalls.begin()->unlink(vm()); -} -#endif // ENABLE(JIT) +while (!m_incomingPolymorphicCalls.isEmpty()) +m_incomingPolymorphicCalls.begin()->unlink(vm()); +#endif } CodeBlock* CodeBlock::newReplacement() Modified: trunk/Source/_javascript_Core/bytecode/CodeBlock.h (286247 => 286248) --- trunk/Source/_javascript_Core/bytecode/CodeBlock.h 2021-11-29 19:43:17 UTC (rev 286247) +++ trunk/Source/_javascript_Core/bytecode/CodeBlock.h 2021-11-29 19:51:39 UTC (rev 286248) @@ -260,7 +260,6 @@ friend class LLIntOffsetsExtractor; FixedVector m_stubInfos; -SentinelLinkedList> m_incomingPolymorphicCalls; bool m_hasCalleeSaveRegisters { false }; RegisterAtOffsetList m_calleeSaveRegisters; @@ -954,6 +953,9 @@ const void* m_instructionsRawPointer { nullptr }; SentinelLinkedList> m_incomingCalls; +#if ENABLE(JIT) +SentinelLinkedList> m_incomingPolymorphicCalls; +#endif StructureWatchpointMap m_llintGetByIdWatchpointMap; RefPtr m_jitCode; #if
[webkit-changes] [286247] branches/safari-612-branch/Source
Title: [286247] branches/safari-612-branch/Source Revision 286247 Author alanc...@apple.com Date 2021-11-29 11:43:17 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285648. rdar://problem/85171163 Log memory usage metadata when WebContent crosses critical or warning level memory thresholds https://bugs.webkit.org/show_bug.cgi?id=232976 Reviewed by Darin Adler. Source/WebCore: WebCore::logMemoryStatistics was changed to: - Emit VM tag names as public strings to the log. There isn't anything privacy sensitive about our 256 fixed VM tags, and emitting them to the logs as as private string (as we were doing before) made those log lines useless. - Use WebCore::memoryUsageStatistics to gather memory metadata, since other WebCore callsites were already using that and it reduces code duplication. - Only log JS object type counts on internal OS builds. Previously we also logged those counts on public OS builds, but that was useless since all the class names were redacted in the log. * page/MemoryRelease.cpp: (WebCore::logMemoryStatistics): (WebCore::logMemoryStatisticsReasonDescription): (WebCore::pageCount): Deleted. (WebCore::logMemoryStatisticsAtTimeOfDeath): Deleted. * page/MemoryRelease.h: * page/PerformanceLogging.cpp: (WebCore::PerformanceLogging::memoryUsageStatistics): (WebCore::PerformanceLogging::didReachPointOfInterest): * page/PerformanceLogging.h: * page/cocoa/PerformanceLoggingCocoa.mm: (WebCore::PerformanceLogging::getPlatformMemoryUsageStatistics): Source/WebKit: Added callbacks to log memory usage metadata the first time a process hits these milestones: - exceeded inactive memory limit while active (on Mac) - exceeded warning process limit threshold (on other non-Mac Apple platforms) - exceeded critical process limit threshold (on other non-Mac Apple platforms) The reason for this is we receive a large number of out of memory reports with very little info in the logs. We want to log more metadata about memory usage (similar to what we do on Mac in `WebCore::logMemoryStatisticsAtTimeOfDeath`) to help us debug those reports. * WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess): * WebProcess/WebProcess.h: Source/WTF: Fixed several issues with memory usage tracking: - pagesPerVMTag now properly accounts for swapped-out pages in its footprint calculation, as footprint(1) already does. - displayNamePerVMTag now includes all of the most common VM tags associated with WebKit. - MemoryPressureHandler now knows the specific type of pressure event that occurred. This allows it to differentiate between the entire system being at a warning pressure level vs. just this process hitting its warning memory level limit. * wtf/MemoryPressureHandler.cpp: (WTF::MemoryPressureHandler::setMemoryPressureStatus): (WTF::MemoryPressureHandler::memoryPressureStatusChanged): (WTF::MemoryPressureHandler::setUnderMemoryPressure): Deleted. * wtf/MemoryPressureHandler.h: (WTF::MemoryPressureHandler::setMemoryPressureStatusChangedCallback): (WTF::MemoryPressureHandler::isUnderMemoryPressure const): * wtf/ResourceUsage.h: * wtf/cocoa/MemoryPressureHandlerCocoa.mm: (WTF::MemoryPressureHandler::install): * wtf/cocoa/ResourceUsageCocoa.cpp: (WTF::displayNameForVMTag): (WTF::pagesPerVMTag): * wtf/unix/MemoryPressureHandlerUnix.cpp: (WTF::MemoryPressureHandler::triggerMemoryPressureEvent): * wtf/win/MemoryPressureHandlerWin.cpp: (WTF::MemoryPressureHandler::windowsMeasurementTimerFired): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285648 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WTF/wtf/MemoryPressureHandler.cpp branches/safari-612-branch/Source/WTF/wtf/MemoryPressureHandler.h branches/safari-612-branch/Source/WTF/wtf/ResourceUsage.h branches/safari-612-branch/Source/WTF/wtf/cocoa/MemoryPressureHandlerCocoa.mm branches/safari-612-branch/Source/WTF/wtf/cocoa/ResourceUsageCocoa.cpp branches/safari-612-branch/Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp branches/safari-612-branch/Source/WTF/wtf/win/MemoryPressureHandlerWin.cpp branches/safari-612-branch/Source/WebCore/page/MemoryRelease.cpp branches/safari-612-branch/Source/WebCore/page/MemoryRelease.h branches/safari-612-branch/Source/WebCore/page/PerformanceLogging.cpp branches/safari-612-branch/Source/WebCore/page/PerformanceLogging.h branches/safari-612-branch/Source/WebCore/page/cocoa/PerformanceLoggingCocoa.mm branches/safari-612-branch/Source/WebKit/WebProcess/WebProcess.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebProcess.h Diff Modified: branches/safari-612-branch/Source/WTF/wtf/MemoryPressureHandler.cpp (286246 => 286247) ---
[webkit-changes] [286244] branches/safari-612-branch
Title: [286244] branches/safari-612-branch Revision 286244 Author repst...@apple.com Date 2021-11-29 11:38:27 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285823. rdar://problem/85236459 `Cross-Origin-Embedder-Policy: require-corp` prevents loading of data URL images https://bugs.webkit.org/show_bug.cgi?id=233131 Reviewed by Geoffrey Garen. Source/WebCore: When doing an initial data URL load, we properly wouldn't perform a cross-origin resource policy check. This is per the Fetch specification that says to use a scheme fetch [1] when the request URL is a data URL. When the protocol is data, the scheme fetch algorithm would return a response without performing an HTTP Fetch. The HTTP check [2] is the algorithm that actually performs a cross-origin resource policy check, at step 7. The issue with our implementation was that data URL loads would perform a cross-origin resource policy check in the case where the image is loaded from our memory cache, due to a check we had in CachedResourceLoader::requestResource(). As a result, data URL loads would fail when served from the memory cache, when CORP is enforced. To address the issue and match the specification, we now disable this CORP check when the request URL is a data URL. [1] https://fetch.spec.whatwg.org/#scheme-fetch [2] https://fetch.spec.whatwg.org/#concept-http-fetch Test: http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html * loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::requestResource): LayoutTests: Add layout test coverage. This test is based on a reduce test case from Cameron McCormack. * http/wpt/html/cross-origin-embedder-policy/require-corp-data-url-expected.txt: Added. * http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html: Added. * http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html.headers: Added. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285823 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/loader/cache/CachedResourceLoader.cpp Added Paths branches/safari-612-branch/LayoutTests/http/wpt/html/cross-origin-embedder-policy/require-corp-data-url-expected.txt branches/safari-612-branch/LayoutTests/http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html branches/safari-612-branch/LayoutTests/http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html.headers Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286243 => 286244) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:38:23 UTC (rev 286243) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:38:27 UTC (rev 286244) @@ -1,3 +1,60 @@ +2021-11-16 Russell Epstein + +Cherry-pick r285823. rdar://problem/85236459 + +`Cross-Origin-Embedder-Policy: require-corp` prevents loading of data URL images +https://bugs.webkit.org/show_bug.cgi?id=233131 + + +Reviewed by Geoffrey Garen. + +Source/WebCore: + +When doing an initial data URL load, we properly wouldn't perform a cross-origin resource policy check. +This is per the Fetch specification that says to use a scheme fetch [1] when the request URL is a data URL. +When the protocol is data, the scheme fetch algorithm would return a response without performing an HTTP +Fetch. The HTTP check [2] is the algorithm that actually performs a cross-origin resource policy check, at +step 7. + +The issue with our implementation was that data URL loads would perform a cross-origin resource policy +check in the case where the image is loaded from our memory cache, due to a check we had in +CachedResourceLoader::requestResource(). As a result, data URL loads would fail when served from the +memory cache, when CORP is enforced. To address the issue and match the specification, we now disable this +CORP check when the request URL is a data URL. + +[1] https://fetch.spec.whatwg.org/#scheme-fetch +[2] https://fetch.spec.whatwg.org/#concept-http-fetch + +Test: http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html + +* loader/cache/CachedResourceLoader.cpp: +(WebCore::CachedResourceLoader::requestResource): + +LayoutTests: + +Add layout test coverage. This test is based on a reduce test case from Cameron McCormack. + +* http/wpt/html/cross-origin-embedder-policy/require-corp-data-url-expected.txt: Added. +* http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html: Added. +* http/wpt/html/cross-origin-embedder-policy/require-corp-data-url.html.headers: Added. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285823
[webkit-changes] [286243] branches/safari-612-branch/Source/WebKit
Title: [286243] branches/safari-612-branch/Source/WebKit Revision 286243 Author repst...@apple.com Date 2021-11-29 11:38:23 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r283386. rdar://problem/83953959 Protect WebFrame during invalidatePolicyListener() https://bugs.webkit.org/show_bug.cgi?id=229981 Reviewed by Alex Christensen. * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::invalidatePolicyListeners): Protect the WebFrame while policy handlers are run. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283386 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebFrame.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286242 => 286243) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:20 UTC (rev 286242) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:23 UTC (rev 286243) @@ -1,3 +1,31 @@ +2021-11-16 Kocsen Chung + +Cherry-pick r283386. rdar://problem/83953959 + +Protect WebFrame during invalidatePolicyListener() +https://bugs.webkit.org/show_bug.cgi?id=229981 + + +Reviewed by Alex Christensen. + +* WebProcess/WebPage/WebFrame.cpp: +(WebKit::WebFrame::invalidatePolicyListeners): Protect the WebFrame while +policy handlers are run. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283386 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-10-01 Brent Fulgham + +Protect WebFrame during invalidatePolicyListener() +https://bugs.webkit.org/show_bug.cgi?id=229981 + + +Reviewed by Alex Christensen. + +* WebProcess/WebPage/WebFrame.cpp: +(WebKit::WebFrame::invalidatePolicyListeners): Protect the WebFrame while +policy handlers are run. + 2021-11-12 Russell Epstein Revert r285690. rdar://problem/83381842 Modified: branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebFrame.cpp (286242 => 286243) --- branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebFrame.cpp 2021-11-29 19:38:20 UTC (rev 286242) +++ branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebFrame.cpp 2021-11-29 19:38:23 UTC (rev 286243) @@ -237,6 +237,8 @@ void WebFrame::invalidatePolicyListener() { +Ref protectedThis { *this }; + if (!m_policyListenerID) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286242] branches/safari-612-branch/Source/WebCore
Title: [286242] branches/safari-612-branch/Source/WebCore Revision 286242 Author repst...@apple.com Date 2021-11-29 11:38:20 -0800 (Mon, 29 Nov 2021) Log Message Apply patch. rdar://problem/83971417 Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp branches/safari-612-branch/Source/WebCore/platform/graphics/cocoa/GraphicsContextGLOpenGLCocoa.mm branches/safari-612-branch/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGL.h Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286241 => 286242) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:17 UTC (rev 286241) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:20 UTC (rev 286242) @@ -1,5 +1,96 @@ 2021-11-15 Alan Coon +Apply patch. rdar://problem/83971417 + +2021-11-09 Alan Coon + +Apply patch. rdar://problem/83971417 + +2021-10-26 Russell Epstein + +Cherry-pick r284669. rdar://problem/83971417 + +WebGL low-power and high-performance contexts should use different ANGLE Metal EGLDisplays +https://bugs.webkit.org/show_bug.cgi?id=231012 + + +Patch by Kimmo Kinnunen on 2021-10-22 +Reviewed by Dean Jackson. + +Source/WebCore: + +Use per-power preference EGLDisplay when creating Metal +contexts. + +Adds a new API test. + +* platform/RuntimeApplicationChecks.cpp: +(WebCore::setAuxiliaryProcessTypeForTesting): +* platform/RuntimeApplicationChecks.h: +Add a test function to reset the process type after test has set a specific type and then +run to completion. process for the duration of the test. The volatile context flag in +GraphicsContextGLOpenGL depends on condition isWebProcess || isGPUProcess. +* platform/graphics/angle/GraphicsContextGLANGLE.cpp: +(WebCore::GraphicsContextGLOpenGL::releaseThreadResources): +* platform/graphics/cocoa/GraphicsContextGLOpenGLCocoa.mm: +(WebCore::initializeEGLDisplay): +(WebCore::GraphicsContextGLOpenGL::GraphicsContextGLOpenGL): +(WebCore::GraphicsContextGLOpenGL::setContextVisibility): +(WebCore::GraphicsContextGLOpenGL::displayWasReconfigured): +* platform/graphics/opengl/GraphicsContextGLOpenGL.h: + +Tools: + +Add a API test to test GraphicsContextGLOpenGL +Cocoa implementation regarding the bug where +the GraphicsContextGLOpenGL instances would use +the GPU that was selected by the first instance. + +* TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig: +* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: +* TestWebKitAPI/Tests/WebCore/cocoa/TestGraphicsContextGLOpenGLCocoa.mm: Added. +(TestWebKitAPI::WebCore::TestedGraphicsContextGLOpenGL::create): +(TestWebKitAPI::WebCore::TestedGraphicsContextGLOpenGL::TestedGraphicsContextGLOpenGL): +(TestWebKitAPI::hasMultipleGPUs): +(TestWebKitAPI::TEST): +* TestWebKitAPI/WebCoreUtilities.h: Added. +(TestWebKitAPI::ScopedSetAuxiliaryProcessTypeForTesting::ScopedSetAuxiliaryProcessTypeForTesting): +(TestWebKitAPI::ScopedSetAuxiliaryProcessTypeForTesting::~ScopedSetAuxiliaryProcessTypeForTesting): +Add a utility state setter to set the process type for the +duration of a test. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@284669 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-10-22 Kimmo Kinnunen + +WebGL low-power and high-performance contexts should use different ANGLE Metal EGLDisplays +https://bugs.webkit.org/show_bug.cgi?id=231012 + + +Reviewed by Dean Jackson. + +Use per-power preference EGLDisplay when creating Metal +contexts. + +Adds a new API test. + +* platform/RuntimeApplicationChecks.cpp: +(WebCore::setAuxiliaryProcessTypeForTesting): +* platform/RuntimeApplicationChecks.h: +Add a test function to reset the process type after test has set a specific type and then +run to completion. process for the duration of the test. The volatile context flag in +GraphicsContextGLOpenGL depends on condition isWebProcess || isGPUProcess. +* platform/graphics/angle/GraphicsContextGLANGLE.cpp: +(WebCore::GraphicsContextGLOpenGL::releaseThreadResources): +*
[webkit-changes] [286245] branches/safari-612-branch/Source
Title: [286245] branches/safari-612-branch/Source Revision 286245 Author repst...@apple.com Date 2021-11-29 11:38:30 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285130. rdar://problem/85166839 [macOS] Opening local html files is failing https://bugs.webkit.org/show_bug.cgi?id=232572 Reviewed by Brent Fulgham. Source/WebKit: On some macOS versions, opening local html files is failing. In order for the WebContent process to successfully issue the file extension to the Networking process, the flags for the extension in the WebContent process must include the user intent flag when the extension is issued with an audit token. * Shared/Cocoa/SandboxExtensionCocoa.mm: (WebKit::SandboxExtensionImpl::sandboxExtensionForType): Source/WTF: Declare sandbox flag. * wtf/spi/darwin/SandboxSPI.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285130 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WTF/ChangeLog branches/safari-612-branch/Source/WTF/wtf/spi/darwin/SandboxSPI.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm Diff Modified: branches/safari-612-branch/Source/WTF/ChangeLog (286244 => 286245) --- branches/safari-612-branch/Source/WTF/ChangeLog 2021-11-29 19:38:27 UTC (rev 286244) +++ branches/safari-612-branch/Source/WTF/ChangeLog 2021-11-29 19:38:30 UTC (rev 286245) @@ -1,3 +1,44 @@ +2021-11-18 Russell Epstein + +Cherry-pick r285130. rdar://problem/85166839 + +[macOS] Opening local html files is failing +https://bugs.webkit.org/show_bug.cgi?id=232572 + + +Reviewed by Brent Fulgham. + +Source/WebKit: + +On some macOS versions, opening local html files is failing. In order for the WebContent process +to successfully issue the file extension to the Networking process, the flags for the extension +in the WebContent process must include the user intent flag when the extension is issued with an +audit token. + +* Shared/Cocoa/SandboxExtensionCocoa.mm: +(WebKit::SandboxExtensionImpl::sandboxExtensionForType): + +Source/WTF: + +Declare sandbox flag. + +* wtf/spi/darwin/SandboxSPI.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285130 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-01 Per Arne + +[macOS] Opening local html files is failing +https://bugs.webkit.org/show_bug.cgi?id=232572 + + +Reviewed by Brent Fulgham. + +Declare sandbox flag. + +* wtf/spi/darwin/SandboxSPI.h: + 2021-11-11 Alan Coon Cherry-pick r285565. rdar://problem/83159358 Modified: branches/safari-612-branch/Source/WTF/wtf/spi/darwin/SandboxSPI.h (286244 => 286245) --- branches/safari-612-branch/Source/WTF/wtf/spi/darwin/SandboxSPI.h 2021-11-29 19:38:27 UTC (rev 286244) +++ branches/safari-612-branch/Source/WTF/wtf/spi/darwin/SandboxSPI.h 2021-11-29 19:38:30 UTC (rev 286245) @@ -62,6 +62,7 @@ extern const uint32_t SANDBOX_EXTENSION_NO_REPORT; extern const uint32_t SANDBOX_EXTENSION_CANONICAL; +extern const uint32_t SANDBOX_EXTENSION_USER_INTENT; char *sandbox_extension_issue_file(const char *extension_class, const char *path, uint32_t flags); char *sandbox_extension_issue_generic(const char *extension_class, uint32_t flags); Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286244 => 286245) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:27 UTC (rev 286244) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:30 UTC (rev 286245) @@ -1,3 +1,48 @@ +2021-11-18 Russell Epstein + +Cherry-pick r285130. rdar://problem/85166839 + +[macOS] Opening local html files is failing +https://bugs.webkit.org/show_bug.cgi?id=232572 + + +Reviewed by Brent Fulgham. + +Source/WebKit: + +On some macOS versions, opening local html files is failing. In order for the WebContent process +to successfully issue the file extension to the Networking process, the flags for the extension +in the WebContent process must include the user intent flag when the extension is issued with an +audit token. + +* Shared/Cocoa/SandboxExtensionCocoa.mm: +(WebKit::SandboxExtensionImpl::sandboxExtensionForType): + +Source/WTF: + +Declare sandbox flag. + +* wtf/spi/darwin/SandboxSPI.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285130 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-01 Per Arne + +[macOS] Opening local html files is failing +https://bugs.webkit.org/show_bug.cgi?id=232572 + + +Reviewed by Brent Fulgham. + +On some macOS versions, opening local html files is failing. In order for the
[webkit-changes] [286246] branches/safari-612-branch/Source
Title: [286246] branches/safari-612-branch/Source Revision 286246 Author repst...@apple.com Date 2021-11-29 11:38:34 -0800 (Mon, 29 Nov 2021) Log Message Apply patch. rdar://problem/83673859 Modified Paths branches/safari-612-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj branches/safari-612-branch/Source/WebCore/platform/audio/cocoa/AudioSampleBufferList.h branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.h branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm branches/safari-612-branch/Source/WebKit/GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj (286245 => 286246) --- branches/safari-612-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2021-11-29 19:38:30 UTC (rev 286245) +++ branches/safari-612-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2021-11-29 19:38:34 UTC (rev 286246) @@ -4358,7 +4358,7 @@ CD336F6417FA0A4D00DDDCD0 /* VideoTrackPrivateAVF.h in Headers */ = {isa = PBXBuildFile; fileRef = CD336F6317FA0A4D00DDDCD0 /* VideoTrackPrivateAVF.h */; }; CD336F6717FA0AC600DDDCD0 /* VideoTrackPrivateAVFObjC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD336F6517FA0AC600DDDCD0 /* VideoTrackPrivateAVFObjC.cpp */; }; CD336F6817FA0AC600DDDCD0 /* VideoTrackPrivateAVFObjC.h in Headers */ = {isa = PBXBuildFile; fileRef = CD336F6617FA0AC600DDDCD0 /* VideoTrackPrivateAVFObjC.h */; }; - CD36C1622607E78600C8C529 /* AudioSessionIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = CD36C1612607E78600C8C529 /* AudioSessionIOS.h */; }; + CD36C1622607E78600C8C529 /* AudioSessionIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = CD36C1612607E78600C8C529 /* AudioSessionIOS.h */; settings = {ATTRIBUTES = (Private, ); }; }; CD36C16B260A65CC00C8C529 /* SharedRoutingArbitrator.h in Headers */ = {isa = PBXBuildFile; fileRef = CD36C168260A63D300C8C529 /* SharedRoutingArbitrator.h */; settings = {ATTRIBUTES = (Private, ); }; }; CD3A495F17A9D01B00274E42 /* MediaSource.h in Headers */ = {isa = PBXBuildFile; fileRef = CD3A495617A9D01B00274E42 /* MediaSource.h */; }; CD3A496217A9D01B00274E42 /* SourceBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = CD3A495917A9D01B00274E42 /* SourceBuffer.h */; }; Modified: branches/safari-612-branch/Source/WebCore/platform/audio/cocoa/AudioSampleBufferList.h (286245 => 286246) --- branches/safari-612-branch/Source/WebCore/platform/audio/cocoa/AudioSampleBufferList.h 2021-11-29 19:38:30 UTC (rev 286245) +++ branches/safari-612-branch/Source/WebCore/platform/audio/cocoa/AudioSampleBufferList.h 2021-11-29 19:38:34 UTC (rev 286246) @@ -45,7 +45,7 @@ static inline size_t audioBufferListSizeForStream(const CAAudioStreamDescription&); -static void applyGain(AudioBufferList&, float, AudioStreamDescription::PCMFormat); +WEBCORE_EXPORT static void applyGain(AudioBufferList&, float, AudioStreamDescription::PCMFormat); void applyGain(float); OSStatus copyFrom(const AudioSampleBufferList&, size_t count = SIZE_MAX); Modified: branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.h (286245 => 286246) --- branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.h 2021-11-29 19:38:30 UTC (rev 286245) +++ branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.h 2021-11-29 19:38:34 UTC (rev 286246) @@ -44,6 +44,9 @@ void setHostProcessAttribution(audit_token_t) final; +using CategoryChangedObserver = WTF::Observer; +WEBCORE_EXPORT static void addAudioSessionCategoryChangedObserver(const CategoryChangedObserver&); + private: // AudioSession CategoryType category() const final; Modified: branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm (286245 => 286246) --- branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-11-29 19:38:30 UTC (rev 286245) +++ branches/safari-612-branch/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-11-29 19:38:34 UTC (rev 286246) @@ -97,6 +97,18 @@ namespace WebCore { +static WeakHashSet& audioSessionCategoryChangedObservers() +{ +static NeverDestroyed> observers; +return observers; +} + +void AudioSessionIOS::addAudioSessionCategoryChangedObserver(const CategoryChangedObserver& observer) +{ +audioSessionCategoryChangedObservers().add(observer); +observer(AudioSession::sharedSession(), AudioSession::sharedSession().category()); +} + static void setEligibleForSmartRouting(bool eligible) { #if PLATFORM(IOS) @@ -205,6 +217,8 @@ #if !PLATFORM(IOS_FAMILY_SIMULATOR) && !PLATFORM(MACCATALYST) ASSERT(!error); #endif +for (auto& observer : audioSessionCategoryChangedObservers()) +observer(*this, category()); } AudioSession::CategoryType AudioSessionIOS::category() const Modified:
[webkit-changes] [286241] branches/safari-612-branch
Title: [286241] branches/safari-612-branch Revision 286241 Author repst...@apple.com Date 2021-11-29 11:38:17 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285728. rdar://problem/85236241 [Web Animations] Accelerated animations with a single keyframe don't account for prior forward-filling animations https://bugs.webkit.org/show_bug.cgi?id=233041 Reviewed by Dean Jackson. Source/WebCore: Test: webanimations/accelerated-animation-after-forward-filling-animation.html When starting an accelerated animation, we would fill any implicit keyframes based on the unanimated style. We now also apply all animations below this animation in the target's effect stack such that a previous forward-filling animation is accounted for. * animation/KeyframeEffect.cpp: (WebCore::KeyframeEffect::applyPendingAcceleratedActions): LayoutTests: Add a new test that runs a forward-filling animation for `transform`, waits for its completion, then runs another `transform` animation with an implicit initial keyframe, ensuring that the result of the first forward-filling animation is accounted for when computing the initial keyframe. This test would fail prior to this patch. * webanimations/accelerated-animation-after-forward-filling-animation-expected.html: Added. * webanimations/accelerated-animation-after-forward-filling-animation.html: Added. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285728 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/animation/KeyframeEffect.cpp Added Paths branches/safari-612-branch/LayoutTests/webanimations/accelerated-animation-after-forward-filling-animation-expected.html branches/safari-612-branch/LayoutTests/webanimations/accelerated-animation-after-forward-filling-animation.html Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286240 => 286241) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:38:13 UTC (rev 286240) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:38:17 UTC (rev 286241) @@ -1,3 +1,56 @@ +2021-11-15 Alan Coon + +Cherry-pick r285728. rdar://problem/85236241 + +[Web Animations] Accelerated animations with a single keyframe don't account for prior forward-filling animations +https://bugs.webkit.org/show_bug.cgi?id=233041 + + +Reviewed by Dean Jackson. + +Source/WebCore: + +Test: webanimations/accelerated-animation-after-forward-filling-animation.html + +When starting an accelerated animation, we would fill any implicit keyframes based on the unanimated style. +We now also apply all animations below this animation in the target's effect stack such that a previous +forward-filling animation is accounted for. + +* animation/KeyframeEffect.cpp: +(WebCore::KeyframeEffect::applyPendingAcceleratedActions): + +LayoutTests: + +Add a new test that runs a forward-filling animation for `transform`, waits for its completion, +then runs another `transform` animation with an implicit initial keyframe, ensuring that the +result of the first forward-filling animation is accounted for when computing the initial +keyframe. + +This test would fail prior to this patch. + +* webanimations/accelerated-animation-after-forward-filling-animation-expected.html: Added. +* webanimations/accelerated-animation-after-forward-filling-animation.html: Added. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285728 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-12 Antoine Quint + +[Web Animations] Accelerated animations with a single keyframe don't account for prior forward-filling animations +https://bugs.webkit.org/show_bug.cgi?id=233041 + + +Reviewed by Dean Jackson. + +Add a new test that runs a forward-filling animation for `transform`, waits for its completion, +then runs another `transform` animation with an implicit initial keyframe, ensuring that the +result of the first forward-filling animation is accounted for when computing the initial +keyframe. + +This test would fail prior to this patch. + +* webanimations/accelerated-animation-after-forward-filling-animation-expected.html: Added. +* webanimations/accelerated-animation-after-forward-filling-animation.html: Added. + 2021-11-11 Alan Coon Cherry-pick r285565. rdar://problem/83159358 Added: branches/safari-612-branch/LayoutTests/webanimations/accelerated-animation-after-forward-filling-animation-expected.html (0 => 286241) --- branches/safari-612-branch/LayoutTests/webanimations/accelerated-animation-after-forward-filling-animation-expected.html
[webkit-changes] [286237] branches/safari-612-branch/Source/WebCore
Title: [286237] branches/safari-612-branch/Source/WebCore Revision 286237 Author repst...@apple.com Date 2021-11-29 11:38:05 -0800 (Mon, 29 Nov 2021) Log Message Revert r285680. rdar://problem/85004449 Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286236 => 286237) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:01 UTC (rev 286236) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:05 UTC (rev 286237) @@ -1,3 +1,7 @@ +2021-11-12 Russell Epstein + +Revert r285680. rdar://problem/85004449 + 2021-11-11 Alan Coon Cherry-pick r285531. rdar://problem/83381842 Modified: branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h (286236 => 286237) --- branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2021-11-29 19:38:01 UTC (rev 286236) +++ branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2021-11-29 19:38:05 UTC (rev 286237) @@ -419,7 +419,6 @@ mutable long long m_cachedTotalBytes { 0 }; unsigned m_pendingStatusChanges { 0 }; int m_cachedItemStatus; -int m_runLoopNestingLevel { 0 }; MediaPlayer::BufferingPolicy m_bufferingPolicy { MediaPlayer::BufferingPolicy::Default }; bool m_cachedLikelyToKeepUp { false }; bool m_cachedBufferEmpty { false }; @@ -439,6 +438,7 @@ mutable bool m_allowsWirelessVideoPlayback { true }; bool m_shouldPlayToPlaybackTarget { false }; #endif +bool m_runningModalPaint { false }; bool m_waitForVideoOutputMediaDataWillChangeTimedOut { false }; bool m_haveBeenAskedToPaint { false }; }; Modified: branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (286236 => 286237) --- branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2021-11-29 19:38:01 UTC (rev 286236) +++ branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2021-11-29 19:38:05 UTC (rev 286237) @@ -2563,31 +2563,21 @@ { if (m_waitForVideoOutputMediaDataWillChangeTimedOut) return; +[m_videoOutput requestNotificationOfMediaDataChangeWithAdvanceInterval:0]; // Wait for 1 second. MonotonicTime start = MonotonicTime::now(); -std::optional> timeoutTimer; +RunLoop::Timer timeoutTimer { RunLoop::main(), [] { +RunLoop::main().stop(); +} }; +timeoutTimer.startOneShot(1_s); -if (!m_runLoopNestingLevel) { -[m_videoOutput requestNotificationOfMediaDataChangeWithAdvanceInterval:0]; - -timeoutTimer.emplace(RunLoop::main(), [&] { -RunLoop::main().stop(); -}); -timeoutTimer->startOneShot(1_s); -} - -++m_runLoopNestingLevel; +m_runningModalPaint = true; RunLoop::run(); ---m_runLoopNestingLevel; +m_runningModalPaint = false; -if (m_runLoopNestingLevel) { -RunLoop::main().stop(); -return; -} - -bool satisfied = timeoutTimer->isActive(); +bool satisfied = timeoutTimer.isActive(); if (!satisfied) { ERROR_LOG(LOGIDENTIFIER, "timed out"); m_waitForVideoOutputMediaDataWillChangeTimedOut = true; @@ -2597,7 +2587,7 @@ void MediaPlayerPrivateAVFoundationObjC::outputMediaDataWillChange() { -if (m_runLoopNestingLevel) +if (m_runningModalPaint) RunLoop::main().stop(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286240] branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/ NetworkSessionCocoa.h
Title: [286240] branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h Revision 286240 Author repst...@apple.com Date 2021-11-29 11:38:13 -0800 (Mon, 29 Nov 2021) Log Message Unreviewed build fix. rdar://problem/83159358 error: out-of-line definition of 'isolatedSession' does not match any declaration in 'WebKit::SessionSet' Modified Paths branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h Diff Modified: branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h (286239 => 286240) --- branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h 2021-11-29 19:38:11 UTC (rev 286239) +++ branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h 2021-11-29 19:38:13 UTC (rev 286240) @@ -82,7 +82,7 @@ SessionWrapper& initializeEphemeralStatelessSessionIfNeeded(NavigatingToAppBoundDomain, NetworkSessionCocoa&); #if !HAVE(CFNETWORK_SESSION_PARTITIONING_BASED_ON_FIRST_PARTY_DOMAIN) -SessionWrapper& isolatedSession(WebCore::StoredCredentialsPolicy, const WebCore::RegistrableDomain&, NavigatingToAppBoundDomain, NetworkSessionCocoa&); +SessionWrapper& isolatedSession(WebCore::StoredCredentialsPolicy, const WebCore::RegistrableDomain, NavigatingToAppBoundDomain, NetworkSessionCocoa&); HashMap> isolatedSessions; #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286238] branches/safari-612-branch/Source/WebCore
Title: [286238] branches/safari-612-branch/Source/WebCore Revision 286238 Author repst...@apple.com Date 2021-11-29 11:38:08 -0800 (Mon, 29 Nov 2021) Log Message Revert r285691. rdar://problem/83381842 Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286237 => 286238) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:05 UTC (rev 286237) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:38:08 UTC (rev 286238) @@ -1,5 +1,9 @@ 2021-11-12 Russell Epstein +Revert r285691. rdar://problem/83381842 + +2021-11-12 Russell Epstein + Revert r285680. rdar://problem/85004449 2021-11-11 Alan Coon Modified: branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm (286237 => 286238) --- branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm 2021-11-29 19:38:05 UTC (rev 286237) +++ branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm 2021-11-29 19:38:08 UTC (rev 286238) @@ -28,7 +28,6 @@ #if HAVE(SPEECHRECOGNIZER) -#import "AudioStreamDescription.h" #import "MediaUtilities.h" #import "SpeechRecognitionUpdate.h" #import "WebSpeechRecognizerTaskMock.h" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286235] branches/safari-612-branch/Source/WebKit
Title: [286235] branches/safari-612-branch/Source/WebKit Revision 286235 Author repst...@apple.com Date 2021-11-29 11:37:57 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285550. rdar://problem/85075538 REGRESSION (Safari 15): AudioContext.currentTime speeds up (and audio won't play) when Bluetooth speaker connected https://bugs.webkit.org/show_bug.cgi?id=232728 Reviewed by Jer Noble. This was a regression from us moving WebAudio to the GPUProcess in Safari 15. The issue occurred because the WebProcess (writer) would get further and further ahead of the GPUProcess (reader) after a hardware sample rate change. When rendering on https://mdn.github.io/webaudio-examples/audiocontext-states/ with a hardware sample rate of 96Khz, RemoteAudioDestination::render() would get called with a numberOfFrame=128. Each time RemoteAudioDestination::render() was called, it would signal the IPC semaphore, causing the WebProcess to produce one WebAudio rendering quantum (128 frames). This would match perfectly and there would be no issues. However, if during playback, the hardware sample rate changes (which can happen when connecting to bluetooth speakers), CoreAudio would start calling RemoteAudioDestination::render() with a different numberOfFrame. For example, when switching the hardware sample rate to 44.1Khz, numberOfFrames would be 278. Every time it is called, render() would signal the semaphore 3 times, causing the WebProcess to produce 3 WebAudio rendering quantums (3 * 128 = 384 frames). So each time render() is called, the WebProcess would generate `384 - 278 = 105` frames too many, causing it to get further and further ahead of the GPUProcess. One symptom would be that AudioContext.currentTime would progress too fast. Also, eventually, our RingBuffer between the 2 process would fill up and lead to rendering issues. To address the issue, I updated RemoteAudioDestination::render() to keep track of how many extra samples it requested from the WebProcess previously. This avoids signalling the IPC semaphore too many times and the WebProcess can no longer get too far ahead of the GPUProcess. The logic matches what was already done in RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::render(). * GPUProcess/media/RemoteAudioDestinationManager.cpp: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285550 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286234 => 286235) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:37:54 UTC (rev 286234) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:37:57 UTC (rev 286235) @@ -1,5 +1,74 @@ 2021-11-11 Alan Coon +Cherry-pick r285550. rdar://problem/85075538 + +REGRESSION (Safari 15): AudioContext.currentTime speeds up (and audio won't play) when Bluetooth speaker connected +https://bugs.webkit.org/show_bug.cgi?id=232728 + + +Reviewed by Jer Noble. + +This was a regression from us moving WebAudio to the GPUProcess in Safari 15. The issue occurred because the +WebProcess (writer) would get further and further ahead of the GPUProcess (reader) after a hardware sample +rate change. + +When rendering on https://mdn.github.io/webaudio-examples/audiocontext-states/ with a hardware sample rate of +96Khz, RemoteAudioDestination::render() would get called with a numberOfFrame=128. Each time +RemoteAudioDestination::render() was called, it would signal the IPC semaphore, causing the WebProcess to +produce one WebAudio rendering quantum (128 frames). This would match perfectly and there would be no issues. +However, if during playback, the hardware sample rate changes (which can happen when connecting to bluetooth +speakers), CoreAudio would start calling RemoteAudioDestination::render() with a different numberOfFrame. +For example, when switching the hardware sample rate to 44.1Khz, numberOfFrames would be 278. Every time it +is called, render() would signal the semaphore 3 times, causing the WebProcess to produce 3 WebAudio rendering +quantums (3 * 128 = 384 frames). So each time render() is called, the WebProcess would generate `384 - 278 = 105` +frames too many, causing it to get further and further ahead of the GPUProcess. One symptom would be that +AudioContext.currentTime would progress too fast. Also, eventually, our RingBuffer between the 2 process would +fill up and lead to rendering issues. + +To address the issue, I updated RemoteAudioDestination::render() to keep track of how many extra samples it +requested from the WebProcess previously. This avoids signalling the IPC
[webkit-changes] [286234] branches/safari-612-branch/Source/WebCore
Title: [286234] branches/safari-612-branch/Source/WebCore Revision 286234 Author repst...@apple.com Date 2021-11-29 11:37:54 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285531. rdar://problem/83381842 Fix macCatalyst build after r285509 https://bugs.webkit.org/show_bug.cgi?id=232863 Unreviewed. * Modules/speech/cocoa/SpeechRecognizerCocoa.mm: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285531 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286233 => 286234) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:37:50 UTC (rev 286233) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:37:54 UTC (rev 286234) @@ -1,5 +1,29 @@ 2021-11-11 Alan Coon +Cherry-pick r285531. rdar://problem/83381842 + +Fix macCatalyst build after r285509 +https://bugs.webkit.org/show_bug.cgi?id=232863 + +Unreviewed. + + +* Modules/speech/cocoa/SpeechRecognizerCocoa.mm: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285531 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-09 Sihui Liu + +Fix macCatalyst build after r285509 +https://bugs.webkit.org/show_bug.cgi?id=232863 + +Unreviewed. + +* Modules/speech/cocoa/SpeechRecognizerCocoa.mm: + +2021-11-11 Alan Coon + Cherry-pick r285330. rdar://problem/85004449 Nested run loops under MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange can cause hang when timeout fires Modified: branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm (286233 => 286234) --- branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm 2021-11-29 19:37:50 UTC (rev 286233) +++ branches/safari-612-branch/Source/WebCore/Modules/speech/cocoa/SpeechRecognizerCocoa.mm 2021-11-29 19:37:54 UTC (rev 286234) @@ -28,6 +28,7 @@ #if HAVE(SPEECHRECOGNIZER) +#import "AudioStreamDescription.h" #import "MediaUtilities.h" #import "SpeechRecognitionUpdate.h" #import "WebSpeechRecognizerTaskMock.h" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286236] branches/safari-612-branch
Title: [286236] branches/safari-612-branch Revision 286236 Author repst...@apple.com Date 2021-11-29 11:38:01 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285565. rdar://problem/83159358 [macOS] Enable NSURLSession partitioning based on first-party domain at CFNetwork level https://bugs.webkit.org/show_bug.cgi?id=230750 Reviewed by Alex Christensen. Source/WebKit: * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): (overrideAttributionContext): Deleted. Stop disabling CFNetwork NSURLSession partitioning based on first-party domain on macOS. * NetworkProcess/cocoa/NetworkSessionCocoa.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::sessionWrapperForTask): (WebKit::NetworkSessionCocoa::hasIsolatedSession const): (WebKit::NetworkSessionCocoa::clearIsolatedSessions): (WebKit::NetworkSessionCocoa::invalidateAndCancelSessionSet): Disable ITP session partitioning of certain prevalent domains on platforms where CFNetwork already does full partitioning of all domains (now that it is enabled on macOS 12+ and iOS15+). Source/WTF: Add HAVE(CFNETWORK_SESSION_PARTITIONING_BASED_ON_FIRST_PARTY_DOMAIN) build time flag that is true on newer Apple OSes where CFNetwork does NSURLSession partitioning based on first-party domain for us. * wtf/PlatformHave.h: LayoutTests: Skip a few ITP session partitioning tests on newer OSes now that session partitioning happens for all first-party domains at CFNetwork level on these OSes. * platform/ios-wk2/TestExpectations: * platform/mac-wk2/TestExpectations: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285565 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/LayoutTests/platform/ios-wk2/TestExpectations branches/safari-612-branch/LayoutTests/platform/mac-wk2/TestExpectations branches/safari-612-branch/Source/WTF/ChangeLog branches/safari-612-branch/Source/WTF/wtf/PlatformHave.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h branches/safari-612-branch/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286235 => 286236) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:37:57 UTC (rev 286235) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:38:01 UTC (rev 286236) @@ -1,5 +1,65 @@ 2021-11-11 Alan Coon +Cherry-pick r285565. rdar://problem/83159358 + +[macOS] Enable NSURLSession partitioning based on first-party domain at CFNetwork level +https://bugs.webkit.org/show_bug.cgi?id=230750 + + +Reviewed by Alex Christensen. + +Source/WebKit: + +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): +(overrideAttributionContext): Deleted. +Stop disabling CFNetwork NSURLSession partitioning based on first-party domain on +macOS. + +* NetworkProcess/cocoa/NetworkSessionCocoa.h: +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(WebKit::NetworkSessionCocoa::sessionWrapperForTask): +(WebKit::NetworkSessionCocoa::hasIsolatedSession const): +(WebKit::NetworkSessionCocoa::clearIsolatedSessions): +(WebKit::NetworkSessionCocoa::invalidateAndCancelSessionSet): +Disable ITP session partitioning of certain prevalent domains on platforms where +CFNetwork already does full partitioning of all domains (now that it is enabled +on macOS 12+ and iOS15+). + +Source/WTF: + +Add HAVE(CFNETWORK_SESSION_PARTITIONING_BASED_ON_FIRST_PARTY_DOMAIN) build time flag that is true +on newer Apple OSes where CFNetwork does NSURLSession partitioning based on first-party domain for +us. + +* wtf/PlatformHave.h: + +LayoutTests: + +Skip a few ITP session partitioning tests on newer OSes now that session partitioning +happens for all first-party domains at CFNetwork level on these OSes. + +* platform/ios-wk2/TestExpectations: +* platform/mac-wk2/TestExpectations: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285565 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-09 Chris Dumez + +[macOS] Enable NSURLSession partitioning based on first-party domain at CFNetwork level +https://bugs.webkit.org/show_bug.cgi?id=230750 + + +Reviewed by Alex Christensen. + +Skip a few ITP session partitioning tests on newer OSes now that session partitioning +happens for all first-party domains at CFNetwork level on these OSes. + +*
[webkit-changes] [286232] branches/safari-612-branch/Source/WebCore
Title: [286232] branches/safari-612-branch/Source/WebCore Revision 286232 Author repst...@apple.com Date 2021-11-29 11:37:47 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285330. rdar://problem/85004449 Nested run loops under MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange can cause hang when timeout fires https://bugs.webkit.org/show_bug.cgi?id=232695 Reviewed by Jer Noble. It's possible for MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange to be called re-entrantly, if the RunLoop::run call ends up processing an event that also wants to synchronously update the media image. This can cause a hang: 1. Enter the outer waitForVideoOutputMediaDataWillChange call. 2. Set up the outer timeout timer. 3. Call RunLoop::run. 3.1. Enter the inner waitForVideoOutputMediaDataWillChange call. 3.2. Set up the inner timeout timer. 3.3. Call RunLoop::run. 3.3.1. Wait for new RunLoop events, and none arrive. 3.3.2. The outer timeout timer fires, calling RunLoop::stop. 3.4. Return from waitForVideoOutputMediaDataWillChange, cancelling the inner timeout timer. 3.5. Wait for more events on the run loop, forever. To avoid this, we can set up a single timeout timer, and track the nesting level of our RunLoop::run calls. The innermost RunLoop::run call will finish either by the timer firing (which calls RunLoop::stop) or by the video data updating (which also calls RunLoop::stop, under outputMediaDataWillChange). Either way, once the innermost RunLoop::run call is finished, we know we can stop processing all of the ancestor RunLoop:run calls. * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange): (WebCore::MediaPlayerPrivateAVFoundationObjC::outputMediaDataWillChange): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285330 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h branches/safari-612-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286231 => 286232) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:37:43 UTC (rev 286231) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-11-29 19:37:47 UTC (rev 286232) @@ -1,5 +1,85 @@ 2021-11-11 Alan Coon +Cherry-pick r285330. rdar://problem/85004449 + +Nested run loops under MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange can cause hang when timeout fires +https://bugs.webkit.org/show_bug.cgi?id=232695 + + +Reviewed by Jer Noble. + +It's possible for MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange +to be called re-entrantly, if the RunLoop::run call ends up processing +an event that also wants to synchronously update the media image. This +can cause a hang: + +1. Enter the outer waitForVideoOutputMediaDataWillChange call. +2. Set up the outer timeout timer. +3. Call RunLoop::run. +3.1. Enter the inner waitForVideoOutputMediaDataWillChange call. +3.2. Set up the inner timeout timer. +3.3. Call RunLoop::run. +3.3.1. Wait for new RunLoop events, and none arrive. +3.3.2. The outer timeout timer fires, calling RunLoop::stop. +3.4. Return from waitForVideoOutputMediaDataWillChange, cancelling + the inner timeout timer. +3.5. Wait for more events on the run loop, forever. + +To avoid this, we can set up a single timeout timer, and track the +nesting level of our RunLoop::run calls. The innermost RunLoop::run call +will finish either by the timer firing (which calls RunLoop::stop) or by +the video data updating (which also calls RunLoop::stop, under +outputMediaDataWillChange). Either way, once the innermost +RunLoop::run call is finished, we know we can stop processing all of +the ancestor RunLoop:run calls. + +* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: +* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: +(WebCore::MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange): +(WebCore::MediaPlayerPrivateAVFoundationObjC::outputMediaDataWillChange): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285330 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-04 Cameron McCormack + +Nested run loops
[webkit-changes] [286233] branches/safari-612-branch/Source/WebKit
Title: [286233] branches/safari-612-branch/Source/WebKit Revision 286233 Author repst...@apple.com Date 2021-11-29 11:37:50 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r285509. rdar://problem/83381842 Fix wrong frame count of CARingBuffer in SpeechRecognitionRemoteRealtimeMediaSource https://bugs.webkit.org/show_bug.cgi?id=232863 Reviewed by Youenn Fablet. SpeechRecognitionRealtimeMediaSourceManager::Source uses shared ring buffer to pass audio data to SpeechRecognitionRemoteRealtimeMediaSource. We used to ask CARingBuffer in SpeechRecognitionRealtimeMediaSourceManager::Source to allocate with m_numberOfFrames and send m_numberOfFrames to SpeechRecognitionRemoteRealtimeMediaSource (so SpeechRecognitionRemoteRealtimeMediaSource can create a corresponding CARingBuffer). This is wrong because CARingBuffer::allocate() rounds up frameCount to power of two, which means m_numberOfFrames may be not the number used. We should get the actual frameCount in the setStorage callback of SharedRingBufferStorage, and pass that value to SpeechRecognitionRemoteRealtimeMediaSource. Manually tested. * UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp: (WebKit::SpeechRecognitionRemoteRealtimeMediaSource::setStorage): * WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp: (WebKit::SpeechRecognitionRealtimeMediaSourceManager::Source::Source): (WebKit::SpeechRecognitionRealtimeMediaSourceManager::Source::storageChanged): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285509 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp branches/safari-612-branch/Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286232 => 286233) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:37:47 UTC (rev 286232) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:37:50 UTC (rev 286233) @@ -1,3 +1,55 @@ +2021-11-11 Alan Coon + +Cherry-pick r285509. rdar://problem/83381842 + +Fix wrong frame count of CARingBuffer in SpeechRecognitionRemoteRealtimeMediaSource +https://bugs.webkit.org/show_bug.cgi?id=232863 + + +Reviewed by Youenn Fablet. + +SpeechRecognitionRealtimeMediaSourceManager::Source uses shared ring buffer to pass audio data to +SpeechRecognitionRemoteRealtimeMediaSource. We used to ask CARingBuffer in +SpeechRecognitionRealtimeMediaSourceManager::Source to allocate with m_numberOfFrames and send m_numberOfFrames +to SpeechRecognitionRemoteRealtimeMediaSource (so SpeechRecognitionRemoteRealtimeMediaSource can create a +corresponding CARingBuffer). This is wrong because CARingBuffer::allocate() rounds up frameCount to power of +two, which means m_numberOfFrames may be not the number used. We should get the actual frameCount in the +setStorage callback of SharedRingBufferStorage, and pass that value to SpeechRecognitionRemoteRealtimeMediaSource. + +Manually tested. + +* UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp: +(WebKit::SpeechRecognitionRemoteRealtimeMediaSource::setStorage): +* WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp: +(WebKit::SpeechRecognitionRealtimeMediaSourceManager::Source::Source): +(WebKit::SpeechRecognitionRealtimeMediaSourceManager::Source::storageChanged): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285509 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-09 Sihui Liu + +Fix wrong frame count of CARingBuffer in SpeechRecognitionRemoteRealtimeMediaSource +https://bugs.webkit.org/show_bug.cgi?id=232863 + + +Reviewed by Youenn Fablet. + +SpeechRecognitionRealtimeMediaSourceManager::Source uses shared ring buffer to pass audio data to +SpeechRecognitionRemoteRealtimeMediaSource. We used to ask CARingBuffer in +SpeechRecognitionRealtimeMediaSourceManager::Source to allocate with m_numberOfFrames and send m_numberOfFrames +to SpeechRecognitionRemoteRealtimeMediaSource (so SpeechRecognitionRemoteRealtimeMediaSource can create a +corresponding CARingBuffer). This is wrong because CARingBuffer::allocate() rounds up frameCount to power of +two, which means m_numberOfFrames may be not the number used. We should get the actual frameCount in the +setStorage callback of SharedRingBufferStorage, and pass that value to SpeechRecognitionRemoteRealtimeMediaSource. + +Manually tested. + +* UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp: +(WebKit::SpeechRecognitionRemoteRealtimeMediaSource::setStorage): +
[webkit-changes] [286231] branches/safari-612-branch
Title: [286231] branches/safari-612-branch Revision 286231 Author repst...@apple.com Date 2021-11-29 11:37:43 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r284434. rdar://problem/77969801 WebM with invalid size should fail to load with error https://bugs.webkit.org/show_bug.cgi?id=231886 rdar://77969801 Reviewed by Jer Noble. Source/WebCore: libwebm for some elements are using a std::string or a std::vector to store their content. Those have infallible memory allocators. We limit the size we allow the parser to use to some reasonable values. Test: media/media-webm-invalid-check.html * platform/graphics/cocoa/SourceBufferParserWebM.cpp: (WebCore::SourceBufferParserWebM::OnElementBegin): LayoutTests: * media/content/invalid-size.webm: Added. * media/media-webm-invalid-check-expected.txt: Added. * media/media-webm-invalid-check.html: Added. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@284434 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/graphics/cocoa/SourceBufferParserWebM.cpp Added Paths branches/safari-612-branch/LayoutTests/media/content/invalid-size.webm branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check-expected.txt branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check.html Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286230 => 286231) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:37:39 UTC (rev 286230) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-11-29 19:37:43 UTC (rev 286231) @@ -1,3 +1,45 @@ +2021-11-11 Alan Coon + +Cherry-pick r284434. rdar://problem/77969801 + +WebM with invalid size should fail to load with error +https://bugs.webkit.org/show_bug.cgi?id=231886 +rdar://77969801 + +Reviewed by Jer Noble. + +Source/WebCore: + +libwebm for some elements are using a std::string or a std::vector +to store their content. Those have infallible memory allocators. +We limit the size we allow the parser to use to some reasonable values. + +Test: media/media-webm-invalid-check.html + +* platform/graphics/cocoa/SourceBufferParserWebM.cpp: +(WebCore::SourceBufferParserWebM::OnElementBegin): + +LayoutTests: + +* media/content/invalid-size.webm: Added. +* media/media-webm-invalid-check-expected.txt: Added. +* media/media-webm-invalid-check.html: Added. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@284434 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-10-18 Jean-Yves Avenard + +WebM with invalid size should fail to load with error +https://bugs.webkit.org/show_bug.cgi?id=231886 +rdar://77969801 + +Reviewed by Jer Noble. + +* media/content/invalid-size.webm: Added. +* media/media-webm-invalid-check-expected.txt: Added. +* media/media-webm-invalid-check.html: Added. + 2021-11-09 Alan Coon Cherry-pick r285389. rdar://problem/84380291 Added: branches/safari-612-branch/LayoutTests/media/content/invalid-size.webm (0 => 286231) --- branches/safari-612-branch/LayoutTests/media/content/invalid-size.webm (rev 0) +++ branches/safari-612-branch/LayoutTests/media/content/invalid-size.webm 2021-11-29 19:37:43 UTC (rev 286231) @@ -0,0 +1 @@ +Eߣ\xFFB\x82AA\xC0t]@ÀÀÀ\xFFÀ\xFFw\x80ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀ\xBBÀÀS\xACÀÀÀÀM\x9Bt\x8DM\xBB\xF9\xFB\xFF\xFFÀÀ\x86a\x86a\x86ÀÀÀÀÀÀ\xACÀÀI\xA9f\x88*ÀÀÀÀÀÀÀÔ± \ No newline at end of file Added: branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check-expected.txt (0 => 286231) --- branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check-expected.txt (rev 0) +++ branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check-expected.txt 2021-11-29 19:37:43 UTC (rev 286231) @@ -0,0 +1,6 @@ + +RUN(video.src = "" +EVENT(error) +Properly failed to load media OK +END OF TEST + Added: branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check.html (0 => 286231) --- branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check.html (rev 0) +++ branches/safari-612-branch/LayoutTests/media/media-webm-invalid-check.html 2021-11-29 19:37:43 UTC (rev 286231) @@ -0,0 +1,24 @@ + + + +media-webm-no-duration + +window.addEventListener('load', async event => { +try { +window.video = document.querySelector('video'); +run('video.src = "" +waitFor(video, 'error').then(e => { +passTest('Properly failed to load media'); +endTest(); +}); +
[webkit-changes] [286230] branches/safari-612-branch
Title: [286230] branches/safari-612-branch Revision 286230 Author repst...@apple.com Date 2021-11-29 11:37:39 -0800 (Mon, 29 Nov 2021) Log Message Cherry-pick r283300. rdar://problem/85259264 DFG strength reduction on % operator should handle an INT_MIN divisor. https://bugs.webkit.org/show_bug.cgi?id=230391 Reviewed by Robin Morisset. JSTests: * stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js: Added. Source/_javascript_Core: * dfg/DFGStrengthReductionPhase.cpp: (JSC::DFG::StrengthReductionPhase::handleNode): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283300 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/JSTests/ChangeLog branches/safari-612-branch/Source/_javascript_Core/ChangeLog branches/safari-612-branch/Source/_javascript_Core/dfg/DFGStrengthReductionPhase.cpp Added Paths branches/safari-612-branch/JSTests/stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js Diff Modified: branches/safari-612-branch/JSTests/ChangeLog (286229 => 286230) --- branches/safari-612-branch/JSTests/ChangeLog 2021-11-29 19:30:03 UTC (rev 286229) +++ branches/safari-612-branch/JSTests/ChangeLog 2021-11-29 19:37:39 UTC (rev 286230) @@ -1,3 +1,35 @@ +2021-11-11 Alan Coon + +Cherry-pick r283300. rdar://problem/85259264 + +DFG strength reduction on % operator should handle an INT_MIN divisor. +https://bugs.webkit.org/show_bug.cgi?id=230391 + + +Reviewed by Robin Morisset. + +JSTests: + +* stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js: Added. + +Source/_javascript_Core: + +* dfg/DFGStrengthReductionPhase.cpp: +(JSC::DFG::StrengthReductionPhase::handleNode): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283300 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-09-29 Mark Lam + +DFG strength reduction on % operator should handle an INT_MIN divisor. +https://bugs.webkit.org/show_bug.cgi?id=230391 + + +Reviewed by Robin Morisset. + +* stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js: Added. + 2021-10-25 Yusuke Suzuki [JSC] Don't branch around register allocation in DFG enumerator get by val Added: branches/safari-612-branch/JSTests/stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js (0 => 286230) --- branches/safari-612-branch/JSTests/stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js (rev 0) +++ branches/safari-612-branch/JSTests/stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js 2021-11-29 19:37:39 UTC (rev 286230) @@ -0,0 +1,11 @@ +function foo(num) { +num |= 0; +let x1 = num % -2147483648; +let x2 = x1 % 5; + +if (x2 > 5) +throw "Error"; +} + +for (let i = 0; i < 1; i++) +foo(i); Modified: branches/safari-612-branch/Source/_javascript_Core/ChangeLog (286229 => 286230) --- branches/safari-612-branch/Source/_javascript_Core/ChangeLog 2021-11-29 19:30:03 UTC (rev 286229) +++ branches/safari-612-branch/Source/_javascript_Core/ChangeLog 2021-11-29 19:37:39 UTC (rev 286230) @@ -1,3 +1,36 @@ +2021-11-11 Alan Coon + +Cherry-pick r283300. rdar://problem/85259264 + +DFG strength reduction on % operator should handle an INT_MIN divisor. +https://bugs.webkit.org/show_bug.cgi?id=230391 + + +Reviewed by Robin Morisset. + +JSTests: + +* stress/dfg-strength-reduction-on-mod-should-handle-INT_MIN.js: Added. + +Source/_javascript_Core: + +* dfg/DFGStrengthReductionPhase.cpp: +(JSC::DFG::StrengthReductionPhase::handleNode): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283300 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-09-29 Mark Lam + +DFG strength reduction on % operator should handle an INT_MIN divisor. +https://bugs.webkit.org/show_bug.cgi?id=230391 + + +Reviewed by Robin Morisset. + +* dfg/DFGStrengthReductionPhase.cpp: +(JSC::DFG::StrengthReductionPhase::handleNode): + 2021-10-25 Yusuke Suzuki [JSC] Don't branch around register allocation in DFG enumerator get by val Modified: branches/safari-612-branch/Source/_javascript_Core/dfg/DFGStrengthReductionPhase.cpp (286229 => 286230) --- branches/safari-612-branch/Source/_javascript_Core/dfg/DFGStrengthReductionPhase.cpp 2021-11-29 19:30:03 UTC (rev 286229) +++ branches/safari-612-branch/Source/_javascript_Core/dfg/DFGStrengthReductionPhase.cpp 2021-11-29 19:37:39 UTC (rev 286230) @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2019 Apple Inc. All rights reserved. + * Copyright (C) 2013-2021 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -197,8 +197,15
[webkit-changes] [286239] branches/safari-612-branch/Source/WebKit
Title: [286239] branches/safari-612-branch/Source/WebKit Revision 286239 Author repst...@apple.com Date 2021-11-29 11:38:11 -0800 (Mon, 29 Nov 2021) Log Message Revert r285690. rdar://problem/83381842 Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp branches/safari-612-branch/Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286238 => 286239) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:08 UTC (rev 286238) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-11-29 19:38:11 UTC (rev 286239) @@ -1,3 +1,7 @@ +2021-11-12 Russell Epstein + +Revert r285690. rdar://problem/83381842 + 2021-11-11 Alan Coon Cherry-pick r285565. rdar://problem/83159358 Modified: branches/safari-612-branch/Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp (286238 => 286239) --- branches/safari-612-branch/Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp 2021-11-29 19:38:08 UTC (rev 286238) +++ branches/safari-612-branch/Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSource.cpp 2021-11-29 19:38:11 UTC (rev 286239) @@ -77,13 +77,8 @@ void SpeechRecognitionRemoteRealtimeMediaSource::setStorage(const SharedMemory::Handle& handle, const WebCore::CAAudioStreamDescription& description, uint64_t numberOfFrames) { -if (!numberOfFrames) { -m_ringBuffer = nullptr; -m_buffer = nullptr; -return; -} +m_description = description; -m_description = description; m_ringBuffer = WebCore::CARingBuffer::adoptStorage(makeUniqueRef(handle), description, numberOfFrames).moveToUniquePtr(); m_buffer = makeUnique(description); } Modified: branches/safari-612-branch/Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp (286238 => 286239) --- branches/safari-612-branch/Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp 2021-11-29 19:38:08 UTC (rev 286238) +++ branches/safari-612-branch/Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp 2021-11-29 19:38:11 UTC (rev 286239) @@ -63,7 +63,7 @@ , m_source(WTFMove(source)) , m_connection(WTFMove(connection)) #if PLATFORM(COCOA) -, m_ringBuffer(makeUniqueRef(std::bind(::storageChanged, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3))) +, m_ringBuffer(makeUniqueRef(std::bind(::storageChanged, this, std::placeholders::_1))) #endif { m_source->addObserver(*this); @@ -113,7 +113,9 @@ if (m_description != description) { ASSERT(description.platformDescription().type == PlatformDescription::CAAudioStreamBasicType); m_description = *WTF::get(description.platformDescription().description); -m_ringBuffer.allocate(m_description.streamDescription(), m_description.sampleRate() * 2); + +m_numberOfFrames = m_description.sampleRate() * 2; +m_ringBuffer.allocate(m_description.streamDescription(), m_numberOfFrames); } ASSERT(is(audioData)); @@ -129,7 +131,7 @@ #if PLATFORM(COCOA) -void storageChanged(SharedMemory* storage, const WebCore::CAAudioStreamDescription& description, size_t numberOfFrames) +void storageChanged(SharedMemory* storage) { DisableMallocRestrictionsForCurrentThreadScope scope; SharedMemory::Handle handle; @@ -140,7 +142,7 @@ #else uint64_t dataSize = 0; #endif -m_connection->send(Messages::SpeechRecognitionRemoteRealtimeMediaSourceManager::SetStorage(m_identifier, SharedMemory::IPCHandle { WTFMove(handle), dataSize }, description, numberOfFrames), 0); +m_connection->send(Messages::SpeechRecognitionRemoteRealtimeMediaSourceManager::SetStorage(m_identifier, SharedMemory::IPCHandle { WTFMove(handle), dataSize }, m_description, m_numberOfFrames), 0); } #endif @@ -160,6 +162,7 @@ Ref m_connection; #if PLATFORM(COCOA) +uint64_t m_numberOfFrames { 0 }; CARingBuffer m_ringBuffer; CAAudioStreamDescription m_description { }; #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286229] trunk/LayoutTests
Title: [286229] trunk/LayoutTests Revision 286229 Author commit-qu...@webkit.org Date 2021-11-29 11:30:03 -0800 (Mon, 29 Nov 2021) Log Message [GLIB] Update test expectations and baselines. Unreviewed test gardening. https://bugs.webkit.org/show_bug.cgi?id=233530 Patch by Arcady Goldmints-Orlov on 2021-11-29 * platform/glib/TestExpectations: * platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt: Added. * platform/glib/storage/domstorage/sessionstorage/blocked-file-access-expected.txt: Added. * platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt Added Paths trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt trunk/LayoutTests/platform/glib/storage/ trunk/LayoutTests/platform/glib/storage/domstorage/ trunk/LayoutTests/platform/glib/storage/domstorage/sessionstorage/ trunk/LayoutTests/platform/glib/storage/domstorage/sessionstorage/blocked-file-access-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (286228 => 286229) --- trunk/LayoutTests/ChangeLog 2021-11-29 19:10:22 UTC (rev 286228) +++ trunk/LayoutTests/ChangeLog 2021-11-29 19:30:03 UTC (rev 286229) @@ -1,3 +1,13 @@ +2021-11-29 Arcady Goldmints-Orlov + +[GLIB] Update test expectations and baselines. Unreviewed test gardening. +https://bugs.webkit.org/show_bug.cgi?id=233530 + +* platform/glib/TestExpectations: +* platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt: Added. +* platform/glib/storage/domstorage/sessionstorage/blocked-file-access-expected.txt: Added. +* platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt: + 2021-11-29 Andreu Botella Form payloads with text/plain enctype should have a final \r\n Modified: trunk/LayoutTests/platform/glib/TestExpectations (286228 => 286229) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-11-29 19:10:22 UTC (rev 286228) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-11-29 19:30:03 UTC (rev 286229) @@ -603,6 +603,8 @@ webkit.org/b/231516 fast/css/calc-parsing.html [ Pass Failure ] webkit.org/b/231516 imported/w3c/web-platform-tests/css/css-values/hypot-pow-sqrt-invalid.html [ Pass Failure ] +webkit.org/b/233478 imported/w3c/web-platform-tests/css/css-transforms/backface-visibility-hidden-child-will-change-transform.html [ ImageOnlyFailure ] + # # End of CSS-related bugs # @@ -1234,6 +1236,8 @@ webkit.org/b/232726 webaudio/AudioBuffer/huge-buffer.html [ Pass Slow ] +webkit.org/b/233529 imported/w3c/web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower.html [ Failure ] + # # End of WebAudio-related bugs # Added: trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt (0 => 286229) --- trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt (rev 0) +++ trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-inline-value-expected.txt 2021-11-29 19:30:03 UTC (rev 286229) @@ -0,0 +1,43 @@ + +FAIL Interpolation between translateX(0px) and translateX(50px) gives the correct computed value halfway according to commitStyles. assert_equals: The value at 50% progress is as expected expected "translateX(25px)" but got "matrix(1, 0, 0, 1, 25, 0)" +FAIL Interpolation between translateX(0%) and translateX(50%) gives the correct computed value halfway according to commitStyles. assert_equals: The value at 50% progress is as expected expected "translateX(25%)" but got "matrix(1, 0, 0, 1, 0, 0)" +FAIL Interpolation between translateY(0%) and translateX(50%) gives the correct computed value halfway according to commitStyles. assert_equals: The value at 50% progress is as expected expected "translate(25%)" but got "matrix(1, 0, 0, 1, 0, 0)" +FAIL Interpolation between translateX(50px) and translateY(50px) gives the correct computed value halfway according to commitStyles. assert_equals: The value at 50% progress is as expected
[webkit-changes] [286228] trunk
Title: [286228] trunk Revision 286228 Author ysuz...@apple.com Date 2021-11-29 11:10:22 -0800 (Mon, 29 Nov 2021) Log Message [JSC] GetTypedArrayLengthAsInt52 can get Array::Generic ArrayMode https://bugs.webkit.org/show_bug.cgi?id=233571 rdar://85812164 Reviewed by Mark Lam. JSTests: * stress/get-typed-array-length-as-int52-generic.js: Added. (foo.bar): (foo): Source/_javascript_Core: If speculation is not populated enough, then GetTypedArrayLengthAsInt52 can get Array::Generic. In that case, we should convert it to Array::ForceExit as it is done in GetArrayLength. And blessArrayOperation inserts ForceOSRExit. So GetTypedArrayLengthAsInt52 won't be compiled. * dfg/DFGClobberize.h: (JSC::DFG::clobberize): * dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): * dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compileGetTypedArrayLengthAsInt52): * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileGetTypedArrayLengthAsInt52): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGClobberize.h trunk/Source/_javascript_Core/dfg/DFGFixupPhase.cpp trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT64.cpp trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp Added Paths trunk/JSTests/stress/get-typed-array-length-as-int52-generic.js Diff Modified: trunk/JSTests/ChangeLog (286227 => 286228) --- trunk/JSTests/ChangeLog 2021-11-29 19:06:33 UTC (rev 286227) +++ trunk/JSTests/ChangeLog 2021-11-29 19:10:22 UTC (rev 286228) @@ -1,3 +1,15 @@ +2021-11-29 Yusuke Suzuki + +[JSC] GetTypedArrayLengthAsInt52 can get Array::Generic ArrayMode +https://bugs.webkit.org/show_bug.cgi?id=233571 +rdar://85812164 + +Reviewed by Mark Lam. + +* stress/get-typed-array-length-as-int52-generic.js: Added. +(foo.bar): +(foo): + 2021-11-24 Michael Catanzaro Skip new stress test get-array-length-reuse.js if memory-limited Added: trunk/JSTests/stress/get-typed-array-length-as-int52-generic.js (0 => 286228) --- trunk/JSTests/stress/get-typed-array-length-as-int52-generic.js (rev 0) +++ trunk/JSTests/stress/get-typed-array-length-as-int52-generic.js 2021-11-29 19:10:22 UTC (rev 286228) @@ -0,0 +1,12 @@ +//@ skip if not $jitTests +//@ runDefault("--jitPolicyScale=0", "--useLLInt=0") +function foo() { + function bar() {} + bar(...arguments); + arguments.length = undefined; + bar(...arguments); + for (let _ of new Uint8Array()); +} + +for (let i = 0; i < 15000; i++) + foo(); Modified: trunk/Source/_javascript_Core/ChangeLog (286227 => 286228) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:06:33 UTC (rev 286227) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-29 19:10:22 UTC (rev 286228) @@ -1,3 +1,24 @@ +2021-11-29 Yusuke Suzuki + +[JSC] GetTypedArrayLengthAsInt52 can get Array::Generic ArrayMode +https://bugs.webkit.org/show_bug.cgi?id=233571 +rdar://85812164 + +Reviewed by Mark Lam. + +If speculation is not populated enough, then GetTypedArrayLengthAsInt52 can get Array::Generic. +In that case, we should convert it to Array::ForceExit as it is done in GetArrayLength. +And blessArrayOperation inserts ForceOSRExit. So GetTypedArrayLengthAsInt52 won't be compiled. + +* dfg/DFGClobberize.h: +(JSC::DFG::clobberize): +* dfg/DFGFixupPhase.cpp: +(JSC::DFG::FixupPhase::fixupNode): +* dfg/DFGSpeculativeJIT64.cpp: +(JSC::DFG::SpeculativeJIT::compileGetTypedArrayLengthAsInt52): +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileGetTypedArrayLengthAsInt52): + 2021-11-29 Zan Dobersek [RISCV64] Populate RISCV64Assembler with instruction-generation methods Modified: trunk/Source/_javascript_Core/dfg/DFGClobberize.h (286227 => 286228) --- trunk/Source/_javascript_Core/dfg/DFGClobberize.h 2021-11-29 19:06:33 UTC (rev 286227) +++ trunk/Source/_javascript_Core/dfg/DFGClobberize.h 2021-11-29 19:10:22 UTC (rev 286228) @@ -1456,7 +1456,7 @@ } default: -ASSERT(mode.isSomeTypedArrayView()); +DFG_ASSERT(graph, node, mode.isSomeTypedArrayView()); read(MiscFields); def(HeapLocation(ArrayLengthLoc, MiscFields, node->child1()), LazyNode(node)); return; @@ -1465,10 +1465,16 @@ case GetTypedArrayLengthAsInt52: { ArrayMode mode = node->arrayMode(); -RELEASE_ASSERT(mode.isSomeTypedArrayView()); -read(MiscFields); -def(HeapLocation(TypedArrayLengthInt52Loc, MiscFields, node->child1()), LazyNode(node)); -return; +DFG_ASSERT(graph, node, mode.isSomeTypedArrayView() || mode.type() == Array::ForceExit); +switch (mode.type()) { +case Array::ForceExit: +write(SideState); +return; +default: +read(MiscFields);
[webkit-changes] [286227] trunk/Source
Title: [286227] trunk/Source Revision 286227 Author grao...@webkit.org Date 2021-11-29 11:06:33 -0800 (Mon, 29 Nov 2021) Log Message [Model] clean up compile-time flags and condition IDL methods behind them https://bugs.webkit.org/show_bug.cgi?id=233407 Reviewed by Tim Horton. Source/WebCore: We condition the availability of IDL methods recently added to HTMLModelElement by the new set of ENABLE_MODEL_ELEMENT_XXX_CONTROL flags. * Modules/model-element/HTMLModelElement.cpp: * Modules/model-element/HTMLModelElement.h: * Modules/model-element/HTMLModelElement.idl: * Modules/model-element/ModelPlayer.h: * Modules/model-element/dummy/DummyModelPlayer.cpp: * Modules/model-element/dummy/DummyModelPlayer.h: * Modules/model-element/scenekit/SceneKitModelPlayer.h: * Modules/model-element/scenekit/SceneKitModelPlayer.mm: Source/WebCore/PAL: We adopt the changes made to flags in wtf/PlatformEnableCocoa.h and wtf/PlatformHave.h. We also remove the use of existing flags in QuartzCoreSPI.h since they're not actually valid. * pal/spi/cocoa/QuartzCoreSPI.h: * pal/spi/ios/SystemPreviewSPI.h: * pal/spi/mac/SystemPreviewSPI.h: Source/WebKit: On top of adopting the changes made to flags in wtf/PlatformEnableCocoa.h and wtf/PlatformHave.h, we condition the definition of code related to IDL methods recently added to HTMLModelElement by the new set of ENABLE_MODEL_ELEMENT_XXX_CONTROL flags, uncluding WebPageProxy messages allowing for this feature to work. * Shared/ModelIdentifier.h: (WebKit::ModelIdentifier::encode const): (WebKit::ModelIdentifier::decode): * UIProcess/Cocoa/ModelElementControllerCocoa.mm: (WebKit::previewHasCameraSupport): (WebKit::ModelElementController::getCameraForModelElement): (WebKit::ModelElementController::setCameraForModelElement): (WebKit::previewHasAnimationSupport): (WebKit::ModelElementController::isPlayingAnimationForModelElement): (WebKit::ModelElementController::setAnimationIsPlayingForModelElement): (WebKit::ModelElementController::isLoopingAnimationForModelElement): (WebKit::ModelElementController::setIsLoopingAnimationForModelElement): (WebKit::ModelElementController::animationDurationForModelElement): (WebKit::ModelElementController::animationCurrentTimeForModelElement): (WebKit::ModelElementController::setAnimationCurrentTimeForModelElement): (WebKit::previewHasAudioSupport): (WebKit::ModelElementController::hasAudioForModelElement): (WebKit::ModelElementController::isMutedForModelElement): (WebKit::ModelElementController::setIsMutedForModelElement): * UIProcess/ModelElementController.h: * UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm: (WebKit::RemoteLayerTreeHost::makeNode): * UIProcess/WebPageProxy.cpp: * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.messages.in: * UIProcess/ios/WKModelInteractionGestureRecognizer.h: * UIProcess/ios/WKModelInteractionGestureRecognizer.mm: * UIProcess/ios/WKModelView.h: * UIProcess/ios/WKModelView.mm: * WebProcess/Model/ARKitInlinePreviewModelPlayer.h: * WebProcess/Model/ARKitInlinePreviewModelPlayer.mm: * WebProcess/Model/WebModelPlayerProvider.cpp: (WebKit::WebModelPlayerProvider::createModelPlayer): * WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.h: * WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm: * WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.h: * WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm: (WebKit::ARKitInlinePreviewModelPlayerMac::supportsMouseInteraction): * WebProcess/WebProcess.cpp: (WebKit::WebProcess::setWebsiteDataStoreParameters): Source/WTF: We refactor and augment the flags related to the element. First, we change the following existing flags from ENABLE to HAVE since they are about the availability of specific APIs in ARKit, and more specific ASVInlinePreview. The changes are as follows: ENABLE_ARKIT_INLINE_PREVIEW_IOS => HAVE_ASV_INLINE_PREVIEW_IOS ENABLE_ARKIT_INLINE_PREVIEW_MAC => HAVE_ASV_INLINE_PREVIEW_MAC ENABLE_ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM => HAVE_ASV_INLINE_PREVIEW_CAMERA_CONTROL ENABLE_ARKIT_INLINE_PREVIEW_ANIMATIONS_CONTROL => HAVE_ASV_INLINE_PREVIEW_ANIMATION_CONTROL ENABLE_ARKIT_INLINE_PREVIEW_AUDIO_CONTROL => HAVE_ASV_INLINE_PREVIEW_AUDIO_CONTROL We retain the ENABLE_ARKIT_INLINE_PREVIEW flag however as, even when the ASVInlinePreview API is available, we may elect to not use this API. Then, we add three new flags to specify whether some features exposed to the Web are enabled, all currently conditioned by the matching HAVE_ASV_INLINE_PREVIEW_ flags, but those could be subject to more complex rules when other backends expose supporting APIs for these features. ENABLE_MODEL_ELEMENT_CAMERA_CONTROL ENABLE_MODEL_ELEMENT_ANIMATION_CONTROL ENABLE_MODEL_ELEMENT_AUDIO_CONTROL Finally, we modify the macOS version used to define the HAVE_ASV_INLINE_PREVIEW_XXX_CONTROL flags. * wtf/PlatformEnableCocoa.h: * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformEnableCocoa.h
[webkit-changes] [286226] trunk
Title: [286226] trunk Revision 286226 Author an...@apple.com Date 2021-11-29 10:43:28 -0800 (Mon, 29 Nov 2021) Log Message [:has() pseudo-class] id invalidation support https://bugs.webkit.org/show_bug.cgi?id=233557 Reviewed by Simon Fraser. LayoutTests/imported/w3c: * web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt: Source/WebCore: The existing invalidation code doesn't automatically cover id mutations for has since it doesn't use rulesets (because id mutations are rare and have not been worth optimizing). * style/ChildChangeInvalidation.cpp: (WebCore::Style::ChildChangeInvalidation::invalidateForChangedElement): Invalidate for ids. Only look for descendant matching :has rulesets for non-children. * style/IdChangeInvalidation.cpp: (WebCore::Style::IdChangeInvalidation::invalidateStyle): Invalidate with RuleSets. * style/RuleFeature.cpp: (WebCore::Style::RuleFeatureSet::recursivelyCollectFeaturesFromSelector): Collect ids for building rulesets for :has case only, similar to tags. (WebCore::Style::RuleFeatureSet::collectFeatures): (WebCore::Style::RuleFeatureSet::add): Use some lambdas to reduce copy code. (WebCore::Style::RuleFeatureSet::clear): (WebCore::Style::RuleFeatureSet::shrinkToFit): * style/RuleFeature.h: * style/StyleScopeRuleSets.cpp: (WebCore::Style::ScopeRuleSets::idInvalidationRuleSets const): * style/StyleScopeRuleSets.h: Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/style/ChildChangeInvalidation.cpp trunk/Source/WebCore/style/IdChangeInvalidation.cpp trunk/Source/WebCore/style/RuleFeature.cpp trunk/Source/WebCore/style/RuleFeature.h trunk/Source/WebCore/style/StyleScopeRuleSets.cpp trunk/Source/WebCore/style/StyleScopeRuleSets.h Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286225 => 286226) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 18:38:23 UTC (rev 286225) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 18:43:28 UTC (rev 286226) @@ -1,3 +1,12 @@ +2021-11-29 Antti Koivisto + +[:has() pseudo-class] id invalidation support +https://bugs.webkit.org/show_bug.cgi?id=233557 + +Reviewed by Simon Fraser. + +* web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt: + 2021-11-29 Andreu Botella Form payloads with text/plain enctype should have a final \r\n Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt (286225 => 286226) --- trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt 2021-11-29 18:38:23 UTC (rev 286225) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/attribute-or-elemental-selectors-in-has-expected.txt 2021-11-29 18:43:28 UTC (rev 286226) @@ -12,7 +12,7 @@ PASS remove .descendant from #div_grandchild: div#div_subject.color PASS set descendant to #div_grandchild[attrname]: div#div_subject.color PASS clear #div_grandchild[attrname]: div#div_subject.color -FAIL change #div_grandchild to #div_descendant: div#div_subject.color assert_equals: expected "rgb(255, 255, 0)" but got "rgb(128, 128, 128)" +PASS change #div_grandchild to #div_descendant: div#div_subject.color PASS change #div_descendant to #div_grandchild: div#div_subject.color PASS add descendant to #div_subject: div#div_subject.color PASS remove descendant from #div_subject: div#div_subject.color @@ -22,9 +22,9 @@ PASS remove div.child from #div_subject: div#div_subject.color PASS add "div > div.descendant" to #div_subject: div#div_subject.color PASS remove "div > div.descendant" from #div_subject: div#div_subject.color -FAIL add div#div_descendant to #div_subject: div#div_subject.color assert_equals: expected "rgb(255, 255, 0)" but got "rgb(128, 128, 128)" +PASS add div#div_descendant to #div_subject: div#div_subject.color PASS remove div#div_descendant from #div_subject: div#div_subject.color -FAIL add "div#div_descendant" to #div_subject: div#div_subject.color assert_equals: expected "rgb(255, 255, 0)" but got "rgb(128, 128, 128)" +PASS add "div#div_descendant" to #div_subject: div#div_subject.color PASS remove "div#div_descendant" from #div_subject: div#div_subject.color PASS add div[attrname] to #div_subject: div#div_subject.color PASS remove div[attrname] from #div_subject: div#div_subject.color Modified: trunk/Source/WebCore/ChangeLog (286225 => 286226) --- trunk/Source/WebCore/ChangeLog 2021-11-29 18:38:23 UTC (rev 286225) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 18:43:28 UTC (rev 286226) @@ -1,3 +1,41 @@ +2021-11-29 Antti Koivisto + +[:has() pseudo-class] id invalidation support +
[webkit-changes] [286224] trunk/Source
Title: [286224] trunk/Source Revision 286224 Author mmaxfi...@apple.com Date 2021-11-29 10:21:51 -0800 (Mon, 29 Nov 2021) Log Message [WebGPU] IPC class refactorings https://bugs.webkit.org/show_bug.cgi?id=233546 Reviewed by Dean Jackson. Source/WebCore/PAL: Make classes fast allocated. GPUImpl gets a create() function with no arguments, for ease of callers. * pal/graphics/WebGPU/Impl/WebGPUAdapterImpl.h: * pal/graphics/WebGPU/Impl/WebGPUBindGroupImpl.h: * pal/graphics/WebGPU/Impl/WebGPUBindGroupLayoutImpl.h: * pal/graphics/WebGPU/Impl/WebGPUBufferImpl.h: * pal/graphics/WebGPU/Impl/WebGPUCommandBufferImpl.h: * pal/graphics/WebGPU/Impl/WebGPUCommandEncoderImpl.h: * pal/graphics/WebGPU/Impl/WebGPUComputePassEncoderImpl.h: * pal/graphics/WebGPU/Impl/WebGPUComputePipelineImpl.h: * pal/graphics/WebGPU/Impl/WebGPUConvertToBackingContext.h: * pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.h: * pal/graphics/WebGPU/Impl/WebGPUDowncastConvertToBackingContext.h: * pal/graphics/WebGPU/Impl/WebGPUExternalTextureImpl.h: * pal/graphics/WebGPU/Impl/WebGPUImpl.cpp: (PAL::WebGPU::GPUImpl::create): * pal/graphics/WebGPU/Impl/WebGPUImpl.h: * pal/graphics/WebGPU/Impl/WebGPUPipelineLayoutImpl.h: * pal/graphics/WebGPU/Impl/WebGPUQuerySetImpl.h: * pal/graphics/WebGPU/Impl/WebGPUQueueImpl.h: * pal/graphics/WebGPU/Impl/WebGPURenderBundleEncoderImpl.h: * pal/graphics/WebGPU/Impl/WebGPURenderBundleImpl.h: * pal/graphics/WebGPU/Impl/WebGPURenderPassEncoderImpl.h: * pal/graphics/WebGPU/Impl/WebGPURenderPipelineImpl.h: * pal/graphics/WebGPU/Impl/WebGPUSamplerImpl.h: * pal/graphics/WebGPU/Impl/WebGPUShaderModuleImpl.h: * pal/graphics/WebGPU/Impl/WebGPUTextureImpl.h: * pal/graphics/WebGPU/Impl/WebGPUTextureViewImpl.h: Source/WebKit: Make classes fast allocated. Also, make the root() function recursive, instead of hardcoding each class's distance from the root. RemoteGPUProxy has to be in the WebKit namespace, rather than the WebKit::WebGPU namespace, because it will be a message receiver, and our code generator doesn't know anything about the nested namespace. Also make sure that async functions call their callbacks in every codepath. No new tests because there is no behavior change. * GPUProcess/graphics/WebGPU/RemoteAdapter.h: * GPUProcess/graphics/WebGPU/RemoteBindGroup.h: * GPUProcess/graphics/WebGPU/RemoteBindGroupLayout.h: * GPUProcess/graphics/WebGPU/RemoteBuffer.h: * GPUProcess/graphics/WebGPU/RemoteCommandBuffer.h: * GPUProcess/graphics/WebGPU/RemoteCommandEncoder.h: * GPUProcess/graphics/WebGPU/RemoteComputePassEncoder.h: * GPUProcess/graphics/WebGPU/RemoteComputePipeline.h: * GPUProcess/graphics/WebGPU/RemoteDevice.h: * GPUProcess/graphics/WebGPU/RemoteExternalTexture.h: * GPUProcess/graphics/WebGPU/RemoteGPU.h: * GPUProcess/graphics/WebGPU/RemotePipelineLayout.h: * GPUProcess/graphics/WebGPU/RemoteQuerySet.h: * GPUProcess/graphics/WebGPU/RemoteQueue.h: * GPUProcess/graphics/WebGPU/RemoteRenderBundle.h: * GPUProcess/graphics/WebGPU/RemoteRenderBundleEncoder.h: * GPUProcess/graphics/WebGPU/RemoteRenderPassEncoder.h: * GPUProcess/graphics/WebGPU/RemoteRenderPipeline.h: * GPUProcess/graphics/WebGPU/RemoteSampler.h: * GPUProcess/graphics/WebGPU/RemoteShaderModule.h: * GPUProcess/graphics/WebGPU/RemoteTexture.h: * GPUProcess/graphics/WebGPU/RemoteTextureView.h: * GPUProcess/graphics/WebGPU/WebGPUObjectHeap.h: * GPUProcess/graphics/WebGPU/WebGPUObjectRegistry.h: * WebProcess/GPU/graphics/WebGPU/RemoteAdapterProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteBindGroupLayoutProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteBindGroupProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteBufferProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteCommandBufferProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteCommandEncoderProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteComputePassEncoderProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteComputePipelineProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteDeviceProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteExternalTextureProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp: (WebKit::RemoteGPUProxy::requestAdapter): (WebKit::WebGPU::RemoteGPUProxy::RemoteGPUProxy): Deleted. (WebKit::WebGPU::RemoteGPUProxy::~RemoteGPUProxy): Deleted. (WebKit::WebGPU::RemoteGPUProxy::requestAdapter): Deleted. * WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h: * WebProcess/GPU/graphics/WebGPU/RemotePipelineLayoutProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteQuerySetProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteQueueProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteRenderBundleEncoderProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteRenderBundleProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteRenderPassEncoderProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteRenderPipelineProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteSamplerProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteShaderModuleProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteTextureProxy.h: * WebProcess/GPU/graphics/WebGPU/RemoteTextureViewProxy.h: *
[webkit-changes] [286223] trunk
Title: [286223] trunk Revision 286223 Author simon.fra...@apple.com Date 2021-11-29 10:17:28 -0800 (Mon, 29 Nov 2021) Log Message Remove some unused event names https://bugs.webkit.org/show_bug.cgi?id=233485 Reviewed by Sam Weinig. Source/WebCore: 'webkitspeechchange' was added in r69100 and should have been removed in r172259. 'webkitregionoversetchange' was added in r151777 and should have been removed in r59. 'webkitwillreveal*' were added in r163092 and should have been removed in r218651. * dom/EventNames.h: * html/HTMLAttributeNames.in: * html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::createWindowEventHandlerNameMap): * html/HTMLElement.cpp: (WebCore::HTMLElement::createEventHandlerNameMap): Source/WebInspectorUI: * UserInterface/Models/ScriptTimelineRecord.js: (WI.ScriptTimelineRecord.EventType.displayName): Modified Paths trunk/LayoutTests/fast/dom/event-handler-attributes.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/EventNames.h trunk/Source/WebCore/html/HTMLAttributeNames.in trunk/Source/WebCore/html/HTMLBodyElement.cpp trunk/Source/WebCore/html/HTMLElement.cpp trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Models/ScriptTimelineRecord.js Diff Modified: trunk/LayoutTests/fast/dom/event-handler-attributes.html (286222 => 286223) --- trunk/LayoutTests/fast/dom/event-handler-attributes.html 2021-11-29 18:15:49 UTC (rev 286222) +++ trunk/LayoutTests/fast/dom/event-handler-attributes.html 2021-11-29 18:17:28 UTC (rev 286223) @@ -455,10 +455,6 @@ page/DOMWindow.idl:[NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturestart; page/DOMWindow.idl:[NotEnumerable, Conditional=ORIENTATION_EVENTS] attribute EventHandler onorientationchange; page/DOMWindow.idl:[NotEnumerable, Conditional=PROXIMITY_EVENTS] attribute EventHandler onwebkitdeviceproximity; -page/DOMWindow.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom; -page/DOMWindow.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft; -page/DOMWindow.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright; -page/DOMWindow.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop; page/DOMWindow.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled; page/DOMWindow.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged; page/DOMWindow.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick; @@ -470,10 +466,6 @@ dom/Document.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend; dom/Document.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove; dom/Document.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart; -dom/Document.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom; -dom/Document.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft; -dom/Document.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright; -dom/Document.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop; dom/Document.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled; dom/Document.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged; dom/Document.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforceclick; @@ -489,10 +481,6 @@ dom/Element.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchend; dom/Element.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchmove; dom/Element.idl:[NotEnumerable, Conditional=TOUCH_EVENTS] attribute EventHandler ontouchstart; -dom/Element.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealbottom; -dom/Element.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealleft; -dom/Element.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealright; -dom/Element.idl:[NotEnumerable, Conditional=WILL_REVEAL_EDGE_EVENTS] attribute EventHandler onwebkitwillrevealtop; dom/Element.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcecancelled; dom/Element.idl:[NotEnumerable, Conditional=MOUSE_FORCE_EVENTS] attribute EventHandler onwebkitmouseforcechanged;
[webkit-changes] [286222] trunk/Source/WebCore
Title: [286222] trunk/Source/WebCore Revision 286222 Author commit-qu...@webkit.org Date 2021-11-29 10:15:49 -0800 (Mon, 29 Nov 2021) Log Message [GTK] 2.33.1 tarball fails to build on i386 https://bugs.webkit.org/show_bug.cgi?id=233564 Unreviewed. Patch by Michael Catanzaro on 2021-11-29 * platform/graphics/SourceBufferPrivate.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h Diff Modified: trunk/Source/WebCore/ChangeLog (286221 => 286222) --- trunk/Source/WebCore/ChangeLog 2021-11-29 18:15:12 UTC (rev 286221) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 18:15:49 UTC (rev 286222) @@ -1,3 +1,12 @@ +2021-11-29 Michael Catanzaro + +[GTK] 2.33.1 tarball fails to build on i386 +https://bugs.webkit.org/show_bug.cgi?id=233564 + +Unreviewed. + +* platform/graphics/SourceBufferPrivate.h: + 2021-11-29 Andreu Botella Form payloads with text/plain enctype should have a final \r\n Modified: trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h (286221 => 286222) --- trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h 2021-11-29 18:15:12 UTC (rev 286221) +++ trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h 2021-11-29 18:15:49 UTC (rev 286222) @@ -44,6 +44,7 @@ #include #include #include +#include #include namespace WebCore { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286221] trunk
Title: [286221] trunk Revision 286221 Author commit-qu...@webkit.org Date 2021-11-29 10:15:12 -0800 (Mon, 29 Nov 2021) Log Message Form payloads with text/plain enctype should have a final \r\n https://bugs.webkit.org/show_bug.cgi?id=220783 Patch by Andreu Botella on 2021-11-29 Reviewed by Darin Adler. LayoutTests/imported/w3c: * web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window-expected.txt: * web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-usv-expected.txt: * web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body-expected.txt: * web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt: Source/WebCore: According to the HTML specification, the text/plain form enctype should not only have entries separated by a \r\n linebreak, but it should also have a final \r\n linebreak. Firefox and Chrome follow this, while WebKit skips the final linebreak for non-mailto form submissions. This change adds it in every case. Tests: imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window.html imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body.html imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window.html http/tests/misc/form-post-textplain-cross-site.html http/tests/misc/form-post-textplain.html * platform/network/FormDataBuilder.cpp: (WebCore::FormDataBuilder::addKeyValuePairAsFormData): Changed to add a trailing newline. * loader/FormSubmission.cpp: (WebCore::appendMailtoPostFormDataToURL): Changed to remove the extra trailing newline that was added to text/plain mailto payloads. LayoutTests: * http/tests/misc/resources/form-post-textplain.py: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/misc/resources/form-post-textplain.py trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-usv-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/FormSubmission.cpp trunk/Source/WebCore/platform/network/FormDataBuilder.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286220 => 286221) --- trunk/LayoutTests/ChangeLog 2021-11-29 18:10:34 UTC (rev 286220) +++ trunk/LayoutTests/ChangeLog 2021-11-29 18:15:12 UTC (rev 286221) @@ -1,3 +1,12 @@ +2021-11-29 Andreu Botella + +Form payloads with text/plain enctype should have a final \r\n +https://bugs.webkit.org/show_bug.cgi?id=220783 + +Reviewed by Darin Adler. + +* http/tests/misc/resources/form-post-textplain.py: + 2021-11-29 Rob Buis Only handle ident tokens in consumeWillChange Modified: trunk/LayoutTests/http/tests/misc/resources/form-post-textplain.py (286220 => 286221) --- trunk/LayoutTests/http/tests/misc/resources/form-post-textplain.py 2021-11-29 18:10:34 UTC (rev 286220) +++ trunk/LayoutTests/http/tests/misc/resources/form-post-textplain.py 2021-11-29 18:15:12 UTC (rev 286221) @@ -20,7 +20,7 @@ else: sys.stdout.write('FAIL: Content-type should be text/plain, but was \'{}\''.format(content_type)) -if data == 'f1=This is field #1 &!@$%\r\n=\'<>\r\nf2=This is field #2 ""': +if data == 'f1=This is field #1 &!@$%\r\n=\'<>\r\nf2=This is field #2 ""\r\n': sys.stdout.write('SUCCESS') else: sys.stdout.write('FAILURE: {}'.format(data)) Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286220 => 286221) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 18:10:34 UTC (rev 286220) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 18:15:12 UTC (rev 286221) @@ -1,3 +1,15 @@ +2021-11-29 Andreu Botella + +Form payloads with text/plain enctype should have a final \r\n +https://bugs.webkit.org/show_bug.cgi?id=220783 + +Reviewed by Darin Adler. + +* web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window-expected.txt: +* web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-usv-expected.txt: +* web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body-expected.txt: +* web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt: + 2021-11-29 Youenn Fablet Apply WebPreferences on ServiceWorker settings Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window-expected.txt (286220 =>
[webkit-changes] [286220] trunk
Title: [286220] trunk Revision 286220 Author commit-qu...@webkit.org Date 2021-11-29 10:10:34 -0800 (Mon, 29 Nov 2021) Log Message Only handle ident tokens in consumeWillChange https://bugs.webkit.org/show_bug.cgi?id=233459 Patch by Rob Buis on 2021-11-29 Reviewed by Antti Koivisto. Source/WebCore: Only handle ident tokens in consumeWillChange. Test: fast/css/variables/will-change-variable-resolve-crash.html * css/parser/CSSPropertyParser.cpp: (WebCore::consumeWillChange): LayoutTests: * fast/css/variables/will-change-variable-resolve-crash-expected.txt: Added. * fast/css/variables/will-change-variable-resolve-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp Added Paths trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash-expected.txt trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (286219 => 286220) --- trunk/LayoutTests/ChangeLog 2021-11-29 17:58:55 UTC (rev 286219) +++ trunk/LayoutTests/ChangeLog 2021-11-29 18:10:34 UTC (rev 286220) @@ -1,3 +1,13 @@ +2021-11-29 Rob Buis + +Only handle ident tokens in consumeWillChange +https://bugs.webkit.org/show_bug.cgi?id=233459 + +Reviewed by Antti Koivisto. + +* fast/css/variables/will-change-variable-resolve-crash-expected.txt: Added. +* fast/css/variables/will-change-variable-resolve-crash.html: Added. + 2021-10-27 Sergio Villar Senin [css-flexbox] Do not shrink tables bellow their intrinsic sizes Added: trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash-expected.txt (0 => 286220) --- trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash-expected.txt (rev 0) +++ trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash-expected.txt 2021-11-29 18:10:34 UTC (rev 286220) @@ -0,0 +1 @@ +This test passes if it doesn't crash. Added: trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash.html (0 => 286220) --- trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash.html (rev 0) +++ trunk/LayoutTests/fast/css/variables/will-change-variable-resolve-crash.html 2021-11-29 18:10:34 UTC (rev 286220) @@ -0,0 +1,7 @@ + + + if (window.testRunner) +testRunner.dumpAsText(); + document.styleSheets[0].insertRule(`html { will-change: var(--v0); --v0: .; text-emphasis-style: "\x00";}`); + document.write("This test passes if it doesn't crash."); + Modified: trunk/Source/WebCore/ChangeLog (286219 => 286220) --- trunk/Source/WebCore/ChangeLog 2021-11-29 17:58:55 UTC (rev 286219) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 18:10:34 UTC (rev 286220) @@ -1,3 +1,17 @@ +2021-11-29 Rob Buis + +Only handle ident tokens in consumeWillChange +https://bugs.webkit.org/show_bug.cgi?id=233459 + +Reviewed by Antti Koivisto. + +Only handle ident tokens in consumeWillChange. + +Test: fast/css/variables/will-change-variable-resolve-crash.html + +* css/parser/CSSPropertyParser.cpp: +(WebCore::consumeWillChange): + 2021-11-29 Youenn Fablet Apply WebPreferences on ServiceWorker settings Modified: trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp (286219 => 286220) --- trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp 2021-11-29 17:58:55 UTC (rev 286219) +++ trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp 2021-11-29 18:10:34 UTC (rev 286220) @@ -508,6 +508,8 @@ case CSSValueAuto: return nullptr; default: +if (range.peek().type() != IdentToken) +return nullptr; CSSPropertyID propertyID = cssPropertyID(range.peek().value()); if (propertyID == CSSPropertyWillChange) return nullptr; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286219] trunk/Source/WebKit
Title: [286219] trunk/Source/WebKit Revision 286219 Author bfulg...@apple.com Date 2021-11-29 09:58:55 -0800 (Mon, 29 Nov 2021) Log Message Create a new XPC service with specific entitlements to support Captive Portal use cases https://bugs.webkit.org/show_bug.cgi?id=233388 Reviewed by Per Arne Vollan. This initial patch builds a new XPC service with entitlements tailored to our Captive Portal use case. * Configurations/WebContentService.CaptivePortal.xcconfig: Added. * Configurations/WebContentService.xcconfig: * Scripts/process-entitlements.sh: Add new sections for captive portal mode * WebKit.xcodeproj/project.pbxproj: Add new configuration file. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Configurations/WebContentService.xcconfig trunk/Source/WebKit/Scripts/process-entitlements.sh trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj Added Paths trunk/Source/WebKit/Configurations/WebContentService.CaptivePortal.xcconfig Diff Modified: trunk/Source/WebKit/ChangeLog (286218 => 286219) --- trunk/Source/WebKit/ChangeLog 2021-11-29 17:18:10 UTC (rev 286218) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 17:58:55 UTC (rev 286219) @@ -1,3 +1,19 @@ +2021-11-29 Brent Fulgham + +Create a new XPC service with specific entitlements to support Captive Portal use cases +https://bugs.webkit.org/show_bug.cgi?id=233388 + + +Reviewed by Per Arne Vollan. + +This initial patch builds a new XPC service with entitlements tailored to our Captive Portal +use case. + +* Configurations/WebContentService.CaptivePortal.xcconfig: Added. +* Configurations/WebContentService.xcconfig: +* Scripts/process-entitlements.sh: Add new sections for captive portal mode +* WebKit.xcodeproj/project.pbxproj: Add new configuration file. + 2021-11-29 Youenn Fablet Apply WebPreferences on ServiceWorker settings Added: trunk/Source/WebKit/Configurations/WebContentService.CaptivePortal.xcconfig (0 => 286219) --- trunk/Source/WebKit/Configurations/WebContentService.CaptivePortal.xcconfig (rev 0) +++ trunk/Source/WebKit/Configurations/WebContentService.CaptivePortal.xcconfig 2021-11-29 17:58:55 UTC (rev 286219) @@ -0,0 +1,26 @@ +// Copyright (C) 2021 Apple Inc. All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// 1. Redistributions of source code must retain the above copyright +//notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +//notice, this list of conditions and the following disclaimer in the +//documentation and/or other materials provided with the distribution. +// +// THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY +// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR +// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#include "WebContentService.xcconfig" + +WK_XPC_SERVICE_VARIANT = CaptivePortal; Modified: trunk/Source/WebKit/Configurations/WebContentService.xcconfig (286218 => 286219) --- trunk/Source/WebKit/Configurations/WebContentService.xcconfig 2021-11-29 17:18:10 UTC (rev 286218) +++ trunk/Source/WebKit/Configurations/WebContentService.xcconfig 2021-11-29 17:58:55 UTC (rev 286219) @@ -27,6 +27,7 @@ PRODUCT_NAME_ = $(PRODUCT_NAME_Normal); PRODUCT_NAME_Normal = com.apple.WebKit.WebContent; PRODUCT_NAME_Development = com.apple.WebKit.WebContent.Development; +PRODUCT_NAME_CaptivePortal = com.apple.WebKit.WebContent.CaptivePortal; PRODUCT_BUNDLE_IDENTIFIER = $(PRODUCT_NAME); INFOPLIST_FILE[sdk=embedded*] = WebProcess/EntryPoint/Cocoa/XPCService/WebContentService/Info-iOS.plist; Modified: trunk/Source/WebKit/Scripts/process-entitlements.sh (286218 => 286219) --- trunk/Source/WebKit/Scripts/process-entitlements.sh 2021-11-29 17:18:10 UTC (rev 286218) +++ trunk/Source/WebKit/Scripts/process-entitlements.sh 2021-11-29 17:58:55 UTC (rev 286219) @@ -41,6 +41,42 @@ mac_process_webcontent_or_plugin_entitlements } +function mac_process_webcontent_captiveportal_entitlements() +{ +if [[ "${WK_USE_RESTRICTED_ENTITLEMENTS}" == YES ]] +then +plistbuddy Add :com.apple.private.webkit.use-xpc-endpoint bool YES +plistbuddy
[webkit-changes] [286218] trunk
Title: [286218] trunk Revision 286218 Author you...@apple.com Date 2021-11-29 09:18:10 -0800 (Mon, 29 Nov 2021) Log Message Apply WebPreferences on ServiceWorker settings https://bugs.webkit.org/show_bug.cgi?id=233466 LayoutTests/imported/w3c: Reviewed by Chris Dumez. * web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt: Source/WebCore: Reviewed by Chris Dumez. Migrate WebLock flag to a page setting. Update ServiceWorkerThreadProxy to expose its method to create a service worker dummy page. Covered by existing web lock service worker tests. * Modules/web-locks/NavigatorLocks.idl: * Modules/web-locks/WebLock.idl: * Modules/web-locks/WebLockManager.idl: * page/RuntimeEnabledFeatures.h: * workers/service/context/ServiceWorkerThreadProxy.cpp: * workers/service/context/ServiceWorkerThreadProxy.h: Source/WebKit: Reviewed by Chris Dumez. Make WebPage::updateSettingsGenerated as static to reuse it in service worker code path just after creation of the dummy Page attached to each service worker. This allows correct initialization of the settings that are then used by the service worker. * Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb: * WebProcess/Storage/WebSWContextManagerConnection.cpp: * WebProcess/Storage/WebSWContextManagerConnection.h: * WebProcess/WebPage/WebPage.cpp: * WebProcess/WebPage/WebPage.h: Source/WTF: Reviewed by Chris Dumez. * Scripts/Preferences/WebPreferencesExperimental.yaml: Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/web-locks/NavigatorLocks.idl trunk/Source/WebCore/Modules/web-locks/WebLock.idl trunk/Source/WebCore/Modules/web-locks/WebLockManager.idl trunk/Source/WebCore/page/RuntimeEnabledFeatures.h trunk/Source/WebCore/workers/service/context/ServiceWorkerThreadProxy.cpp trunk/Source/WebCore/workers/service/context/ServiceWorkerThreadProxy.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.cpp trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286217 => 286218) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 17:14:46 UTC (rev 286217) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-11-29 17:18:10 UTC (rev 286218) @@ -1,3 +1,13 @@ +2021-11-29 Youenn Fablet + +Apply WebPreferences on ServiceWorker settings +https://bugs.webkit.org/show_bug.cgi?id=233466 + + +Reviewed by Chris Dumez. + +* web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt: + 2021-11-27 Sam Weinig [CSS Color 4] Add support for oklab() and oklch() colors Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt (286217 => 286218) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt 2021-11-29 17:14:46 UTC (rev 286217) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https-expected.txt 2021-11-29 17:18:10 UTC (rev 286218) @@ -21,6 +21,6 @@ FAIL dedicated worker: scheme = blob, value = (\) assert_equals: expected false but got true PASS shared worker: withCoopCoep = false FAIL shared worker: withCoopCoep = true null is not an object (evaluating 'worker.port.postMessage') -FAIL service worker: withCoopCoep = false assert_equals: expected (boolean) false but got (undefined) undefined -FAIL service worker: withCoopCoep = true assert_equals: expected (boolean) true but got (undefined) undefined +PASS service worker: withCoopCoep = false +FAIL service worker: withCoopCoep = true assert_equals: expected true but got false Modified: trunk/Source/WTF/ChangeLog (286217 => 286218) --- trunk/Source/WTF/ChangeLog 2021-11-29 17:14:46 UTC (rev 286217) +++ trunk/Source/WTF/ChangeLog 2021-11-29 17:18:10 UTC (rev 286218) @@ -1,3 +1,12 @@ +2021-11-29 Youenn Fablet + +Apply WebPreferences on ServiceWorker settings +https://bugs.webkit.org/show_bug.cgi?id=233466 + +Reviewed by Chris Dumez. + +* Scripts/Preferences/WebPreferencesExperimental.yaml: + 2021-11-29 Nikolas Zimmermann [LBSE] Add runtime flag for Layer-based SVG engine (LBSE) Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (286217
[webkit-changes] [286217] trunk/Tools
Title: [286217] trunk/Tools Revision 286217 Author lmo...@igalia.com Date 2021-11-29 09:14:46 -0800 (Mon, 29 Nov 2021) Log Message [webkitflaskpy] Make sure flask is registered before importing webkitflaskpy https://bugs.webkit.org/show_bug.cgi?id=233561 Reviewed by Jonathan Bedard. bug29 moved AuthedBlueprint to webkitflaskpy, but flask needs to be registered before being imported to make sure AutoInstall takes care of it. This avoids `ModuleNotFound: flask` errors running the tests from a clean tree. * Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py Diff Modified: trunk/Tools/ChangeLog (286216 => 286217) --- trunk/Tools/ChangeLog 2021-11-29 16:54:12 UTC (rev 286216) +++ trunk/Tools/ChangeLog 2021-11-29 17:14:46 UTC (rev 286217) @@ -1,3 +1,17 @@ +2021-11-29 Lauro Moura + +[webkitflaskpy] Make sure flask is registered before importing webkitflaskpy +https://bugs.webkit.org/show_bug.cgi?id=233561 + +Reviewed by Jonathan Bedard. + +bug29 moved AuthedBlueprint to webkitflaskpy, but flask needs to +be registered before being imported to make sure AutoInstall takes +care of it. This avoids `ModuleNotFound: flask` errors running the +tests from a clean tree. + +* Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py: + 2021-11-29 Angelos Oikonomopoulos Consider Source/cmake relevant for JSC Modified: trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py (286216 => 286217) --- trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py 2021-11-29 16:54:12 UTC (rev 286216) +++ trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py 2021-11-29 17:14:46 UTC (rev 286217) @@ -45,8 +45,6 @@ version = Version(0, 2, 0) -from webkitflaskpy.authed_blueprint import AuthedBlueprint - AutoInstall.register(Package('click', Version(7, 1, 2))) AutoInstall.register(Package('flask', Version(1, 1, 2))) AutoInstall.register(Package('itsdangerous', Version(1, 1, 0))) @@ -54,4 +52,6 @@ AutoInstall.register(Package('markupsafe', Version(1, 1, 1))) AutoInstall.register(Package('werkzeug', Version(1, 0, 1))) +from webkitflaskpy.authed_blueprint import AuthedBlueprint # noqa: E402 + name = 'webkitflaskpy' ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286216] trunk/Source
Title: [286216] trunk/Source Revision 286216 Author repst...@apple.com Date 2021-11-29 08:54:12 -0800 (Mon, 29 Nov 2021) Log Message Versioning. WebKit-7613.1.11 Modified Paths trunk/Source/_javascript_Core/Configurations/Version.xcconfig trunk/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig trunk/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig trunk/Source/WebCore/Configurations/Version.xcconfig trunk/Source/WebCore/PAL/Configurations/Version.xcconfig trunk/Source/WebGPU/Configurations/Version.xcconfig trunk/Source/WebInspectorUI/Configurations/Version.xcconfig trunk/Source/WebKit/Configurations/Version.xcconfig trunk/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: trunk/Source/_javascript_Core/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/_javascript_Core/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebCore/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebCore/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebCore/PAL/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebGPU/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebGPU/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebGPU/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebInspectorUI/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -1,6 +1,6 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebKit/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebKit/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebKit/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7 +23,7 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; -TINY_VERSION = 10; +TINY_VERSION = 11; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: trunk/Source/WebKitLegacy/mac/Configurations/Version.xcconfig (286215 => 286216) --- trunk/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2021-11-29 16:50:12 UTC (rev 286215) +++ trunk/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2021-11-29 16:54:12 UTC (rev 286216) @@ -23,7
[webkit-changes] [286215] branches/safari-613.1.10-branch/
Title: [286215] branches/safari-613.1.10-branch/ Revision 286215 Author repst...@apple.com Date 2021-11-29 08:50:12 -0800 (Mon, 29 Nov 2021) Log Message New branch. Added Paths branches/safari-613.1.10-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286214] trunk/Source/WebKit
Title: [286214] trunk/Source/WebKit Revision 286214 Author cdu...@apple.com Date 2021-11-29 08:42:34 -0800 (Mon, 29 Nov 2021) Log Message Make WebKitCaptivePortalModeEnabled user default work on macOS https://bugs.webkit.org/show_bug.cgi?id=233560 Reviewed by Anders Carlsson. Make WebKitCaptivePortalModeEnabled user default work on macOS, not just iOS. This helps with testing. * UIProcess/Cocoa/WebProcessPoolCocoa.mm: * UIProcess/WebProcessPool.cpp: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm trunk/Source/WebKit/UIProcess/WebProcessPool.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286213 => 286214) --- trunk/Source/WebKit/ChangeLog 2021-11-29 16:03:48 UTC (rev 286213) +++ trunk/Source/WebKit/ChangeLog 2021-11-29 16:42:34 UTC (rev 286214) @@ -1,3 +1,15 @@ +2021-11-29 Chris Dumez + +Make WebKitCaptivePortalModeEnabled user default work on macOS +https://bugs.webkit.org/show_bug.cgi?id=233560 + +Reviewed by Anders Carlsson. + +Make WebKitCaptivePortalModeEnabled user default work on macOS, not just iOS. This helps with testing. + +* UIProcess/Cocoa/WebProcessPoolCocoa.mm: +* UIProcess/WebProcessPool.cpp: + 2021-11-29 Kimmo Kinnunen GPUP GraphicsContextGL creation failure cannot be detected Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (286213 => 286214) --- trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2021-11-29 16:03:48 UTC (rev 286213) +++ trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2021-11-29 16:42:34 UTC (rev 286214) @@ -960,8 +960,6 @@ return qos; } -#if PLATFORM(IOS_FAMILY) - bool captivePortalModeEnabledBySystem() { static std::optional cachedCaptivePortalModeEnabledGlobally; @@ -973,6 +971,8 @@ return *cachedCaptivePortalModeEnabledGlobally; } +#if PLATFORM(IOS_FAMILY) + void WebProcessPool::applicationIsAboutToSuspend() { WEBPROCESSPOOL_RELEASE_LOG(ProcessSuspension, "applicationIsAboutToSuspend: Terminating non-critical processes"); Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (286213 => 286214) --- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2021-11-29 16:03:48 UTC (rev 286213) +++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2021-11-29 16:42:34 UTC (rev 286214) @@ -2122,7 +2122,7 @@ } #endif -#if !PLATFORM(IOS_FAMILY) +#if !PLATFORM(COCOA) bool captivePortalModeEnabledBySystem() { return false; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286213] trunk/Tools
Title: [286213] trunk/Tools Revision 286213 Author ange...@igalia.com Date 2021-11-29 08:03:48 -0800 (Mon, 29 Nov 2021) Log Message Consider Source/cmake relevant for JSC https://bugs.webkit.org/show_bug.cgi?id=233552 Reviewed by Aakash Jain. Changes in Source/cmake may well be relevant for JSC. * CISupport/ews-build/steps.py: (CheckPatchRelevance): Modified Paths trunk/Tools/CISupport/ews-build/steps.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/CISupport/ews-build/steps.py (286212 => 286213) --- trunk/Tools/CISupport/ews-build/steps.py 2021-11-29 15:34:21 UTC (rev 286212) +++ trunk/Tools/CISupport/ews-build/steps.py 2021-11-29 16:03:48 UTC (rev 286213) @@ -417,6 +417,7 @@ re.compile(rb'JSTests/', re.IGNORECASE), re.compile(rb'Source/WTF/', re.IGNORECASE), re.compile(rb'Source/bmalloc/', re.IGNORECASE), +re.compile(rb'Source/cmake/', re.IGNORECASE), re.compile(rb'.*Makefile.*', re.IGNORECASE), re.compile(rb'Tools/Scripts/build-webkit', re.IGNORECASE), re.compile(rb'Tools/Scripts/webkitdirs.pm', re.IGNORECASE), Modified: trunk/Tools/ChangeLog (286212 => 286213) --- trunk/Tools/ChangeLog 2021-11-29 15:34:21 UTC (rev 286212) +++ trunk/Tools/ChangeLog 2021-11-29 16:03:48 UTC (rev 286213) @@ -1,3 +1,15 @@ +2021-11-29 Angelos Oikonomopoulos + +Consider Source/cmake relevant for JSC +https://bugs.webkit.org/show_bug.cgi?id=233552 + +Reviewed by Aakash Jain. + +Changes in Source/cmake may well be relevant for JSC. + +* CISupport/ews-build/steps.py: +(CheckPatchRelevance): + 2021-11-29 Nikolas Zimmermann [LBSE] Add runtime flag for Layer-based SVG engine (LBSE) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286212] trunk/Source/JavaScriptCore
Title: [286212] trunk/Source/_javascript_Core Revision 286212 Author commit-qu...@webkit.org Date 2021-11-29 07:34:21 -0800 (Mon, 29 Nov 2021) Log Message [RISCV64] Populate RISCV64Assembler with instruction-generation methods https://bugs.webkit.org/show_bug.cgi?id=233256 Patch by Zan Dobersek on 2021-11-29 Reviewed by Yusuke Suzuki. Sprinkle RISCV64Assembler class with helper methods for generating the desired instruction values. Immediate types from the RISCV64Instructions namespace are introduced into the class for easier usage here and in the MacroAssemblerRISCV64 class. Instruction-generating methods roughly match the different instruction types in the RISCV64Instructions namespace. A few optimizations are done around floating-point instructions. We can use one base method which expects the desired FP size as a template parameter, and the appropriate RISCV64Instructions type can then be selected based on that size value. Different combinations for FP move and conversion instructions are also grouped behind a single method, with thorough compile-time validation done to prevent generating invalid instructions. A few helper methods intended for masking, sign-extension and zero-extension are also added. The Condition enum is fixed to list only RISCV-viable conditions, with the values ordered so that a simple XOR-by-one of a given value will produce the value of the inverted condition. * assembler/RISCV64Assembler.h: (JSC::RISCV64Assembler::invert): (JSC::RISCV64Assembler::luiInsn): (JSC::RISCV64Assembler::auipcInsn): (JSC::RISCV64Assembler::jalInsn): (JSC::RISCV64Assembler::jalrInsn): (JSC::RISCV64Assembler::beqInsn): (JSC::RISCV64Assembler::bneInsn): (JSC::RISCV64Assembler::bltInsn): (JSC::RISCV64Assembler::bgeInsn): (JSC::RISCV64Assembler::bltuInsn): (JSC::RISCV64Assembler::bgeuInsn): (JSC::RISCV64Assembler::lbInsn): (JSC::RISCV64Assembler::lhInsn): (JSC::RISCV64Assembler::lwInsn): (JSC::RISCV64Assembler::ldInsn): (JSC::RISCV64Assembler::lbuInsn): (JSC::RISCV64Assembler::lhuInsn): (JSC::RISCV64Assembler::lwuInsn): (JSC::RISCV64Assembler::sbInsn): (JSC::RISCV64Assembler::shInsn): (JSC::RISCV64Assembler::swInsn): (JSC::RISCV64Assembler::sdInsn): (JSC::RISCV64Assembler::addiInsn): (JSC::RISCV64Assembler::sltiInsn): (JSC::RISCV64Assembler::sltiuInsn): (JSC::RISCV64Assembler::xoriInsn): (JSC::RISCV64Assembler::oriInsn): (JSC::RISCV64Assembler::andiInsn): (JSC::RISCV64Assembler::slliInsn): (JSC::RISCV64Assembler::srliInsn): (JSC::RISCV64Assembler::sraiInsn): (JSC::RISCV64Assembler::addInsn): (JSC::RISCV64Assembler::subInsn): (JSC::RISCV64Assembler::sllInsn): (JSC::RISCV64Assembler::sltInsn): (JSC::RISCV64Assembler::sltuInsn): (JSC::RISCV64Assembler::xorInsn): (JSC::RISCV64Assembler::srlInsn): (JSC::RISCV64Assembler::sraInsn): (JSC::RISCV64Assembler::orInsn): (JSC::RISCV64Assembler::andInsn): (JSC::RISCV64Assembler::ecallInsn): (JSC::RISCV64Assembler::ebreakInsn): (JSC::RISCV64Assembler::addiwInsn): (JSC::RISCV64Assembler::slliwInsn): (JSC::RISCV64Assembler::srliwInsn): (JSC::RISCV64Assembler::sraiwInsn): (JSC::RISCV64Assembler::addwInsn): (JSC::RISCV64Assembler::subwInsn): (JSC::RISCV64Assembler::sllwInsn): (JSC::RISCV64Assembler::srlwInsn): (JSC::RISCV64Assembler::srawInsn): (JSC::RISCV64Assembler::mulInsn): (JSC::RISCV64Assembler::mulhInsn): (JSC::RISCV64Assembler::mulhsuInsn): (JSC::RISCV64Assembler::mulhuInsn): (JSC::RISCV64Assembler::divInsn): (JSC::RISCV64Assembler::divuInsn): (JSC::RISCV64Assembler::remInsn): (JSC::RISCV64Assembler::remuInsn): (JSC::RISCV64Assembler::mulwInsn): (JSC::RISCV64Assembler::divwInsn): (JSC::RISCV64Assembler::divuwInsn): (JSC::RISCV64Assembler::remwInsn): (JSC::RISCV64Assembler::remuwInsn): (JSC::RISCV64Assembler::flwInsn): (JSC::RISCV64Assembler::fldInsn): (JSC::RISCV64Assembler::fswInsn): (JSC::RISCV64Assembler::fsdInsn): (JSC::RISCV64Assembler::fmaddInsn): (JSC::RISCV64Assembler::fmsubInsn): (JSC::RISCV64Assembler::fnmsubInsn): (JSC::RISCV64Assembler::fnmaddInsn): (JSC::RISCV64Assembler::faddInsn): (JSC::RISCV64Assembler::fsubInsn): (JSC::RISCV64Assembler::fmulInsn): (JSC::RISCV64Assembler::fdivInsn): (JSC::RISCV64Assembler::fsqrtInsn): (JSC::RISCV64Assembler::fsgnjInsn): (JSC::RISCV64Assembler::fsgnjnInsn): (JSC::RISCV64Assembler::fsgnjxInsn): (JSC::RISCV64Assembler::fminInsn): (JSC::RISCV64Assembler::fmaxInsn): (JSC::RISCV64Assembler::feqInsn): (JSC::RISCV64Assembler::fltInsn): (JSC::RISCV64Assembler::fleInsn): (JSC::RISCV64Assembler::fclassInsn): (JSC::RISCV64Assembler::fcvtInsn): (JSC::RISCV64Assembler::fmvInsn): (JSC::RISCV64Assembler::fenceInsn): (JSC::RISCV64Assembler::lrwInsn): (JSC::RISCV64Assembler::scwInsn): (JSC::RISCV64Assembler::lrdInsn): (JSC::RISCV64Assembler::scdInsn): (JSC::RISCV64Assembler::amoswapwInsn): (JSC::RISCV64Assembler::amoaddwInsn): (JSC::RISCV64Assembler::amoxorwInsn): (JSC::RISCV64Assembler::amoandwInsn): (JSC::RISCV64Assembler::amoorwInsn): (JSC::RISCV64Assembler::amoswapdInsn): (JSC::RISCV64Assembler::amoadddInsn):
[webkit-changes] [286211] trunk/Source/JavaScriptCore
Title: [286211] trunk/Source/_javascript_Core Revision 286211 Author mmaxfi...@apple.com Date 2021-11-29 07:08:47 -0800 (Mon, 29 Nov 2021) Log Message [Cocoa] Stop linking _javascript_Core.framework with libz because it doesn't use any symbols from it https://bugs.webkit.org/show_bug.cgi?id=233550 Reviewed by Anders Carlsson. Every compile produces a message like: Ld /Users/mmaxfield/Build/Products/Debug/_javascript_Core.framework/Versions/A/_javascript_Core normal (in target '_javascript_Core' from project '_javascript_Core') ld: warning: linking with (/usr/lib/libz.1.dylib) but not using any symbols from it * _javascript_Core.xcodeproj/project.pbxproj: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286210 => 286211) --- trunk/Source/_javascript_Core/ChangeLog 2021-11-29 14:32:21 UTC (rev 286210) +++ trunk/Source/_javascript_Core/ChangeLog 2021-11-29 15:08:47 UTC (rev 286211) @@ -1,3 +1,17 @@ +2021-11-29 Myles C. Maxfield + +[Cocoa] Stop linking _javascript_Core.framework with libz because it doesn't use any symbols from it +https://bugs.webkit.org/show_bug.cgi?id=233550 + +Reviewed by Anders Carlsson. + +Every compile produces a message like: + +Ld /Users/mmaxfield/Build/Products/Debug/_javascript_Core.framework/Versions/A/_javascript_Core normal (in target '_javascript_Core' from project '_javascript_Core') +ld: warning: linking with (/usr/lib/libz.1.dylib) but not using any symbols from it + +* _javascript_Core.xcodeproj/project.pbxproj: + 2021-11-26 Adrian Perez de Castro Non-unified build fixes, late November 2021 edition Modified: trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj (286210 => 286211) --- trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2021-11-29 14:32:21 UTC (rev 286210) +++ trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2021-11-29 15:08:47 UTC (rev 286211) @@ -864,7 +864,6 @@ 33A920BD23DA2C6D000EBAF0 /* CommonSlowPathsInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 33A920BC23DA2C6D000EBAF0 /* CommonSlowPathsInlines.h */; settings = {ATTRIBUTES = (Private, ); }; }; 33B2A54722653481005A0F79 /* B3ValueInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FEC84FB1BDACDAC0080FF74 /* B3ValueInlines.h */; }; 33B2A548226543BF005A0F79 /* FTLLowerDFGToB3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEA0A04170513DB00BB722C /* FTLLowerDFGToB3.cpp */; }; - 371D842D17C98B6E00ECF994 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 371D842C17C98B6E00ECF994 /* libz.dylib */; }; 37C738D21EDB56E4003F2B0B /* ParseInt.h in Headers */ = {isa = PBXBuildFile; fileRef = 37C738D11EDB5672003F2B0B /* ParseInt.h */; settings = {ATTRIBUTES = (Private, ); }; }; 412952771D2CF6BC00E78B89 /* builtins_generate_internals_wrapper_header.py in Headers */ = {isa = PBXBuildFile; fileRef = 412952731D2CF6AC00E78B89 /* builtins_generate_internals_wrapper_header.py */; settings = {ATTRIBUTES = (Private, ); }; }; 412952781D2CF6BC00E78B89 /* builtins_generate_internals_wrapper_implementation.py in Headers */ = {isa = PBXBuildFile; fileRef = 412952741D2CF6AC00E78B89 /* builtins_generate_internals_wrapper_implementation.py */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -5674,7 +5673,6 @@ 932F5BD70822A1C700736975 /* libicucore.dylib in Frameworks */, 932F5BD60822A1C700736975 /* libobjc.dylib in Frameworks */, A8A4748E151A8306004123FF /* libWTF.a in Frameworks */, -371D842D17C98B6E00ECF994 /* libz.dylib in Frameworks */, A5098B041C16AA0200087797 /* Security.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286210] trunk/Source/WebCore
Title: [286210] trunk/Source/WebCore Revision 286210 Author eoca...@igalia.com Date 2021-11-29 06:32:21 -0800 (Mon, 29 Nov 2021) Log Message [GStreamer][WPE] Control on-disk multimedia buffering via the WPE_SHELL_DISABLE_MEDIA_DISK_CACHE environment variable https://bugs.webkit.org/show_bug.cgi?id=233492 Reviewed by Xabier Rodriguez-Calvar. Embedded platforms often don't have a persistent storage suitable for repetitive writes (eg: caching media files may wear out a flash drive, and RAM memory is scarce enough to use a tmpfs for caching). Those platforms need a way to disable on-disk caching. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Honor environment variable. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286209 => 286210) --- trunk/Source/WebCore/ChangeLog 2021-11-29 13:05:30 UTC (rev 286209) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 14:32:21 UTC (rev 286210) @@ -1,3 +1,16 @@ +2021-11-29 Enrique Ocaña González + +[GStreamer][WPE] Control on-disk multimedia buffering via the WPE_SHELL_DISABLE_MEDIA_DISK_CACHE environment variable +https://bugs.webkit.org/show_bug.cgi?id=233492 + +Reviewed by Xabier Rodriguez-Calvar. + +Embedded platforms often don't have a persistent storage suitable for repetitive writes (eg: caching +media files may wear out a flash drive, and RAM memory is scarce enough to use a tmpfs for caching). +Those platforms need a way to disable on-disk caching. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Honor environment variable. + 2021-11-29 Kimmo Kinnunen GPUP GraphicsContextGL creation failure cannot be detected Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (286209 => 286210) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp 2021-11-29 13:05:30 UTC (rev 286209) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp 2021-11-29 14:32:21 UTC (rev 286210) @@ -2595,6 +2595,22 @@ return finalResult; } +bool isMediaDiskCacheDisabled() +{ +static bool result = false; +#if PLATFORM(WPE) +static std::once_flag once; +std::call_once(once, []() { +String s(std::getenv("WPE_SHELL_DISABLE_MEDIA_DISK_CACHE")); +if (!s.isEmpty()) { +String value = s.stripWhiteSpace().convertToLowercaseWithoutLocale(); +result = (value == "1" || value == "t" || value == "true"); +} +}); +#endif +return result; +} + void MediaPlayerPrivateGStreamer::updateDownloadBufferingFlag() { if (!m_pipeline) @@ -2618,7 +2634,10 @@ return; } -bool shouldDownload = !m_isLiveStream && m_preload == MediaPlayer::Preload::Auto; +bool diskCacheDisabled = isMediaDiskCacheDisabled(); +GST_DEBUG_OBJECT(pipeline(), "Media on-disk cache is %s", (diskCacheDisabled) ? "disabled" : "enabled"); + +bool shouldDownload = !m_isLiveStream && m_preload == MediaPlayer::Preload::Auto && !diskCacheDisabled; if (shouldDownload) { GST_INFO_OBJECT(pipeline(), "Enabling on-disk buffering"); g_object_set(m_pipeline.get(), "flags", flags | flagDownload, nullptr); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286209] trunk/Source
Title: [286209] trunk/Source Revision 286209 Author commit-qu...@webkit.org Date 2021-11-29 05:05:30 -0800 (Mon, 29 Nov 2021) Log Message GPUP GraphicsContextGL creation failure cannot be detected https://bugs.webkit.org/show_bug.cgi?id=233517 Patch by Kimmo Kinnunen on 2021-11-29 Reviewed by Antti Koivisto. Source/WebCore: Before, concrete `GraphicsContextGL` instance was created with `GraphicsContextGL::create()` which would internally use host window as a factory if possible. If this produced null, it would create the "default" GraphicsContextGL subclass instance. With GPUP, it does not make sense to create "default" type, as that in-process contexts should never be used. It also does not make sense to create "default", as it's unclear what the "default" type is. Instead, use the host window, i.e. the chrome client, to always create the GraphicsContextGL instance to WebGL. If this fails, the WebGL should be unavailable. Remove GraphicsContextGL::create() as that is not useful. The callers should either explicitly specify what subclass to use, for example in testing, or use the polymorhpic factory (ChromeClient) which knows the policy. Fix a bug where GPUP WebGL would use in-process context if the lost context would be recreated. No new tests, a refactor. * PlatformMac.cmake: * WebCore.xcodeproj/project.pbxproj: * html/canvas/WebGLRenderingContextBase.cpp: (WebCore::WebGLRenderingContextBase::create): (WebCore::WebGLRenderingContextBase::maybeRestoreContext): * page/ChromeClient.h: (WebCore::ChromeClient::createGraphicsContextGL const): * platform/graphics/WebProcessGraphicsContextGL.h: Added. * platform/graphics/cocoa/WebProcessGraphicsContextGLCocoa.mm: (WebCore::createWebProcessGraphicsContextGL): (WebCore::GraphicsContextGLOpenGL::create): Deleted. * platform/graphics/opengl/GraphicsContextGLOpenGL.h: * platform/graphics/texmap/GraphicsContextGLTextureMapper.cpp: (WebCore::createWebProcessGraphicsContextGL): (WebCore::GraphicsContextGLOpenGL::create): Deleted. * platform/xr/openxr/PlatformXROpenXR.cpp: (PlatformXR::OpenXRDevice::initializeTrackingAndRendering): * testing/WebFakeXRDevice.cpp: (WebCore::SimulatedXRDevice::initializeTrackingAndRendering): Source/WebKit: If GPUP `GraphicsContextGL` creation fails, return nullptr instead of trying to create a in-process context. Enable `WebChromeClient::createGraphicsContextGL()` call for non-GPU process compilation, as the function is now always called. Returning nullptr signifies failure to create the context, not a signal to retry some other type. * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::createGraphicsContextGL const): * WebProcess/WebCoreSupport/WebChromeClient.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp trunk/Source/WebCore/page/ChromeClient.h trunk/Source/WebCore/platform/graphics/GraphicsContextGL.cpp trunk/Source/WebCore/platform/graphics/GraphicsContextGL.h trunk/Source/WebCore/platform/graphics/cocoa/WebProcessGraphicsContextGLCocoa.mm trunk/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGL.h trunk/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapper.cpp trunk/Source/WebCore/platform/xr/openxr/PlatformXROpenXR.cpp trunk/Source/WebCore/testing/WebFakeXRDevice.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h Diff Modified: trunk/Source/WebCore/ChangeLog (286208 => 286209) --- trunk/Source/WebCore/ChangeLog 2021-11-29 11:21:21 UTC (rev 286208) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 13:05:30 UTC (rev 286209) @@ -1,3 +1,46 @@ +2021-11-29 Kimmo Kinnunen + +GPUP GraphicsContextGL creation failure cannot be detected +https://bugs.webkit.org/show_bug.cgi?id=233517 + +Reviewed by Antti Koivisto. + +Before, concrete `GraphicsContextGL` instance was created with `GraphicsContextGL::create()` +which would internally use host window as a factory if possible. If this produced null, it would +create the "default" GraphicsContextGL subclass instance. +With GPUP, it does not make sense to create "default" type, as that in-process contexts should never +be used. +It also does not make sense to create "default", as it's unclear what the "default" type is. +Instead, use the host window, i.e. the chrome client, to always create the GraphicsContextGL instance +to WebGL. If this fails, the WebGL should be unavailable. +Remove GraphicsContextGL::create() as that is not useful. The callers should either +explicitly specify what subclass to use, for example in testing, or use the polymorhpic factory +(ChromeClient) which knows the policy. + +Fix a bug where GPUP WebGL would use in-process context if the lost context
[webkit-changes] [286208] trunk
Title: [286208] trunk Revision 286208 Author ange...@igalia.com Date 2021-11-29 03:21:21 -0800 (Mon, 29 Nov 2021) Log Message Fix ATOMICS_REQUIRE_LIBATOMIC testcase on 32-bits https://bugs.webkit.org/show_bug.cgi?id=233551 Unreviewed build fix. There's a syntax error when compiling the test program on 32-bits. This was not an issue on ARM as atomics are built in on that platform, but broke the MIPS build. * Source/cmake/WebKitCompilerFlags.cmake: Modified Paths trunk/ChangeLog trunk/Source/cmake/WebKitCompilerFlags.cmake Diff Modified: trunk/ChangeLog (286207 => 286208) --- trunk/ChangeLog 2021-11-29 10:29:38 UTC (rev 286207) +++ trunk/ChangeLog 2021-11-29 11:21:21 UTC (rev 286208) @@ -1,3 +1,16 @@ +2021-11-29 Angelos Oikonomopoulos + +Fix ATOMICS_REQUIRE_LIBATOMIC testcase on 32-bits +https://bugs.webkit.org/show_bug.cgi?id=233551 + +Unreviewed build fix. + +There's a syntax error when compiling the test program +on 32-bits. This was not an issue on ARM as atomics are +built in on that platform, but broke the MIPS build. + +* Source/cmake/WebKitCompilerFlags.cmake: + 2021-11-29 Nikolas Zimmermann [LBSE] Add runtime flag for Layer-based SVG engine (LBSE) Modified: trunk/Source/cmake/WebKitCompilerFlags.cmake (286207 => 286208) --- trunk/Source/cmake/WebKitCompilerFlags.cmake 2021-11-29 10:29:38 UTC (rev 286207) +++ trunk/Source/cmake/WebKitCompilerFlags.cmake 2021-11-29 11:21:21 UTC (rev 286208) @@ -363,7 +363,11 @@ #endif uint64_t z = 42; bool l = compare_and_swap_uint64_weak(, 42, 56); -int result = (j || k || l) ? 0 : 1; +int result = (j || +#if CPU(ADDRESS64) + k || +#endif + l) ? 0 : 1; return result; } ") ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286207] trunk
Title: [286207] trunk Revision 286207 Author svil...@igalia.com Date 2021-11-29 02:29:38 -0800 (Mon, 29 Nov 2021) Log Message [css-flexbox] Do not shrink tables bellow their intrinsic sizes https://bugs.webkit.org/show_bug.cgi?id=232383 Reviewed by Manuel Rego Casasnovas. Source/WebCore: Flex layout algorithm uses the flex items min|max sizes to compute the hypothetical main size which will be used to clamp the size of the items when flexed. In the case of tables as flex items, we were using the min-size straight away whenever that was definite. However we cannot do that because tables must not shrink bellow their intrinsic sizes. That's why we should select the maximum of the intrinsic size and the min-size. This fixes a WPT test covering this case. * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::computeFlexItemMinMaxSizes): Do not select a min-size smaller than the table intrinsic size in the main axis. LayoutTests: * TestExpectations: Unskip table-as-item-fixed-min-width-3.html which works fine now. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286206 => 286207) --- trunk/LayoutTests/ChangeLog 2021-11-29 10:00:51 UTC (rev 286206) +++ trunk/LayoutTests/ChangeLog 2021-11-29 10:29:38 UTC (rev 286207) @@ -1,5 +1,14 @@ 2021-10-27 Sergio Villar Senin +[css-flexbox] Do not shrink tables bellow their intrinsic sizes +https://bugs.webkit.org/show_bug.cgi?id=232383 + +Reviewed by Manuel Rego Casasnovas. + +* TestExpectations: Unskip table-as-item-fixed-min-width-3.html which works fine now. + +2021-10-27 Sergio Villar Senin + [css-flexbox] Add support for replaced elements with intrinsic ratio and no intrinsic size https://bugs.webkit.org/show_bug.cgi?id=231952 Modified: trunk/LayoutTests/TestExpectations (286206 => 286207) --- trunk/LayoutTests/TestExpectations 2021-11-29 10:00:51 UTC (rev 286206) +++ trunk/LayoutTests/TestExpectations 2021-11-29 10:29:38 UTC (rev 286207) @@ -4234,7 +4234,6 @@ webkit.org/b/221472 imported/w3c/web-platform-tests/css/css-flexbox/abspos/flex-abspos-staticpos-margin-002.html [ ImageOnlyFailure ] # Tables as flex items. -webkit.org/b/221473 imported/w3c/web-platform-tests/css/css-flexbox/table-as-item-fixed-min-width-3.html [ ImageOnlyFailure ] webkit.org/b/221473 imported/w3c/web-platform-tests/css/css-flexbox/table-as-item-inflexible-in-column-1.html [ ImageOnlyFailure ] webkit.org/b/221473 imported/w3c/web-platform-tests/css/css-flexbox/table-as-item-inflexible-in-column-2.html [ ImageOnlyFailure ] webkit.org/b/221473 imported/w3c/web-platform-tests/css/css-flexbox/table-as-item-inflexible-in-row-2.html [ ImageOnlyFailure ] Modified: trunk/Source/WebCore/ChangeLog (286206 => 286207) --- trunk/Source/WebCore/ChangeLog 2021-11-29 10:00:51 UTC (rev 286206) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 10:29:38 UTC (rev 286207) @@ -1,5 +1,24 @@ 2021-10-27 Sergio Villar Senin +[css-flexbox] Do not shrink tables bellow their intrinsic sizes +https://bugs.webkit.org/show_bug.cgi?id=232383 + +Reviewed by Manuel Rego Casasnovas. + +Flex layout algorithm uses the flex items min|max sizes to compute the hypothetical main size which +will be used to clamp the size of the items when flexed. In the case of tables as flex items, we were +using the min-size straight away whenever that was definite. However we cannot do that because tables +must not shrink bellow their intrinsic sizes. That's why we should select the maximum of the intrinsic +size and the min-size. + +This fixes a WPT test covering this case. + +* rendering/RenderFlexibleBox.cpp: +(WebCore::RenderFlexibleBox::computeFlexItemMinMaxSizes): Do not select a min-size smaller than the +table intrinsic size in the main axis. + +2021-10-27 Sergio Villar Senin + [css-flexbox] Add support for replaced elements with intrinsic ratio and no intrinsic size https://bugs.webkit.org/show_bug.cgi?id=231952 Modified: trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp (286206 => 286207) --- trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp 2021-11-29 10:00:51 UTC (rev 286206) +++ trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp 2021-11-29 10:29:38 UTC (rev 286207) @@ -1323,8 +1323,13 @@ Length min = mainSizeLengthForChild(MinSize, child); // Intrinsic sizes in child's block axis are handled by the min-size:auto code path. -if (min.isSpecified() || (min.isIntrinsic() && mainAxisIsChildInlineAxis(child))) -return { computeMainAxisExtentForChild(child, MinSize, min).value_or(0_lu), maxExtent.value_or(LayoutUnit::max()) }; +if (min.isSpecified() || (min.isIntrinsic() && mainAxisIsChildInlineAxis(child))) {
[webkit-changes] [286206] trunk
Title: [286206] trunk Revision 286206 Author svil...@igalia.com Date 2021-11-29 02:00:51 -0800 (Mon, 29 Nov 2021) Log Message [css-flexbox] Add support for replaced elements with intrinsic ratio and no intrinsic size https://bugs.webkit.org/show_bug.cgi?id=231952 Reviewed by Manuel Rego Casasnovas. Source/WebCore: It might be the case that replaced elements have intrinsic aspect ratio but no intrinsic dimensions. Actually that's quite common for SVGs for example. We're incorrectly assuming that flex items with no intrinsic dimensions didn't have intrinsic aspect ratios which is wrong. Added new checks that are able to detect those cases were we have an intrinsic aspect ratio even though there are no intrinsic dimensions. * rendering/RenderFlexibleBox.cpp: (WebCore::isRenderReplacedWithIntrinsicAspectRatio): (WebCore::childHasAspectRatio): Consider replaced elements with intrinsic ratios and no intrinsic dimensions. (WebCore::RenderFlexibleBox::computeMainSizeFromAspectRatioUsing const): Let replaced elements compute the aspect ratio by themselves. (WebCore::RenderFlexibleBox::childHasComputableAspectRatio const): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::computeIntrinsicAspectRatio const): New method that computes the aspect ratio for replaced elements. * rendering/RenderReplaced.h: LayoutTests: * TestExpectations: Unskipped a test case that is now passing. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp trunk/Source/WebCore/rendering/RenderReplaced.cpp trunk/Source/WebCore/rendering/RenderReplaced.h Diff Modified: trunk/LayoutTests/ChangeLog (286205 => 286206) --- trunk/LayoutTests/ChangeLog 2021-11-29 09:41:17 UTC (rev 286205) +++ trunk/LayoutTests/ChangeLog 2021-11-29 10:00:51 UTC (rev 286206) @@ -1,3 +1,13 @@ +2021-10-27 Sergio Villar Senin + +[css-flexbox] Add support for replaced elements with intrinsic ratio and no intrinsic size +https://bugs.webkit.org/show_bug.cgi?id=231952 + + +Reviewed by Manuel Rego Casasnovas. + +* TestExpectations: Unskipped a test case that is now passing. + 2021-11-28 Matt Woodrow Serialize computed style of background shorthand with multiple layers correctly. Modified: trunk/LayoutTests/TestExpectations (286205 => 286206) --- trunk/LayoutTests/TestExpectations 2021-11-29 09:41:17 UTC (rev 286205) +++ trunk/LayoutTests/TestExpectations 2021-11-29 10:00:51 UTC (rev 286206) @@ -4242,7 +4242,6 @@ # SVGs as flex items. webkit.org/b/221474 imported/w3c/web-platform-tests/css/css-flexbox/svg-root-as-flex-item-002.html [ ImageOnlyFailure ] -webkit.org/b/221474 imported/w3c/web-platform-tests/css/css-flexbox/svg-root-as-flex-item-003.html [ ImageOnlyFailure ] # The test works fine but the expected result fails due to a missing layout. webkit.org/b/221468 imported/w3c/web-platform-tests/css/css-flexbox/flexbox-align-self-horiz-002.xhtml [ ImageOnlyFailure ] Modified: trunk/Source/WebCore/ChangeLog (286205 => 286206) --- trunk/Source/WebCore/ChangeLog 2021-11-29 09:41:17 UTC (rev 286205) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 10:00:51 UTC (rev 286206) @@ -1,3 +1,31 @@ +2021-10-27 Sergio Villar Senin + +[css-flexbox] Add support for replaced elements with intrinsic ratio and no intrinsic size +https://bugs.webkit.org/show_bug.cgi?id=231952 + + +Reviewed by Manuel Rego Casasnovas. + +It might be the case that replaced elements have intrinsic aspect ratio but no +intrinsic dimensions. Actually that's quite common for SVGs for example. We're +incorrectly assuming that flex items with no intrinsic dimensions didn't have +intrinsic aspect ratios which is wrong. + +Added new checks that are able to detect those cases were we have an intrinsic +aspect ratio even though there are no intrinsic dimensions. + +* rendering/RenderFlexibleBox.cpp: +(WebCore::isRenderReplacedWithIntrinsicAspectRatio): +(WebCore::childHasAspectRatio): +Consider replaced elements with intrinsic ratios and no intrinsic dimensions. +(WebCore::RenderFlexibleBox::computeMainSizeFromAspectRatioUsing const): +Let replaced elements compute the aspect ratio by themselves. +(WebCore::RenderFlexibleBox::childHasComputableAspectRatio const): +* rendering/RenderReplaced.cpp: +(WebCore::RenderReplaced::computeIntrinsicAspectRatio const): New method that +computes the aspect ratio for replaced elements. +* rendering/RenderReplaced.h: + 2021-11-29 Kimmo Kinnunen GraphicsContextGLANGLE.cpp has platform specific code Modified: trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp (286205 => 286206) --- trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp 2021-11-29 09:41:17 UTC (rev 286205) +++
[webkit-changes] [286205] trunk/Source/WebCore
Title: [286205] trunk/Source/WebCore Revision 286205 Author commit-qu...@webkit.org Date 2021-11-29 01:41:17 -0800 (Mon, 29 Nov 2021) Log Message GraphicsContextGLANGLE.cpp has platform specific code https://bugs.webkit.org/show_bug.cgi?id=233515 Patch by Kimmo Kinnunen on 2021-11-29 Reviewed by Antti Koivisto. GraphicsContextGLANGLE.cpp has platform specific code for modifying the display buffer backing storage (IOSurface on Cocoa, normal texture on TextureMapper variants). This modification should be done through the reshapeDisplayBufferBacking method call for all implementations, so that in the future GraphicsContextGLOpenGL ANGLE variant can be renamed GraphicsContextGLANGLE and still invoke that functionality. No new tests, refactor. * platform/graphics/angle/GraphicsContextGLANGLE.cpp: (WebCore::GraphicsContextGLOpenGL::reshapeFBOs): (WebCore::GraphicsContextGLOpenGL::platformReleaseThreadResources): Deleted. * platform/graphics/cocoa/GraphicsContextGLCocoa.mm: (WebCore::GraphicsContextGLOpenGL::bindDisplayBufferBacking): * platform/graphics/opengl/GraphicsContextGLOpenGL.h: * platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp: Added. (WebCore::GraphicsContextGLOpenGL::reshapeDisplayBufferBacking): (WebCore::GraphicsContextGLOpenGL::platformReleaseThreadResources): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/TextureMapper.cmake trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp trunk/Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm trunk/Source/WebCore/platform/graphics/nicosia/texmap/NicosiaGCGLANGLELayer.cpp trunk/Source/WebCore/platform/graphics/nicosia/texmap/NicosiaGCGLANGLELayer.h trunk/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGL.h trunk/Source/WebCore/platform/graphics/texmap/ANGLEContext.cpp trunk/Source/WebCore/platform/graphics/texmap/ANGLEContext.h trunk/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGCGLPlatformLayer.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGCGLPlatformLayer.h Added Paths trunk/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286204 => 286205) --- trunk/Source/WebCore/ChangeLog 2021-11-29 08:27:04 UTC (rev 286204) +++ trunk/Source/WebCore/ChangeLog 2021-11-29 09:41:17 UTC (rev 286205) @@ -1,3 +1,30 @@ +2021-11-29 Kimmo Kinnunen + +GraphicsContextGLANGLE.cpp has platform specific code +https://bugs.webkit.org/show_bug.cgi?id=233515 + +Reviewed by Antti Koivisto. + +GraphicsContextGLANGLE.cpp has platform specific code for modifying +the display buffer backing storage (IOSurface on Cocoa, +normal texture on TextureMapper variants). +This modification should be done through the reshapeDisplayBufferBacking +method call for all implementations, so that in the future +GraphicsContextGLOpenGL ANGLE variant can be renamed GraphicsContextGLANGLE +and still invoke that functionality. + +No new tests, refactor. + +* platform/graphics/angle/GraphicsContextGLANGLE.cpp: +(WebCore::GraphicsContextGLOpenGL::reshapeFBOs): +(WebCore::GraphicsContextGLOpenGL::platformReleaseThreadResources): Deleted. +* platform/graphics/cocoa/GraphicsContextGLCocoa.mm: +(WebCore::GraphicsContextGLOpenGL::bindDisplayBufferBacking): +* platform/graphics/opengl/GraphicsContextGLOpenGL.h: +* platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp: Added. +(WebCore::GraphicsContextGLOpenGL::reshapeDisplayBufferBacking): +(WebCore::GraphicsContextGLOpenGL::platformReleaseThreadResources): + 2021-11-28 Said Abou-Hallawa [GPU Process] Apply the filter to an ImageBuffer through GraphicsContext and ImageBuffer Modified: trunk/Source/WebCore/platform/TextureMapper.cmake (286204 => 286205) --- trunk/Source/WebCore/platform/TextureMapper.cmake 2021-11-29 08:27:04 UTC (rev 286204) +++ trunk/Source/WebCore/platform/TextureMapper.cmake 2021-11-29 09:41:17 UTC (rev 286205) @@ -10,6 +10,7 @@ platform/graphics/texmap/BitmapTexture.cpp platform/graphics/texmap/BitmapTexturePool.cpp platform/graphics/texmap/GraphicsContextGLTextureMapper.cpp +platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp platform/graphics/texmap/TextureMapper.cpp platform/graphics/texmap/TextureMapperBackingStore.cpp platform/graphics/texmap/TextureMapperFPSCounter.cpp Modified: trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp (286204 => 286205) --- trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-11-29 08:27:04 UTC (rev 286204) +++ trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp 2021-11-29 09:41:17 UTC (rev 286205) @@ -76,6 +76,47 @@
[webkit-changes] [286204] trunk
Title: [286204] trunk Revision 286204 Author commit-qu...@webkit.org Date 2021-11-29 00:27:04 -0800 (Mon, 29 Nov 2021) Log Message [LBSE] Add runtime flag for Layer-based SVG engine (LBSE) https://bugs.webkit.org/show_bug.cgi?id=233211 Patch by Nikolas Zimmermann on 2021-11-29 Reviewed by Sam Weinig. Add build option ('build-webkit --(no-)layer-based-svg-engine') and runtime flag ('LayerBasedSVGEngineEnabled' in LBSE enabled builds) to switch between the SVG engines. The actual SVG code changes will follow in subsequent patches, this just adds the infrastructure for LBSE. .: * Source/cmake/OptionsFTW.cmake: * Source/cmake/OptionsGTK.cmake: * Source/cmake/OptionsMac.cmake: * Source/cmake/OptionsPlayStation.cmake: * Source/cmake/OptionsWPE.cmake: * Source/cmake/OptionsWin.cmake: * Source/cmake/WebKitFeatures.cmake: Source/WTF: * Scripts/Preferences/WebPreferencesInternal.yaml: Add 'LayerBasedSVGEngineEnabled' option. * wtf/PlatformEnable.h: Disable LBSE by default. (Toggable with build settings in CMake-based builds) * wtf/PlatformEnableCocoa.h: Enable for PLATFORM(MAC). Tools: * Scripts/webkitperl/FeatureList.pm: Add mapping from 'layer-based-svg-engine' -> 'ENABLE_LAYER_BASED_SVG_ENGINE'. Modified Paths trunk/ChangeLog trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml trunk/Source/WTF/wtf/PlatformEnable.h trunk/Source/WTF/wtf/PlatformEnableCocoa.h trunk/Source/cmake/OptionsFTW.cmake trunk/Source/cmake/OptionsGTK.cmake trunk/Source/cmake/OptionsMac.cmake trunk/Source/cmake/OptionsPlayStation.cmake trunk/Source/cmake/OptionsWPE.cmake trunk/Source/cmake/OptionsWin.cmake trunk/Source/cmake/WebKitFeatures.cmake trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitperl/FeatureList.pm Diff Modified: trunk/ChangeLog (286203 => 286204) --- trunk/ChangeLog 2021-11-29 06:08:27 UTC (rev 286203) +++ trunk/ChangeLog 2021-11-29 08:27:04 UTC (rev 286204) @@ -1,3 +1,26 @@ +2021-11-29 Nikolas Zimmermann + +[LBSE] Add runtime flag for Layer-based SVG engine (LBSE) +https://bugs.webkit.org/show_bug.cgi?id=233211 + + +Reviewed by Sam Weinig. + +Add build option ('build-webkit --(no-)layer-based-svg-engine') and +runtime flag ('LayerBasedSVGEngineEnabled' in LBSE enabled builds) to +switch between the SVG engines. + +The actual SVG code changes will follow in subsequent patches, +this just adds the infrastructure for LBSE. + +* Source/cmake/OptionsFTW.cmake: +* Source/cmake/OptionsGTK.cmake: +* Source/cmake/OptionsMac.cmake: +* Source/cmake/OptionsPlayStation.cmake: +* Source/cmake/OptionsWPE.cmake: +* Source/cmake/OptionsWin.cmake: +* Source/cmake/WebKitFeatures.cmake: + 2021-11-28 Matt Woodrow Add mattwoodrow to contributors.json Modified: trunk/Source/WTF/ChangeLog (286203 => 286204) --- trunk/Source/WTF/ChangeLog 2021-11-29 06:08:27 UTC (rev 286203) +++ trunk/Source/WTF/ChangeLog 2021-11-29 08:27:04 UTC (rev 286204) @@ -1,3 +1,22 @@ +2021-11-29 Nikolas Zimmermann + +[LBSE] Add runtime flag for Layer-based SVG engine (LBSE) +https://bugs.webkit.org/show_bug.cgi?id=233211 + + +Reviewed by Sam Weinig. + +Add build option ('build-webkit --(no-)layer-based-svg-engine') and +runtime flag ('LayerBasedSVGEngineEnabled' in LBSE enabled builds) to +switch between the SVG engines. + +The actual SVG code changes will follow in subsequent patches, +this just adds the infrastructure for LBSE. + +* Scripts/Preferences/WebPreferencesInternal.yaml: Add 'LayerBasedSVGEngineEnabled' option. +* wtf/PlatformEnable.h: Disable LBSE by default. (Toggable with build settings in CMake-based builds) +* wtf/PlatformEnableCocoa.h: Enable for PLATFORM(MAC). + 2021-11-19 Antoine Quint [Model] add audio support Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml (286203 => 286204) --- trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-11-29 06:08:27 UTC (rev 286203) +++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-11-29 08:27:04 UTC (rev 286204) @@ -445,6 +445,20 @@ WebKit: default: false +LayerBasedSVGEngineEnabled: + type: bool + humanReadableName: "Layer-based SVG Engine (LBSE)" + humanReadableDescription: "Enable next-generation layer-based SVG Engine (LBSE)" + condition: ENABLE(LAYER_BASED_SVG_ENGINE) + webcoreOnChange: setNeedsRelayoutAllFrames + defaultValue: +WebCore: + default: false +WebKitLegacy: + default: false +WebKit: + default: false + LayoutFormattingContextEnabled: type: bool humanReadableName: "Full next-generation layout (LFC)" Modified: trunk/Source/WTF/wtf/PlatformEnable.h (286203 => 286204) --- trunk/Source/WTF/wtf/PlatformEnable.h 2021-11-29 06:08:27 UTC (rev 286203) +++