// workaround for tty output truncation on Node.js try { // prevent buffer overflow and other asynchronous bugs process.stdout._handle.setBlocking(true); process.stderr._handle.setBlocking(true); } catch (e) { // ensure output buffers are flushed before process termination var exit = process.exit; process.exit = function() { var args = [].slice.call(arguments); process.once("uncaughtException", function() { (function callback() { if (process.stdout.bufferSize || process.stderr.bufferSize) { setTimeout(callback, 1); } else { exit.apply(process, args); } })(); }); throw exit; }; }