qt5base-lts/tests/auto/dbus/qdbusmarshall
Sami Rosendahl b9acd85b2f Fix crashes and non-portable functionality in QDBusDemarshaller QByteArray extraction
QDBusArgument QByteArray extraction operator and QDBusDemarshaller that
implements the extraction do not check the type of the extracted value.
When extracting a QByteArray when the value actually is e.g. a struct of
mixed types the byte array extraction will crash as it attempts to extract
the struct data as a fixed array.

The fix adds DBus type checks to QDBusArgument byte array extraction
operator implementations.
The checks invalidate extracting arrays of other types than bytes to a
QByteArray that worked with the unchecked implementation. The rationale
for this restriction is
1) extracting a QByteArray to a variant checks already that the array
   element type is byte
2) Results of extracting arrays of types wider than a byte to a QByteArray
   are architecture-dependent making such code inherently non-portable.

Task-number: QTBUG-22840
Change-Id: Ie20f2adc06c697a68055c803215fb408568fdd90
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2011-12-25 21:58:57 +01:00
..
qpong Moved dbus autotests into new directory structure 2011-09-01 09:37:08 +02:00
test all remaining tests: eliminated usage of qttest_p4.prf 2011-10-25 08:42:23 +02:00
.gitignore Moved dbus autotests into new directory structure 2011-09-01 09:37:08 +02:00
common.h Remove unused code from qdbusmarshall test. 2011-11-02 00:53:26 +01:00
qdbusmarshall.pro all remaining tests: eliminated usage of qttest_p4.prf 2011-10-25 08:42:23 +02:00
tst_qdbusmarshall.cpp Fix crashes and non-portable functionality in QDBusDemarshaller QByteArray extraction 2011-12-25 21:58:57 +01:00