From c15683d206c3bcfbaa1fa81f1c57836a34974e83 Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Sun, 26 Sep 2021 11:08:21 -0400 Subject: Ensure frequency values are always numbers (#1943) --- ext/js/language/translator.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'ext/js') diff --git a/ext/js/language/translator.js b/ext/js/language/translator.js index 1abf9f4e..056ff3a7 100644 --- a/ext/js/language/translator.js +++ b/ext/js/language/translator.js @@ -866,7 +866,7 @@ class Translator { dictionaryIndex, dictionaryPriority, hasReading, - frequency + this._convertFrequency(frequency) )); } } @@ -920,7 +920,7 @@ class Translator { dictionaryIndex, dictionaryPriority, character, - data + this._convertFrequency(data) )); } break; @@ -971,6 +971,18 @@ class Translator { }); } + _convertFrequency(value) { + switch (typeof value) { + case 'number': + return value; + case 'string': + value = Number.parseFloat(value); + return Number.isFinite(value) ? value : 0; + default: + return 0; + } + } + // Helpers _getNameBase(name) { -- cgit v1.2.3