[webkit-changes] [WebKit/WebKit] eff0d2: Implement white-space-collapse & text-wrap as long...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: eff0d22edb04a7bc761bc1fb0428abef8ccbb1ba https://github.com/WebKit/WebKit/commit/eff0d22edb04a7bc761bc1fb0428abef8ccbb1ba Author: David Choi Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt M LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer.html M LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/white-space-shorthand-text-wrap-expected.txt M LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/white-space-expected.txt M LayoutTests/imported/w3c/web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/white-space.html M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt M LayoutTests/svg/css/getComputedStyle-basic-expected.txt M Source/WebCore/animation/CSSPropertyAnimation.cpp M Source/WebCore/css/CSSComputedStyleDeclaration.cpp M Source/WebCore/css/CSSPrimitiveValueMappings.h M Source/WebCore/css/CSSProperties.json M Source/WebCore/css/ComputedStyleExtractor.cpp M Source/WebCore/css/ComputedStyleExtractor.h M Source/WebCore/css/ShorthandSerializer.cpp M Source/WebCore/css/parser/CSSParserContext.cpp M Source/WebCore/css/parser/CSSPropertyParser.cpp M Source/WebCore/css/parser/CSSPropertyParser.h M Source/WebCore/editing/EditingStyle.cpp M Source/WebCore/html/HTMLInputElement.cpp M Source/WebCore/html/HTMLPreElement.cpp M Source/WebCore/html/HTMLTableCellElement.cpp M Source/WebCore/html/HTMLTextAreaElement.cpp M Source/WebCore/html/track/TextTrackCueGeneric.cpp M Source/WebCore/html/track/VTTCue.cpp M Source/WebCore/rendering/RenderListItem.cpp M Source/WebCore/rendering/RenderTheme.cpp M Source/WebCore/rendering/RenderThemeMac.mm M Source/WebCore/rendering/style/RenderStyle.cpp M Source/WebCore/rendering/style/RenderStyle.h M Source/WebCore/rendering/style/RenderStyleConstants.cpp M Source/WebCore/rendering/style/RenderStyleInlines.h M Source/WebCore/style/PropertyAllowlist.cpp M Source/WebCore/style/StyleAdjuster.cpp M Source/WebCore/svg/SVGTextContentElement.cpp Log Message: --- Implement white-space-collapse & text-wrap as longhands of white-space https://bugs.webkit.org/show_bug.cgi?id=256927 rdar://109486221 Reviewed by Tim Nguyen. This commit lays the groundwork for future work on white-space-collapse and text-wrap. White-space is now parsed as a shorthand property, and the longhand values for white-space (white-space-collapse and text-wrap) are set accordingly. The whiteSpace value in m_inheritedFlags in RenderStyle has been removed. The RenderStyle.whiteSpace() method still exists, but it uses the two longhand variables above to reconstruct the original value of whiteSpace. The setWhiteSpace method has been removed, and any existing references to setWhiteSpace have been replaced with the corresponding calls to setWhiteSpaceCollapse and setTextWrap. Further work needs to be done to properly integrate the white-space-collapse and text-wrap longhands into WebKit. Currently, this commit preserves the original behavior of white-space processing, but it assumes that white-space-collapse and text-wrap only take on the combinations of values that are achievable via the shorthand values of white-space. (Otherwise, the whiteSpace getter in RenderStyle cannot reconstruct the 'original' value of white-space.) Thus, the codebase must replace existing references to RenderStyle.whiteSpace() with appropriate references to RenderStyle.whiteSpaceCollapse() and RenderStyle.textWrap() before individually modifying the white-space-collapse and text-wrap properties. * LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt: * LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all
[webkit-changes] [WebKit/WebKit] f011ab: Cache NoiseInjectionHashSalt in CanvasBase
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f011ab9a032634fb8820735ab22bef1c893da181 https://github.com/WebKit/WebKit/commit/f011ab9a032634fb8820735ab22bef1c893da181 Author: Matthew Finkel Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/html/CanvasBase.cpp M Source/WebCore/html/CanvasBase.h M Source/WebCore/html/CustomPaintCanvas.cpp M Source/WebCore/html/HTMLCanvasElement.cpp M Source/WebCore/html/OffscreenCanvas.cpp Log Message: --- Cache NoiseInjectionHashSalt in CanvasBase https://bugs.webkit.org/show_bug.cgi?id=258176 rdar://109862698 Reviewed by Wenson Hsieh. This change avoids calling ScriptExecutionContext::noiseInjectionHashSalt() in hot code paths. Caching the value is safe because it should never change between calls, and even if we did, using an old value wouldn't meaningfully reduce the protection. This change is covered by existing tests. * Source/WebCore/html/CanvasBase.cpp: (WebCore::CanvasBase::CanvasBase): (WebCore::CanvasBase::~CanvasBase): (WebCore::CanvasBase::makeRenderingResultsAvailable): (WebCore::CanvasBase::shouldInjectNoiseBeforeReadback const): (WebCore::CanvasBase::postProcessPixelBufferResults const): * Source/WebCore/html/CanvasBase.h: * Source/WebCore/html/CustomPaintCanvas.cpp: (WebCore::CustomPaintCanvas::CustomPaintCanvas): * Source/WebCore/html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::HTMLCanvasElement): * Source/WebCore/html/OffscreenCanvas.cpp: (WebCore::OffscreenCanvas::OffscreenCanvas): Canonical link: https://commits.webkit.org/265266@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] cd54bf: _WKFrameTreeNode._processIdentifier should be the ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: cd54bfb045ddd762971c228873aa011ba17a1279 https://github.com/WebKit/WebKit/commit/cd54bfb045ddd762971c228873aa011ba17a1279 Author: Alex Christensen Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebKit/Shared/FrameInfoData.h M Source/WebKit/Shared/FrameInfoData.serialization.in M Source/WebKit/UIProcess/API/APIFrameInfo.h M Source/WebKit/UIProcess/API/APIFrameTreeNode.h M Source/WebKit/UIProcess/API/Cocoa/WKFrameInfo.mm M Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.mm M Source/WebKit/UIProcess/Cocoa/UIDelegate.mm M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp M Source/WebKit/WebProcess/WebPage/WebFrame.cpp Log Message: --- _WKFrameTreeNode._processIdentifier should be the pid of the process, not the frame https://bugs.webkit.org/show_bug.cgi?id=258088 rdar://110796103 Reviewed by Chris Dumez. This makes WKWebView._frameTrees more useful for site isolation tests. This allows it to see what process a RemotePageProxy is in, which isn't the same as a WebFrameProxy's current process. Current use of the test SPI is unaffected. * Source/WebKit/Shared/FrameInfoData.h: * Source/WebKit/Shared/FrameInfoData.serialization.in: * Source/WebKit/UIProcess/API/APIFrameInfo.h: * Source/WebKit/UIProcess/API/APIFrameTreeNode.h: * Source/WebKit/UIProcess/API/Cocoa/WKFrameInfo.mm: (-[WKFrameInfo _processIdentifier]): * Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.mm: (-[_WKFrameTreeNode _processIdentifier]): * Source/WebKit/WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::info const): Canonical link: https://commits.webkit.org/265265@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] f53e20: Resync web-platform-tests/webaudio from upstream
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f53e20e3c782e18c9856c984e7065db487c09333 https://github.com/WebKit/WebKit/commit/f53e20e3c782e18c9856c984e7065db487c09333 Author: Chris Dumez Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/imported/w3c/resources/resource-files.json M LayoutTests/imported/w3c/web-platform-tests/webaudio/resources/audit-util.js M LayoutTests/imported/w3c/web-platform-tests/webaudio/resources/audit.js A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/crashtests/copyFromChannel-bufferOffset-1.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/crashtests/copyToChannel-bufferOffset-1.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/crashtests/w3c-import.log M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/active-processing.https-expected.txt M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/active-processing.https.html M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-constructor.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-constructor.https.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-setsinkid.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-setsinkid.https.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-state-change.https-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-state-change.https.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-suspend-resume-close-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/audiocontext-suspend-resume-close.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/crashtests/currentTime-after-discard.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/crashtests/w3c-import.log A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/suspend-with-navigation-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/suspend-with-navigation.html M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/w3c-import.log A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-denormals.https.window-expected.txt A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-denormals.https.window.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-denormals.https.window.js M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https-expected.txt M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html A LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/denormal-test-processor.js M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/error-processor.js M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/w3c-import.log M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/w3c-import.log M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/active-processing.https-expected.txt M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/active-processing.https.html M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/active-processing.https-expected.txt M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/active-processing.https.html M LayoutTests/imported/w
[webkit-changes] [WebKit/WebKit] 6954ce: Make ISO parse() methods testable
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 6954cec8768da448615eb6b380081eb1a27b8d06 https://github.com/WebKit/WebKit/commit/6954cec8768da448615eb6b380081eb1a27b8d06 Author: David Kilzer Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/graphics/avfoundation/ISOFairPlayStreamingPsshBox.cpp M Source/WebCore/platform/graphics/avfoundation/ISOFairPlayStreamingPsshBox.h M Source/WebCore/platform/graphics/iso/ISOOriginalFormatBox.cpp M Source/WebCore/platform/graphics/iso/ISOOriginalFormatBox.h M Source/WebCore/platform/graphics/iso/ISOProtectionSchemeInfoBox.cpp M Source/WebCore/platform/graphics/iso/ISOProtectionSchemeInfoBox.h M Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.cpp M Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.h M Source/WebCore/platform/graphics/iso/ISOSchemeInformationBox.cpp M Source/WebCore/platform/graphics/iso/ISOSchemeInformationBox.h M Source/WebCore/platform/graphics/iso/ISOSchemeTypeBox.cpp M Source/WebCore/platform/graphics/iso/ISOSchemeTypeBox.h M Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.cpp M Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.h M Source/WebCore/platform/graphics/iso/ISOVTTCue.h Log Message: --- Make ISO parse() methods testable https://bugs.webkit.org/show_bug.cgi?id=258155 Reviewed by Eric Carlson. Export constructor, destructor and parse() methods to make them testable. If the whole class is exported, implement default constructor and destructor in the source file. * Source/WebCore/platform/graphics/avfoundation/ISOFairPlayStreamingPsshBox.cpp: * Source/WebCore/platform/graphics/avfoundation/ISOFairPlayStreamingPsshBox.h: * Source/WebCore/platform/graphics/iso/ISOOriginalFormatBox.cpp: * Source/WebCore/platform/graphics/iso/ISOOriginalFormatBox.h: * Source/WebCore/platform/graphics/iso/ISOProtectionSchemeInfoBox.cpp: * Source/WebCore/platform/graphics/iso/ISOProtectionSchemeInfoBox.h: * Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.cpp: * Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.h: * Source/WebCore/platform/graphics/iso/ISOSchemeInformationBox.cpp: * Source/WebCore/platform/graphics/iso/ISOSchemeInformationBox.h: * Source/WebCore/platform/graphics/iso/ISOSchemeTypeBox.cpp: * Source/WebCore/platform/graphics/iso/ISOSchemeTypeBox.h: * Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.cpp: * Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.h: * Source/WebCore/platform/graphics/iso/ISOVTTCue.h: Canonical link: https://commits.webkit.org/265263@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] dfb38f: [JSC] Make FTL loadString etc. consistent with DFG
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dfb38f31acdbb77dbcdcf09cadcaa3b4c1458125 https://github.com/WebKit/WebKit/commit/dfb38f31acdbb77dbcdcf09cadcaa3b4c1458125 Author: Yusuke Suzuki Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp Log Message: --- [JSC] Make FTL loadString etc. consistent with DFG https://bugs.webkit.org/show_bug.cgi?id=258227 rdar://110924756 Reviewed by Mark Lam and Justin Michaud. Align operation with DFG's branchIfString etc. consistently. * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): Canonical link: https://commits.webkit.org/265262@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c5df08: [JSC] Cache last YearMonthDay computation results ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c5df085fea8f416379d2aca2557a82f77997535e https://github.com/WebKit/WebKit/commit/c5df085fea8f416379d2aca2557a82f77997535e Author: Yusuke Suzuki Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/JavaScriptCore/runtime/JSDateMath.cpp M Source/JavaScriptCore/runtime/JSDateMath.h M Source/WTF/wtf/GregorianDateTime.cpp M Source/WTF/wtf/GregorianDateTime.h Log Message: --- [JSC] Cache last YearMonthDay computation results in DateCache https://bugs.webkit.org/show_bug.cgi?id=258224 rdar://110923070 Reviewed by Justin Michaud. yearMonthDayFromDays is very costly operation, so DateCache should cache the last result based on the days. This patch adds a cache inspired from V8's cache. We will further extend our DateCache to purge Ref next. * Source/JavaScriptCore/runtime/JSDateMath.cpp: (JSC::DateCache::yearMonthDayFromDaysWithCache): (JSC::DateCache::msToGregorianDateTime): (JSC::DateCache::resetIfNecessarySlow): * Source/JavaScriptCore/runtime/JSDateMath.h: * Source/WTF/wtf/GregorianDateTime.cpp: (WTF::GregorianDateTime::GregorianDateTime): * Source/WTF/wtf/GregorianDateTime.h: Canonical link: https://commits.webkit.org/265261@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] cf81ca: Micro-optimize Path IPC serialization / deserializ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: cf81ca21f2828619acff44933c6515551b50c3be https://github.com/WebKit/WebKit/commit/cf81ca21f2828619acff44933c6515551b50c3be Author: Chris Dumez Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/graphics/Path.cpp M Source/WebCore/platform/graphics/Path.h M Source/WebCore/platform/graphics/cairo/PathCairo.cpp M Source/WebCore/platform/graphics/cg/PathCG.cpp M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in Log Message: --- Micro-optimize Path IPC serialization / deserialization https://bugs.webkit.org/show_bug.cgi?id=258220 Reviewed by Wenson Hsieh. Micro-optimize Path IPC serialization / deserialization: 1. The IPC encoder was first serializing inline data and falling back to calling apply() if the data isn't inline. However, apply() would check again for various types on inline data before calling applySlowCase() for the non-inline data. To optimize this, I renamed applySlowCase() to applyIgnoringInlineData() and call it directly from the IPC encoder. 2. To detect the end of the path during IPC deserialization, the decoder relied on serializing the type of each path Element as a std::optional and we would know we reached the end when decoding std::nullopt. This was a bit inefficient was it would encode first a boolean (std::optional is set or not) and then a uint8_t (actual enum value) for each path Element. To optimize this, we now encode the end of the path as an enum value so that we only ending a uint8_t for each path element type. * Source/WebCore/platform/graphics/Path.cpp: (WebCore::Path::apply const): * Source/WebCore/platform/graphics/Path.h: (WebCore::Path::encode const): (WebCore::Path::decode): (WebCore::EncodedPathElementType::EncodedPathElementType): Deleted. (WebCore::EncodedPathElementType::isEndOfPath const): Deleted. (WebCore::EncodedPathElementType::isValidPathElementType const): Deleted. (WebCore::EncodedPathElementType::type const): Deleted. * Source/WebCore/platform/graphics/cairo/PathCairo.cpp: (WebCore::Path::applyIgnoringInlineData const): (WebCore::Path::applySlowCase const): Deleted. * Source/WebCore/platform/graphics/cg/PathCG.cpp: (WebCore::Path::applyIgnoringInlineData const): (WebCore::Path::applySlowCase const): Deleted. * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: Canonical link: https://commits.webkit.org/265260@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 9632de: Check CachedResourceLoader's document WeakPtr in m...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9632def06c0f39742c6b9b5af8ca7259b44583e8 https://github.com/WebKit/WebKit/commit/9632def06c0f39742c6b9b5af8ca7259b44583e8 Author: Brent Fulgham Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/loader/cache/CachedResourceLoader.cpp Log Message: --- Check CachedResourceLoader's document WeakPtr in more places https://bugs.webkit.org/show_bug.cgi?id=258167 Reviewed by Chris Dumez. The CachedResourceLoader class holds a WeakPtr to a Document, which may be a nullptr at different moments in loading. We inconsistently check for nullptr, which telemetry shows is triggering some crashes. This patch provides more rigorous checks for nullptr to avoid these crashes. * Source/WebCore/loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::cachedResource const): (WebCore::CachedResourceLoader::checkInsecureContent const): (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy const): (WebCore::CachedResourceLoader::canRequest): (WebCore::CachedResourceLoader::canRequestAfterRedirection const): (WebCore::CachedResourceLoader::canRequestInContentDispositionAttachmentSandbox const): Canonical link: https://commits.webkit.org/265259@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 1f8437: [JSC] Add V8 style ICU DST offset cache
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1f84372b0336751caf1a2ae482a1331e754e6b51 https://github.com/WebKit/WebKit/commit/1f84372b0336751caf1a2ae482a1331e754e6b51 Author: Yusuke Suzuki Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/JavaScriptCore/runtime/JSDateMath.cpp M Source/JavaScriptCore/runtime/JSDateMath.h M Source/WTF/wtf/DateMath.cpp M Source/WTF/wtf/DateMath.h M Source/WTF/wtf/GregorianDateTime.cpp Log Message: --- [JSC] Add V8 style ICU DST offset cache https://bugs.webkit.org/show_bug.cgi?id=258186 rdar://110879575 Reviewed by Mark Lam. This patch adds V8 style ICU DST offset cache into our DateCache. Previously, we had one-way cache. But in some benchmarks, we observed that frequent fallback to ICU due to cache miss. So we extend the cache to 32-way LRU, which is what V8 is doing. So long as we hit this cache, we do not need to query to ICU about DST offset. * Source/JavaScriptCore/runtime/JSDateMath.cpp: (JSC::DateCache::DSTCache::leastRecentlyUsed): (JSC::DateCache::DSTCache::extendTheAfterCache): (JSC::DateCache::DSTCache::localTimeOffset): (JSC::DateCache::resetIfNecessarySlow): (JSC::DateCache::localTimeOffset): Deleted. * Source/JavaScriptCore/runtime/JSDateMath.h: (JSC::LocalTimeOffsetCache::isEmpty): (JSC::DateCache::DSTCache::DSTCache): (JSC::DateCache::DSTCache::bumpEpoch): (JSC::DateCache::DSTCache::reset): (JSC::DateCache::localTimeOffset): Canonical link: https://commits.webkit.org/265258@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 4929b4: [WebGL] Make WebGL via Metal internal
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4929b4c592f9bebd8079fc1ad5c9a691d60f827f https://github.com/WebKit/WebKit/commit/4929b4c592f9bebd8079fc1ad5c9a691d60f827f Author: Dan Glastonbury Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml M Tools/DumpRenderTree/TestOptions.cpp M Tools/WebKitTestRunner/TestOptions.cpp Log Message: --- [WebGL] Make WebGL via Metal internal https://bugs.webkit.org/show_bug.cgi?id=250433 rdar://problem/104104772 Reviewed by Brent Fulgham. Due to sandboxing, in the post-Ventura world it's becoming harder and harder to run WebGL via OpenGL instead of Metal and is not generally useful preference for developers to toggle. Change the status of `WebGLUsingMetal` to `internal` to reflect this. Canonical link: https://commits.webkit.org/265257@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 3b3afc: Crash in ISOProtectionSystemSpecificHeaderBox::par...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 3b3afcc8898eacb52e0f7fe1f4e66fe171681362 https://github.com/WebKit/WebKit/commit/3b3afcc8898eacb52e0f7fe1f4e66fe171681362 Author: Andy Estes Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.cpp Log Message: --- Crash in ISOProtectionSystemSpecificHeaderBox::parse with large keyID counts https://bugs.webkit.org/show_bug.cgi?id=258174 rdar://110412566 Reviewed by Jean-Yves Avenard. KeyID is 16 bytes, so it's possible for a `pssh` box to specify a `keyIDCount` large enough that the following keyIDs array cannot be contained by a Vector. To account for this, try to reserve capacity for `keyIDCount` in m_keyIDs before resizing and return `false` if the reservation fails. * Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.cpp: (WebCore::ISOProtectionSystemSpecificHeaderBox::parse): Canonical link: https://commits.webkit.org/265256@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 159993: Catalyst build fix: Rename WebCore WKRetain/WKRele...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 159993b6159767023613bcc8705a0ae0848b7872 https://github.com/WebKit/WebKit/commit/159993b6159767023613bcc8705a0ae0848b7872 Author: Elliott Williams Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/ios/wak/WAKClipView.m M Source/WebCore/platform/ios/wak/WAKScrollView.mm M Source/WebCore/platform/ios/wak/WAKView.mm M Source/WebCore/platform/ios/wak/WKUtilities.c M Source/WebCore/platform/ios/wak/WKUtilities.h Log Message: --- Catalyst build fix: Rename WebCore WKRetain/WKRelease to avoid overshadowing WebKit https://bugs.webkit.org/show_bug.cgi?id=257560 rdar://103361403 Reviewed by Alexey Proskuryakov. In the Mac Catalyst build: - WebCore implements WKRetain/WKRelease as part of the WAK library. The symbols are hidden (but present in the debug build's symbol table). - WebKit implements its own WKRetain/WKRelease, which is exported. It also reexports WebCore, which it only does on macOS. - During the InstallAPI verification phase, TAPI ignores any symbols from headers that are implemented from a reexported framework. This means that even though it parses WebKit's WKRetain/WKRelease declarations, it refuses to use them, failing with error: no declaration found for exported symbol '_WKRelease' in dynamic library error: no declaration found for exported symbol '_WKRetain' in dynamic library This doesn't happen in production builds, because they stubify WebCore before WebKit begins building, so TAPI only reads re-exported symbols from WebCore.tbd. Since WebCore's WKRetain/WKRelease are hidden, just rename them. * Source/WebCore/platform/ios/wak/WAKClipView.m: (-[WAKClipView initWithFrame:]): * Source/WebCore/platform/ios/wak/WAKScrollView.mm: (-[WAKScrollView initWithFrame:]): * Source/WebCore/platform/ios/wak/WAKView.mm: (-[WAKView _initWithViewRef:]): (-[WAKView initWithFrame:]): (-[WAKView dealloc]): * Source/WebCore/platform/ios/wak/WKUtilities.c: (WAKRetain): (WKCollectionRelease): (WAKRelease): (WKRetain): Deleted. (WKRelease): Deleted. * Source/WebCore/platform/ios/wak/WKUtilities.h: Canonical link: https://commits.webkit.org/265255@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] b703b0: Fix scrollbar-gutter invalidation
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b703b067b883426bca606987e3d1ac7041c554a0 https://github.com/WebKit/WebKit/commit/b703b067b883426bca606987e3d1ac7041c554a0 Author: Luke Warlow Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: A LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002-ref.html A LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002.html M Source/WebCore/rendering/style/RenderStyle.cpp Log Message: --- Fix scrollbar-gutter invalidation https://bugs.webkit.org/show_bug.cgi?id=258207 Reviewed by Tim Nguyen. Add diff check for scrollbarGutter to RenderStyle rareDataChangeRequiresLayout. * LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002-ref.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-overflow/scrollbar-gutter-dynamic-002.html: Added. * Source/WebCore/rendering/style/RenderStyle.cpp: (WebCore::rareDataChangeRequiresLayout): Canonical link: https://commits.webkit.org/265254@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] a1509b: Build Fix for RealitySystemSupport
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a1509bd159ade61e090910efd44b56c044f3d1bf https://github.com/WebKit/WebKit/commit/a1509bd159ade61e090910efd44b56c044f3d1bf Author: Megan Gardner Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm Log Message: --- Build Fix for RealitySystemSupport https://bugs.webkit.org/show_bug.cgi?id=258182 rdar://110872747 Unreviewed Build Fix. * Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm: Canonical link: https://commits.webkit.org/265253@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 46b462: [ macOS ] 2 http/tests/media/FairPlay tests are br...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 46b462205dd97be0f9eaa729085860c288436be1 https://github.com/WebKit/WebKit/commit/46b462205dd97be0f9eaa729085860c288436be1 Author: Jer Noble Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/http/tests/media/fairplay/legacy-fairplay-hls.html M LayoutTests/http/tests/media/fairplay/legacy-fairplay-mse-v2.html M LayoutTests/http/tests/media/fairplay/legacy-fairplay-mse-v3.html M LayoutTests/platform/mac/TestExpectations M Source/WebCore/Modules/mediasource/MediaSource.cpp M Source/WebCore/Modules/mediasource/MediaSource.h M Source/WebCore/html/HTMLMediaElement.cpp M Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp M Source/WebKit/GPUProcess/media/RemoteCDMFactoryProxy.cpp M Source/WebKit/GPUProcess/media/RemoteCDMFactoryProxy.h M Source/WebKit/GPUProcess/media/RemoteLegacyCDMFactoryProxy.cpp M Source/WebKit/GPUProcess/media/RemoteLegacyCDMFactoryProxy.h M Source/WebKit/GPUProcess/media/RemoteLegacyCDMFactoryProxy.messages.in M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMFactory.cpp M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMFactory.h M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMSession.cpp Log Message: --- [ macOS ] 2 http/tests/media/FairPlay tests are broken. https://bugs.webkit.org/show_bug.cgi?id=255294 rdar://107891205 Reviewed by Ryosuke Niwa. Fixing 4 related issues which keep these tests from passing consistentely: 1. When adding a MediaSource to a HTMLMediaElement via the element's .srcObject property, sometimes the MediaSource wrapper will be collected before the element has fully attached, and before the "sourceopen" event is fired. Mitigate this by returning true from virtualHasPendingActivity() in the time between when the MediaSource is set as srcObject and when it fires the "sourceopen" event. 2. HTMLMediaElement's own virtualHasPendingActivity() method will check whether the element is in the "ended" state. To do so, it calls m_player->duration(), which in the case of MediaSource, makes a call through a WeakPtr back up to the MediaSource to return _its_ duration. However, virtualHasPendingActivity() will be called on a background thread, and the WeakPtr accessor will throw an assertion. Rather than bounce down to MediaPlayer and back up to MediaSource, just query MediaSource directly. This will address the narrow issue of duration(), but the rest of the calls in virtualHasPendingActivity() may be non-thread-safe and further investigation and analysis is warranted. 3. Sometimes tests would fail with "decode" errors if ran back-to-back. One cause may be that CDM proxy objects in the GPU process are not consistently destroyed when their objects in the WebContent process are destroyed. Fix the RemoteLegacyCDMFactory to keep a WeakPtr map of CDM objects, and to track as those objects are created and destroyed, sending a message to the GPU process for its proxy to remove proxy objects. When the GPUConnectionToWebProcess closes, explicitly clear both the RemoteLegacyCDMFactory and RemoteCDMFactory objects, rather than wait for the connections refcount to go to zero. When destroying the CDMSessionAVContentKeySession, explicitly flush all attached SourceBufferPrivate objects, as well as removing the parser from the AVContentKeySession. Also explicitly expire the session before releasing it. This should cause system resources dedicated to protected playback to be more consistently freed after a test ends. 4. Add an explicit handler in the legacy tests which will fail the test (rather than time out) if the video throws an error. This will make the tests complete faster when video decoding fails, generating failed tests rather than time out results. * LayoutTests/http/tests/media/fairplay/legacy-fairplay-hls.html: * LayoutTests/http/tests/media/fairplay/legacy-fairplay-mse-v2.html: * LayoutTests/http/tests/media/fairplay/legacy-fairplay-mse-v3.html: * LayoutTests/platform/mac/TestExpectations: * Source/WebCore/Modules/mediasource/MediaSource.cpp: (WebCore::MediaSource::setAsSrcObject): (WebCore::MediaSource::virtualHasPendingActivity const): (WebCore::MediaSource::onReadyStateChange): * Source/WebCore/Modules/mediasource/MediaSource.h: * Source/WebCore/html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setSrcObject): (WebCore::HTMLMediaElement::durationMediaTime const): (WebCore::HTMLMediaElement::detachMediaSource): * Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm: (WebCore::CDMSessionAVContentKeySession::~CDMSessionAVContentKeySession): * Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp: (WebKit::GPUConnectionToWebProcess::didClose): * Source/WebKit/
[webkit-changes] [WebKit/WebKit] d2700e: Win32Handle must use move semantics for IPC
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d2700e00b8421158a5c71f78f5fd4dc935bbcba1 https://github.com/WebKit/WebKit/commit/d2700e00b8421158a5c71f78f5fd4dc935bbcba1 Author: Don Olmstead Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebKit/Platform/IPC/win/ArgumentCodersWin.cpp M Source/WebKit/Platform/IPC/win/ArgumentCodersWin.h M Source/WebKit/Platform/IPC/win/IPCSemaphoreWin.cpp M Source/WebKit/Scripts/webkit/messages.py Log Message: --- Win32Handle must use move semantics for IPC https://bugs.webkit.org/show_bug.cgi?id=258147 Reviewed by Fujii Hironori. Mark `Win32Handle` as a type that needs to use move semantics when generating messages. Remove encoder for `const Win32Handle&`. Update encoding of `Semaphore` to copy the handle before encoding. * Source/WebKit/Platform/IPC/win/ArgumentCodersWin.cpp: * Source/WebKit/Platform/IPC/win/ArgumentCodersWin.h: * Source/WebKit/Platform/IPC/win/IPCSemaphoreWin.cpp: (IPC::Semaphore::encode const): * Source/WebKit/Scripts/webkit/messages.py: Canonical link: https://commits.webkit.org/265251@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 79141a: [GStreamer][MediaStream] Leverage GStreamerCapture...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 79141ab69a81e754ecc39b8f4f7ab87279401404 https://github.com/WebKit/WebKit/commit/79141ab69a81e754ecc39b8f4f7ab87279401404 Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/fast/mediastream/device-change-event-2.html M Source/WebCore/platform/SourcesGStreamer.txt M Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h M Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDevice.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h A Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.cpp A Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.h A Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDeviceProvider.cpp A Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDeviceProvider.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.h M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h M Source/WebCore/platform/mock/MockRealtimeAudioSource.h M Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp M Source/WebCore/platform/mock/MockRealtimeVideoSource.h M Tools/Scripts/webkitpy/style/checker.py Log Message: --- [GStreamer][MediaStream] Leverage GStreamerCapturer on mock sources https://bugs.webkit.org/show_bug.cgi?id=244003 Reviewed by Xabier Rodriguez-Calvar. The GStreamer mock audio and video sources now feed a capturer pipeline, in order to have a similar behaviour to the non-mock sources. In order to make this possible, we now have a new GstDeviceProvider that creates a GstDevice for each mock device of the mock realtime media source center. Each mock device is associated with an appsrc element, to which mock GstSamples are pushed. * LayoutTests/fast/mediastream/device-change-event-2.html: * Source/WebCore/platform/SourcesGStreamer.txt: * Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp: (WTF::adoptGRef): (WTF::refGPtr): (WTF::derefGPtr): * Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h: * Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp: (WebCore::RealtimeMediaSourceCenter::captureDevicesChanged): * Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp: (WebCore::GStreamerAudioCaptureSource::GStreamerAudioCaptureSource): (WebCore::GStreamerAudioCaptureSource::startProducingData): (WebCore::GStreamerAudioCaptureSource::stopProducingData): (WebCore::GStreamerAudioCaptureSource::newSampleCallback): Deleted. * Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h: * Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp: (WebCore::GStreamerAudioCapturer::GStreamerAudioCapturer): (WebCore::GStreamerAudioCapturer::~GStreamerAudioCapturer): (WebCore::GStreamerAudioCapturer::setSinkAudioCallback): (WebCore::GStreamerAudioCapturer::createConverter): * Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.h: * Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDevice.h: (WebCore::GStreamerCaptureDevice::GStreamerCaptureDevice): * Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp: (WebCore::GStreamerCaptureDeviceManager::GStreamerCaptureDeviceManager): (WebCore::GStreamerCaptureDeviceManager::~GStreamerCaptureDeviceManager): (WebCore::GStreamerCaptureDeviceManager::stopMonitor): (WebCore::GStreamerCaptureDeviceManager::devicesChanged): (WebCore::GStreamerCaptureDeviceManager::gstreamerDeviceWithUID): (WebCore::GStreamerCaptureDeviceManager::captureDevices): (WebCore::GStreamerCaptureDeviceManage
[webkit-changes] [WebKit/WebKit] 0d62c4: REGRESSION(264618@main): Infinite mutual recursion...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 0d62c4b9488c26e3e1c97771e9cb06c397fe5fad https://github.com/WebKit/WebKit/commit/0d62c4b9488c26e3e1c97771e9cb06c397fe5fad Author: Ryosuke Niwa Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: A LayoutTests/svg/markers/marker-clip-path-mutual-reference-crash-expected.txt A LayoutTests/svg/markers/marker-clip-path-mutual-reference-crash.html M Source/WebCore/rendering/svg/SVGContainerLayout.cpp M Source/WebCore/rendering/svg/SVGRenderSupport.cpp M Source/WebCore/rendering/svg/SVGResources.cpp M Source/WebCore/rendering/svg/SVGResources.h Log Message: --- REGRESSION(264618@main): Infinite mutual recursion in SVGRenderSupport::layoutDifferentRootIfNeeded https://bugs.webkit.org/show_bug.cgi?id=258171 Reviewed by Darin Adler. Prevent infinite recursion in SVGRenderSupport::layoutDifferentRootIfNeeded by checking whether the target root is already in layout or not. Also removed the now unused svgRoot argument from layoutDifferentRootIfNeeded and renamed the function to layoutReferencedRootIfNeeded. * LayoutTests/svg/markers/marker-clip-path-mutual-reference-crash-expected.txt: Added. * LayoutTests/svg/markers/marker-clip-path-mutual-reference-crash.html: Added. * Source/WebCore/rendering/svg/SVGContainerLayout.cpp: (WebCore::SVGContainerLayout::layoutDifferentRootIfNeeded): * Source/WebCore/rendering/svg/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::layoutDifferentRootIfNeeded): * Source/WebCore/rendering/svg/SVGResources.cpp: (WebCore::SVGResources::layoutReferencedRootIfNeeded): Renamed from layoutDifferentRootIfNeeded. * Source/WebCore/rendering/svg/SVGResources.h: Canonical link: https://commits.webkit.org/265249@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] bb36b7: Serialization algorithms should not be changed in ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: bb36b71707e3e11d6ced5ce2438d9aa69d53ccfb https://github.com/WebKit/WebKit/commit/bb36b71707e3e11d6ced5ce2438d9aa69d53ccfb Author: Chris Dumez Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/html/syntax/serializing-html-fragments/template-expected.txt M Source/WebCore/editing/MarkupAccumulator.cpp M Source/WebCore/editing/MarkupAccumulator.h M Source/WebCore/editing/markup.cpp M Source/WebCore/editing/markup.h M Source/WebCore/page/PageSerializer.cpp Log Message: --- Serialization algorithms should not be changed in the middle of a serialization https://bugs.webkit.org/show_bug.cgi?id=258154 Reviewed by Darin Adler. Some of the code in MarkupAccumulator would rely on the node's document to determine whether or not to use the XML or HTML serialization algorithm instead of using the serialization algorithm passed to the MarkupAccumulator constructor. This is often fine but leads to behavior changes when the node is a since they have their own template document. This meant that we may start serialization as HTML and then switch to XML for serialization a particular template node. To address the issue, we now make sure to pass the correct serialization algorithm to the MarkupAccumulator and use this value consistently during serialization, without checking the document of the node currently being serialized. This aligns our behavior with Chrome and Firefox, which were already passing the corresponding WPT test. Corresponding Blink change: - https://chromium-review.googlesource.com/c/chromium/src/+/1640584 * LayoutTests/imported/w3c/web-platform-tests/html/syntax/serializing-html-fragments/template-expected.txt: * Source/WebCore/editing/MarkupAccumulator.cpp: (WebCore::shouldSelfClose): (WebCore::MarkupAccumulator::appendOpenTag): (WebCore::MarkupAccumulator::appendAttribute): * Source/WebCore/editing/MarkupAccumulator.h: * Source/WebCore/editing/markup.cpp: (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator): (WebCore::serializePreservingVisualAppearanceInternal): * Source/WebCore/page/PageSerializer.cpp: (WebCore::PageSerializer::SerializerMarkupAccumulator::SerializerMarkupAccumulator): Canonical link: https://commits.webkit.org/265248@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 57c8f3: The HTMLPreloadScanner should not preload scripts ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 57c8f39eb66bd91bed113fe08c5264d0fd94b95d https://github.com/WebKit/WebKit/commit/57c8f39eb66bd91bed113fe08c5264d0fd94b95d Author: Chris Dumez Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/TestExpectations M LayoutTests/imported/w3c/web-platform-tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub-expected.txt M LayoutTests/imported/w3c/web-platform-tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative-expected.txt M Source/WebCore/dom/ScriptElement.cpp M Source/WebCore/dom/ScriptElement.h M Source/WebCore/html/parser/HTMLPreloadScanner.cpp Log Message: --- The HTMLPreloadScanner should not preload scripts with unsupported types https://bugs.webkit.org/show_bug.cgi?id=258159 Reviewed by Darin Adler and Ryosuke Niwa. The HTMLPreloadScanner should not preload scripts with unsupported types to avoid wasting resources unnecessarily. This aligns our behavior with Chrome and Firefox. * LayoutTests/TestExpectations: * LayoutTests/imported/w3c/web-platform-tests/html/syntax/speculative-parsing/generated/document-write/script-src-unsupported-type.tentative.sub-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/html/syntax/speculative-parsing/generated/page-load/script-src-unsupported-type.tentative-expected.txt: * Source/WebCore/html/parser/HTMLPreloadScanner.cpp: (WebCore::TokenPreloadScanner::StartTagScanner::processAttribute): (WebCore::TokenPreloadScanner::StartTagScanner::shouldPreload): Canonical link: https://commits.webkit.org/265247@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] cf7c4d: Remove unused ScrollbarControlSize enum
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: cf7c4d623cac1295df1716344da55b40d82a9a3c https://github.com/WebKit/WebKit/commit/cf7c4d623cac1295df1716344da55b40d82a9a3c Author: Luke Warlow Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/ScrollTypes.h Log Message: --- Remove unused ScrollbarControlSize enum https://bugs.webkit.org/show_bug.cgi?id=258203 Reviewed by Aditya Keerthi. This enum is no longer used so this patch deletes it. * Source/WebCore/platform/ScrollTypes.h: Canonical link: https://commits.webkit.org/265246@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] b1285c: REGRESSION(263628@main): [GStreamer] Broke fast/me...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b1285c6fa5649d15553718a936cb49c1c2ab12bc https://github.com/WebKit/WebKit/commit/b1285c6fa5649d15553718a936cb49c1c2ab12bc Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/platform/gtk/TestExpectations A LayoutTests/platform/wpe/fast/mediastream/captureStream/canvas3d-expected.txt M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/VideoEncoderGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.h Log Message: --- REGRESSION(263628@main): [GStreamer] Broke fast/mediastream/captureStream/canvas3d.html https://bugs.webkit.org/show_bug.cgi?id=256758 Reviewed by Xabier Rodriguez-Calvar. Video frame conversions are now performed with the gst_video_convert_sample API which also takes care of downloading textures from GPU when needed. The test almost passes now in WPE, still one graphics-related failure to debug. In GTK the test still fails, again due to weak graphics support. * LayoutTests/platform/gtk/TestExpectations: * LayoutTests/platform/wpe/fast/mediastream/captureStream/canvas3d-expected.txt: Added. * Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::videoFrameForCurrentTime): * Source/WebCore/platform/graphics/gstreamer/VideoEncoderGStreamer.cpp: (WebCore::GStreamerVideoEncoder::encode): (WebCore::GStreamerInternalVideoEncoder::encode): * Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp: (WebCore::convertSampleToImage): (WebCore::VideoFrame::fromNativeImage): (WebCore::VideoFrame::createNV12): (WebCore::VideoFrame::createRGBA): (WebCore::VideoFrame::createBGRA): (WebCore::VideoFrame::createI420): (WebCore::VideoFrameGStreamer::createFromPixelBuffer): (WebCore::VideoFrame::copyTo): (WebCore::VideoFrame::paintInContext): (WebCore::VideoFrameGStreamer::resizedSample): (WebCore::VideoFrameGStreamer::convert): (WebCore::VideoFrameGStreamer::downloadSample): (WebCore::VideoFrameGStreamer::convertToImage): (WebCore::GstSampleColorConverter::singleton): Deleted. (WebCore::GstSampleColorConverter::convertSample): Deleted. (WebCore::GstSampleColorConverter::convertSampleToImage): Deleted. * Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.h: Canonical link: https://commits.webkit.org/265245@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 5a644c: [GStreamer][WebRTC] Incoming track ID doesn't matc...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5a644c4173145039030534b9c3d31d7967ab1da8 https://github.com/WebKit/WebKit/commit/5a644c4173145039030534b9c3d31d7967ab1da8 Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/platform/glib/TestExpectations M LayoutTests/webrtc/utf8-sdp.html M Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp M Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h M Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp M Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp Log Message: --- [GStreamer][WebRTC] Incoming track ID doesn't match sender track ID https://bugs.webkit.org/show_bug.cgi?id=258124 Reviewed by Xabier Rodriguez-Calvar. The issues here were that we were handling SDP msid attribute values as ascii instead of unicode encoded in UTF8 and that we were using our sender track ID as receiver (incoming) track ID. * LayoutTests/platform/glib/TestExpectations: * LayoutTests/webrtc/utf8-sdp.html: * Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp: (WebCore::GStreamerMediaEndpoint::addTrack): (WebCore::GStreamerMediaEndpoint::trackIdFromSDPMedia): (WebCore::GStreamerMediaEndpoint::addRemoteStream): (WebCore::GStreamerMediaEndpoint::collectTransceivers): * Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h: * Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp: (WebCore::GStreamerPeerConnectionBackend::newRemoteTransceiver): * Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h: * Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp: (WebCore::GStreamerRtpTransceiverBackend::mid): * Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp: (WebCore::RealtimeOutgoingMediaSourceGStreamer::allowedCaps const): (WebCore::RealtimeOutgoingMediaSourceGStreamer::setSource): Canonical link: https://commits.webkit.org/265244@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] fb1ba7: [GStreamer] Add support for I420A VideoFrames
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fb1ba7de16f21af493d0962d48ea510b1dd11bb6 https://github.com/WebKit/WebKit/commit/fb1ba7de16f21af493d0962d48ea510b1dd11bb6 Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/platform/glib/TestExpectations M LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt M Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp Log Message: --- [GStreamer] Add support for I420A VideoFrames https://bugs.webkit.org/show_bug.cgi?id=258138 Reviewed by Xabier Rodriguez-Calvar. I420A is 4:2:0 Y, U, V, A layout, so like I420, but with an additional plane for alpha, which maps to GStreamer's A420 format. * LayoutTests/platform/glib/TestExpectations: * LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt: * Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp: (WebCore::VideoFrame::createI420A): (WebCore::VideoFrame::copyTo): Canonical link: https://commits.webkit.org/265243@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 515867: [GTK][WPE] Test gardening: Write specific bugs for...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 515867b8e7c87f14b42d625c9b5181740568944c https://github.com/WebKit/WebKit/commit/515867b8e7c87f14b42d625c9b5181740568944c Author: Amanda Falke Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/platform/glib/TestExpectations M LayoutTests/platform/wpe/TestExpectations Log Message: --- [GTK][WPE] Test gardening: Write specific bugs for expectations after 265083@main https://bugs.webkit.org/show_bug.cgi?id=257969 Unreviewed test gardening. This PR will close https://bugs.webkit.org/show_bug.cgi?id=257969 after 265083@main by filing those tests under more specific bugs bug tickets for individual tests. * LayoutTests/platform/glib/TestExpectations: Filed tests as more specific bugs and/or found existing bugs, and noted this in ticket also. Canonical link: https://commits.webkit.org/265242@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 00db70: [GStreamer][WebRTC] Caps negotiation error when sw...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 00db70eb90d9cbe47fcbcdd4383da0d3824d0e39 https://github.com/WebKit/WebKit/commit/00db70eb90d9cbe47fcbcdd4383da0d3824d0e39 Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.cpp Log Message: --- [GStreamer][WebRTC] Caps negotiation error when switching encoder to VP9 https://bugs.webkit.org/show_bug.cgi?id=258143 Reviewed by Xabier Rodriguez-Calvar. Set the vpxenc input video format depending on the selected encoding profile. * Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.cpp: (webkit_video_encoder_class_init): Canonical link: https://commits.webkit.org/265241@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] cb8db9: MSE shouldn't be an experimental feature flag
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: cb8db9bb084b1418cacc82d68975168c314200fc https://github.com/WebKit/WebKit/commit/cb8db9bb084b1418cacc82d68975168c314200fc Author: Jean-Yves Avenard Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml Log Message: --- MSE shouldn't be an experimental feature flag https://bugs.webkit.org/show_bug.cgi?id=258175 rdar://110867860 Reviewed by Youenn Fablet. This is a reversal of webkit.org/b/250121. On iPhone, Managed Media Source is to be used. * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: Canonical link: https://commits.webkit.org/265240@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] b80bca: Multiple typos in `svg/dynamic-updates/SVGFECompon...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b80bca1b418abb5be2cdf5428624f1d75f3fd08d https://github.com/WebKit/WebKit/commit/b80bca1b418abb5be2cdf5428624f1d75f3fd08d Author: Vitaly Dyachkov Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr-expected.txt M LayoutTests/svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr.html Log Message: --- Multiple typos in `svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr.html` https://bugs.webkit.org/show_bug.cgi?id=258188 Reviewed by Nikolas Zimmermann. Looks like copy-paste issue. * LayoutTests/svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr.html: * LayoutTests/svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr-expected.txt: Canonical link: https://commits.webkit.org/265239@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] df1483: Mask clipping determination insufficient for ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: df148384b18a40059f52a6ad13f05f7c0612ade9 https://github.com/WebKit/WebKit/commit/df148384b18a40059f52a6ad13f05f7c0612ade9 Author: Nikolas Zimmermann Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: A LayoutTests/svg/clip-path/clip-path-use-referencing-clipped-text-expected.html A LayoutTests/svg/clip-path/clip-path-use-referencing-clipped-text.html A LayoutTests/svg/clip-path/clip-path-use-referencing-text-expected.html A LayoutTests/svg/clip-path/clip-path-use-referencing-text.html M Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp Log Message: --- Mask clipping determination insufficient for elements https://bugs.webkit.org/show_bug.cgi?id=258168 Reviewed by Rob Buis. To determine if we need mask clipping or can use path clipping, the renderer is queried for certain information. This is not sufficient for renderers -- the logic needs to extend to the referenced renderer as well. Previously when referencing e.g. a element that is itself clipped, from an element (that is a child of ) we determined that path clipping is possible, leading to a fully clipped object (net result: nothing visible). Fix that issue, and handle elements in the clip mask determination. Covered by two new tests, exercising the clipping peculiarities. * LayoutTests/svg/clip-path/clip-path-use-referencing-clipped-text-expected.html: Added. * LayoutTests/svg/clip-path/clip-path-use-referencing-clipped-text.html: Added. * LayoutTests/svg/clip-path/clip-path-use-referencing-text-expected.html: Added. * LayoutTests/svg/clip-path/clip-path-use-referencing-text.html: Added. Imported from Blink. * Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::pathOnlyClipping): Refactor the mask clipping determination logic into a helper lambda. Re-use that lambda to check if the referenced clip renderer is required to use mask clipping, or if path clipping is possible. Canonical link: https://commits.webkit.org/265238@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 94e76b: Sync css/css-contain from WPT
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 94e76bd00d9182a22920fedc0db9eced9744953f https://github.com/WebKit/WebKit/commit/94e76bd00d9182a22920fedc0db9eced9744953f Author: Rob Buis Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/imported/w3c/resources/resource-files.json M LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-068.html M LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-070.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-000-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-000.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-001-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-001.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-002-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-002.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-003-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-003.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-004-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-004.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-005-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-005.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-006-expected.txt A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-006.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-hide-after-addition-expected.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-hide-after-addition.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-with-popover-top-layer-ref.html A LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/spacer-with-popover-top-layer-ref.html M LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/w3c-import.log Log Message: --- Sync css/css-contain from WPT https://bugs.webkit.org/show_bug.cgi?id=258074 Reviewed by Manuel Rego Casasnovas. >From WPT revision d6c561438a. * LayoutTests/imported/w3c/resources/resource-files.json: * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-068.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-070.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-000-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-000.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-001-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-001.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-002-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-002.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-003-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-003.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-with-popover-top-layer-004-expected.html: Ad
[webkit-changes] [WebKit/WebKit] 1ddda5: REGRESSION(264515@main): [GStreamer] Use of WeakPt...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1ddda51c805979ebb13deeebecb12bd2f321f82e https://github.com/WebKit/WebKit/commit/1ddda51c805979ebb13deeebecb12bd2f321f82e Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.h Log Message: --- REGRESSION(264515@main): [GStreamer] Use of WeakPtr for m_player in MediaPlayerPrivateGStreamer looks unsafe https://bugs.webkit.org/show_bug.cgi?id=258129 Reviewed by Xabier Rodriguez-Calvar. The player now creates a single media resource loader and shares it with adaptivedemux-spawned webkit HTTP sources using GstContext. * Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::sourceSetup): (WebCore::MediaPlayerPrivateGStreamer::handleNeedContextMessage): * Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: * Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (webKitWebSrcSetContext): (webKitWebSrcCreate): (webKitWebSrcMakeRequest): (webKitWebSrcSetResourceLoader): (webKitWebSrcSetReferrer): (webKitWebSrcSetMediaPlayer): Deleted. * Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Canonical link: https://commits.webkit.org/265236@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 096e15: [css-counter-styles] cjk-earthly-branch and cjk-he...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 096e15ff5659dfcd7c87134955b9371e04f385b5 https://github.com/WebKit/WebKit/commit/096e15ff5659dfcd7c87134955b9371e04f385b5 Author: Vitor Roriz Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-earthly-branch/css3-counter-styles-202-expected.html M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-earthly-branch/css3-counter-styles-202-ref.html M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-earthly-branch/css3-counter-styles-202.html M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-heavenly-stem/css3-counter-styles-205-expected.html M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-heavenly-stem/css3-counter-styles-205-ref.html M LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-heavenly-stem/css3-counter-styles-205.html M Source/WebCore/css/counterStyles.css Log Message: --- [css-counter-styles] cjk-earthly-branch and cjk-heavenly-stem should have 'fixed' system (258089) https://bugs.webkit.org/show_bug.cgi?id=258089 rdar://110796633 Reviewed by Tim Nguyen. According to spec, cjk-earthly-branch and cjk-heavenly-stem counter-styles should have 'fixed' system instead of 'alphabetic'. See w3c/csswg-drafts#8596 * LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-earthly-branch/css3-counter-styles-202-expected.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-earthly-branch/css3-counter-styles-202.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-heavenly-stem/css3-counter-styles-205-expected.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-counter-styles/cjk-heavenly-stem/css3-counter-styles-205.html: * Source/WebCore/css/counterStyles.css: (@counter-style cjk-earthly-branch): (@counter-style cjk-heavenly-stem): Canonical link: https://commits.webkit.org/265235@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 08510e: [GStreamer] WebCodecs gardening
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 08510e55f4f9f7c1fef095eb7959809898383443 https://github.com/WebKit/WebKit/commit/08510e55f4f9f7c1fef095eb7959809898383443 Author: Philippe Normand Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M LayoutTests/TestExpectations M LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_av1-expected.txt M LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_av1-expected.txt Log Message: --- [GStreamer] WebCodecs gardening https://bugs.webkit.org/show_bug.cgi?id=258191 Unreviewed, update glib webcodecs baselines and flag one test as flaky. * LayoutTests/TestExpectations: * LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_av1-expected.txt: * LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_av1-expected.txt: Canonical link: https://commits.webkit.org/265234@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c234d2: REGRESSION(264515@main): m_player WeakPtr is acces...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c234d2219797395a7e23f45a681da9878c44f99a https://github.com/WebKit/WebKit/commit/c234d2219797395a7e23f45a681da9878c44f99a Author: Jean-Yves Avenard Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WTF/wtf/WeakPtr.h Log Message: --- REGRESSION(264515@main): m_player WeakPtr is accessed from non-main threads https://bugs.webkit.org/show_bug.cgi?id=258022 rdar://110817538 Reviewed by Youenn Fablet. Tighten WeakPtr assertion that it can only be accessed on the GC thread if it was created on the main thread. We apply the same requirement to operator-> and operator* for consistency. When the GC thread is running, the main thread is suspended which makes it safe to use with main thread objects. * Source/WTF/wtf/WeakPtr.h: (WTF::WeakPtr::get const): (WTF::WeakPtr::operator-> const): (WTF::WeakPtr::operator* const): (WTF::WeakPtr::canSafelyBeUsed const): Canonical link: https://commits.webkit.org/265233@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] b93c2f: [WebGL] Rename ExternalImage to EGLImage
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b93c2f660b513827e45e83defda701f510c7f3ba https://github.com/WebKit/WebKit/commit/b93c2f660b513827e45e83defda701f510c7f3ba Author: Dan Glastonbury Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp M Source/WebCore/platform/graphics/GraphicsContextGL.h M Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp M Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.h M Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.h M Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.messages.in M Source/WebKit/Scripts/webkit/messages.py M Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.mm M Source/WebKit/Shared/WebCoreArgumentCoders.h M Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp M Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.h M Source/WebKit/WebProcess/GPU/graphics/cocoa/RemoteGraphicsContextGLProxyCocoa.mm M Tools/Scripts/generate-gpup-webgl Log Message: --- [WebGL] Rename ExternalImage to EGLImage https://bugs.webkit.org/show_bug.cgi?id=258107 rdar://problem/110814538 Reviewed by Dean Jackson. Mechanical replacement of ExternalImage with EGLImage to better reflect their affiliation with EGLImage. * Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp: (WebCore::WebXROpaqueFramebuffer::startFrame): * Source/WebCore/platform/graphics/GraphicsContextGL.h: * Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp: (WebCore::GraphicsContextGLANGLE::createAndBindEGLImage): (WebCore::GraphicsContextGLANGLE::createAndBindExternalImage): Deleted. * Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.h: * Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.h: * Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm: (WebCore::createAndBindSharedTextureToExternalImage): (WebCore::GraphicsContextGLCocoa::createAndBindEGLImage): (WebCore::GraphicsContextGLCocoa::createAndBindExternalImage): Deleted. * Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp: (WebKit::RemoteGraphicsContextGL::createAndBindEGLImage): (WebKit::RemoteGraphicsContextGL::createAndBindExternalImage): Deleted. * Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h: * Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.messages.in: * Source/WebKit/Scripts/webkit/messages.py: (types_that_cannot_be_forward_declared): (headers_for_type): * Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.mm: (IPC::ArgumentCoder::encode): (IPC::ArgumentCoder::decode): (IPC::ArgumentCoder::encode): (IPC::ArgumentCoder::decode): (IPC::ArgumentCoder::encode): Deleted. (IPC::ArgumentCoder::decode): Deleted. (IPC::ArgumentCoder::encode): Deleted. (IPC::ArgumentCoder::decode): Deleted. * Source/WebKit/Shared/WebCoreArgumentCoders.h: * Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp: (WebKit::RemoteGraphicsContextGLProxy::createAndBindEGLImage): (WebKit::RemoteGraphicsContextGLProxy::createAndBindExternalImage): Deleted. * Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.h: * Source/WebKit/WebProcess/GPU/graphics/cocoa/RemoteGraphicsContextGLProxyCocoa.mm: Canonical link: https://commits.webkit.org/265232@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] a65d75: [GStreamer][EME] Break key waiting on PAUSED->READ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a65d75e0fad55dedd44857659f21bd7ee81b4e1e https://github.com/WebKit/WebKit/commit/a65d75e0fad55dedd44857659f21bd7ee81b4e1e Author: Xabier Rodriguez-Calvar Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: A LayoutTests/media/encrypted-media/clearKey/clearKey-cenc-stop-playback-before-key-expected.txt A LayoutTests/media/encrypted-media/clearKey/clearKey-cenc-stop-playback-before-key.html M LayoutTests/media/encrypted-media/clearKey/encrypted-media-clearKey-handler.js M LayoutTests/platform/mac/TestExpectations M Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp M Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h Log Message: --- [GStreamer][EME] Break key waiting on PAUSED->READY state change https://bugs.webkit.org/show_bug.cgi?id=258070 Reviewed by Philippe Normand. Changing a state can't be completed when decryptor is waiting for a key. This can block main thread for max 7sec. 1) Signal key waiting condition to return when decryptor is closing. 2) Return waiting for CDMProxy for the same case. Original patch by: Andrzej Surdej . * LayoutTests/media/encrypted-media/clearKey/clearKey-cenc-stop-playback-before-key-expected.txt: Added. * LayoutTests/media/encrypted-media/clearKey/clearKey-cenc-stop-playback-before-key.html: Added. * LayoutTests/media/encrypted-media/clearKey/encrypted-media-clearKey-handler.js: * LayoutTests/platform/mac/TestExpectations: * Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: (CDMProxyDecryptionClientImplementation::isAborting): (transformInPlace): (webKitMediaCommonEncryptionDecryptIsAborting): (changeState): (webKitMediaCommonEncryptionDecryptIsFlushing): Deleted. * Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h: Canonical link: https://commits.webkit.org/265231@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 3781d0: allowsFirstPartyForCookies MESSAGE_CHECK is causin...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 3781d0c8c8a6e6516c2c6d8d121299b05bd0eb11 https://github.com/WebKit/WebKit/commit/3781d0c8c8a6e6516c2c6d8d121299b05bd0eb11 Author: Charlie Wolfe Date: 2023-06-16 (Fri, 16 Jun 2023) Changed paths: M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in M Source/WebKit/NetworkProcess/NetworkProcess.cpp M Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp M Source/WebKit/NetworkProcess/NetworkSession.cpp M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerToContextConnection.cpp M Source/WebKit/Shared/AuxiliaryProcess.cpp M Source/WebKit/Shared/AuxiliaryProcess.h M Source/WebKit/UIProcess/ProvisionalFrameProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebProcessPool.cpp M Source/WebKit/UIProcess/WebProcessProxy.cpp M Source/WebKit/UIProcess/WebProcessProxy.h M Source/WebKit/WebProcess/Network/NetworkProcessConnection.cpp M Source/WebKit/WebProcess/Network/NetworkProcessConnection.h M Source/WebKit/WebProcess/Network/NetworkProcessConnection.messages.in M Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebProcess.cpp M Source/WebKit/WebProcess/WebProcess.h M Source/WebKit/WebProcess/WebProcess.messages.in Log Message: --- allowsFirstPartyForCookies MESSAGE_CHECK is causing WebContent process termination https://bugs.webkit.org/show_bug.cgi?id=257872 rdar://108747218 Reviewed by Alex Christensen. Add logging in the web process which triggers before we fail this message check in the network process. * Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::addAllowedFirstPartyForCookies): * Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h: * Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in: * Source/WebKit/NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess): * Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::handleProvisionalLoadFailureFromContentFilter): * Source/WebKit/NetworkProcess/NetworkSession.cpp: (WebKit::NetworkSession::addAllowedFirstPartyForCookies): * Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerToContextConnection.cpp: (WebKit::WebSharedWorkerServerToContextConnection::launchSharedWorker): * Source/WebKit/UIProcess/ProvisionalFrameProxy.cpp: (WebKit::ProvisionalFrameProxy::ProvisionalFrameProxy): * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::triggerBrowsingContextGroupSwitchForNavigation): * Source/WebKit/UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::processForNavigation): * Source/WebKit/UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::addAllowedFirstPartyForCookies): * Source/WebKit/UIProcess/WebProcessProxy.h: * Source/WebKit/Shared/AuxiliaryProcess.cpp: (WebKit::AuxiliaryProcess::allowsFirstPartyForCookies): * Source/WebKit/Shared/AuxiliaryProcess.h: * Source/WebKit/WebProcess/Network/NetworkProcessConnection.cpp: (WebKit::NetworkProcessConnection::addAllowedFirstPartyForCookies): * Source/WebKit/WebProcess/Network/NetworkProcessConnection.h: * Source/WebKit/WebProcess/Network/NetworkProcessConnection.messages.in: * Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess): * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::loadAlternateHTML): * Source/WebKit/WebProcess/WebProcess.cpp: (WebKit::WebProcess::addAllowedFirstPartyForCookies): (WebKit::WebProcess::allowsFirstPartyForCookies): * Source/WebKit/WebProcess/WebProcess.h: * Source/WebKit/WebProcess/WebProcess.messages.in: Canonical link: https://commits.webkit.org/265230@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes