summaryrefslogtreecommitdiff
path: root/src/ejabberd_config_transformer.erl
diff options
context:
space:
mode:
authorEvgeny Khramtsov <ekhramtsov@process-one.net>2019-07-03 09:54:56 +0300
committerEvgeny Khramtsov <ekhramtsov@process-one.net>2019-07-03 09:54:56 +0300
commit0fc190e2efa7d3c58349db1aa9a2c221335729a8 (patch)
treebe5b79c3c033d14ef12778f50d3318acce36722f /src/ejabberd_config_transformer.erl
parentAvoid using ! in ejabberd_router and mod_offline (diff)
Fix 'request_handlers' transformation
Fixes #2925
Diffstat (limited to 'src/ejabberd_config_transformer.erl')
-rw-r--r--src/ejabberd_config_transformer.erl36
1 files changed, 20 insertions, 16 deletions
diff --git a/src/ejabberd_config_transformer.erl b/src/ejabberd_config_transformer.erl
index 82d9c4a1..35ab8ddf 100644
--- a/src/ejabberd_config_transformer.erl
+++ b/src/ejabberd_config_transformer.erl
@@ -267,22 +267,26 @@ replace_request_handlers(Opts) ->
(PathMod) ->
PathMod
end, Handlers1),
- lists:filtermap(
- fun({captcha, _}) -> false;
- ({register, _}) -> false;
- ({web_admin, _}) -> false;
- ({http_bind, _}) -> false;
- ({xmlrpc, _}) -> false;
- ({http_poll, _}) ->
- ?WARNING_MSG("Listening option 'http_poll' is "
- "ignored: HTTP Polling support was "
- "removed in ejabberd 15.04. ~s",
- [adjust_hint()]),
- false;
- ({request_handlers, _}) ->
- {true, {request_handlers, Handlers2}};
- (_) -> true
- end, Opts).
+ Opts1 = lists:filtermap(
+ fun({captcha, _}) -> false;
+ ({register, _}) -> false;
+ ({web_admin, _}) -> false;
+ ({http_bind, _}) -> false;
+ ({xmlrpc, _}) -> false;
+ ({http_poll, _}) ->
+ ?WARNING_MSG("Listening option 'http_poll' is "
+ "ignored: HTTP Polling support was "
+ "removed in ejabberd 15.04. ~s",
+ [adjust_hint()]),
+ false;
+ ({request_handlers, _}) ->
+ false;
+ (_) -> true
+ end, Opts),
+ case Handlers2 of
+ [] -> Opts1;
+ _ -> [{request_handlers, Handlers2}|Opts1]
+ end.
remove_xmlrpc_access_commands(Opts) ->
lists:filter(