aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/qmljs/qmljslink.cpp
diff options
context:
space:
mode:
authorKai Koehne <[email protected]>2014-09-02 14:42:51 +0200
committerKai Koehne <[email protected]>2014-09-03 09:41:48 +0200
commit9e62375b71cf32e9deebb8815c14bb0a2346747e (patch)
treed318e86ce90fc38d8fa636a7cef3150706324a2b /src/libs/qmljs/qmljslink.cpp
parentba558bc2a2abb342b014fb349a2a32e53cafcad7 (diff)
QmlJS: Use canonical paths for matching of import directories
We rely on string comparison for detection of QML import paths. Therefore make sure that all paths are canonical. Change-Id: I416bc31915644a888c416d726049668b0e71f29a Task-number: QTCREATORBUG-12902 Reviewed-by: Fawzi Mohamed <[email protected]>
Diffstat (limited to 'src/libs/qmljs/qmljslink.cpp')
-rw-r--r--src/libs/qmljs/qmljslink.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/libs/qmljs/qmljslink.cpp b/src/libs/qmljs/qmljslink.cpp
index 50746e0a766..ede1022f205 100644
--- a/src/libs/qmljs/qmljslink.cpp
+++ b/src/libs/qmljs/qmljslink.cpp
@@ -438,15 +438,21 @@ Import LinkPrivate::importNonFile(Document::Ptr doc, const ImportInfo &importInf
}
bool LinkPrivate::importLibrary(Document::Ptr doc,
- const QString &libraryPath,
+ const QString &libraryPath_,
Import *import,
const QString &importPath)
{
const ImportInfo &importInfo = import->info;
-
- const LibraryInfo libraryInfo = snapshot.libraryInfo(libraryPath);
- if (!libraryInfo.isValid())
- return false;
+ QString libraryPath = libraryPath_;
+
+ LibraryInfo libraryInfo = snapshot.libraryInfo(libraryPath);
+ if (!libraryInfo.isValid()) {
+ // try canonical path
+ libraryPath = QFileInfo(libraryPath).canonicalFilePath();
+ libraryInfo = snapshot.libraryInfo(libraryPath);
+ if (!libraryInfo.isValid())
+ return false;
+ }
import->libraryPath = libraryPath;