summaryrefslogtreecommitdiff
path: root/cli/js/web/streams/internals.ts
diff options
context:
space:
mode:
authorMarcos Casagrande <marcoscvp90@gmail.com>2020-05-21 02:18:43 +0200
committerGitHub <noreply@github.com>2020-05-20 20:18:43 -0400
commit47b089ffa8c6dc06638b3cf0d240817a744108eb (patch)
tree5a42377c7edcff99265cef5982364f07e1dc66a4 /cli/js/web/streams/internals.ts
parent30702e2678200b6e21ba142347d2d213b86e9c6d (diff)
fix: streams hwm validation (#5681)
Diffstat (limited to 'cli/js/web/streams/internals.ts')
-rw-r--r--cli/js/web/streams/internals.ts8
1 files changed, 4 insertions, 4 deletions
diff --git a/cli/js/web/streams/internals.ts b/cli/js/web/streams/internals.ts
index 5ef094afc..e2e7bbc0a 100644
--- a/cli/js/web/streams/internals.ts
+++ b/cli/js/web/streams/internals.ts
@@ -140,7 +140,7 @@ function createReadableStream<T>(
highWaterMark = 1,
sizeAlgorithm: SizeAlgorithm<T> = (): number => 1
): ReadableStreamImpl<T> {
- assert(isNonNegativeNumber(highWaterMark));
+ highWaterMark = validateAndNormalizeHighWaterMark(highWaterMark);
const stream: ReadableStreamImpl<T> = Object.create(
ReadableStreamImpl.prototype
);
@@ -168,7 +168,7 @@ function createWritableStream<W>(
highWaterMark = 1,
sizeAlgorithm: SizeAlgorithm<W> = (): number => 1
): WritableStreamImpl<W> {
- assert(isNonNegativeNumber(highWaterMark));
+ highWaterMark = validateAndNormalizeHighWaterMark(highWaterMark);
const stream = Object.create(WritableStreamImpl.prototype);
initializeWritableStream(stream);
const controller = Object.create(
@@ -324,7 +324,7 @@ function isNonNegativeNumber(v: unknown): v is number {
if (typeof v !== "number") {
return false;
}
- if (v === NaN) {
+ if (Number.isNaN(v)) {
return false;
}
if (v < 0) {
@@ -1872,7 +1872,7 @@ export function validateAndNormalizeHighWaterMark(
highWaterMark: number
): number {
highWaterMark = Number(highWaterMark);
- if (highWaterMark === NaN || highWaterMark < 0) {
+ if (Number.isNaN(highWaterMark) || highWaterMark < 0) {
throw new RangeError(
`highWaterMark must be a positive number or Infinity. Received: ${highWaterMark}.`
);