fix db loading logic and check the file exists before attempting to load [#163]

This commit is contained in:
reality 2013-01-24 20:51:38 +00:00
parent 447bcbabf8
commit c1aa8db815

18
run.js
View File

@ -6,24 +6,20 @@ require('./snippets');
var DBot = function(timers) { var DBot = function(timers) {
// Load DB // Load DB
var rawDB; if(fs.existsSync('db.json')) {
try { try {
var rawDB = fs.readFileSync('db.json', 'utf-8'); this.db = JSON.parse(fs.readFileSync('db.json', 'utf-8'));
} catch(err) { } catch(err) {
this.db = {}; // If no db file, make empty one console.log('Error loading db.json. Stopping: ' + err);
process.exit();
}
} else {
this.db = {};
} }
try {
if(!this.db) { // If it wasn't empty
this.db = JSON.parse(rawDB);
}
if(!_.has(this.db, 'config')) { if(!_.has(this.db, 'config')) {
this.db.config = {}; this.db.config = {};
} }
} catch(err) {
console.log('Syntax error in db.json. Stopping: ' + err);
process.exit();
}
// Load config // Load config
this.config = _.clone(this.db.config); this.config = _.clone(this.db.config);