diff options
| author | Daniil Fedotov <daniil@rabbitmq.com> | 2016-12-21 16:12:47 +0000 |
|---|---|---|
| committer | Gerhard Lazu <gerhard@rabbitmq.com> | 2016-12-21 16:12:47 +0000 |
| commit | d616cc922dbd73eca7700c50f09e33e6b578b0d9 (patch) | |
| tree | 1d6fe7b31845fde5264a5b63d7b4d23fdb1c1a71 /src | |
| parent | cbbcc3e32f97b6047b4f82f0776717dd3e85430c (diff) | |
| download | rabbitmq-server-git-d616cc922dbd73eca7700c50f09e33e6b578b0d9.tar.gz | |
Fix listing active plugins with multiple plugin directories
Bug introduced in https://github.com/rabbitmq/rabbitmq-server/pull/1064
Signed-off-by: Gerhard Lazu <gerhard@rabbitmq.com>
[#136495407]
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_plugins.erl | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/rabbit_plugins.erl b/src/rabbit_plugins.erl index 171448b05c..9da68b7640 100644 --- a/src/rabbit_plugins.erl +++ b/src/rabbit_plugins.erl @@ -140,9 +140,14 @@ active() -> lists:member(App, LoadedPluginNames)]. loaded_plugin_names() -> - {ok, PluginsDir} = application:get_env(rabbit, plugins_dir), - PluginsDirComponents = filename:split(PluginsDir), - loaded_plugin_names(code:get_path(), PluginsDirComponents, []). + {ok, PluginsPath} = application:get_env(rabbit, plugins_dir), + PluginsDirs = split_path(PluginsPath), + lists:flatmap( + fun(PluginsDir) -> + PluginsDirComponents = filename:split(PluginsDir), + loaded_plugin_names(code:get_path(), PluginsDirComponents, []) + end, + PluginsDirs). loaded_plugin_names([Path | OtherPaths], PluginsDirComponents, PluginNames) -> case lists:sublist(filename:split(Path), length(PluginsDirComponents)) of |
