From 0fc190e2efa7d3c58349db1aa9a2c221335729a8 Mon Sep 17 00:00:00 2001 From: Evgeny Khramtsov Date: Wed, 3 Jul 2019 09:54:56 +0300 Subject: [PATCH] Fix 'request_handlers' transformation Fixes #2925 --- src/ejabberd_config_transformer.erl | 36 ++++++++++++++++------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/src/ejabberd_config_transformer.erl b/src/ejabberd_config_transformer.erl index 82d9c4a15..35ab8ddf0 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(