diff --git a/lib/plugin.js b/lib/plugin.js index c9b6162..31669a6 100644 --- a/lib/plugin.js +++ b/lib/plugin.js @@ -137,11 +137,18 @@ Plugin.installed = function() { var plugins = []; var pluginsByName = {}; // don't add duplicate plugins + var searchedPaths = {}; // don't search the same paths twice // search for plugins among all known paths, in order for (var index in Plugin.paths) { var requirePath = Plugin.paths[index]; + // did we already search this path? + if (searchedPaths[requirePath]) + continue; + + searchedPaths[requirePath] = true; + // just because this path is in require.main.paths doesn't mean it necessarily exists! if (!fs.existsSync(requirePath)) continue;