From a196f9a9de50010604ad3cbd00e775f1b8f30a7d Mon Sep 17 00:00:00 2001 From: cpsdqs Date: Sun, 24 Sep 2017 10:39:28 +0200 Subject: [PATCH] Refactor and fix getColor returning undefined --- js/term/screen_parser.js | 11 +++++++---- js/term/screen_renderer.js | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/js/term/screen_parser.js b/js/term/screen_parser.js index 77e7112..324c545 100644 --- a/js/term/screen_parser.js +++ b/js/term/screen_parser.js @@ -1,6 +1,6 @@ const $ = require('../lib/chibi') const { qs } = require('../utils') -const { themes, defThemes } = require('./themes') +const { themes } = require('./themes') // constants for decoding the update blob const SEQ_REPEAT = 2 @@ -160,7 +160,7 @@ module.exports = class ScreenParser { case SEQ_REPEAT: let count = strArray[i++].codePointAt(0) - 1 for (let j = 0; j < count; j++) { - setCellContent(cell) + setCellContent() if (++cell > screenLength) break } break @@ -189,7 +189,7 @@ module.exports = class ScreenParser { default: if (charCode < 32) character = '\ufffd' lastChar = character - setCellContent(cell) + setCellContent() cell++ } } @@ -223,7 +223,10 @@ module.exports = class ScreenParser { /** * Loads a message from the server, and optionally a theme. * @param {string} str - the message - * @param {object} [opts] - options { [int] theme, [int] defaultFg, [int] defaultBg } + * @param {object} [opts] - options + * @param {number} [opts.theme] - theme + * @param {number} [opts.defaultFg] - default foreground + * @param {number} [opts.defaultBg] - default background */ load (str, opts = null) { const content = str.substr(1) diff --git a/js/term/screen_renderer.js b/js/term/screen_renderer.js index 1bd54ee..a557351 100644 --- a/js/term/screen_renderer.js +++ b/js/term/screen_renderer.js @@ -89,7 +89,7 @@ module.exports = class ScreenRenderer { */ getColor (i) { // return palette color if it exists - if (i < 16) return this.palette[i] + if (i < 16 && i in this.palette) return this.palette[i] // -1 for selection foreground, -2 for selection background if (i === -1) return SELECTION_FG