Branch: refs/heads/webkitglib/2.44
Home: https://github.com/WebKit/WebKit
Commit: bcd671bfcbcd9ca829dedeb66a3ffc67222103be
https://github.com/WebKit/WebKit/commit/bcd671bfcbcd9ca829dedeb66a3ffc67222103be
Author: Michael Catanzaro <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/WebKit/PlatformGTK.cmake
M Source/WebKit/PlatformWPE.cmake
M Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebView.h.in
Log Message:
-----------
Cherry-pick 276012@main (910ab18a82d4).
https://bugs.webkit.org/show_bug.cgi?id=269377
[WPE][GTK] Warning: WebKit2: Couldn't find
'run_async_javascript_function_in_world_finish' for the corresponding async
function: 'run_async_javascript_function_in_world'
https://bugs.webkit.org/show_bug.cgi?id=269377
Reviewed by Adrian Perez de Castro.
We need to use the new finish-func annotation so that language bindings
can figure out how to complete the async call, due to our nonstandard
naming for the finish function. It seems trying to reuse the same finish
function for multiple async calls was not such a good idea.
Unfortunately, with older gobject-introspection, we cannot use this
new annotation or the build will fail due to the unrecognized
annotation. So we will need to conditionalize the entire doc comment.
Finally, I've also fixed the nullability of the world_name parameter,
which was broken due to a missing colon.
* Source/WebKit/PlatformGTK.cmake:
* Source/WebKit/PlatformWPE.cmake:
* Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWebView.h.in:
Canonical link: https://commits.webkit.org/276012@main
Canonical link: https://commits.webkit.org/274313.87@webkitglib/2.44
Commit: 629d941b3ee1bfad0d8aa15283d6d1ab7092aa58
https://github.com/WebKit/WebKit/commit/629d941b3ee1bfad0d8aa15283d6d1ab7092aa58
Author: Adrian Perez de Castro <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/WebKit/PlatformGTK.cmake
Log Message:
-----------
Cherry-pick 276019@main (3a1c08120188).
https://bugs.webkit.org/show_bug.cgi?id=269377
REGRESSION(276012@main): CMake fails with GObject-Introspection disabled
https://bugs.webkit.org/show_bug.cgi?id=269377
Reviewed by Michael Catanzaro and Philippe Normand.
* Source/WebKit/PlatformGTK.cmake: Quote the expansion of ${GI_VERSION}
to ensure VERSION_GREATER_EQUAL has at least an empty string as value
to compare against; otherwise when the variable is undefined there was
no left-hand side of the comparison, which resulted in CMake erroring
due to wrong syntax.
Canonical link: https://commits.webkit.org/276019@main
Canonical link: https://commits.webkit.org/274313.88@webkitglib/2.44
Commit: b67becf51ef32112a6a5ad03f36f943253dfbebe
https://github.com/WebKit/WebKit/commit/b67becf51ef32112a6a5ad03f36f943253dfbebe
Author: Fujii Hironori <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/WebKit/Scripts/generate-serializers.py
Log Message:
-----------
Cherry-pick 275934@main (ca6b301ae49e).
https://bugs.webkit.org/show_bug.cgi?id=270770
[Clang] GeneratedSerializers.cpp(3716,11): error: offset of on
non-standard-layout type 'WebKit::AudioTrackPrivateRemoteConfiguration'
[-Werror,-Winvalid-offsetof]
https://bugs.webkit.org/show_bug.cgi?id=270770
Reviewed by Alex Christensen.
Clang 18.1.1 reports a warning for GeneratedSerializers.cpp:
> DerivedSources\GeneratedSerializers.cpp(3716,11): error: offset of on
non-standard-layout type 'WebKit::AudioTrackPrivateRemoteConfiguration'
[-Werror,-Winvalid-offsetof]
> 3716 | , offsetof(WebKit::AudioTrackPrivateRemoteConfiguration,
enabled)
> | ^
~~~~~~~
generate-serializers.py already suppresses the warning for GCC.
* Source/WebKit/Scripts/generate-serializers.py:
Ignore `invalid-offsetof` warning both for GCC and Clang.
Canonical link: https://commits.webkit.org/275934@main
Canonical link: https://commits.webkit.org/274313.89@webkitglib/2.44
Commit: 76f4db11d9982ef76ec8758fd6c62c3d5f146379
https://github.com/WebKit/WebKit/commit/76f4db11d9982ef76ec8758fd6c62c3d5f146379
Author: Fujii Hironori <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/JavaScriptCore/runtime/DatePrototype.cpp
Log Message:
-----------
Cherry-pick 275926@main (65fd9be34cc1).
https://bugs.webkit.org/show_bug.cgi?id=270769
[JSC][Clang] DatePrototype.cpp(337,29): error: 'snprintf' will always be
truncated; specified size is 28, but format string expands to at least 29
[-Werror,-Wformat-truncation]
https://bugs.webkit.org/show_bug.cgi?id=270769
Reviewed by Don Olmstead.
Clang 18 reports a false warning:
> JavaScriptCore/runtime/DatePrototype.cpp(337,29): error: 'snprintf' will
always be truncated; specified size is 28, but format string expands to at
least 29 [-Werror,-Wformat-truncation]
This problem is tracked by
<https://github.com/llvm/llvm-project/issues/71320>.
* Source/JavaScriptCore/runtime/DatePrototype.cpp:
Ignore the warning for Clang.
Canonical link: https://commits.webkit.org/275926@main
Canonical link: https://commits.webkit.org/274313.90@webkitglib/2.44
Commit: 8a13624c27b86a4c10ecc50f988991a0ffcaca80
https://github.com/WebKit/WebKit/commit/8a13624c27b86a4c10ecc50f988991a0ffcaca80
Author: Ryosuke Niwa <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/WebCore/dom/ActiveDOMObject.cpp
M Source/WebCore/dom/ActiveDOMObject.h
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/HTMLImageElement.cpp
M Source/WebCore/html/HTMLMarqueeElement.cpp
M Source/WebCore/html/HTMLMarqueeElement.h
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/html/HTMLSourceElement.cpp
M Source/WebCore/html/HTMLSourceElement.h
M Source/WebCore/html/HTMLTrackElement.cpp
M Source/WebCore/html/HTMLTrackElement.h
M Source/WebCore/html/track/TextTrack.cpp
M Source/WebCore/html/track/TextTrack.h
M Source/WebCore/html/track/TextTrackCue.cpp
M Source/WebCore/html/track/TextTrackCue.h
M Source/WebCore/html/track/TextTrackCueList.cpp
M Source/WebCore/html/track/TextTrackCueList.h
M Source/WebCore/html/track/TrackBase.cpp
M Source/WebCore/html/track/TrackBase.h
M Source/WebCore/html/track/TrackListBase.cpp
M Source/WebCore/html/track/TrackListBase.h
Log Message:
-----------
Cherry-pick 272448.471@safari-7618-branch (f2f5469a4376).
https://bugs.webkit.org/show_bug.cgi?id=268494
[ Monterey+ wk2 Release ]
media/track/media-element-enqueue-event-crash.html is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=268494
Reviewed by Chris Dumez.
This PR introduces ActiveDOMObject::didMoveToNewDocument, which migrates
ActiveDOMObject from
one document to another, and deploys it in every ActiveDOMObject owned by
Node subclasses such
as HTMLImageElement and TextTrackCue.
* Source/WebCore/dom/ActiveDOMObject.cpp:
(WebCore::ActiveDOMObject::didMoveToNewDocument):
* Source/WebCore/dom/ActiveDOMObject.h:
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::didMoveToNewDocument):
* Source/WebCore/html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::didMoveToNewDocument):
* Source/WebCore/html/HTMLMarqueeElement.cpp:
(WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
(WebCore::HTMLMarqueeElement::didMoveToNewDocument):
* Source/WebCore/html/HTMLMarqueeElement.h:
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::didMoveToNewDocument):
(WebCore::HTMLMediaElement::ensureMediaControls): Fixed a bug whereby which
this code tries
to initialize CSSFontSelector object, which is an active DOM object, in the
middle of
Document trying to stop itself.
(WebCore::HTMLMediaElement::isSuspended const): Added a debug assertion
that the script
execution context associated with Node superclass and ActiveDOMObject
superclass match.
* Source/WebCore/html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::HTMLSourceElement):
(WebCore::HTMLSourceElement::didMoveToNewDocument):
* Source/WebCore/html/HTMLSourceElement.h:
* Source/WebCore/html/HTMLTrackElement.cpp:
(WebCore::HTMLTrackElement::HTMLTrackElement):
(WebCore::HTMLTrackElement::didMoveToNewDocument):
* Source/WebCore/html/HTMLTrackElement.h:
* Source/WebCore/html/track/TextTrack.cpp:
(WebCore::TextTrack::protectedCues const):
(WebCore::TextTrack::didMoveToNewDocument):
* Source/WebCore/html/track/TextTrack.h:
* Source/WebCore/html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::didMoveToNewDocument):
* Source/WebCore/html/track/TextTrackCue.h:
* Source/WebCore/html/track/TextTrackCueList.cpp:
(WebCore::TextTrackCueList::didMoveToNewDocument):
* Source/WebCore/html/track/TextTrackCueList.h:
* Source/WebCore/html/track/TrackBase.cpp:
(WebCore::TrackBase::didMoveToNewDocument):
* Source/WebCore/html/track/TrackBase.h:
* Source/WebCore/html/track/TrackListBase.cpp:
(WebCore::TrackListBase::didMoveToNewDocument):
* Source/WebCore/html/track/TrackListBase.h:
Canonical link: https://commits.webkit.org/272448.471@safari-7618-branch
Canonical link: https://commits.webkit.org/274313.91@webkitglib/2.44
Commit: 7d9536886116bc2db98bd74875151238a4005c77
https://github.com/WebKit/WebKit/commit/7d9536886116bc2db98bd74875151238a4005c77
Author: Myah Cobbs <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
M Source/WebCore/bindings/js/SerializedScriptValue.cpp
M Source/WebCore/bindings/js/SerializedScriptValue.h
Log Message:
-----------
Cherry-pick c3c2a42ade13. https://bugs.webkit.org/show_bug.cgi?id=266806
Safari's IndexedDB data may not be deserialized correctly after system
upgrades
https://bugs.webkit.org/show_bug.cgi?id=266806
rdar://120031024
Reviewed by NOBODY (OOPS!).
To fix rdar://119834827, we introduce version 12.1 to SerializeScriptValue,
which changed the terminator of the indexed
property section in array compared to version 12. To make sure deserializer
knows to deserialize version 12.1, we encode
the minor version in the highest 8 bits of version number. We keep the
lowest 24 bit as major version number for
backward compatibility (the previously stored 32-bit major version number
can be intepreted as major version with minor
version 0).
* Source/WebCore/bindings/js/SerializedScriptValue.cpp:
(WebCore::majorVersionFor):
(WebCore::minorVersionFor):
(WebCore::makeVersion):
(WebCore::currentVersion):
(WebCore::CloneSerializer::serialize):
(WebCore::CloneSerializer::CloneSerializer):
(WebCore::CloneDeserializer::deserializeString):
(WebCore::CloneDeserializer::deserialize):
(WebCore::CloneDeserializer::isValid const):
(WebCore::CloneDeserializer::shouldRetryWithVersionUpgrade):
(WebCore::CloneDeserializer::upgradeVersion):
(WebCore::CloneDeserializer::read):
(WebCore::CloneDeserializer::readFile):
(WebCore::CloneDeserializer::readArrayBuffer):
(WebCore::CloneDeserializer::readArrayBufferView):
(WebCore::CloneDeserializer::readImageBitmap):
(WebCore::CloneDeserializer::readTerminal):
(WebCore::CloneDeserializer::version const): Deleted.
(WebCore::SerializedScriptValue::wireFormatVersion): Deleted.
* Source/WebCore/bindings/js/SerializedScriptValue.h:
Canonical link:
https://commits.webkit.org/[email protected]
Identifier: 270272.2255@safari-7618-branch
Canonical link: https://commits.webkit.org/274313.92@webkitglib/2.44
Commit: 6789d169e841c6c69cf4fc778fd139a3a2b1ac10
https://github.com/WebKit/WebKit/commit/6789d169e841c6c69cf4fc778fd139a3a2b1ac10
Author: Justin Michaud <[email protected]>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
A JSTests/wasm/stress/repro_1289.js
A JSTests/wasm/stress/repro_1289.wasm
A JSTests/wasm/stress/repro_1289.wat
M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
M Source/JavaScriptCore/wasm/WasmBBQJIT.cpp
M Source/JavaScriptCore/wasm/WasmBBQJIT.h
M Source/JavaScriptCore/wasm/WasmCallee.h
M Source/JavaScriptCore/wasm/WasmInstance.h
M Source/JavaScriptCore/wasm/WasmOperations.cpp
M Source/JavaScriptCore/wasm/WasmOperations.h
M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
M Source/JavaScriptCore/wasm/WasmThunks.cpp
M Source/JavaScriptCore/wasm/WasmThunks.h
Log Message:
-----------
Cherry-pick 272448.466@safari-7618-branch (a08ba6e8c208).
https://bugs.webkit.org/show_bug.cgi?id=268424
BBQJIT OSR Entry throws stack overflow from invalid frame
https://bugs.webkit.org/show_bug.cgi?id=268424
rdar://121251778
Reviewed by Yusuke Suzuki.
In this test case, we end up in a situation where the current LLInt frame is
above the soft stack limit. We then loop osr entry into BBQ, where we
perform a stack check and fail, but before we finish writing the OSR
entry buffer into our stack frame. The stack unwinder sees the BBQ callee
and we jump to that, but the frame is uninitialized.
The fix is two fold; we first make BBQ crash in this case to avoid a
security issue. We do the same for OMG, just in case this bug is
exploitable there too.
Second, we do a stack check before performing OSR entry, and fail early.
* JSTests/wasm/stress/repro_1289.js: Added.
(debuggingHelper):
(instantiateJsc):
(async let):
* JSTests/wasm/stress/repro_1289.wasm: Added.
* JSTests/wasm/stress/repro_1289.wat: Added.
* Source/JavaScriptCore/wasm/WasmBBQJIT.cpp:
(JSC::Wasm::BBQJIT::stackCheckSize const):
(JSC::Wasm::BBQJIT::addLoopOSREntrypoint):
(JSC::Wasm::parseAndCompileBBQ):
* Source/JavaScriptCore/wasm/WasmCallee.h:
* Source/JavaScriptCore/wasm/WasmInstance.h:
(JSC::Wasm::Instance::softStackLimit const):
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
* Source/JavaScriptCore/wasm/WasmOperations.h:
* Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:
(JSC::LLInt::WASM_SLOW_PATH_DECL):
* Source/JavaScriptCore/wasm/WasmThunks.cpp:
(JSC::Wasm::crashDueToBBQStackOverflow):
* Source/JavaScriptCore/wasm/WasmThunks.h:
Canonical link: https://commits.webkit.org/272448.466@safari-7618-branch
Canonical link: https://commits.webkit.org/274313.93@webkitglib/2.44
Compare: https://github.com/WebKit/WebKit/compare/3cf2b08d49dd...6789d169e841
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