Check if ErrMsg is null. This fixes the "not" command.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117666 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2010-10-29 17:20:42 +00:00
parent c463316046
commit 3545635a60

View File

@ -359,24 +359,29 @@ Program::Wait(const sys::Path &path,
result = 126; result = 126;
#endif #endif
if (result == 127) { if (result == 127) {
*ErrMsg = llvm::sys::StrError(ENOENT); if (ErrMsg)
*ErrMsg = llvm::sys::StrError(ENOENT);
return -1; return -1;
} }
if (result == 126) { if (result == 126) {
*ErrMsg = "Program could not be executed"; if (ErrMsg)
*ErrMsg = "Program could not be executed";
return -1; return -1;
} }
} else if (WIFSIGNALED(status)) { } else if (WIFSIGNALED(status)) {
*ErrMsg = strsignal(WTERMSIG(status)); if (ErrMsg) {
*ErrMsg = strsignal(WTERMSIG(status));
#ifdef WCOREDUMP #ifdef WCOREDUMP
if (WCOREDUMP(status)) if (WCOREDUMP(status))
*ErrMsg += " (core dumped)"; *ErrMsg += " (core dumped)";
#endif #endif
}
return -1; return -1;
} }
return result; return result;
#else #else
*ErrMsg = "Program::Wait is not implemented on this platform yet!"; if (ErrMsg)
*ErrMsg = "Program::Wait is not implemented on this platform yet!";
return -1; return -1;
#endif #endif
} }