serializing settings in renderer

This commit is contained in:
antelle 2020-05-22 22:17:36 +02:00
parent 08a0f6e587
commit e69219697a
No known key found for this signature in database
GPG Key ID: 63C9777AAB7C563C
2 changed files with 8 additions and 14 deletions

View File

@ -7,9 +7,11 @@ const logger = new Logger('settings');
const SettingsStore = {
load(key) {
if (Launcher) {
return Launcher.loadConfig(key).catch(err => {
logger.error(`Error loading ${key}`, err);
});
return Launcher.loadConfig(key)
.then(JSON.parse)
.catch(err => {
logger.error(`Error loading ${key}`, err);
});
}
return new Promise(resolve => {
const data = localStorage[StringFormat.camelCase(key)];

View File

@ -71,7 +71,7 @@ const settingsPromise = loadSettingsEncryptionKey().then(key => {
perfTimestamps?.push({ name: 'loading settings key', ts: process.hrtime() });
return loadConfig('app-settings').then(settings => {
appSettings = settings || {};
appSettings = settings ? JSON.parse(settings) : {};
perfTimestamps?.push({ name: 'reading app settings', ts: process.hrtime() });
});
});
@ -795,14 +795,10 @@ function loadConfig(name) {
const crypto = require('crypto');
const cipher = crypto.createDecipheriv('aes-256-cbc', key, iv);
data = Buffer.concat([cipher.update(data), cipher.final()]).toString('utf8');
} else {
data = data.toString('utf8');
data = Buffer.concat([cipher.update(data), cipher.final()]);
}
data = JSON.parse(data);
resolve(data);
resolve(data.toString('utf8'));
} catch (err) {
reject(`Error reading config data ${name}: ${err}`);
}
@ -817,10 +813,6 @@ function saveConfig(name, data, key) {
return new Promise((resolve, reject) => {
try {
if (typeof data !== 'string') {
data = JSON.stringify(data);
}
data = Buffer.from(data);
if (key) {