diff options
author | kh1 <karsten.heimrich@digia.com> | 2014-06-02 14:49:55 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@digia.com> | 2014-06-03 10:49:59 +0200 |
commit | 86f3bd1f758afb96de89cb7115c03d59fc2b54c4 (patch) | |
tree | c449b12dad47a3410fa101be6f7a4df825f37a1a /src/libs/installer/metadatajob.cpp | |
parent | 363198f91731e5bb9abd9e6e8ef471d12d0ab524 (diff) |
Use QTemporaryDir instead of our homemade solution.
Change-Id: Ia584a9b2f954df5c29a2f0aa5f12b201b2bfbcc4
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Diffstat (limited to 'src/libs/installer/metadatajob.cpp')
-rw-r--r-- | src/libs/installer/metadatajob.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/libs/installer/metadatajob.cpp b/src/libs/installer/metadatajob.cpp index 79c7c7b05..e119db1c5 100644 --- a/src/libs/installer/metadatajob.cpp +++ b/src/libs/installer/metadatajob.cpp @@ -39,14 +39,14 @@ ** **************************************************************************/ #include "metadatajob.h" -#include "errors.h" -#include "messageboxhandler.h" + #include "metadatajob_p.h" #include "packagemanagercore.h" #include "productkeycheck.h" -#include "qinstallerglobal.h" #include "settings.h" +#include <QTemporaryDir> + namespace QInstaller { MetadataJob::MetadataJob(QObject *parent) @@ -241,14 +241,16 @@ MetadataJob::Status MetadataJob::parseUpdatesXml(const QList<FileTaskResult> &re return XmlDownloadFailure; Metadata metadata; - try { - metadata.directory = createTemporaryDirectory(QLatin1String("remoterepo-")); - m_tempDirDeleter.add(metadata.directory); - } catch (const QInstaller::Error &error) { - qDebug() << error.message(); + QTemporaryDir tmp(QDir::tempPath() + QLatin1String("/remoterepo-XXXXXX")); + if (!tmp.isValid()) { + qDebug() << "Could not create unique temporary directory."; return XmlDownloadFailure; } + tmp.setAutoRemove(false); + metadata.directory = tmp.path(); + m_tempDirDeleter.add(metadata.directory); + QFile file(result.target()); if (!file.rename(metadata.directory + QLatin1String("/Updates.xml"))) { qDebug() << "Could not rename target to Updates.xml. Error:" << file.errorString(); |