[libFuzzer] require the files and directories passed to the fuzzer to exist

llvm-svn: 242596
This commit is contained in:
Kostya Serebryany 2015-07-18 00:03:37 +00:00
parent 9cb08f823f
commit 86e4a3e0a3
1 changed files with 8 additions and 2 deletions

View File

@ -21,7 +21,10 @@ namespace fuzzer {
static long GetEpoch(const std::string &Path) {
struct stat St;
if (stat(Path.c_str(), &St)) return 0;
if (stat(Path.c_str(), &St)) {
Printf("Can not stat: %s; exiting\n", Path.c_str());
exit(1);
}
return St.st_mtime;
}
@ -34,7 +37,10 @@ static std::vector<std::string> ListFilesInDir(const std::string &Dir,
*Epoch = E;
}
DIR *D = opendir(Dir.c_str());
if (!D) return V;
if (!D) {
Printf("No such directory: %s; exiting\n", Dir.c_str());
exit(1);
}
while (auto E = readdir(D)) {
if (E->d_type == DT_REG || E->d_type == DT_LNK)
V.push_back(E->d_name);