1
0
Fork 0

Make a second harder attempt to seek if needed

This commit is contained in:
krcroft 2020-03-26 21:45:42 -07:00 committed by Patryk Obara
parent dbc77a6f1c
commit b71788dba6

View file

@ -122,6 +122,13 @@ bool CDROM_Interface_Image::BinaryFile::seek(const uint32_t offset)
assertm(offset <= MAX_REDBOOK_BYTES, "Requested offset exceeds CDROM size");
file->seekg(offset, ios::beg);
// If the seek failed, then let's try harder
if (file->fail()) {
file->clear(); // clear fail and eof bits
file->seekg(0, std::ios::beg); // "I have returned."
file->seekg(offset, ios::beg); // "It will be done."
}
return !file->fail();
}