diff options
Diffstat (limited to 'src/mod_privilege.erl')
-rw-r--r-- | src/mod_privilege.erl | 6 |
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, |