diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2022-07-15 13:46:39 -0700 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2022-07-28 11:50:18 -0700 |
commit | 8bde91bc2a71f4e43ddcf4c165b1c46a6572a871 (patch) | |
tree | bdb004b609ccce70ff35e7ecfae68c7e483803f1 /src/corelib | |
parent | 7f640aa2ebf02951abc0b5fb874c91b48b0e307f (diff) |
QMetaObject: simplify printMethodNotFoundWarning() a little
We don't need to copy the candidate name into the QVarLengthArray buffer,
we just need that buffer for the parameters.
Change-Id: I36b24183fbd041179f2ffffd17021ba2fd2b8251
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/kernel/qmetaobject.cpp | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 555e49206a..af949780ae 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1357,20 +1357,17 @@ printMethodNotFoundWarning(const QMetaObject *meta, QLatin1StringView name, qsiz } QVarLengthArray<char, 512> sig; - sig.append(name.data(), name.size()); - sig.append('('); for (qsizetype i = 1; i < paramCount; ++i) { sig.append(names[i], qstrlen(names[i])); sig.append(','); } - if (paramCount == 1) - sig.append(')'); // no parameters - else - sig[sig.size() - 1] = ')'; - sig.append('\0'); + if (paramCount != 1) + sig.resize(sig.size() - 1); - qWarning("QMetaObject::invokeMethod: No such method %s::%s%s", - meta->className(), sig.constData(), candidateMessage.constData()); + qWarning("QMetaObject::invokeMethod: No such method %s::%.*s(%.*s)%.*s", + meta->className(), int(name.size()), name.constData(), + int(sig.size()), sig.constData(), + int(candidateMessage.size()), candidateMessage.constData()); return false; } |