diff --git a/lib/internal/module.js b/lib/internal/module.js index 5fa77a11126..c3dede40fa3 100644 --- a/lib/internal/module.js +++ b/lib/internal/module.js @@ -27,6 +27,10 @@ function makeRequireFunction(mod) { require.resolve = resolve; function paths(request) { + if (typeof request !== 'string') { + throw new errors.Error('ERR_INVALID_ARG_TYPE', + 'request', 'string', request); + } return Module._resolveLookupPaths(request, mod, true); } diff --git a/test/parallel/test-require-resolve.js b/test/parallel/test-require-resolve.js index a2bc05ada4d..2916f3709e3 100644 --- a/test/parallel/test-require-resolve.js +++ b/test/parallel/test-require-resolve.js @@ -47,4 +47,11 @@ const re = /^The "request" argument must be of type string\. Received type \w+$/ code: 'ERR_INVALID_ARG_TYPE', message: re }); + + common.expectsError( + () => { require.resolve.paths(value); }, + { + code: 'ERR_INVALID_ARG_TYPE', + message: re + }); });