1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

[libfuzzer] speeding up corpus load

llvm-svn: 263591
This commit is contained in:
Mike Aizatsky 2016-03-15 21:47:21 +00:00
parent a31b1fe444
commit 34cbd6a60e

View File

@ -61,14 +61,16 @@ Unit FileToVector(const std::string &Path, size_t MaxSize) {
Printf("No such directory: %s; exiting\n", Path.c_str());
exit(1);
}
if (MaxSize) {
Unit Res(MaxSize);
T.read(reinterpret_cast<char*>(Res.data()), MaxSize);
Res.resize(T.gcount());
return Res;
}
return Unit((std::istreambuf_iterator<char>(T)),
std::istreambuf_iterator<char>());
T.seekg(0, T.end);
size_t FileLen = T.tellg();
if (MaxSize)
FileLen = std::min(FileLen, MaxSize);
T.seekg(0, T.beg);
Unit Res(FileLen);
T.read(reinterpret_cast<char *>(Res.data()), FileLen);
return Res;
}
std::string FileToString(const std::string &Path) {