diff options
Diffstat (limited to 'src/ejabberd_c2s.erl')
-rw-r--r-- | src/ejabberd_c2s.erl | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 5510cdd70..73c0a438b 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -75,6 +75,15 @@ -define(FSMOPTS, []). -endif. +%% Module start with or without supervisor: +-ifdef(NO_TRANSIENT_SUPERVISORS). +-define(SUPERVISOR_START, gen_fsm:start(ejabberd_c2s, [SockData, Opts], + ?FSMOPTS)). +-else. +-define(SUPERVISOR_START, supervisor:start_child(ejabberd_c2s_sup, + [SockData, Opts])). +-endif. + -define(STREAM_HEADER, "<?xml version='1.0'?>" "<stream:stream xmlns='jabber:client' " @@ -97,7 +106,7 @@ %%% API %%%---------------------------------------------------------------------- start(SockData, Opts) -> - supervisor:start_child(ejabberd_c2s_sup, [SockData, Opts]). + ?SUPERVISOR_START. start_link(SockData, Opts) -> gen_fsm:start_link(ejabberd_c2s, [SockData, Opts], ?FSMOPTS). |