diff options
Diffstat (limited to 'src/lib/corelib/buildgraph/productinstaller.cpp')
-rw-r--r-- | src/lib/corelib/buildgraph/productinstaller.cpp | 8 |
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); |