aboutsummaryrefslogtreecommitdiff
path: root/src/mod_disco.erl
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2017-01-23 13:51:05 +0300
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2017-01-23 13:51:05 +0300
commit435e5e62634b542c2a42673bea7f81e9cc2a5c04 (patch)
treeb927d972c426ca5ea4ce20343e4eb981848934e8 /src/mod_disco.erl
parentMake a message is not bounced if it's archived (diff)
Make test suite working again
Diffstat (limited to '')
-rw-r--r--src/mod_disco.erl9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mod_disco.erl b/src/mod_disco.erl
index 73f691dc6..2de8679ee 100644
--- a/src/mod_disco.erl
+++ b/src/mod_disco.erl
@@ -175,13 +175,16 @@ get_local_identity(Acc, _From, _To, _Node, _Lang) ->
get_local_features({error, _Error} = Acc, _From, _To,
_Node, _Lang) ->
Acc;
-get_local_features(Acc, _From, _To, <<"">>, _Lang) ->
+get_local_features(Acc, _From, To, <<"">>, _Lang) ->
Feats = case Acc of
{result, Features} -> Features;
empty -> []
end,
- {result, [<<"iq">>, <<"presence">>,
- ?NS_DISCO_INFO, ?NS_DISCO_ITEMS |Feats]};
+ {result, lists:usort(
+ lists:flatten(
+ [<<"iq">>, <<"presence">>,
+ ?NS_DISCO_INFO, ?NS_DISCO_ITEMS, Feats,
+ ejabberd_local:get_features(To#jid.lserver)]))};
get_local_features(Acc, _From, _To, _Node, Lang) ->
case Acc of
{result, _Features} -> Acc;