diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/qml/jsruntime/qv4engine.cpp | 4 | ||||
| -rw-r--r-- | src/qml/qml/qqml.cpp | 2 | ||||
| -rw-r--r-- | src/qml/qml/qqmlmetatype.cpp | 12 | ||||
| -rw-r--r-- | src/qml/qml/qqmlmetatype_p.h | 8 | ||||
| -rw-r--r-- | src/qml/qml/qqmltypeloader.cpp | 12 | ||||
| -rw-r--r-- | src/qml/qml/qqmltypeloader_p.h | 2 |
6 files changed, 19 insertions, 21 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp index 684c36a094..82e653a645 100644 --- a/src/qml/jsruntime/qv4engine.cpp +++ b/src/qml/jsruntime/qv4engine.cpp @@ -2149,8 +2149,8 @@ ExecutionEngine::Module doFindModule( const QUrl &url, const ExecutableCompilationUnit *referrer, NotFound &¬Found) { const QUrl resolved = referrer - ? referrer->finalUrl().resolved(QQmlTypeLoader::normalize(url)) - : QQmlTypeLoader::normalize(url); + ? referrer->finalUrl().resolved(QQmlMetaType::normalizedUrl(url)) + : QQmlMetaType::normalizedUrl(url); auto existingModule = compilationUnits.constFind(resolved); if (existingModule != compilationUnits.constEnd()) return *existingModule; diff --git a/src/qml/qml/qqml.cpp b/src/qml/qml/qqml.cpp index 0dcd6a852f..c55064c600 100644 --- a/src/qml/qml/qqml.cpp +++ b/src/qml/qml/qqml.cpp @@ -669,7 +669,7 @@ static QQmlType::SingletonInstanceInfo::ConstPtr singletonInstanceInfo( const QQmlPrivate::RegisterCompositeSingletonType &type) { QQmlType::SingletonInstanceInfo::Ptr siinfo = QQmlType::SingletonInstanceInfo::create(); - siinfo->url = QQmlTypeLoader::normalize(type.url); + siinfo->url = QQmlMetaType::normalizedUrl(type.url); siinfo->typeName = type.typeName; return QQmlType::SingletonInstanceInfo::ConstPtr( siinfo.take(), QQmlType::SingletonInstanceInfo::ConstPtr::Adopt); diff --git a/src/qml/qml/qqmlmetatype.cpp b/src/qml/qml/qqmlmetatype.cpp index 1833419517..7491ce90e1 100644 --- a/src/qml/qml/qqmlmetatype.cpp +++ b/src/qml/qml/qqmlmetatype.cpp @@ -191,7 +191,7 @@ static QQmlTypePrivate *createQQmlType(QQmlMetaTypeData *data, const QString &el d->setName(QString::fromUtf8(type.uri), elementName); d->version = type.version; - const QUrl normalized = QQmlTypeLoader::normalize(type.url); + const QUrl normalized = QQmlMetaType::normalizedUrl(type.url); d->extraData.compositeTypeData = normalized; addQQmlMetaTypeInterfaces( data, normalized, d, QQmlPropertyCacheCreatorBase::createClassNameTypeByUrl(normalized)); @@ -576,7 +576,7 @@ QQmlType QQmlMetaType::registerCompositeType(const QQmlPrivate::RegisterComposit QQmlTypePrivate *priv = createQQmlType(data, typeName, type); addTypeToData(priv, data); - data->urlToType.insert(QQmlTypeLoader::normalize(type.url), priv); + data->urlToType.insert(QQmlMetaType::normalizedUrl(type.url), priv); return QQmlType(priv); } @@ -700,7 +700,7 @@ QQmlType QQmlMetaType::findCompositeType( const QUrl &url, const QQmlRefPointer<QV4::CompiledData::CompilationUnit> &compilationUnit, CompositeTypeLookupMode mode) { - const QUrl normalized = QQmlTypeLoader::normalize(url); + const QUrl normalized = QQmlMetaType::normalizedUrl(url); QQmlMetaTypeDataPtr data; bool urlExists = true; @@ -1028,7 +1028,7 @@ QQmlType QQmlMetaType::typeForUrl( QList<QQmlError> *errors, QTypeRevision version) { // ### unfortunate (costly) conversion - const QUrl normalized = QQmlTypeLoader::normalize(url); + const QUrl normalized = QQmlMetaType::normalizedUrl(url); QQmlMetaTypeDataPtr data; { @@ -1349,7 +1349,7 @@ QQmlType QQmlMetaType::qmlListType(QMetaType metaType) */ QQmlType QQmlMetaType::qmlType(const QUrl &unNormalizedUrl) { - const QUrl url = QQmlTypeLoader::normalize(unNormalizedUrl); + const QUrl url = QQmlMetaType::normalizedUrl(unNormalizedUrl); const QQmlMetaTypeDataPtr data; QQmlType type(data->urlToType.value(url)); @@ -1996,7 +1996,7 @@ QQmlRefPointer<QV4::CompiledData::CompilationUnit> QQmlMetaType::obtainCompilati QQmlRefPointer<QV4::CompiledData::CompilationUnit> QQmlMetaType::obtainCompilationUnit( const QUrl &url) { - const QUrl normalized = QQmlTypeLoader::normalize(url); + const QUrl normalized = QQmlMetaType::normalizedUrl(url); QQmlMetaTypeDataPtr data; auto found = data->urlToType.constFind(normalized); diff --git a/src/qml/qml/qqmlmetatype_p.h b/src/qml/qml/qqmlmetatype_p.h index a5a8763d8e..9e5a79630c 100644 --- a/src/qml/qml/qqmlmetatype_p.h +++ b/src/qml/qml/qqmlmetatype_p.h @@ -65,6 +65,14 @@ public: && aUrl.query() == bUrl.query(); } + static QUrl normalizedUrl(const QUrl &unNormalizedUrl) + { + QUrl normalized(unNormalizedUrl); + if (normalized.scheme() == QLatin1String("qrc")) + normalized.setHost(QString()); // map qrc:///a.qml to qrc:/a.qml + return normalized; + } + enum CompositeTypeLookupMode { NonSingleton, Singleton, diff --git a/src/qml/qml/qqmltypeloader.cpp b/src/qml/qml/qqmltypeloader.cpp index 5d09bf21c6..a3b1e84e05 100644 --- a/src/qml/qml/qqmltypeloader.cpp +++ b/src/qml/qml/qqmltypeloader.cpp @@ -1294,14 +1294,6 @@ QQmlTypeLoader::~QQmlTypeLoader() clearQmldirInfo(); } -QUrl QQmlTypeLoader::normalize(const QUrl &unNormalizedUrl) -{ - QUrl normalized(unNormalizedUrl); - if (normalized.scheme() == QLatin1String("qrc")) - normalized.setHost(QString()); // map qrc:///a.qml to qrc:/a.qml - return normalized; -} - /*! Returns a QQmlTypeData for the specified \a url. The QQmlTypeData may be cached. */ @@ -1313,7 +1305,7 @@ QQmlRefPointer<QQmlTypeData> QQmlTypeLoader::getType(const QUrl &unNormalizedUrl (QQmlFile::urlToLocalFileOrQrc(unNormalizedUrl).isEmpty() || !QDir::isRelativePath(QQmlFile::urlToLocalFileOrQrc(unNormalizedUrl)))); - const QUrl url = normalize(unNormalizedUrl); + const QUrl url = QQmlMetaType::normalizedUrl(unNormalizedUrl); const auto handleExisting = [&](const QQmlRefPointer<QQmlTypeData> &typeData) { if ((mode == PreferSynchronous || mode == Synchronous) && QQmlFile::isSynchronous(url)) { @@ -1416,7 +1408,7 @@ QQmlRefPointer<QQmlScriptBlob> QQmlTypeLoader::getScript( (QQmlFile::urlToLocalFileOrQrc(unNormalizedUrl).isEmpty() || !QDir::isRelativePath(QQmlFile::urlToLocalFileOrQrc(unNormalizedUrl)))); - const QUrl url = normalize(unNormalizedUrl); + const QUrl url = QQmlMetaType::normalizedUrl(unNormalizedUrl); QQmlRefPointer<QQmlScriptBlob> scriptBlob; { diff --git a/src/qml/qml/qqmltypeloader_p.h b/src/qml/qml/qqmltypeloader_p.h index d7b340394c..757c5412bc 100644 --- a/src/qml/qml/qqmltypeloader_p.h +++ b/src/qml/qml/qqmltypeloader_p.h @@ -178,8 +178,6 @@ public: : QByteArray(); } - static QUrl normalize(const QUrl &unNormalizedUrl); - QQmlRefPointer<QQmlTypeData> getType( const QUrl &unNormalizedUrl, Mode mode = PreferSynchronous); QQmlRefPointer<QQmlTypeData> getType( |
