From dcec1420ea9d7e90bbd7f37be15d8e61eaf35d23 Mon Sep 17 00:00:00 2001 From: Alexander Volkov Date: Fri, 6 Jan 2017 22:02:50 +0300 Subject: Use QString::asprintf(), QStringBuilder, and the multi-arg overload of QString::arg() ... instead of sequential .arg(const QString &) callings. It saves memory allocations and prevents unexpected results if replacing strings contain place markers. Found with clazy's qstring-arg check. Change-Id: I3912275a6e11c6fb7559ff5623f2e8cde9b7f07a Reviewed-by: Anton Kudryavtsev Reviewed-by: Thiago Macieira --- src/tools/qdbuscpp2xml/qdbuscpp2xml.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'src/tools/qdbuscpp2xml') diff --git a/src/tools/qdbuscpp2xml/qdbuscpp2xml.cpp b/src/tools/qdbuscpp2xml/qdbuscpp2xml.cpp index 26e7b086d9..efce778acf 100644 --- a/src/tools/qdbuscpp2xml/qdbuscpp2xml.cpp +++ b/src/tools/qdbuscpp2xml/qdbuscpp2xml.cpp @@ -103,9 +103,8 @@ static inline QString typeNameToXml(const char *typeName) static QString addFunction(const FunctionDef &mm, bool isSignal = false) { - QString xml = QString::fromLatin1(" <%1 name=\"%2\">\n") - .arg(isSignal ? QLatin1String("signal") : QLatin1String("method")) - .arg(QLatin1String(mm.name)); + QString xml = QString::asprintf(" <%s name=\"%s\">\n", + isSignal ? "signal" : "method", mm.name.constData()); // check the return type first int typeId = QMetaType::type(mm.normalizedType.constData()); @@ -156,9 +155,9 @@ static QString addFunction(const FunctionDef &mm, bool isSignal = false) { const char *signature = QDBusMetaType::typeToSignature(types.at(j)); xml += QString::fromLatin1(" \n") - .arg(name) - .arg(QLatin1String(signature)) - .arg(isOutput ? QLatin1String("out") : QLatin1String("in")); + .arg(name, + QLatin1String(signature), + isOutput ? QLatin1String("out") : QLatin1String("in")); // do we need to describe this argument? if (QDBusMetaType::signatureToType(signature) == QVariant::Invalid) { @@ -220,9 +219,9 @@ static QString generateInterfaceXml(const ClassDef *mo) continue; retval += QString::fromLatin1(" \n \n \n") -- cgit v1.2.3