From 80a5667ca758fbfb12c875a65eea2c5b84c39d54 Mon Sep 17 00:00:00 2001 From: TheAssassin Date: Fri, 7 Aug 2020 15:31:37 +0200 Subject: [PATCH] Check waitpid() for errors --- src/subprocess/process.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/subprocess/process.cpp b/src/subprocess/process.cpp index d1ebb38..459af62 100644 --- a/src/subprocess/process.cpp +++ b/src/subprocess/process.cpp @@ -115,7 +115,11 @@ int process::close() { { int temporary; - waitpid(child_pid_, &temporary, 0); + + if (waitpid(child_pid_, &temporary, 0) != 0) { + throw std::logic_error{"waitpid() failed"}; + } + exit_code_ = WEXITSTATUS(temporary); } }