diff --git a/lib/readline.js b/lib/readline.js index 3ba30f355b..6a4652c22e 100644 --- a/lib/readline.js +++ b/lib/readline.js @@ -46,15 +46,21 @@ function Interface (output, completer) { this.history = []; this.historyIndex = -1; + + exports.columns = process.binding('stdio').getColumns(); + + if (process.listeners("SIGWINCH").length === 0) { + process.on("SIGWINCH", function () { + exports.columns = process.binding('stdio').getColumns(); + }); + } } } inherits(Interface, EventEmitter); Interface.prototype.__defineGetter__("columns", function () { - if (this.enabled) { - return stdio.getColumns(); - } + return exports.columns; }); Interface.prototype.setPrompt = function (prompt, length) {