summaryrefslogtreecommitdiff
path: root/src/installationmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/installationmanager.cpp')
-rw-r--r--src/installationmanager.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/installationmanager.cpp b/src/installationmanager.cpp
index 75ab11a3..744b928d 100644
--- a/src/installationmanager.cpp
+++ b/src/installationmanager.cpp
@@ -673,6 +673,10 @@ bool InstallationManager::install(const QString &fileName, GuessedValue<QString>
bool archiveOpen = m_CurrentArchive->open(ToWString(QDir::toNativeSeparators(fileName)).c_str(),
new MethodCallback<InstallationManager, void, LPSTR>(this, &InstallationManager::queryPassword));
+ ON_BLOCK_EXIT([this] {
+ this->m_CurrentArchive->close();
+ });
+
DirectoryTree *filesTree = archiveOpen ? createFilesTree() : NULL;
IPluginInstaller::EInstallResult installResult = IPluginInstaller::RESULT_NOTATTEMPTED;