diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 00d20d9300..7211a730ec 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1671,8 +1671,9 @@ void QMetaMethodPrivate::getParameterTypes(int *types) const QList QMetaMethodPrivate::parameterTypes() const { Q_ASSERT(priv(mobj->d.data)->revision >= 7); - QList list; int argc = parameterCount(); + QList list; + list.reserve(argc); int paramsIndex = parametersDataIndex(); for (int i = 0; i < argc; ++i) list += typeNameFromTypeInfo(mobj, mobj->d.data[paramsIndex + i]); @@ -1682,8 +1683,9 @@ QList QMetaMethodPrivate::parameterTypes() const QList QMetaMethodPrivate::parameterNames() const { Q_ASSERT(priv(mobj->d.data)->revision >= 7); - QList list; int argc = parameterCount(); + QList list; + list.reserve(argc); int namesIndex = parametersDataIndex() + argc; for (int i = 0; i < argc; ++i) list += stringData(mobj, mobj->d.data[namesIndex + i]);