summaryrefslogtreecommitdiff
path: root/benchmark/buffers
diff options
context:
space:
mode:
authorSebastian Van Sande <sebastian@vansande.org>2017-02-03 16:05:28 +0100
committerRuben Bridgewater <ruben@bridgewater.de>2018-01-05 12:37:38 +0100
commitd964ffeec356167038b4060c867b355d5fea6987 (patch)
tree7cb701db6aa78aabf1739ee28e1ba240ad80b1db /benchmark/buffers
parenta9e422eee2b32bfed38aa78845305aac06720712 (diff)
downloadandroid-node-v8-d964ffeec356167038b4060c867b355d5fea6987.tar.gz
android-node-v8-d964ffeec356167038b4060c867b355d5fea6987.tar.bz2
android-node-v8-d964ffeec356167038b4060c867b355d5fea6987.zip
buffer: check byteLength in readInt(B|L)E
The 'byteLength' argument should be required and of type 'number'. It should have a value between 1 and 6. PR-URL: https://github.com/nodejs/node/pull/11146 Fixes: https://github.com/nodejs/node/issues/10515 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Michaƫl Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'benchmark/buffers')
-rw-r--r--benchmark/buffers/buffer-read.js22
1 files changed, 16 insertions, 6 deletions
diff --git a/benchmark/buffers/buffer-read.js b/benchmark/buffers/buffer-read.js
index 339da75bef..22f8dcbd3d 100644
--- a/benchmark/buffers/buffer-read.js
+++ b/benchmark/buffers/buffer-read.js
@@ -15,7 +15,9 @@ const types = [
'FloatLE',
'FloatBE',
'DoubleLE',
- 'DoubleBE'
+ 'DoubleBE',
+ 'IntLE',
+ 'IntBE',
];
const bench = common.createBenchmark(main, {
@@ -34,11 +36,19 @@ function main(conf) {
const fn = `read${type}`;
buff.writeDoubleLE(0, 0, noAssert);
- const testFunction = new Function('buff', `
- for (var i = 0; i !== ${len}; i++) {
- buff.${fn}(0, ${JSON.stringify(noAssert)});
- }
- `);
+
+ var call;
+ if (fn === 'readIntLE' || fn === 'readIntBE') {
+ call = `buff.${fn}(0, 1, ${JSON.stringify(noAssert)})`;
+ } else {
+ call = `buff.${fn}(0, ${JSON.stringify(noAssert)})`;
+ }
+
+ const testFunction = new Function(
+ 'buff',
+ `for (var i = 0; i !== ${len}; ++i) { ${call}; }`
+ );
+
bench.start();
testFunction(buff);
bench.end(len / 1e6);