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;
#endif
if (result == 127) {
*ErrMsg = llvm::sys::StrError(ENOENT);
if (ErrMsg)
*ErrMsg = llvm::sys::StrError(ENOENT);
return -1;
}
if (result == 126) {
*ErrMsg = "Program could not be executed";
if (ErrMsg)
*ErrMsg = "Program could not be executed";
return -1;
}
} else if (WIFSIGNALED(status)) {
*ErrMsg = strsignal(WTERMSIG(status));
if (ErrMsg) {
*ErrMsg = strsignal(WTERMSIG(status));
#ifdef WCOREDUMP
if (WCOREDUMP(status))
*ErrMsg += " (core dumped)";
if (WCOREDUMP(status))
*ErrMsg += " (core dumped)";
#endif
}
return -1;
}
return result;
#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;
#endif
}