summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r--src/corelib/kernel/qmetaobject.cpp3
-rw-r--r--src/corelib/kernel/qobject.cpp3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp
index 7f000830e6a..cc26b6c19dc 100644
--- a/src/corelib/kernel/qmetaobject.cpp
+++ b/src/corelib/kernel/qmetaobject.cpp
@@ -2878,7 +2878,8 @@ auto QMetaMethodInvoker::invokeImpl(QMetaMethod self, void *target,
return InvokeFailReason::CouldNotQueueParameter;
}
- QVarLengthArray<const QtPrivate::QMetaTypeInterface *> argTypes;
+ QVarLengthArray<const QtPrivate::QMetaTypeInterface *, 16> argTypes;
+ argTypes.reserve(paramCount);
argTypes.emplace_back(nullptr); // return type
// fill in the meta types first
for (int i = 1; i < paramCount; ++i) {
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index 790ccc29339..47d07970866 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -4191,7 +4191,8 @@ static void queued_activate(QObject *sender, int signal, QObjectPrivate::Connect
SlotObjectGuard slotObjectGuard { c->isSlotObject ? c->slotObj : nullptr };
locker.unlock();
- QVarLengthArray<const QtPrivate::QMetaTypeInterface *> argTypes;
+ QVarLengthArray<const QtPrivate::QMetaTypeInterface *, 16> argTypes;
+ argTypes.reserve(nargs);
argTypes.emplace_back(nullptr); // return type
for (int n = 1; n < nargs; ++n) {
argTypes.emplace_back(QMetaType(argumentTypes[n - 1]).iface()); // convert type ids to QMetaTypeInterfaces