buffer: remove obsolete NaN check

These two NaN entries are not necessary and we can safely remove them.

PR-URL: https://github.com/nodejs/node/pull/18744
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
pull/18506/merge
Ruben Bridgewater 2018-02-13 00:58:22 +01:00
parent ef0e92eb82
commit 43b8ce4ce7
No known key found for this signature in database
GPG Key ID: F07496B3EB3C1762
2 changed files with 5 additions and 5 deletions

View File

@ -378,10 +378,7 @@ function fromArrayBuffer(obj, byteOffset, length) {
} else {
// convert length to non-negative integer
length = +length;
// Check for NaN
if (length !== length) {
length = 0;
} else if (length > 0) {
if (length > 0) {
if (length > maxLength)
throw new errors.RangeError('ERR_BUFFER_OUT_OF_BOUNDS', 'length');
} else {
@ -404,7 +401,7 @@ function fromObject(obj) {
}
if (obj.length !== undefined || isAnyArrayBuffer(obj.buffer)) {
if (typeof obj.length !== 'number' || obj.length !== obj.length) {
if (typeof obj.length !== 'number') {
return new FastBuffer();
}
return fromArrayLike(obj);

View File

@ -148,3 +148,6 @@ b.writeDoubleBE(11.11, 0, true);
message: '"length" is outside of buffer bounds'
});
}
// Test an array like entry with the length set to NaN.
assert.deepStrictEqual(Buffer.from({ length: NaN }), Buffer.alloc(0));