aboutsummaryrefslogtreecommitdiff
path: root/src/mod_shared_roster_ldap.erl
diff options
context:
space:
mode:
authorEvgeny Khramtsov <ekhramtsov@process-one.net>2019-08-04 21:46:18 +0300
committerEvgeny Khramtsov <ekhramtsov@process-one.net>2019-08-04 21:46:18 +0300
commit2168489ddf96a88d4b4885a1a0a986acb25754c5 (patch)
tree6eb6aa952467a4b30977d603cd05c6644c259893 /src/mod_shared_roster_ldap.erl
parentUse tagged version for yconf as well (diff)
Don't retain module option on gen_mod supervisor
When module's options were updated (e.g. by reloading ejabberd.yml) and, later, the module's process crashed, gen_mod supervisor restarts the process with outdated options. This is now fixed.
Diffstat (limited to 'src/mod_shared_roster_ldap.erl')
-rw-r--r--src/mod_shared_roster_ldap.erl3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mod_shared_roster_ldap.erl b/src/mod_shared_roster_ldap.erl
index 4790b4cd3..bd8cc7732 100644
--- a/src/mod_shared_roster_ldap.erl
+++ b/src/mod_shared_roster_ldap.erl
@@ -210,8 +210,9 @@ process_subscription(Direction, User, Server, JID,
%%====================================================================
%% gen_server callbacks
%%====================================================================
-init([Host, Opts]) ->
+init([Host|_]) ->
process_flag(trap_exit, true),
+ Opts = gen_mod:get_module_opts(Host, ?MODULE),
State = parse_options(Host, Opts),
init_cache(Host, Opts),
ejabberd_hooks:add(roster_get, Host, ?MODULE,