diff options
author | Kai Koehne <kai.koehne@theqtcompany.com> | 2015-06-04 12:42:24 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@theqtcompany.com> | 2015-06-04 13:02:42 +0200 |
commit | 1be5082af805e71ce2ca6ed04ff5de0f069da770 (patch) | |
tree | 55d89790592f7391c7587e1432ae462cd58e9c5a /src/libs/installer/packagemanagercore_p.cpp | |
parent | 8482b4da46505c725d93a1e0478ded99bcbde4d2 (diff) | |
parent | 09b8632d301ffa865bf717c5497b6b7a17e86b53 (diff) |
Merge remote-tracking branch 'origin/2.0'
Conflicts:
src/libs/installer/packagemanagercore.cpp
Change-Id: Ie3d94fe3a633e189c260bf20682c00a2bb901bc8
Diffstat (limited to 'src/libs/installer/packagemanagercore_p.cpp')
-rw-r--r-- | src/libs/installer/packagemanagercore_p.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp index 46a38ab8a..ed95ddd4b 100644 --- a/src/libs/installer/packagemanagercore_p.cpp +++ b/src/libs/installer/packagemanagercore_p.cpp @@ -997,6 +997,15 @@ void PackageManagerCorePrivate::writeMaintenanceToolBinary(QFile *const input, q QInstaller::appendInt64(&dataOut, 4 * sizeof(qint64)); // data block size QInstaller::appendInt64(&dataOut, BinaryContent::MagicUninstallerMarker); QInstaller::appendInt64(&dataOut, BinaryContent::MagicCookie); + + { + QFile dummy(resourcePath.filePath(QLatin1String("installer.dat"))); + if (dummy.exists() && !dummy.remove()) { + throw Error(tr("Could not remove data file '%1': %2").arg(dummy.fileName(), + dummy.errorString())); + } + } + if (!dataOut.rename(resourcePath.filePath(QLatin1String("installer.dat")))) { throw Error(tr("Could not write maintenance tool data to %1: %2").arg(out.fileName(), out.errorString())); |