Fix a parsing bug in unarr backend that could lead to pageskips if non-image files are present in the archive.

This commit is contained in:
Felix Kauselmann 2015-04-29 14:54:57 +02:00
parent 1beb1beb75
commit 2432775755

View File

@ -92,17 +92,8 @@ void CompressedArchive::getAllData(const QVector<quint32> & indexes, ExtractDele
int i=0; int i=0;
while (i < indexes.count()) while (i < indexes.count())
{ {
if (i==0) //use the offset list so we generated so we're not getting any non-page files
{ ar_parse_entry_at(ar, offsets.at(indexes.at(i))); //set ar_entry to start of indexes
ar_parse_entry_at(ar, offsets.at(indexes.at(0))); //set ar_entry to start of indexes
}
else
{
//TODO:
//since we already have offset lists, we want to use ar_parse_entry_at here as well
//speed impact?
ar_parse_entry(ar);
}
buffer.resize(ar_entry_get_size(ar)); buffer.resize(ar_entry_get_size(ar));
if (ar_entry_uncompress(ar, buffer.data(), buffer.size())) //did we extract it? if (ar_entry_uncompress(ar, buffer.data(), buffer.size())) //did we extract it?
{ {