X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Fserver_container.cc;h=2d7655bcffbdba6f717f140b62c7f31a03551793;hb=5b2a7d8c63479f52d2fc82e120082b9f24357c9f;hp=0448e20900e2b847831a6f5c802a073e68eb9135;hpb=1a09bec1c62a5068126735cc0915020bf487f4b1;p=awesomized%2Flibmemcached diff --git a/libtest/server_container.cc b/libtest/server_container.cc index 0448e209..2d7655bc 100644 --- a/libtest/server_container.cc +++ b/libtest/server_container.cc @@ -182,7 +182,7 @@ bool server_startup_st::validate() bool server_startup(server_startup_st& construct, const std::string& server_type, in_port_t try_port, int argc, const char *argv[], const bool opt_startup_message) { - construct.start_server(server_type, try_port, argc, argv, opt_startup_message); + return construct.start_server(server_type, try_port, argc, argv, opt_startup_message); } bool server_startup_st::start_server(const std::string& server_type, in_port_t try_port, int argc, const char *argv[], const bool opt_startup_message) @@ -311,6 +311,18 @@ bool server_startup_st::start_server(const std::string& server_type, in_port_t t } } } + catch (libtest::start err) + { + stream::cerr(err.file(), err.line(), err.func()) << err.what(); + delete server; + return false; + } + catch (libtest::disconnected err) + { + stream::cerr(err.file(), err.line(), err.func()) << err.what(); + delete server; + return false; + } catch (...) { delete server;