diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2020-04-15 19:10:01 -0300 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2020-04-22 18:04:42 -0300 |
commit | c197615bd99ec76ebb3ca9aff959826b4e7ff43b (patch) | |
tree | 856ebe9f7f88c629d60f21be9722fafb53586ef9 /src/corelib | |
parent | fdea55cb9832a194b5ec1262e216f12ae644ba6b (diff) |
QCborValue: don't update internal states if decoding a string failed
Change-Id: Ibdc95e9af7bd456a94ecfffd16061db982ad3fa7
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/serialization/qcborvalue.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/serialization/qcborvalue.cpp b/src/corelib/serialization/qcborvalue.cpp index 90b45fb853..a3729b4ef9 100644 --- a/src/corelib/serialization/qcborvalue.cpp +++ b/src/corelib/serialization/qcborvalue.cpp @@ -1633,7 +1633,7 @@ void QCborContainerPrivate::decodeStringFromCbor(QCborStreamReader &reader) } // update size - if (e.flags & Element::HasByteData) { + if (r.status == QCborStreamReader::EndOfString && e.flags & Element::HasByteData) { auto b = new (dataPtr() + e.value) ByteData; b->len = data.size() - e.value - int(sizeof(*b)); usedData += b->len; |