diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2021-01-21 11:33:51 -0800 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-01-27 07:21:52 +0000 |
commit | 9b43d8a98aed87da9fb366cd916cd2e7747090db (patch) | |
tree | b2875dbf58afbe256ebd7b5826e2e8991eb360fb /src/corelib | |
parent | 191e1bbf37c44aff8b208947754b9000a679912d (diff) |
QJsonObject::take: add missing detach() call
We were modifying shared objects.
Fixes: QTBUG-89625
Change-Id: Id6bc735b79cf4beb9454fffd165c56476a5dec04
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
(cherry picked from commit 00b759a8d06dbec42232b1b8748c0725da7ced00)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/serialization/qjsonobject.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/corelib/serialization/qjsonobject.cpp b/src/corelib/serialization/qjsonobject.cpp index 0c4af59163..a06af5d02d 100644 --- a/src/corelib/serialization/qjsonobject.cpp +++ b/src/corelib/serialization/qjsonobject.cpp @@ -617,6 +617,7 @@ QJsonValue QJsonObject::takeImpl(T key) if (!keyExists) return QJsonValue(QJsonValue::Undefined); + detach(); const QJsonValue v = QJsonPrivate::Value::fromTrustedCbor(o->extractAt(index + 1)); removeAt(index / 2); return v; |