zlib: throw TypeError if callback is missing · nodejs/node@9a26546 (original) (raw)

2 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -73,6 +73,8 @@ for (var ck = 0; ck < ckeys.length; ck++) {
73 73 }
74 74
75 75 function zlibBuffer(engine, buffer, callback) {
76 +if (typeof callback !== 'function')
77 +throw new ERR_INVALID_ARG_TYPE('callback', 'function', callback);
76 78 // Streams do not support non-Buffer ArrayBufferViews yet. Convert it to a
77 79 // Buffer without copying.
78 80 if (isArrayBufferView(buffer) &&
Original file line number Diff line number Diff line change
@@ -119,3 +119,13 @@ for (const [type, expect] of [
119 119 }
120 120 }
121 121 }
122 +
123 +common.expectsError(
124 +() => zlib.gzip('abc'),
125 +{
126 +code: 'ERR_INVALID_ARG_TYPE',
127 +type: TypeError,
128 +message: 'The "callback" argument must be of type function. ' +
129 +'Received type undefined'
130 +}
131 +);