From 1d62dc462183efb0f423e3eddfdc87f5283ea693 Mon Sep 17 00:00:00 2001 From: Badlop Date: Tue, 7 Jun 2022 12:07:23 +0200 Subject: [PATCH] Set roster name from XEP-0172, or the stored one (#1611) --- src/mod_roster.erl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/mod_roster.erl b/src/mod_roster.erl index d537a0933..7ea3dac81 100644 --- a/src/mod_roster.erl +++ b/src/mod_roster.erl @@ -619,6 +619,7 @@ process_subscription(Direction, User, Server, JID1, {Subscription, Pending} -> NewItem = Item#roster{subscription = Subscription, ask = Pending, + name = get_nick_subels(SubEls, Item#roster.name), xs = SubEls, askmessage = AskMessage}, roster_subscribe_t(LUser, LServer, LJID, NewItem), @@ -657,6 +658,12 @@ process_subscription(Direction, User, Server, JID1, false end. +get_nick_subels(SubEls, Default) -> + case xmpp:get_subtag(#presence{sub_els = SubEls}, #nick{}) of + {nick, N} -> N; + _ -> Default + end. + %% in_state_change(Subscription, Pending, Type) -> NewState %% NewState = none | {NewSubscription, NewPending} -ifdef(ROSTER_GATEWAY_WORKAROUND).