diff -Nru qtserialbus-everywhere-src-5.11.2/debian/changelog qtserialbus-everywhere-src-5.11.2/debian/changelog --- qtserialbus-everywhere-src-5.11.2/debian/changelog 2018-11-09 17:29:18.000000000 +0000 +++ qtserialbus-everywhere-src-5.11.2/debian/changelog 2018-11-10 10:20:57.000000000 +0000 @@ -1,3 +1,9 @@ +qtserialbus-everywhere-src (5.11.2-2) unstable; urgency=medium + + * Add a patch to fix pduFromStream() on big endian (big_endian.diff). + + -- Dmitry Shachnev Sat, 10 Nov 2018 13:20:57 +0300 + qtserialbus-everywhere-src (5.11.2-1) unstable; urgency=medium [ Scarlett Moore ] diff -Nru qtserialbus-everywhere-src-5.11.2/debian/patches/big_endian.diff qtserialbus-everywhere-src-5.11.2/debian/patches/big_endian.diff --- qtserialbus-everywhere-src-5.11.2/debian/patches/big_endian.diff 1970-01-01 00:00:00.000000000 +0000 +++ qtserialbus-everywhere-src-5.11.2/debian/patches/big_endian.diff 2018-11-10 10:20:57.000000000 +0000 @@ -0,0 +1,20 @@ +Description: make pduFromStream work on big endian +Author: Dmitry Shachnev +Forwarded: https://codereview.qt-project.org/245206 +Last-Update: 2018-11-10 + +--- a/src/serialbus/qmodbuspdu.cpp ++++ b/src/serialbus/qmodbuspdu.cpp +@@ -105,9 +105,10 @@ + + static QDataStream &pduFromStream(QDataStream &stream, QModbusPdu &pdu, Type type) + { +- QModbusPdu::FunctionCode code = QModbusPdu::Invalid; +- if (stream.readRawData((char *) (&code), sizeof(quint8)) != sizeof(quint8)) ++ quint8 codeByte = 0; ++ if (stream.readRawData((char *) (&codeByte), sizeof(quint8)) != sizeof(quint8)) + return stream; ++ QModbusPdu::FunctionCode code = (QModbusPdu::FunctionCode) codeByte; + pdu.setFunctionCode(code); + + auto needsAdditionalRead = [](QModbusPdu &pdu, int size) -> bool { diff -Nru qtserialbus-everywhere-src-5.11.2/debian/patches/series qtserialbus-everywhere-src-5.11.2/debian/patches/series --- qtserialbus-everywhere-src-5.11.2/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ qtserialbus-everywhere-src-5.11.2/debian/patches/series 2018-11-10 10:20:57.000000000 +0000 @@ -0,0 +1 @@ +big_endian.diff