Branch: refs/heads/webkitglib/2.48
Home: https://github.com/WebKit/WebKit
Commit: 6abbf3efbab602409537802ef285e14987cbf982
https://github.com/WebKit/WebKit/commit/6abbf3efbab602409537802ef285e14987cbf982
Author: Cameron McCormack <[email protected]>
Date: 2025-09-23 (Tue, 23 Sep 2025)
Changed paths:
M Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp
Log Message:
-----------
Cherry-pick 300041@main (056f092b46e4).
https://bugs.webkit.org/show_bug.cgi?id=298960
Initialize an uninitialized variable that we form a const pointer to but
don't use
https://bugs.webkit.org/show_bug.cgi?id=298960
rdar://157721239
Reviewed by Ryosuke Niwa.
* Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp:
(egl::ValidateQuerySurface64KHR):
Canonical link: https://commits.webkit.org/300041@main
Canonical link: https://commits.webkit.org/290945.389@webkitglib/2.48
Commit: 56c542176cdf1d50e8f626700b199625220057b4
https://github.com/WebKit/WebKit/commit/56c542176cdf1d50e8f626700b199625220057b4
Author: Nikolas Zimmermann <[email protected]>
Date: 2025-09-23 (Tue, 23 Sep 2025)
Changed paths:
M Source/WebCore/css/CSSPrimitiveValue.cpp
M Source/WebCore/css/CSSValuePool.cpp
M Source/WebCore/css/CSSValuePool.h
Log Message:
-----------
Cherry-pick 299936@main (d97070b32b34).
https://bugs.webkit.org/show_bug.cgi?id=298814
Do not store LazyNeverDestroyed objects as member variables
https://bugs.webkit.org/show_bug.cgi?id=298814
Reviewed by Darin Adler.
Stop using LazyNeverDestroyed for member variables in StaticCSSValuePool.
This triggers undefined behavior in ASSERT_ENABLED builds, since the
'm_isConstructed' member of LazyNeverDestroyed<T> is not initialized
in that case. GCC 14 correctly warned about this, breaking the build
on e.g. Ubuntu 25.04, where GCC 14 is default.
The straightforward solution was to directly use AlignedStorage<T>
as type for the pool member variables instead of LazyNeverDestroyed<T>,
preserving the current performance characteristics (no dynamic
allocations, etc.). The "canonical" solution of using e.g.
Vector<RefPtr<CSSPrimitiveValue>> would re-introduce the memory
problems which were previously migitiated by introducing
std::array<LazyNeverDestroyed<...>, capacity> -- thus it is not
applicable here.
Covered by existing tests.
* Source/WebCore/css/CSSPrimitiveValue.cpp:
(WebCore::valueFromPool):
* Source/WebCore/css/CSSValuePool.cpp:
(WebCore::StaticCSSValuePool::StaticCSSValuePool):
(WebCore::CSSValuePool::createColorValue):
* Source/WebCore/css/CSSValuePool.h:
(WebCore::CSSPrimitiveValue::implicitInitialValue):
(WebCore::CSSPrimitiveValue::create):
Canonical link: https://commits.webkit.org/299936@main
Canonical link: https://commits.webkit.org/290945.390@webkitglib/2.48
Compare: https://github.com/WebKit/WebKit/compare/1e2ca90567f7...56c542176cdf
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes