mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-21 01:27:16 +08:00
Fix an issue when adding a book during the game
Currently when we fail to open a book file, for instance if it doesn't exsist, we leave Book::open() with ifstream failbit set. If then the book file is added, we correctly open it at next attempt, but failbit is still set so that after opening we exit because ifstream::good() returns false. The fix is to reset failbit upon exiting. No functional change. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
@@ -378,7 +378,10 @@ bool Book::open(const char* fName) {
|
||||
ifstream::open(fName, ifstream::in | ifstream::binary | ios::ate);
|
||||
|
||||
if (!is_open())
|
||||
{
|
||||
clear();
|
||||
return false; // Silently fail if the file is not found
|
||||
}
|
||||
|
||||
// Get the book size in number of entries, we are already at the end of file
|
||||
size = (size_t)tellg() / sizeof(BookEntry);
|
||||
|
||||
Reference in New Issue
Block a user