diff --git a/lib/nodejsUtils.js b/lib/nodejsUtils.js index 0716cd57..83001064 100644 --- a/lib/nodejsUtils.js +++ b/lib/nodejsUtils.js @@ -17,6 +17,11 @@ module.exports = { if (Buffer.from && Buffer.from !== Uint8Array.from) { return Buffer.from(data, encoding); } else { + if (typeof data === "number") { + // Safeguard for old Node.js versions. On newer versions, + // Buffer.from(number) / Buffer(number, encoding) already throw. + throw new Error("The \"data\" argument must not be a number"); + } return new Buffer(data, encoding); } }, @@ -29,7 +34,9 @@ module.exports = { if (Buffer.alloc) { return Buffer.alloc(size); } else { - return new Buffer(size); + var buf = new Buffer(size); + buf.fill(0); + return buf; } }, /**