diff options
author | Paweł Chmielowski <pchmielowski@process-one.net> | 2015-08-06 17:45:19 +0200 |
---|---|---|
committer | Paweł Chmielowski <pchmielowski@process-one.net> | 2015-08-06 17:53:18 +0200 |
commit | c71d57a05dec5bf427dcd603372efc9258b1bf65 (patch) | |
tree | 44d4b1dbe5f8b3093a6d6cc2de3f650546c5b71a /src/ejabberd_config.erl | |
parent | Add 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.erl | 6 |
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)}; |