diff --git a/src/clientManager.js b/src/clientManager.js index 9848ebbb..24d359bd 100644 --- a/src/clientManager.js +++ b/src/clientManager.js @@ -132,13 +132,7 @@ ClientManager.prototype.updateUser = function(name, opts, callback) { const user = readUserConfig(name); if (!user) { - log.error(`Tried to update invalid user ${colors.green(name)}. This is most likely a bug.`); - - if (callback) { - callback(true); - } - - return false; + return callback ? callback(true) : false; } const currentUser = JSON.stringify(user, null, "\t"); @@ -159,8 +153,6 @@ ClientManager.prototype.updateUser = function(name, opts, callback) { if (callback) { callback(e); } - - throw e; } }; @@ -185,6 +177,12 @@ function readUserConfig(name) { return false; } - const data = fs.readFileSync(userPath, "utf-8"); - return JSON.parse(data); + try { + const data = fs.readFileSync(userPath, "utf-8"); + return JSON.parse(data); + } catch (e) { + log.error(`Failed to read user ${colors.bold(name)}: ${e}`); + } + + return false; }