From: Peter van Dijk Date: Fri, 20 Sep 2019 08:03:30 +0000 (+0200) Subject: pipebackend coprocess: initialise d_pid X-Git-Tag: dnsdist-1.4.0-rc3~14^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F8324%2Fhead;p=thirdparty%2Fpdns.git pipebackend coprocess: initialise d_pid --- diff --git a/modules/pipebackend/coprocess.cc b/modules/pipebackend/coprocess.cc index 2da3dacd7e..419b53a83c 100644 --- a/modules/pipebackend/coprocess.cc +++ b/modules/pipebackend/coprocess.cc @@ -50,6 +50,7 @@ CoProcess::CoProcess(const string &command,int timeout, int infd, int outfd): d_ for (size_t n = 0; n < d_params.size(); n++) { d_argv[n]=d_params[n].c_str(); } + d_pid = 0; } void CoProcess::launch() @@ -103,9 +104,11 @@ void CoProcess::launch() CoProcess::~CoProcess() { int status; - if(!waitpid(d_pid, &status, WNOHANG)) { - kill(d_pid, 9); - waitpid(d_pid, &status, 0); + if(d_pid){ + if(!waitpid(d_pid, &status, WNOHANG)) { + kill(d_pid, 9); + waitpid(d_pid, &status, 0); + } } close(d_fd1[1]);