From 8d6967be39b00278ede9cf7e048b8cad2d58da80 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Fri, 1 Sep 2017 11:58:51 +0100 Subject: [PATCH] blockchain_import: do not error out on truncated files This will happen often when downloading from a live file --- src/blockchain_utilities/blockchain_import.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/blockchain_utilities/blockchain_import.cpp b/src/blockchain_utilities/blockchain_import.cpp index ded854ca..b5917f9c 100644 --- a/src/blockchain_utilities/blockchain_import.cpp +++ b/src/blockchain_utilities/blockchain_import.cpp @@ -326,9 +326,19 @@ int import_from_file(cryptonote::core& core, const std::string& import_file_path } import_file.read(buffer_block, chunk_size); if (! import_file) { - MFATAL("ERROR: unexpected end of file: bytes read before error: " - << import_file.gcount() << " of chunk_size " << chunk_size); - return 2; + if (import_file.eof()) + { + std::cout << refresh_string; + MINFO("End of file reached - file was truncated"); + quit = 1; + break; + } + else + { + MFATAL("ERROR: unexpected end of file: bytes read before error: " + << import_file.gcount() << " of chunk_size " << chunk_size); + return 2; + } } bytes_read += chunk_size; MDEBUG("Total bytes read: " << bytes_read);