aboutsummaryrefslogtreecommitdiff
path: root/src/mod_shared_roster.erl
diff options
context:
space:
mode:
authorbadlop <badlop@process-one.net>2021-04-20 21:22:25 +0200
committerGitHub <noreply@github.com>2021-04-20 21:22:25 +0200
commit2d38d48a556735eaf13c6466e3974c1fdf651807 (patch)
tree9e75ad893ab8fd55cb33114d987e7bde365a5957 /src/mod_shared_roster.erl
parentFix dialyzer warnings (diff)
parentdelete cache after performing change to be sure that in cache will be up to d... (diff)
Merge pull request #3578 from tappytaps/srg-cache-fix
Fixed srg_create params and shared roster groups cache issues
Diffstat (limited to 'src/mod_shared_roster.erl')
-rw-r--r--src/mod_shared_roster.erl6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mod_shared_roster.erl b/src/mod_shared_roster.erl
index 3f200986e..16cc96a75 100644
--- a/src/mod_shared_roster.erl
+++ b/src/mod_shared_roster.erl
@@ -713,14 +713,14 @@ add_user_to_group2(Host, US, Group) ->
push_user_to_displayed(LUser, LServer, Group, Host, both, DisplayedToGroups),
push_displayed_to_user(LUser, LServer, Host, both, DisplayedGroups),
Mod = gen_mod:db_mod(Host, ?MODULE),
+ Mod:add_user_to_group(Host, US, Group),
case use_cache(Mod, Host) of
true ->
ets_cache:delete(?USER_GROUPS_CACHE, {Host, US}, cache_nodes(Mod, Host)),
ets_cache:delete(?GROUP_EXPLICIT_USERS_CACHE, {Host, Group}, cache_nodes(Mod, Host));
false ->
ok
- end,
- Mod:add_user_to_group(Host, US, Group)
+ end
end.
get_displayed_groups(Group, LServer) ->
@@ -749,6 +749,7 @@ remove_user_from_group(Host, US, Group) ->
set_group_opts(Host, Group, NewGroupOpts);
nomatch ->
Mod = gen_mod:db_mod(Host, ?MODULE),
+ Result = Mod:remove_user_from_group(Host, US, Group),
case use_cache(Mod, Host) of
true ->
ets_cache:delete(?USER_GROUPS_CACHE, {Host, US}, cache_nodes(Mod, Host)),
@@ -756,7 +757,6 @@ remove_user_from_group(Host, US, Group) ->
false ->
ok
end,
- Result = Mod:remove_user_from_group(Host, US, Group),
DisplayedToGroups = displayed_to_groups(Group, Host),
DisplayedGroups = get_displayed_groups(Group, LServer),
push_user_to_displayed(LUser, LServer, Group, Host, remove, DisplayedToGroups),