Merge branch 'fix_get_hash' into 'master'

Fix recover from errors in Files::getHash

See merge request OpenMW/openmw!1777
pull/3226/head
psi29a 3 years ago
commit c78cc38383

@ -22,6 +22,16 @@ namespace
struct FilesGetHash : TestWithParam<Params> {};
TEST(FilesGetHash, shouldClearErrors)
{
const std::string fileName = "fileName";
std::string content;
std::fill_n(std::back_inserter(content), 1, 'a');
std::istringstream stream(content);
stream.exceptions(std::ios::failbit | std::ios::badbit);
EXPECT_THAT(getHash(fileName, stream), ElementsAre(9607679276477937801ull, 16624257681780017498ull));
}
TEST_P(FilesGetHash, shouldReturnHashForStringStream)
{
const std::string fileName = "fileName";

@ -28,8 +28,8 @@ namespace Files
MurmurHash3_x64_128(value.data(), static_cast<int>(read), hash.data(), blockHash.data());
hash = blockHash;
}
stream.exceptions(exceptions);
stream.clear();
stream.exceptions(exceptions);
stream.seekg(start);
}
catch (const std::exception& e)

Loading…
Cancel
Save