Fix get_magic() handling of short reads.

PR16389


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184434 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evgeniy Stepanov 2013-06-20 15:56:05 +00:00
parent 438600e697
commit 4828eacaf3

View File

@ -694,7 +694,7 @@ error_code get_magic(const Twine &path, uint32_t len,
if (std::ferror(file) != 0) {
std::fclose(file);
return error_code(errno, system_category());
} else if (size != result.size()) {
} else if (size != len) {
if (std::feof(file) != 0) {
std::fclose(file);
result.set_size(size);
@ -702,7 +702,7 @@ error_code get_magic(const Twine &path, uint32_t len,
}
}
std::fclose(file);
result.set_size(len);
result.set_size(size);
return error_code::success();
}