diff --git a/lib/fs.js b/lib/fs.js index f582545d0fb2..f89b597224e8 100644 --- a/lib/fs.js +++ b/lib/fs.js @@ -91,9 +91,12 @@ function maybeCallback(cb) { // for callbacks that are passed to the binding layer, callbacks that are // invoked from JS already run in the proper scope. function makeCallback(cb) { - if (!util.isFunction(cb)) { + if (util.ifNullOrUndefined(cb)) { return rethrow(); } + if (!util.isFunction(cb)) { + throw new Error('callback must be a function'); + } return function() { return cb.apply(null, arguments);