-int sys::ExecuteAndWait(const Path &path, const char **args, const char **envp,
- const Path **redirects, unsigned secondsToWait,
- unsigned memoryLimit, std::string *ErrMsg,
- bool *ExecutionFailed) {
- void *Data = 0;
- if (Execute(&Data, path, args, envp, redirects, memoryLimit, ErrMsg)) {
- if (ExecutionFailed) *ExecutionFailed = false;
- return Wait(Data, path, secondsToWait, ErrMsg);
- }
- if (ExecutionFailed) *ExecutionFailed = true;