qt5base-lts/tests/auto/widgets/itemviews
Giuseppe D'Angelo 07d80deeab QtWidgets: restore Qt 5 compatibility for save/restore state
Several classes in QWidget use QDataStream internally in order
to save and restore state. These QDataStream usages were not
versioned, meaning that if Qt changes the serialization for some
datatype, then the data saved between different Qt versions becomes
incompatible. Note that the save/restore API in question just produce
opaque blobs as QByteArrays -- the user has no control over the
QDataStream objects and thus versions.

Fix by version the usages.

In QHeaderView this has caused a regression because QBitArray *did*
change version between Qt 5 and 6. In general, using QDataStream without
explicit versioning is a mistake, so deploy the same fix elsewhere as
well.

Fixes: QTBUG-99487
Pick-to: 5.15 6.2 6.3
Change-Id: I82bb5c266f4e5dedc0887cbef855dccab1015e29
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: <doctor.whom@gmail.com>
2022-05-18 02:21:31 +02:00
..
qabstractitemview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qcolumnview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qdatawidgetmapper Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qfileiconprovider Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qheaderview QtWidgets: restore Qt 5 compatibility for save/restore state 2022-05-18 02:21:31 +02:00
qitemdelegate Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qitemeditorfactory Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qitemview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qlistview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qlistwidget Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtableview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtablewidget Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtreeview Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtreewidget Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtreewidgetitemiterator Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
CMakeLists.txt CMake: Regenerate subdir test projects 2020-07-09 09:38:39 +02:00