From 0b74a931549d6c232b375e3b5fe567fca70a50c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Loi=CC=88c=20Correnson?= <loic.correnson@cea.fr> Date: Tue, 11 Feb 2020 16:19:59 +0100 Subject: [PATCH] [Ivette/server] console auto-scrolling --- Ivette/src/frama-c/server.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Ivette/src/frama-c/server.js b/Ivette/src/frama-c/server.js index ee6e22f047e..dc581f43324 100644 --- a/Ivette/src/frama-c/server.js +++ b/Ivette/src/frama-c/server.js @@ -322,15 +322,20 @@ async function _launch() { buffer.append(argv); }); buffer.append('\n'); - process.stdout.on('data', buffer.append ); - process.stderr.on('data', buffer.append ); + const logger = (text) => { + buffer.append(text); + if (0 <= text.indexOf('\n')) + buffer.scroll(); + }; + process.stdout.on('data', logger ); + process.stderr.on('data', logger ); process.on('error', (err) => { buffer.append('Error:',err,'\n'); _close(err); }); process.on('exit', (status,signal) => { - signal && buffer.append('Signal:',signal,'\n'); - status && buffer.append('Exit:',status,'\n'); + signal && buffer.log('Signal:',signal); + status && buffer.log('Exit:',status); _close(signal || status); }); // Connect to Server -- GitLab