summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/pluginslist.js9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/pluginslist.js b/lib/pluginslist.js
index 0631922..35ba8c3 100644
--- a/lib/pluginslist.js
+++ b/lib/pluginslist.js
@@ -42,20 +42,19 @@ PluginsList.prototype.load = function(plugin, options) {
if (_.isArray(plugin)) {
return _.reduce(plugin, function(prev, p) {
- prev.then(function() {
+ return prev.then(function() {
return that.load(p);
});
}, Q());
}
- if (_.isString(plugin)) {
- plugin = new Plugin(this.book, plugin);
- }
+ if (_.isObject(plugin) && !(plugin instanceof Plugin)) plugin = plugin.name;
+ if (_.isString(plugin)) plugin = new Plugin(this.book, plugin);
that.log.info("load plugin", plugin.name, "....");
if (!plugin.isValid()) {
that.log.info.fail();
that.failed.push(plugin.name);
- return;
+ return Q();
} else {
that.log.info.ok();