add check to make sure module exists before attempting to load it

This commit is contained in:
John Maguire 2013-03-20 19:34:55 -04:00
parent 6a968d5945
commit 3dd24e832d

13
run.js
View File

@ -155,9 +155,16 @@ DBot.prototype.reloadModules = function() {
this.instance.removeListeners();
moduleNames.each(function(name) {
this.status[name] = true;
var moduleDir = './modules/' + name + '/';
var cacheKey = require.resolve(moduleDir + name);
delete require.cache[cacheKey];
try {
var cacheKey = require.resolve(moduleDir + name);
delete require.cache[cacheKey];
} catch(err) {
this.status[name] = 'Error loading module: ' + err + ' ' + err.stack.split('\n')[2].trim();
return;
}
try {
var webKey = require.resolve(moduleDir + 'web');
@ -167,8 +174,6 @@ DBot.prototype.reloadModules = function() {
delete require.cache[webKey];
}
this.status[name] = true;
try {
// Load the module config data
var config = {};