summaryrefslogtreecommitdiffstats
path: root/src/dbus/qdbusxmlgenerator.cpp
diff options
context:
space:
mode:
authorAlexander Volkov <a.volkov@rusbitech.ru>2017-01-06 22:02:50 +0300
committerAlexander Volkov <a.volkov@rusbitech.ru>2017-01-12 17:54:28 +0000
commitdcec1420ea9d7e90bbd7f37be15d8e61eaf35d23 (patch)
tree950020aadfc183963a5668263ef302d8d6b0e6de /src/dbus/qdbusxmlgenerator.cpp
parent8f469e4a19feb77758fb5d3c7120ba93cf32cd7d (diff)
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 <antkudr@mail.ru> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/dbus/qdbusxmlgenerator.cpp')
-rw-r--r--src/dbus/qdbusxmlgenerator.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/dbus/qdbusxmlgenerator.cpp b/src/dbus/qdbusxmlgenerator.cpp
index d239a69f73..e3c503aa0f 100644
--- a/src/dbus/qdbusxmlgenerator.cpp
+++ b/src/dbus/qdbusxmlgenerator.cpp
@@ -149,9 +149,8 @@ static QString generateInterfaceXml(const QMetaObject *mo, int flags, int method
if (!isScriptable && !(flags & (isSignal ? QDBusConnection::ExportNonScriptableSignals : QDBusConnection::ExportNonScriptableInvokables | QDBusConnection::ExportNonScriptableSlots)))
continue;
- QString xml = QString::fromLatin1(" <%1 name=\"%2\">\n")
- .arg(isSignal ? QLatin1String("signal") : QLatin1String("method"))
- .arg(QString::fromLatin1(mm.name()));
+ QString xml = QString::asprintf(" <%s name=\"%s\">\n",
+ isSignal ? "signal" : "method", mm.name().constData());
// check the return type first
int typeId = mm.returnType();
@@ -205,10 +204,8 @@ static QString generateInterfaceXml(const QMetaObject *mo, int flags, int method
bool isOutput = isSignal || j > inputCount;
const char *signature = QDBusMetaType::typeToSignature(types.at(j));
- xml += QString::fromLatin1(" <arg %1type=\"%2\" direction=\"%3\"/>\n")
- .arg(name)
- .arg(QLatin1String(signature))
- .arg(isOutput ? QLatin1String("out") : QLatin1String("in"));
+ xml += QString::asprintf(" <arg %lstype=\"%s\" direction=\"%s\"/>\n",
+ qUtf16Printable(name), signature, isOutput ? "out" : "in");
// do we need to describe this argument?
if (QDBusMetaType::signatureToType(signature) == QVariant::Invalid) {