Title: [191956] trunk/Source/WebCore
- Revision
- 191956
- Author
- youenn.fab...@crf.canon.fr
- Date
- 2015-11-03 10:29:59 -0800 (Tue, 03 Nov 2015)
Log Message
[Streams API] Vended promise capabilities should not need @resolve/@reject fields
https://bugs.webkit.org/show_bug.cgi?id=150835
Reviewed by Darin Adler.
No change in behavior, covered by existing tests.
* Modules/streams/ReadableStreamInternals.js:
(privateInitializeReadableStreamReader): Removed @resolve/@reject fields from resolved/rejected @closedPromiseCapability.
* Modules/streams/WritableStream.js:
(initializeWritableStream): Removed @resolve/@reject fields from resolved readyPromiseCapability.
* Modules/streams/WritableStreamInternals.js:
(syncWritableStreamStateWithQueue): Updated code to be closer to spec and removing the need to resolve an already resolved promise.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (191955 => 191956)
--- trunk/Source/WebCore/ChangeLog 2015-11-03 18:24:34 UTC (rev 191955)
+++ trunk/Source/WebCore/ChangeLog 2015-11-03 18:29:59 UTC (rev 191956)
@@ -1,3 +1,19 @@
+2015-11-03 Youenn Fablet <youenn.fab...@crf.canon.fr>
+
+ [Streams API] Vended promise capabilities should not need @resolve/@reject fields
+ https://bugs.webkit.org/show_bug.cgi?id=150835
+
+ Reviewed by Darin Adler.
+
+ No change in behavior, covered by existing tests.
+
+ * Modules/streams/ReadableStreamInternals.js:
+ (privateInitializeReadableStreamReader): Removed @resolve/@reject fields from resolved/rejected @closedPromiseCapability.
+ * Modules/streams/WritableStream.js:
+ (initializeWritableStream): Removed @resolve/@reject fields from resolved readyPromiseCapability.
+ * Modules/streams/WritableStreamInternals.js:
+ (syncWritableStreamStateWithQueue): Updated code to be closer to spec and removing the need to resolve an already resolved promise.
+
2015-11-03 Hunseop Jeong <hs85.je...@samsung.com>
Replace 0 and NULL with nullptr in WebCore/dom.
Modified: trunk/Source/WebCore/Modules/streams/ReadableStreamInternals.js (191955 => 191956)
--- trunk/Source/WebCore/Modules/streams/ReadableStreamInternals.js 2015-11-03 18:24:34 UTC (rev 191955)
+++ trunk/Source/WebCore/Modules/streams/ReadableStreamInternals.js 2015-11-03 18:29:59 UTC (rev 191956)
@@ -48,13 +48,13 @@
if (stream.@state === @streamClosed) {
this.@ownerReadableStream = null;
this.@storedError = undefined;
- this.@closedPromiseCapability = { @promise: Promise.resolve(undefined), @resolve: function() {}, @reject: function() {} };
+ this.@closedPromiseCapability = { @promise: Promise.resolve(undefined) };
return this;
}
// FIXME: ASSERT(stream.@state === @streamErrored);
this.@ownerReadableStream = null;
this.@storedError = stream.@storedError;
- this.@closedPromiseCapability = { @promise: Promise.reject(stream.@storedError), @resolve: function() {}, @reject: function() {} };
+ this.@closedPromiseCapability = { @promise: Promise.reject(stream.@storedError) };
return this;
}
Modified: trunk/Source/WebCore/Modules/streams/WritableStream.js (191955 => 191956)
--- trunk/Source/WebCore/Modules/streams/WritableStream.js 2015-11-03 18:24:34 UTC (rev 191955)
+++ trunk/Source/WebCore/Modules/streams/WritableStream.js 2015-11-03 18:29:59 UTC (rev 191956)
@@ -43,7 +43,7 @@
this.@underlyingSink = underlyingSink;
this.@closedPromiseCapability = @newPromiseCapability(Promise);
- this.@readyPromiseCapability = { @promise: Promise.resolve(undefined), @resolve: function() {}, @reject: function() {} };
+ this.@readyPromiseCapability = { @promise: Promise.resolve(undefined) };
this.@queue = @newQueue();
this.@state = @streamWritable;
this.@started = false;
Modified: trunk/Source/WebCore/Modules/streams/WritableStreamInternals.js (191955 => 191956)
--- trunk/Source/WebCore/Modules/streams/WritableStreamInternals.js 2015-11-03 18:24:34 UTC (rev 191955)
+++ trunk/Source/WebCore/Modules/streams/WritableStreamInternals.js 2015-11-03 18:29:59 UTC (rev 191956)
@@ -39,20 +39,20 @@
"use strict";
if (stream.@state === @streamClosing)
- return undefined;
+ return;
// FIXME
// assert(stream.@state === @streamWritable || stream.@state === @streamWaiting);
- if (stre...@queue.size > stream.@strategy.highWaterMark) {
+ const shouldApplyBackpressure = stre...@queue.size > stream.@strategy.highWaterMark;
+ if (shouldApplyBackpressure && stream.@state === @streamWritable) {
stream.@state = @streamWaiting;
stream.@readyPromiseCapability = @newPromiseCapability(Promise);
- } else {
+ }
+ if (!shouldApplyBackpressure && stream.@state === @streamWaiting) {
stream.@state = @streamWritable;
stream.@readyPromiseCapability.@resolve.@call(undefined, undefined);
}
-
- return undefined;
}
function errorWritableStream(e)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes