diff --git a/src/listeners/messageInvalid.js b/src/listeners/messageInvalid.js index 8fe32e1..a2f3916 100644 --- a/src/listeners/messageInvalid.js +++ b/src/listeners/messageInvalid.js @@ -29,13 +29,7 @@ class MessageInvalidListener extends Listener { let errored = false; let result; try { - const { stdout, stderr } = await this.client.languageHandler.evalCode(parse); - if (stderr) { - errored = true; - result = stderr; - } else { - result = stdout; - } + ({ output: result, hasStderr: errored } = await this.client.languageHandler.evalCode(parse)); } catch (e) { errored = true; result = e.message; diff --git a/src/struct/LanguageHandler.js b/src/struct/LanguageHandler.js index f20df39..068b957 100644 --- a/src/struct/LanguageHandler.js +++ b/src/struct/LanguageHandler.js @@ -155,15 +155,16 @@ class LanguageHandler extends AkairoHandler { }, timeout); } - let stdout = ''; - let stderr = ''; + let output = ''; + let hasStderr = false; let error; proc.stdout.on('data', chunk => { - stdout += chunk; + output += chunk; }); proc.stderr.on('data', chunk => { - stderr += chunk; + hasStderr = true; + output += chunk; }); proc.on('error', e => { @@ -175,12 +176,12 @@ class LanguageHandler extends AkairoHandler { handled = true; if (status !== 0 || error) { if (!error) { - error = new Error(stderr || 'Something went wrong'); + error = new Error(output || 'Something went wrong'); } reject(error); } else { - resolve({ stdout, stderr }); + resolve({ output, hasStderr }); } } });