Skip to content

Commit f1bc994

Browse files
kylo5abytargos
authored andcommitted
buffer: remove lines setting indexes to integer value
PR-URL: #52588 Refs: #52585 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
1 parent 15aad62 commit f1bc994

File tree

2 files changed

+21
-2
lines changed

2 files changed

+21
-2
lines changed

lib/internal/blob.js

-2
Original file line numberDiff line numberDiff line change
@@ -243,14 +243,12 @@ class Blob {
243243
} else {
244244
start = MathMin(start, this[kLength]);
245245
}
246-
start |= 0;
247246

248247
if (end < 0) {
249248
end = MathMax(this[kLength] + end, 0);
250249
} else {
251250
end = MathMin(end, this[kLength]);
252251
}
253-
end |= 0;
254252

255253
contentType = `${contentType}`;
256254
if (RegExpPrototypeExec(disallowedTypeCharacters, contentType) !== null) {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
'use strict';
2+
const common = require('../common');
3+
4+
// Buffer with size > INT32_MAX
5+
common.skipIf32Bits();
6+
7+
const assert = require('assert');
8+
9+
const size = 2 ** 31;
10+
11+
try {
12+
const buf = Buffer.allocUnsafe(size);
13+
const blob = new Blob([buf]);
14+
const slicedBlob = blob.slice(size - 1, size);
15+
assert.strictEqual(slicedBlob.size, 1);
16+
} catch (e) {
17+
if (e.code !== 'ERR_MEMORY_ALLOCATION_FAILED') {
18+
throw e;
19+
}
20+
common.skip('insufficient space for Buffer.allocUnsafe');
21+
}

0 commit comments

Comments
 (0)