summaryrefslogtreecommitdiff
path: root/src/installationmanager.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2013-06-07 18:30:26 +0200
committerTannin <devnull@localhost>2013-06-07 18:30:26 +0200
commit30dece9093fc27779c9d91d9b573ea6ca2430345 (patch)
treef81960057a321acbbcfe9b069a369f130921d446 /src/installationmanager.cpp
parent50d05236226d04d3854008073420282b8d21f614 (diff)
parent067f272da3701b6bf203e019fff4d1204e82e264 (diff)
Merge
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;