summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2018-10-30 11:54:58 +0200
committerKatja Marttila <katja.marttila@qt.io>2019-01-04 05:34:02 +0000
commitda9e13b703ddd3b49031344c6be533e2029d0ef1 (patch)
treef30eb4efc43856f13808608d1ba4f1428c5a690d /tools
parent72d55882da62de7f10b8cbca19281824fff9ebe4 (diff)
Fix devtool
After we implemented maintenancetool signing, we wrote the binary magic marker to separate installer.dat file in maintenancetool (like we have always done in macOS in both installer and maintenancetool). Devtool needs to know about this change too to fetch the magic marker from correct place. Task-number: QTIFW-1222 Change-Id: I08e74596033cb33ccb9c49d9db1ee7b4beef59ca Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Diffstat (limited to 'tools')
-rw-r--r--tools/devtool/main.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/tools/devtool/main.cpp b/tools/devtool/main.cpp
index e0b31695c..d75ab4e81 100644
--- a/tools/devtool/main.cpp
+++ b/tools/devtool/main.cpp
@@ -165,8 +165,16 @@ int main(int argc, char *argv[])
QString bundlePath;
QString path = QFileInfo(arguments.first()).absoluteFilePath();
- if (QInstaller::isInBundle(path, &bundlePath))
+ if (QInstaller::isInBundle(path, &bundlePath)) {
path = QDir(bundlePath).filePath(QLatin1String("Contents/Resources/installer.dat"));
+ }
+#ifndef Q_OS_OSX
+ QFileInfo fi = QFileInfo(path);
+ bundlePath = path;
+ QString tmp = QDir(fi.path()).filePath(QLatin1String("installer.dat"));
+ if (QFileInfo::exists(tmp))
+ path = tmp;
+#endif
int result = EXIT_FAILURE;
QVector<QByteArray> resourceMappings;
@@ -184,8 +192,10 @@ int main(int argc, char *argv[])
if (layout.magicMarker == QInstaller::BinaryContent::MagicUninstallerMarker) {
QFileInfo fi(path);
- if (QInstaller::isInBundle(fi.absoluteFilePath(), &bundlePath))
- fi.setFile(bundlePath);
+
+ QInstaller::isInBundle(fi.absoluteFilePath(), &bundlePath);
+ fi.setFile(bundlePath);
+
path = fi.absolutePath() + QLatin1Char('/') + fi.baseName() + QLatin1String(".dat");
tmp.close();