X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Fserver.cc;h=a57b44d5ca7f0dcecc48947b46793a127dcd86a0;hb=96702d0bcb4bd8f45ede2830660e4ccb072675ab;hp=c1d01c749e4d3353d32a63301904385448cd3dd1;hpb=45c6b15d970aca4fa5619b2ba501c1b0f1d89006;p=m6w6%2Flibmemcached diff --git a/libtest/server.cc b/libtest/server.cc index c1d01c74..a57b44d5 100644 --- a/libtest/server.cc +++ b/libtest/server.cc @@ -25,12 +25,14 @@ #include #include +#include #include #include #include #include #include +#include // trim from end static inline std::string &rtrim(std::string &s) @@ -159,11 +161,16 @@ bool Server::start() } #endif - if (getenv("YATL_VALGRIND_SERVER")) + if (getenv("YATL_PTRCHECK_SERVER")) + { + _app.use_ptrcheck(); + } + else if (getenv("YATL_VALGRIND_SERVER")) { _app.use_valgrind(); } - else if (args(_app) == false) + + if (args(_app) == false) { Error << "Could not build command()"; return false; @@ -199,6 +206,12 @@ bool Server::start() throw libtest::fatal(LIBYATL_DEFAULT_PARAM, "Unable to open pidfile for: %s", _running.c_str()); + char buf[PATH_MAX]; + getcwd(buf, sizeof(buf)); + throw libtest::fatal(LIBYATL_DEFAULT_PARAM, + "Unable to open pidfile in %s for: %s", + buf, + _running.c_str()); } } } @@ -319,8 +332,7 @@ bool Server::set_pid_file() int fd; if ((fd= mkstemp(file_buffer)) == -1) { - perror(file_buffer); - return false; + throw libtest::fatal(LIBYATL_DEFAULT_PARAM, "mkstemp() failed on %s with %s", file_buffer, strerror(errno)); } close(fd); unlink(file_buffer);