X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Fserver_container.cc;h=13b8957339d02e71cb48fc0108cbb944006216f5;hb=aacf5ba18fa98145d95f7a0567f0b32306fac1aa;hp=d8ef5d495364ad4c51e42722b3a70faeb20a67ac;hpb=85b7bde8fee1a43ace784690188e2f4c62f89825;p=awesomized%2Flibmemcached diff --git a/libtest/server_container.cc b/libtest/server_container.cc index d8ef5d49..13b89573 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) @@ -287,17 +287,16 @@ bool server_startup_st::start_server(const std::string& server_type, in_port_t t server->build(argc, argv); +#if 0 if (false) { Out << "Pausing for startup, hit return when ready."; std::string gdb_command= server->base_command(); - std::string options; -#if 0 - Out << "run " << server->args(options); -#endif getchar(); } - else if (server->start() == false) + else +#endif + if (server->start() == false) { delete server; return false; @@ -312,6 +311,12 @@ bool server_startup_st::start_server(const std::string& server_type, in_port_t t } } } + catch (libtest::disconnected err) + { + stream::cerr(err.file(), err.line(), err.func()) << err.what(); + delete server; + return false; + } catch (...) { delete server; @@ -397,17 +402,18 @@ bool server_startup_st::start_socket_server(const std::string& server_type, cons server->build(argc, argv); +#if 0 if (false) { Out << "Pausing for startup, hit return when ready."; std::string gdb_command= server->base_command(); std::string options; -#if 0 Out << "run " << server->args(options); -#endif getchar(); } - else if (server->start() == false) + else +#endif + if (server->start() == false) { Error << "Failed to start " << *server; delete server;