The problem is that creating a QByteArray from a QJsonDocument containing a string longer than 65535 as a value, fails.
Consider the following code:
Now a1 and a2 should be equal but on the contrary a2 is truncated to size(a1) - 65536 = 70000 - 65536 = 4464 bytes.
The problem is in Latin1String class in qjson_p.h file
where the length of the string is defined using a qle_short (16bit).
|For Gerrit Dashboard: QTBUG-30946|
|56625,2||Fix parsing of long latin strings in the json parser||stable||qt/qtbase||Status: MERGED||+2||0|