From cc533d80928445c45d6d181f26f0c7dc57c09811 Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Fri, 22 Jul 2011 14:52:08 +1000 Subject: [PATCH] Remove some QString <-> utf8 conversions. Change-Id: I4478ec805f5b1e05025baafaf7035b8fb57f9854 Reviewed-on: http://codereview.qt.nokia.com/3770 Reviewed-by: Roberto Raggi Reviewed-by: Qt Sanity Bot --- src/declarative/qml/qdeclarativecompiler.cpp | 16 ++++---- src/declarative/qml/qdeclarativeimport.cpp | 44 ++++++++++++----------- src/declarative/qml/qdeclarativeimport_p.h | 4 +- src/declarative/qml/qdeclarativemetatype.cpp | 30 ++++++++-------- src/declarative/qml/qdeclarativemetatype_p.h | 16 ++++---- src/declarative/qml/qdeclarativetypeloader.cpp | 4 +-- 6 files changed, 57 insertions(+), 57 deletions(-) diff --git a/src/declarative/qml/qdeclarativecompiler.cpp b/src/declarative/qml/qdeclarativecompiler.cpp index 85f1fe5..bae2ccb 100644 --- a/src/declarative/qml/qdeclarativecompiler.cpp +++ b/src/declarative/qml/qdeclarativecompiler.cpp @@ -1483,7 +1483,7 @@ bool QDeclarativeCompiler::buildSignal(QDeclarativeParser::Property *prop, QDecl const QList &resolvedTypes = unit->resolvedTypes(); const QDeclarativeTypeData::TypeReference &type = resolvedTypes.at(obj->type); if (type.type) { - COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available in %3 %4.%5.").arg(elementName(obj)).arg(prop->name().toString()).arg(QString::fromUtf8(type.type->module())).arg(type.majorVersion).arg(type.minorVersion)); + COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available in %3 %4.%5.").arg(elementName(obj)).arg(prop->name().toString()).arg(type.type->module()).arg(type.majorVersion).arg(type.minorVersion)); } else { COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available due to component versioning.").arg(elementName(obj)).arg(prop->name().toString())); } @@ -1560,7 +1560,7 @@ bool QDeclarativeCompiler::buildProperty(QDeclarativeParser::Property *prop, QDeclarativeType *type = 0; QDeclarativeImportedNamespace *typeNamespace = 0; - unit->imports().resolveType(prop->name().toUtf8(), &type, 0, 0, 0, &typeNamespace); + unit->imports().resolveType(prop->name().toString(), &type, 0, 0, 0, &typeNamespace); if (typeNamespace) { COMPILE_CHECK(buildPropertyInNamespace(typeNamespace, prop, obj, @@ -1586,7 +1586,7 @@ bool QDeclarativeCompiler::buildProperty(QDeclarativeParser::Property *prop, const QList &resolvedTypes = unit->resolvedTypes(); const QDeclarativeTypeData::TypeReference &type = resolvedTypes.at(obj->type); if (type.type) { - COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available in %3 %4.%5.").arg(elementName(obj)).arg(prop->name().toString()).arg(QString::fromUtf8(type.type->module())).arg(type.majorVersion).arg(type.minorVersion)); + COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available in %3 %4.%5.").arg(elementName(obj)).arg(prop->name().toString()).arg(type.type->module()).arg(type.majorVersion).arg(type.minorVersion)); } else { COMPILE_EXCEPTION(prop, tr("\"%1.%2\" is not available due to component versioning.").arg(elementName(obj)).arg(prop->name().toString())); } @@ -1674,7 +1674,7 @@ bool QDeclarativeCompiler::buildPropertyInNamespace(QDeclarativeImportedNamespac // Setup attached property data QDeclarativeType *type = 0; - unit->imports().resolveType(ns, prop->name().toUtf8(), &type, 0, 0, 0); + unit->imports().resolveType(ns, prop->name().toString(), &type, 0, 0, 0); if (!type || !type->attachedPropertiesType()) COMPILE_EXCEPTION(prop, tr("Non-existent attached object")); @@ -2314,7 +2314,7 @@ bool QDeclarativeCompiler::testQualifiedEnumAssignment(const QMetaProperty &prop QString typeName = parts.at(0); QDeclarativeType *type = 0; - unit->imports().resolveType(typeName.toUtf8(), &type, 0, 0, 0, 0); + unit->imports().resolveType(typeName, &type, 0, 0, 0, 0); //handle enums on value types (where obj->typeName is empty) QByteArray objTypeName = obj->typeName; @@ -2371,7 +2371,7 @@ int QDeclarativeCompiler::evaluateEnum(const QByteArray& script) const if (dot > 0) { const QByteArray &scope = script.left(dot); QDeclarativeType *type = 0; - unit->imports().resolveType(scope, &type, 0, 0, 0, 0); + unit->imports().resolveType(QString::fromUtf8(script.left(dot)), &type, 0, 0, 0, 0); if (!type && scope != "Qt") return -1; const QMetaObject *mo = type ? type->metaObject() : StaticQtMetaObject::get(); @@ -2389,7 +2389,7 @@ int QDeclarativeCompiler::evaluateEnum(const QByteArray& script) const const QMetaObject *QDeclarativeCompiler::resolveType(const QByteArray& name) const { QDeclarativeType *qmltype = 0; - if (!unit->imports().resolveType(name, &qmltype, 0, 0, 0, 0)) + if (!unit->imports().resolveType(QString::fromUtf8(name), &qmltype, 0, 0, 0, 0)) return 0; if (!qmltype) return 0; @@ -2634,7 +2634,7 @@ bool QDeclarativeCompiler::buildDynamicMeta(QDeclarativeParser::Object *obj, Dyn QByteArray customTypeName; QDeclarativeType *qmltype = 0; QString url; - if (!unit->imports().resolveType(p->customType.toUtf8(), &qmltype, &url, 0, 0, 0)) + if (!unit->imports().resolveType(p->customType.toString(), &qmltype, &url, 0, 0, 0)) COMPILE_EXCEPTION(p, tr("Invalid property type")); if (!qmltype) { diff --git a/src/declarative/qml/qdeclarativeimport.cpp b/src/declarative/qml/qdeclarativeimport.cpp index 61ece7a..0d35947 100644 --- a/src/declarative/qml/qdeclarativeimport.cpp +++ b/src/declarative/qml/qdeclarativeimport.cpp @@ -92,7 +92,7 @@ class QDeclarativeImportedNamespace { public: struct Data { - QByteArray uri; + QString uri; QString url; int majversion; int minversion; @@ -102,10 +102,10 @@ public: QList imports; - bool find_helper(QDeclarativeTypeLoader *typeLoader, const Data &data, const QByteArray& type, int *vmajor, int *vminor, + bool find_helper(QDeclarativeTypeLoader *typeLoader, const Data &data, const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QString *base = 0, bool *typeRecursionDetected = 0); - bool find(QDeclarativeTypeLoader *typeLoader, const QByteArray& type, int *vmajor, int *vminor, QDeclarativeType** type_return, + bool find(QDeclarativeTypeLoader *typeLoader, const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QString *base = 0, QList *errors = 0); }; @@ -123,7 +123,7 @@ public: const QString& uri_arg, const QString& prefix, int vmaj, int vmin, QDeclarativeScriptParser::Import::Type importType, QDeclarativeImportDatabase *database, QList *errors); - bool find(const QByteArray& type, int *vmajor, int *vminor, + bool find(const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QList *errors); QDeclarativeImportedNamespace *findNamespace(const QString& type); @@ -210,7 +210,7 @@ void QDeclarativeImports::populateCache(QDeclarativeTypeNameCache *cache, QDecla if (module) import.modules.append(QDeclarativeTypeModuleVersion(module, data.minversion)); - QDeclarativeMetaType::ModuleApi moduleApi = QDeclarativeMetaType::moduleApi(data.uri, data.majversion, data.minversion); + QDeclarativeMetaType::ModuleApi moduleApi = QDeclarativeMetaType::moduleApi(data.uri.toUtf8(), data.majversion, data.minversion); if (moduleApi.script || moduleApi.qobject) { QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(engine); QDeclarativeMetaType::ModuleApiInstance *a = ep->moduleApiInstances.value(moduleApi); @@ -242,11 +242,11 @@ void QDeclarativeImports::populateCache(QDeclarativeTypeNameCache *cache, QDecla \sa addImport() */ -bool QDeclarativeImports::resolveType(const QByteArray& type, +bool QDeclarativeImports::resolveType(const QString& type, QDeclarativeType** type_return, QString* url_return, int *vmaj, int *vmin, QDeclarativeImportedNamespace** ns_return, QList *errors) const { - QDeclarativeImportedNamespace* ns = d->findNamespace(QString::fromUtf8(type)); + QDeclarativeImportedNamespace* ns = d->findNamespace(type); if (ns) { if (ns_return) *ns_return = ns; @@ -281,17 +281,20 @@ bool QDeclarativeImports::resolveType(const QByteArray& type, If either return pointer is 0, the corresponding search is not done. */ -bool QDeclarativeImports::resolveType(QDeclarativeImportedNamespace* ns, const QByteArray& type, +bool QDeclarativeImports::resolveType(QDeclarativeImportedNamespace* ns, const QString& type, QDeclarativeType** type_return, QString* url_return, int *vmaj, int *vmin) const { return ns->find(d->typeLoader,type,vmaj,vmin,type_return,url_return); } -bool QDeclarativeImportedNamespace::find_helper(QDeclarativeTypeLoader *typeLoader, const Data &data, const QByteArray& type, int *vmajor, int *vminor, +bool QDeclarativeImportedNamespace::find_helper(QDeclarativeTypeLoader *typeLoader, const Data &data, const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QString *base, bool *typeRecursionDetected) { + int vmaj = data.majversion; + int vmin = data.minversion; + if (vmaj >= 0 && vmin >= 0) { QString qt = data.uri + QLatin1Char('/') + type; QDeclarativeType *t = QDeclarativeMetaType::qmlType(qt,vmaj,vmin); @@ -333,7 +336,7 @@ bool QDeclarativeImportedNamespace::find_helper(QDeclarativeTypeLoader *typeLoad if (!typeWasDeclaredInQmldir && !data.isLibrary) { // XXX search non-files too! (eg. zip files, see QT-524) - QString url(data.url + QString::fromUtf8(type) + QLatin1String(".qml")); + QString url(data.url + type + QLatin1String(".qml")); QString file = QDeclarativeEnginePrivate::urlToLocalFileOrQrc(url); if (!typeLoader->absoluteFilePath(file).isEmpty()) { if (base && *base == url) { // no recursion @@ -542,14 +545,13 @@ bool QDeclarativeImportsPrivate::add(const QDeclarativeDirComponents &qmldircomp } } - if (QDeclarativeMetaType::isModule(uri.toUtf8(), vmaj, vmin)) { + if (QDeclarativeMetaType::isModule(uri, vmaj, vmin)) versionFound = true; - } if (!versionFound && qmldircomponents.isEmpty()) { if (errors) { QDeclarativeError error; // we don't set the url or line or column as these will be set by the loader. - if (QDeclarativeMetaType::isAnyModule(uri.toUtf8())) + if (QDeclarativeMetaType::isAnyModule(uri)) error.setDescription(QDeclarativeImportDatabase::tr("module \"%1\" version %2.%3 is not installed").arg(uri_arg).arg(vmaj).arg(vmin)); else error.setDescription(QDeclarativeImportDatabase::tr("module \"%1\" is not installed").arg(uri_arg)); @@ -626,7 +628,7 @@ bool QDeclarativeImportsPrivate::add(const QDeclarativeDirComponents &qmldircomp url += Slash; QDeclarativeImportedNamespace::Data data; - data.uri = uri.toUtf8(); + data.uri = uri; data.url = url; data.majversion = vmaj; data.minversion = vmin; @@ -637,13 +639,13 @@ bool QDeclarativeImportsPrivate::add(const QDeclarativeDirComponents &qmldircomp return true; } -bool QDeclarativeImportsPrivate::find(const QByteArray& type, int *vmajor, int *vminor, QDeclarativeType** type_return, +bool QDeclarativeImportsPrivate::find(const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QList *errors) { QDeclarativeImportedNamespace *s = 0; - int slash = type.indexOf('/'); + int slash = type.indexOf(QLatin1Char('/')); if (slash >= 0) { - QString namespaceName = QString::fromUtf8(type.left(slash)); + QString namespaceName = type.left(slash); s = set.value(namespaceName); if (!s) { if (errors) { @@ -653,7 +655,7 @@ bool QDeclarativeImportsPrivate::find(const QByteArray& type, int *vmajor, int * } return false; } - int nslash = type.indexOf('/',slash+1); + int nslash = type.indexOf(QLatin1Char('/'),slash+1); if (nslash > 0) { if (errors) { QDeclarativeError error; @@ -665,13 +667,13 @@ bool QDeclarativeImportsPrivate::find(const QByteArray& type, int *vmajor, int * } else { s = &unqualifiedset; } - QByteArray unqualifiedtype = slash < 0 ? type : type.mid(slash+1); // common-case opt (QString::mid works fine, but slower) + QString unqualifiedtype = slash < 0 ? type : type.mid(slash+1); // common-case opt (QString::mid works fine, but slower) if (s) { if (s->find(typeLoader,unqualifiedtype,vmajor,vminor,type_return,url_return, &base, errors)) return true; if (s->imports.count() == 1 && !s->imports.at(0).isLibrary && url_return && s != &unqualifiedset) { // qualified, and only 1 url - *url_return = resolveLocalUrl(s->imports.at(0).url, QString::fromUtf8(unqualifiedtype) + QLatin1String(".qml")); + *url_return = resolveLocalUrl(s->imports.at(0).url, unqualifiedtype + QLatin1String(".qml")); return true; } } @@ -684,7 +686,7 @@ QDeclarativeImportedNamespace *QDeclarativeImportsPrivate::findNamespace(const Q return set.value(type); } -bool QDeclarativeImportedNamespace::find(QDeclarativeTypeLoader *typeLoader, const QByteArray& type, int *vmajor, int *vminor, QDeclarativeType** type_return, +bool QDeclarativeImportedNamespace::find(QDeclarativeTypeLoader *typeLoader, const QString& type, int *vmajor, int *vminor, QDeclarativeType** type_return, QString* url_return, QString *base, QList *errors) { bool typeRecursionDetected = false; diff --git a/src/declarative/qml/qdeclarativeimport_p.h b/src/declarative/qml/qdeclarativeimport_p.h index 94639bd..4f3b9c2 100644 --- a/src/declarative/qml/qdeclarativeimport_p.h +++ b/src/declarative/qml/qdeclarativeimport_p.h @@ -81,13 +81,13 @@ public: void setBaseUrl(const QUrl &url); QUrl baseUrl() const; - bool resolveType(const QByteArray& type, + bool resolveType(const QString& type, QDeclarativeType** type_return, QString* url_return, int *version_major, int *version_minor, QDeclarativeImportedNamespace** ns_return, QList *errors = 0) const; bool resolveType(QDeclarativeImportedNamespace*, - const QByteArray& type, + const QString& type, QDeclarativeType** type_return, QString* url_return, int *version_major, int *version_minor) const; diff --git a/src/declarative/qml/qdeclarativemetatype.cpp b/src/declarative/qml/qdeclarativemetatype.cpp index e0bef56..778dba3 100644 --- a/src/declarative/qml/qdeclarativemetatype.cpp +++ b/src/declarative/qml/qdeclarativemetatype.cpp @@ -104,12 +104,12 @@ struct QDeclarativeMetaTypeData struct VersionedUri { VersionedUri() : majorVersion(0) {} - VersionedUri(const QByteArray &uri, int majorVersion) + VersionedUri(const QString &uri, int majorVersion) : uri(uri), majorVersion(majorVersion) {} bool operator==(const VersionedUri &other) const { return other.majorVersion == majorVersion && other.uri == uri; } - QByteArray uri; + QString uri; int majorVersion; }; typedef QHash TypeModules; @@ -120,7 +120,7 @@ struct QDeclarativeMetaTypeData QList moduleApis; bool sorted; }; - typedef QHash ModuleApis; + typedef QHash ModuleApis; ModuleApis moduleApis; int moduleApiCount; @@ -177,7 +177,7 @@ public: bool m_isInterface : 1; const char *m_iid; - QByteArray m_module; + QString m_module; QByteArray m_name; QString m_elementName; int m_version_maj; @@ -244,7 +244,7 @@ QDeclarativeType::QDeclarativeType(int index, const QDeclarativePrivate::Registe if (type.uri) name += '/'; name += type.elementName; - d->m_module = type.uri; + d->m_module = QString::fromUtf8(type.uri); d->m_name = name; d->m_version_maj = type.versionMajor; d->m_version_min = type.versionMinor; @@ -283,7 +283,7 @@ QDeclarativeType::~QDeclarativeType() delete d; } -QByteArray QDeclarativeType::module() const +QString QDeclarativeType::module() const { return d->m_module; } @@ -304,7 +304,7 @@ bool QDeclarativeType::availableInVersion(int vmajor, int vminor) const return vmajor == d->m_version_maj && vminor >= d->m_version_min; } -bool QDeclarativeType::availableInVersion(const QByteArray &module, int vmajor, int vminor) const +bool QDeclarativeType::availableInVersion(const QString &module, int vmajor, int vminor) const { Q_ASSERT(vmajor >= 0 && vminor >= 0); return module == d->m_module && vmajor == d->m_version_maj && vminor >= d->m_version_min; @@ -682,7 +682,7 @@ QDeclarativeTypeModule::~QDeclarativeTypeModule() delete d; d = 0; } -QByteArray QDeclarativeTypeModule::module() const +QString QDeclarativeTypeModule::module() const { return d->uri.uri; } @@ -887,7 +887,7 @@ int registerType(const QDeclarativePrivate::RegisterType &type) if (type.listId) data->lists.setBit(type.listId, true); if (type.uri) { - QByteArray mod(type.uri); + QString mod = QString::fromUtf8(type.uri); QDeclarativeMetaTypeData::VersionedUri versionedUri(mod, type.versionMajor); QDeclarativeTypeModule *module = data->uriToModule.value(versionedUri); @@ -907,7 +907,7 @@ int registerModuleApi(const QDeclarativePrivate::RegisterModuleApi &api) QWriteLocker lock(metaTypeDataLock()); QDeclarativeMetaTypeData *data = metaTypeData(); - QByteArray uri(api.uri); + QString uri = QString::fromUtf8(api.uri); QDeclarativeMetaType::ModuleApi import; import.major = api.versionMajor; import.minor = api.versionMinor; @@ -965,7 +965,7 @@ bool QDeclarativeMetaType::isAnyModule(const QByteArray &module) /* Returns true if a module \a uri of any version is installed. */ -bool QDeclarativeMetaType::isAnyModule(const QByteArray &uri) +bool QDeclarativeMetaType::isAnyModule(const QString &uri) { QReadLocker lock(metaTypeDataLock()); QDeclarativeMetaTypeData *data = metaTypeData(); @@ -986,7 +986,7 @@ bool QDeclarativeMetaType::isAnyModule(const QByteArray &uri) So if only 4.7 and 4.9 have been registered, 4.7,4.8, and 4.9 are valid, but not 4.6 nor 4.10. */ -bool QDeclarativeMetaType::isModule(const QByteArray &module, int versionMajor, int versionMinor) +bool QDeclarativeMetaType::isModule(const QString &module, int versionMajor, int versionMinor) { Q_ASSERT(versionMajor >= 0 && versionMinor >= 0); QReadLocker lock(metaTypeDataLock()); @@ -1008,7 +1008,7 @@ bool QDeclarativeMetaType::isModule(const QByteArray &module, int versionMajor, return false; } -QDeclarativeTypeModule *QDeclarativeMetaType::typeModule(const QByteArray &uri, int majorVersion) +QDeclarativeTypeModule *QDeclarativeMetaType::typeModule(const QString &uri, int majorVersion) { QReadLocker lock(metaTypeDataLock()); QDeclarativeMetaTypeData *data = metaTypeData(); @@ -1028,7 +1028,7 @@ static bool operator<(const QDeclarativeMetaType::ModuleApi &lhs, const QDeclara } QDeclarativeMetaType::ModuleApi -QDeclarativeMetaType::moduleApi(const QByteArray &uri, int versionMajor, int versionMinor) +QDeclarativeMetaType::moduleApi(const QString &uri, int versionMajor, int versionMinor) { QReadLocker lock(metaTypeDataLock()); QDeclarativeMetaTypeData *data = metaTypeData(); @@ -1278,7 +1278,7 @@ QDeclarativeType *QDeclarativeMetaType::qmlType(const QMetaObject *metaObject) by \a version_major and \a version_minor in module specified by \a uri. Returns null if no type is registered. */ -QDeclarativeType *QDeclarativeMetaType::qmlType(const QMetaObject *metaObject, const QByteArray &module, int version_major, int version_minor) +QDeclarativeType *QDeclarativeMetaType::qmlType(const QMetaObject *metaObject, const QString &module, int version_major, int version_minor) { Q_ASSERT(version_major >= 0 && version_minor >= 0); QReadLocker lock(metaTypeDataLock()); diff --git a/src/declarative/qml/qdeclarativemetatype_p.h b/src/declarative/qml/qdeclarativemetatype_p.h index 239b7ca..6dfdf6a 100644 --- a/src/declarative/qml/qdeclarativemetatype_p.h +++ b/src/declarative/qml/qdeclarativemetatype_p.h @@ -79,7 +79,7 @@ public: static QDeclarativeType *qmlType(const QByteArray &, int, int); static QDeclarativeType *qmlType(const QMetaObject *); - static QDeclarativeType *qmlType(const QMetaObject *metaObject, const QByteArray &module, int version_major, int version_minor); + static QDeclarativeType *qmlType(const QMetaObject *metaObject, const QString &module, int version_major, int version_minor); static QDeclarativeType *qmlType(int); static QMetaProperty defaultProperty(const QMetaObject *); @@ -105,9 +105,9 @@ public: static void registerCustomStringConverter(int, StringConverter); static StringConverter customStringConverter(int); - static bool isAnyModule(const QByteArray &uri); - static bool isModule(const QByteArray &module, int versionMajor, int versionMinor); - static QDeclarativeTypeModule *typeModule(const QByteArray &uri, int majorVersion); + static bool isAnyModule(const QString &uri); + static bool isModule(const QString &module, int versionMajor, int versionMinor); + static QDeclarativeTypeModule *typeModule(const QString &uri, int majorVersion); static QList parentFunctions(); @@ -128,7 +128,7 @@ public: QJSValue (*script)(QDeclarativeEngine *, QJSEngine *); QObject *(*qobject)(QDeclarativeEngine *, QJSEngine *); }; - static ModuleApi moduleApi(const QByteArray &, int, int); + static ModuleApi moduleApi(const QString &, int, int); }; class QHashedStringRef; @@ -140,12 +140,12 @@ public: const QByteArray &qmlTypeName() const; const QString &elementName() const; - QByteArray module() const; + QString module() const; int majorVersion() const; int minorVersion() const; bool availableInVersion(int vmajor, int vminor) const; - bool availableInVersion(const QByteArray &module, int vmajor, int vminor) const; + bool availableInVersion(const QString &module, int vmajor, int vminor) const; QObject *create() const; void create(QObject **, void **, size_t) const; @@ -200,7 +200,7 @@ class QDeclarativeTypeModulePrivate; class QDeclarativeTypeModule { public: - QByteArray module() const; + QString module() const; int majorVersion() const; int minimumMinorVersion() const; diff --git a/src/declarative/qml/qdeclarativetypeloader.cpp b/src/declarative/qml/qdeclarativetypeloader.cpp index 1383d64..36b5f28 100644 --- a/src/declarative/qml/qdeclarativetypeloader.cpp +++ b/src/declarative/qml/qdeclarativetypeloader.cpp @@ -1179,8 +1179,6 @@ void QDeclarativeTypeData::resolveTypes() } foreach (QDeclarativeScriptParser::TypeReference *parserRef, scriptParser.referencedTypes()) { - QByteArray typeName = parserRef->name.toUtf8(); - TypeReference ref; QString url; @@ -1189,7 +1187,7 @@ void QDeclarativeTypeData::resolveTypes() QDeclarativeImportedNamespace *typeNamespace = 0; QList errors; - if (!m_imports.resolveType(typeName, &ref.type, &url, &majorVersion, &minorVersion, + if (!m_imports.resolveType(parserRef->name, &ref.type, &url, &majorVersion, &minorVersion, &typeNamespace, &errors) || typeNamespace) { // Known to not be a type: // - known to be a namespace (Namespace {}) -- 1.7.2.5