Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Revert "Revert "repl: disable Ctrl+C support..."
Full original message:

  Revert "repl: disable Ctrl+C support on win32 for now"

The original fix was a stop gap until a libuv update landed.
As the libuv update has not yet landed on v6.x the revert should
not have landed. This commit reverts 1d400ea reapplying the
stopgap fix until we update libuv.

Fixes: #12085
Refs: #8645

PR-URL: #12123
Reviewed-By: Anna Henningsen <anna@addaleax.net>
  • Loading branch information
MylesBorins committed Mar 29, 2017
commit 64fc5a45417e5d487f163af686ee89bd5444c19f
11 changes: 9 additions & 2 deletions lib/repl.js
Original file line number Diff line number Diff line change
Expand Up @@ -322,7 +322,13 @@ function REPLServer(prompt,
if (!err) {
// Unset raw mode during evaluation so that Ctrl+C raises a signal.
let previouslyInRawMode;
if (self.breakEvalOnSigint) {

// Temporarily disabled on Windows due to output problems that likely
// result from the raw mode switches here, see
// https://github.com/nodejs/node/issues/7837
// Setting NODE_REPL_CTRLC is meant as a temporary opt-in for debugging.
if (self.breakEvalOnSigint &&
(process.platform !== 'win32' || process.env.NODE_REPL_CTRLC)) {
// Start the SIGINT watchdog before entering raw mode so that a very
// quick Ctrl+C doesn’t lead to aborting the process completely.
utilBinding.startSigintWatchdog();
Expand All @@ -342,7 +348,8 @@ function REPLServer(prompt,
result = script.runInContext(context, scriptOptions);
}
} finally {
if (self.breakEvalOnSigint) {
if (self.breakEvalOnSigint &&
(process.platform !== 'win32' || process.env.NODE_REPL_CTRLC)) {
// Reset terminal mode to its previous value.
self._setRawMode(previouslyInRawMode);

Expand Down