summaryrefslogtreecommitdiff
path: root/src/ejabberd_config.erl
diff options
context:
space:
mode:
authorPaweł Chmielowski <pchmielowski@process-one.net>2015-08-06 17:45:19 +0200
committerPaweł Chmielowski <pchmielowski@process-one.net>2015-08-06 17:53:18 +0200
commitc71d57a05dec5bf427dcd603372efc9258b1bf65 (patch)
tree44d4b1dbe5f8b3093a6d6cc2de3f650546c5b71a /src/ejabberd_config.erl
parentAdd ability to override main config file options with data from included files (diff)
Handle merging of append_host_config as is done for host_config
Diffstat (limited to 'src/ejabberd_config.erl')
-rw-r--r--src/ejabberd_config.erl6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/ejabberd_config.erl b/src/ejabberd_config.erl
index a7ffac7d..abb295a7 100644
--- a/src/ejabberd_config.erl
+++ b/src/ejabberd_config.erl
@@ -378,8 +378,8 @@ get_config_option_key(Name, Val) ->
end.
maps_to_lists(IMap) ->
- maps:fold(fun(host_config, Map, Res) ->
- [{host_config, [{Host, maps_to_lists(SMap)} || {Host,SMap} <- maps:values(Map)]} | Res];
+ maps:fold(fun(Name, Map, Res) when Name == host_config orelse Name == append_host_config ->
+ [{Name, [{Host, maps_to_lists(SMap)} || {Host,SMap} <- maps:values(Map)]} | Res];
(Name, Map, Res) when is_map(Map) ->
[{Name, maps:values(Map)} | Res];
(Name, Val, Res) ->
@@ -391,7 +391,7 @@ merge_configs(Terms, ResMap) ->
lists:foldl(fun({Name, Val}, Map) when is_list(Val) ->
Old = maps:get(Name, Map, #{}),
New = lists:foldl(fun(SVal, OMap) ->
- NVal = if Name == host_config ->
+ NVal = if Name == host_config orelse Name == append_host_config ->
{Host, Opts} = SVal,
{_, SubMap} = maps:get(Host, OMap, {Host, #{}}),
{Host, merge_configs(Opts, SubMap)};