diff options
Diffstat (limited to 'updater/blockimg.c')
-rw-r--r-- | updater/blockimg.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/updater/blockimg.c b/updater/blockimg.c index a93bfcb..be56fbd 100644 --- a/updater/blockimg.c +++ b/updater/blockimg.c @@ -341,7 +341,12 @@ static bool receive_new_data(const unsigned char* data, int size, void* cookie) static void* unzip_new_data(void* cookie) { NewThreadInfo* nti = (NewThreadInfo*) cookie; - mzProcessZipEntryContents(nti->za, nti->entry, receive_new_data, nti); + if (strncmp(".xz", nti->entry->fileName + (nti->entry->fileNameLen - 3), 3) == 0) { + mzProcessZipEntryContentsXZ(nti->za, nti->entry, receive_new_data, nti); + } else { + mzProcessZipEntryContents(nti->za, nti->entry, receive_new_data, nti); + } + return NULL; } |