error handling when out of file

This commit is contained in:
Anakin 2017-02-02 15:10:48 +01:00
parent 8346e5916d
commit ff08ee7cea
1 changed files with 2 additions and 8 deletions

View File

@ -87,16 +87,10 @@ void MshFile::loadChunks(QList<ChunkHeader*>& destination, qint64 start, const q
destination.push_back(tmp_header);
// jump to next header
if (!m_file.seek(tmp_header->size + m_file.pos()))
{
OutputDevice::getInstance()->print("WARNING: corrupted file. Trying to continue..", 1);
m_file.unsetError();
m_file.seek(0);
break;
}
m_file.seek(tmp_header->size + m_file.pos());
// out of file. Maybe a size information is corrupted
if (m_file.error() != QFileDevice::NoError)
if (m_file.atEnd() || m_file.error() != QFileDevice::NoError)
{
OutputDevice::getInstance()->print("WARNING: corrupted file. Trying to continue..", 1);
m_file.unsetError();