aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-12-04 14:46:12 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-12-05 06:32:25 +0000
commit998b878f147c4a9e9acb8593b8ad38b25c07fc46 (patch)
tree1c1ed658f6201da18737f4ab3e7f77b530a2ada8 /sources/shiboken2
parent28e7e7f96d34dec30aa184b8410f1cc2b5fba8aa (diff)
shiboken: Do not use QString::split() to find name
Change-Id: I83e254a5d0f7ba4613a04a73683ed08c273fc2ca Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken2')
-rw-r--r--sources/shiboken2/ApiExtractor/abstractmetalang.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/sources/shiboken2/ApiExtractor/abstractmetalang.cpp b/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
index 98f723ba6..c011c9b08 100644
--- a/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
+++ b/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
@@ -114,11 +114,18 @@ QString AbstractMetaType::package() const
return m_typeEntry->targetLangPackage();
}
+static QString lastNameSegment(QString name)
+{
+ const int index = name.lastIndexOf(QStringLiteral("::"));
+ if (index >= 0)
+ name.remove(0, index + 2);
+ return name;
+}
+
QString AbstractMetaType::name() const
{
if (m_name.isNull())
- // avoid constLast to stay Qt 5.5 compatible
- m_name = m_typeEntry->targetLangName().split(QLatin1String("::")).last();
+ m_name = lastNameSegment(m_typeEntry->targetLangName());
return m_name;
}
@@ -1661,7 +1668,7 @@ bool AbstractMetaClass::hasSignal(const AbstractMetaFunction *other) const
QString AbstractMetaClass::name() const
{
- return QString(m_typeEntry->targetLangName()).split(QLatin1String("::")).last();
+ return lastNameSegment(m_typeEntry->targetLangName());
}
void AbstractMetaClass::setBaseClass(AbstractMetaClass *baseClass)