diff --git a/build/jslib/node.js b/build/jslib/node.js index c117113d..df302077 100644 --- a/build/jslib/node.js +++ b/build/jslib/node.js @@ -105,7 +105,7 @@ req.makeNodeWrapper = function (contents) { return '(function (require, requirejs, define) { ' + contents + - '\n}(requirejsVars.require, requirejsVars.requirejs, requirejsVars.define));'; + '\n}(global.requirejsVars.require, global.requirejsVars.requirejs, global.requirejsVars.define));'; }; req.load = function (context, moduleName, url) { @@ -120,9 +120,8 @@ if (exists(url)) { contents = fs.readFileSync(url, 'utf8'); - contents = req.makeNodeWrapper(contents); try { - vm.runInThisContext(contents, fs.realpathSync(url)); + req.exec(contents, fs.realpathSync(url)); } catch (e) { err = new Error('Evaluating ' + url + ' as module "' + moduleName + '" failed with error: ' + e); @@ -170,9 +169,8 @@ }; //Override to provide the function wrapper for define/require. - req.exec = function (text) { - /*jslint evil: true */ + req.exec = function (text, realPath) { text = req.makeNodeWrapper(text); - return eval(text); + return vm.runInThisContext(text, realPath); }; -}()); \ No newline at end of file +}());