summaryrefslogtreecommitdiff
path: root/src/installationmanager.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2013-06-06 20:19:38 +0200
committerTannin <devnull@localhost>2013-06-06 20:19:38 +0200
commit067f272da3701b6bf203e019fff4d1204e82e264 (patch)
tree0c24b2b3d6c8cd953fac8476b1f92caa00f8d6de /src/installationmanager.cpp
parent1606c1366f5d0ba304334b0e57680fb99feb88b9 (diff)
- bugfix: archive file wasn't closed after installation
- bugfix: batch installer was treated as handler for "manual" installations - bugfix: dropped include of unused sip interface
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;