summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2021-12-07 14:12:45 +0100
committerMarc Mutz <marc.mutz@qt.io>2021-12-07 22:53:14 +0100
commitadcc68fd599d976dd79ad034b93e150138039681 (patch)
tree809d3e9a0bfcd3a4f624495eab4dd66aebe6aefa /src
parentac4c0e1f0293c6d533c0537b3e0139733e4212eb (diff)
QVarLengthArray: remove unneeded copy in replace()
QVarLengthArray is neither implicitly shared, nor does it feature a magic resize() on out-of-bounds. Therefore, data() doesn't detach(), so 't' remains stable. The only reason for the copy, then, would be if T wasn't self-assignment-safe, but we don't support such types. Remove the copy. Change-Id: I8dd12e1c9b8131ae17d641354fe362554062b78d Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/tools/qvarlengtharray.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/corelib/tools/qvarlengtharray.h b/src/corelib/tools/qvarlengtharray.h
index a6e41168a8..2a86a1dd7f 100644
--- a/src/corelib/tools/qvarlengtharray.h
+++ b/src/corelib/tools/qvarlengtharray.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtCore module of the Qt Toolkit.
@@ -619,8 +619,7 @@ template <class T, qsizetype Prealloc>
inline void QVarLengthArray<T, Prealloc>::replace(qsizetype i, const T &t)
{
verify(i);
- const T copy(t);
- data()[i] = copy;
+ data()[i] = t;
}
template <class T, qsizetype Prealloc>