Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: fc9ae5401e788cdbd02054cdc80a11bf91c67f59
https://github.com/WebKit/WebKit/commit/fc9ae5401e788cdbd02054cdc80a11bf91c67f59
Author: Youenn Fablet <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M
LayoutTests/imported/w3c/web-platform-tests/streams/piping/abort.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/piping/abort.any.serviceworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/piping/abort.any.sharedworker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/streams/piping/abort.any.worker-expected.txt
M Source/WebCore/Modules/streams/StreamPipeToUtilities.cpp
Log Message:
-----------
Fix WebKit-only failures in streams/piping/abort.any.html
rdar://167841090
https://bugs.webkit.org/show_bug.cgi?id=305196
Reviewed by Chris Dumez.
The readable stream built-in implementation is relying on an older version of
the spec where read requests were only promises.
The spec is now using read requests which is useful for the pipeTo algorithm.
This creates a mismatch between the pipeTo algorithm and the built-in readable
stream implementation.
In particular, pipeTo algorithm may know that a readable gets closed before it
knows that the last read request is fulfilled.
This is due to the pipeTo read requests being called once a promise resolves,
while it should be synchronous.
To work-around that issue until we rework the readable stream implementation,
StreamPipeToState will keep in memory that pipeTo is shutting down due to
readable being closed.
In that case, we wait for the pending read request (which is actually
fulfilled) before proceeding with the finalization of pipeTo.
Covered by rebased tests.
Canonical link: https://commits.webkit.org/305455@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications