aboutsummaryrefslogtreecommitdiff
path: root/src/mod_privilege.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_privilege.erl')
-rw-r--r--src/mod_privilege.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mod_privilege.erl b/src/mod_privilege.erl
index b860d9a39..3783470b2 100644
--- a/src/mod_privilege.erl
+++ b/src/mod_privilege.erl
@@ -62,8 +62,9 @@ start(Host, Opts) ->
stop(Host) ->
Proc = gen_mod:get_module_proc(Host, ?MODULE),
- gen_server:call(Proc, stop),
- supervisor:delete_child(ejabberd_sup, Proc).
+ supervisor:terminate_child(ejabberd_sup, Proc),
+ supervisor:delete_child(ejabberd_sup, Proc),
+ ok.
mod_opt_type(roster) -> v_roster();
mod_opt_type(message) -> v_message();
@@ -188,6 +189,7 @@ process_presence_in(Acc) ->
%%% gen_server callbacks
%%%===================================================================
init([Host, _Opts]) ->
+ process_flag(trap_exit, true),
ejabberd_hooks:add(component_connected, ?MODULE,
component_connected, 50),
ejabberd_hooks:add(component_disconnected, ?MODULE,