Fix update unpacking

This commit is contained in:
woblight
2018-07-22 18:59:07 +02:00
parent 563fb98f64
commit dbb95f47a1
4 changed files with 13 additions and 8 deletions
+6 -4
View File
@@ -490,10 +490,12 @@ void Control::downloadUpdate()
void Control::executeUpdate()
{
delegate("Apply Update", [this](){
QuaZip zip("GitAddonsManager.zip");
QDir appRoot(QApplication::applicationDirPath());
QuaZip zip(appRoot.absoluteFilePath("GitAddonsManager.zip"));
if (!zip.open(QuaZip::mdUnzip))
return;
QDir root(QApplication::applicationDirPath() + "/update");
QDir root(appRoot.absoluteFilePath("update"));
appRoot.mkdir(root.absolutePath());
unsigned int size = 0;
foreach (const QuaZipFileInfo &info, zip.getFileInfoList())
size += info.uncompressedSize;
@@ -515,8 +517,8 @@ void Control::executeUpdate()
f.close();
}
zip.close();
QFile::remove("GitAddonsManager.zip");
QFile exe(root.absoluteFilePath("GitAddonsManager"));
QFile::remove(appRoot.absoluteFilePath("GitAddonsManager.zip"));
QFile exe(root.absoluteFilePath(GAM_EXEC));
exe.setPermissions(QFile::ExeOwner | exe.permissions());
},[this](){
setUpdateStatus(UpdateStatus::UpdateDone);