lib: restore global.module after --eval code is run

PR-URL: https://github.com/nodejs/node/pull/27587
Fixes: https://github.com/nodejs/node/issues/27575
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: John-David Dalton <john.david.dalton@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
This commit is contained in:
Anna Henningsen 2019-05-07 00:44:08 +02:00
parent f2a48c8245
commit b230833912
No known key found for this signature in database
GPG Key ID: 9C63F3A6CD2AD8F9

View File

@ -55,6 +55,7 @@ function evalScript(name, body, breakFirstLine, printResult) {
const { kVmBreakFirstLineSymbol } = require('internal/util');
const cwd = tryGetCwd();
const origModule = global.module; // Set e.g. when called from the REPL.
const module = new CJSModule(name);
module.filename = path.join(cwd, name);
@ -79,6 +80,9 @@ function evalScript(name, body, breakFirstLine, printResult) {
const { kStdout, print } = require('internal/util/print');
print(kStdout, result);
}
if (origModule !== undefined)
global.module = origModule;
}
const exceptionHandlerState = { captureFn: null };