diff --git a/src/exec.cxx b/src/exec.cxx index 1a23582..a14c5d8 100644 --- a/src/exec.cxx +++ b/src/exec.cxx @@ -448,9 +448,9 @@ mrw::PartialExec& mrw::PartialExec::start(bool useInput) _finish = !useInput; _input = ""; _res = _err = ""; - _stdIn = std::auto_ptr(new mrw::Pipe(mrw::Pipe::block_input)); - _stdOut = std::auto_ptr(new mrw::Pipe(mrw::Pipe::block_output)); - _stdErr = std::auto_ptr(new mrw::Pipe(mrw::Pipe::block_output)); + _stdIn = std::shared_ptr(new mrw::Pipe(mrw::Pipe::block_input)); + _stdOut = std::shared_ptr(new mrw::Pipe(mrw::Pipe::block_output)); + _stdErr = std::shared_ptr(new mrw::Pipe(mrw::Pipe::block_output)); if (!*_stdIn || !*_stdOut || !*_stdErr) throw mrw::ExecutionFailedExc("cannot create pipe", *_cmd); _lastPid = 0;