From 1bf4656b1f7802af453f46085946ddea53119559 Mon Sep 17 00:00:00 2001 From: Siri Hansen Date: Wed, 4 Jul 2012 11:18:29 +0200 Subject: [common_test] Don't allow named (required) connection to be opened twice Earlier, it was possible to open connection (ct_gen_conn) with the same (required) name twice, which could give unexpected results. Such attempts will now return {error,{connection_exists,OtherClient}}. --- lib/common_test/src/ct_gen_conn.erl | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'lib/common_test/src/ct_gen_conn.erl') diff --git a/lib/common_test/src/ct_gen_conn.erl b/lib/common_test/src/ct_gen_conn.erl index 6b183110c6..72937e747c 100644 --- a/lib/common_test/src/ct_gen_conn.erl +++ b/lib/common_test/src/ct_gen_conn.erl @@ -204,16 +204,13 @@ do_start(Address,InitData,CallbackMod,Opts0) -> Opts = check_opts(Opts0,#gen_opts{callback=CallbackMod, address=Address, init_data=InitData}), - case Opts#gen_opts.use_existing of - true -> - case ct_util:does_connection_exist(Opts#gen_opts.name, - Address,CallbackMod) of - {ok,Pid} -> - log("ct_gen_conn:start","Using existing connection!\n",[]), - {ok,Pid}; - false -> - do_start(Opts) - end; + case ct_util:does_connection_exist(Opts#gen_opts.name, + Address,CallbackMod) of + {ok,Pid} when Opts#gen_opts.use_existing -> + log("ct_gen_conn:start","Using existing connection!\n",[]), + {ok,Pid}; + {ok,Pid} when not Opts#gen_opts.use_existing -> + {error,{connection_exists,Pid}}; false -> do_start(Opts) end. -- cgit v1.2.3