diff --git a/include/util/command.hpp b/include/util/command.hpp index 0d729b77..faf32cf0 100644 --- a/include/util/command.hpp +++ b/include/util/command.hpp @@ -112,6 +112,10 @@ inline FILE* open(const std::string& cmd, int& pid) { execlp("/bin/sh", "sh", "-c", cmd.c_str(), (char*)0); exit(0); } else { + reap_mtx.lock(); + reap.push_back(child_pid); + reap_mtx.unlock(); + ::close(fd[1]); } pid = child_pid;