aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/buildgraph/productinstaller.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/corelib/buildgraph/productinstaller.cpp')
-rw-r--r--src/lib/corelib/buildgraph/productinstaller.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/corelib/buildgraph/productinstaller.cpp b/src/lib/corelib/buildgraph/productinstaller.cpp
index b94239f63..8f54b4358 100644
--- a/src/lib/corelib/buildgraph/productinstaller.cpp
+++ b/src/lib/corelib/buildgraph/productinstaller.cpp
@@ -31,7 +31,9 @@
#include "artifact.h"
#include "productbuilddata.h"
+
#include <language/language.h>
+#include <language/propertymapinternal.h>
#include <logging/translator.h>
#include <tools/qbsassert.h>
#include <tools/error.h>
@@ -121,13 +123,13 @@ QString ProductInstaller::targetFilePath(const TopLevelProject *project,
// This has the same effect as if installSourceBase would equal the directory of the file.
targetFilePath = FileInfo::fileName(sourceFilePath);
} else {
- const QString localAbsBasePath = QDir::cleanPath(productSourceDir + QLatin1Char('/')
- + installSourceBase);
+ const QString localAbsBasePath = FileInfo::resolvePath(QDir::cleanPath(productSourceDir),
+ QDir::cleanPath(installSourceBase));
targetFilePath = sourceFilePath;
if (!targetFilePath.startsWith(localAbsBasePath)) {
throw ErrorInfo(Tr::tr("Cannot install '%1', because it doesn't start with the"
" value of qbs.installSourceBase '%2'.").arg(sourceFilePath,
- installSourceBase));
+ localAbsBasePath));
}
targetFilePath.remove(0, localAbsBasePath.length() + 1);