UNPKG

758 BJavaScriptView Raw
1// workaround for tty output truncation on Node.js
2try {
3 // prevent buffer overflow and other asynchronous bugs
4 process.stdout._handle.setBlocking(true);
5 process.stderr._handle.setBlocking(true);
6} catch (e) {
7 // ensure output buffers are flushed before process termination
8 var exit = process.exit;
9 process.exit = function() {
10 var args = [].slice.call(arguments);
11 process.once("uncaughtException", function() {
12 (function callback() {
13 if (process.stdout.bufferSize || process.stderr.bufferSize) {
14 setTimeout(callback, 1);
15 } else {
16 exit.apply(process, args);
17 }
18 })();
19 });
20 throw exit;
21 };
22}